System.Xml.Xsl.IlGen.XmlILVisitor.GenerateConcat C# (CSharp) Method

GenerateConcat() private method

Generate code to concatenate string values returned by expression "ndStr" using the StringConcat helper class.
private GenerateConcat ( QilNode ndStr, LocalBuilder locStringConcat ) : void
ndStr QilNode
locStringConcat System.Reflection.Emit.LocalBuilder
return void
        private void GenerateConcat(QilNode ndStr, LocalBuilder locStringConcat) {
            Label lblOnEnd;

            // str = each string;
            lblOnEnd = this.helper.DefineLabel();
            StartNestedIterator(ndStr, lblOnEnd);
            Visit(ndStr);

            // strcat.Concat(str);
            this.iterCurr.EnsureStackNoCache();
            this.iterCurr.EnsureItemStorageType(ndStr.XmlType, typeof(string));
            this.helper.Call(XmlILMethods.StrCatCat);
            this.helper.Emit(OpCodes.Ldloca, locStringConcat);

            // Get next string
            // goto LabelNext;
            // LabelOnEnd:
            this.iterCurr.LoopToEnd(lblOnEnd);

            // End nested iterator
            EndNestedIterator(ndStr);
        }
XmlILVisitor