2 writes to input
System.Data.SqlXml (2)
System\Xml\Xsl\Xslt\XsltLoader.cs (2)
213input = new XsltInput(reader, compiler, atoms); 247input = prevInput;
355 references to input
System.Data.SqlXml (355)
System\Xml\Xsl\Xslt\XsltLoader.cs (355)
210XsltInput prevInput = input; 241input.BuildReaderLineInfo() 254if (!input.FindStylesheetElement()) { 258Debug.Assert(input.NodeType == XmlNodeType.Element); 259if (input.IsXsltNamespace()) { 261input.IsKeyword(atoms.Stylesheet) || 262input.IsKeyword(atoms.Transform) 267input.SkipNode(); 272input.Finish(); 276Debug.Assert(!input.IsXsltNamespace()); 280curTemplate = f.Template(/*name:*/null, /*match:*/"/", /*mode:*/nullMode, /*priority:*/double.NaN, input.XslVersion); 283input.CanHaveApplyImports = true; 305Debug.Assert(input.IsXsltNamespace() && (input.IsKeyword(atoms.Stylesheet) || input.IsKeyword(atoms.Transform))); 306ContextInfo ctxInfo = input.GetAttributes(stylesheetAttributes); 311QName parentName = input.ElementName; 312if (input.MoveToFirstChild()) { 316switch (input.NodeType) { 318if (input.IsXsltNamespace()) { 319if (input.IsKeyword(atoms.Import)) { 321ReportError(/*[XT0200]*/Res.Xslt_NotAtTop, input.QualifiedName, parentName); 322input.SkipNode(); 327} else if (input.IsKeyword(atoms.Include)) { 329} else if (input.IsKeyword(atoms.StripSpace)) { 331} else if (input.IsKeyword(atoms.PreserveSpace)) { 333} else if (input.IsKeyword(atoms.Output)) { 335} else if (input.IsKeyword(atoms.Key)) { 337} else if (input.IsKeyword(atoms.DecimalFormat)) { 339} else if (input.IsKeyword(atoms.NamespaceAlias)) { 341} else if (input.IsKeyword(atoms.AttributeSet)) { 343} else if (input.IsKeyword(atoms.Variable)) { 345} else if (input.IsKeyword(atoms.Param)) { 347} else if (input.IsKeyword(atoms.Template)) { 358input.GetVersionAttribute(); 359if (!input.ForwardCompatibility) { 360ReportError(/*[XT_003]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 362input.SkipNode(); 364} else if (input.IsNs(atoms.UrnMsxsl) && input.IsKeyword(atoms.Script)) { 367if (input.IsNullNamespace()) { 368ReportError(/*[XT0130]*/Res.Xslt_NullNsAtTopLevel, input.LocalName); 371input.SkipNode(); 380Debug.Assert(input.NodeType == XmlNodeType.Text); 384} while (input.MoveToNextSibling()); 395ContextInfo ctxInfo = input.GetAttributes(importIncludeAttributes); 397if (input.MoveToXsltAttribute(0, "href")) { 399Uri uri = ResolveUri(input.Value, input.BaseUri); 403ReportError(/*[XT0210]*/Res.Xslt_CircularInclude, input.Value); 419ContextInfo ctxInfo = input.GetAttributes(importIncludeAttributes); 421if (input.MoveToXsltAttribute(0, "href")) { 423Uri uri = ResolveUri(input.Value, input.BaseUri); 427ReportError(/*[XT0180]*/Res.Xslt_CircularInclude, input.Value); 440ContextInfo ctxInfo = input.GetAttributes(loadStripSpaceAttributes); 443if (input.MoveToXsltAttribute(0, atoms.Elements)) { 444ParseWhitespaceRules(input.Value, false); 450ContextInfo ctxInfo = input.GetAttributes(loadStripSpaceAttributes); 453if (input.MoveToXsltAttribute(0, atoms.Elements)) { 454ParseWhitespaceRules(input.Value, true); 479ContextInfo ctxInfo = input.GetAttributes(outputAttributes); 489if (input.MoveToXsltAttribute(1, "method")) { 493XmlQualifiedName method = ParseOutputMethod(input.Value, out outputMethod); 494if (compiler.ExitForwardsCompatible(input.ForwardCompatibility) && method != null) { 508if (input.MoveToXsltAttribute(3, "cdata-section-elements")) { 511string[] qnames = XmlConvert.SplitString(input.Value); 516if (compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 521if (input.MoveToXsltAttribute(4, "doctype-public")) { 523if (currentPrec == output.DocTypePublicPrec && settings.DocTypePublic != input.Value) { 526settings.DocTypePublic = input.Value; 531if (input.MoveToXsltAttribute(5, "doctype-system")) { 533if (currentPrec == output.DocTypeSystemPrec && settings.DocTypeSystem != input.Value) { 536settings.DocTypeSystem = input.Value; 541if (input.MoveToXsltAttribute(6, "encoding")) { 545Encoding encoding = Encoding.GetEncoding(input.Value); 546if (currentPrec == output.EncodingPrec && output.Encoding != input.Value) { 550output.Encoding = input.Value; 553if (!input.ForwardCompatibility) { 554ReportWarning(/*[XT_004]*/Res.Xslt_InvalidEncoding, input.Value); 578if (input.MoveToXsltAttribute(10, "media-type")) { 580if (currentPrec == output.MediaTypePrec && settings.MediaType != input.Value) { 583settings.MediaType = input.Value; 588if (input.MoveToXsltAttribute(11, "normalization-form")) { 622if (input.MoveToXsltAttribute(16, "version")) { 624if (currentPrec == output.VersionPrec && output.Version != input.Value) { 629output.Version = input.Value; 701ContextInfo ctxInfo = input.GetAttributes(keyAttributes); 709input.MoveToElement(); 715input.SkipNode(); 732Key key = (Key)SetInfo(f.Key(keyName, match, use, input.XslVersion), null, ctxInfo); 760ContextInfo ctxInfo = input.GetAttributes(decimalFormatAttributes); 764if (input.MoveToXsltAttribute(0, "name")) { 766name = ResolveQName(/*ignoreDefaultNs:*/true, input.Value); 767if (!compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 776if (input.MoveToXsltAttribute(1, "infinity")) { 777infinity = input.Value; 781if (input.MoveToXsltAttribute(2, "NaN")) { 782nan = input.Value; 798bool dummy = input.MoveToXsltAttribute(3 + j, decimalFormatAttributes[3 + j].name) || input.MoveToXsltAttribute(3 + i, decimalFormatAttributes[3 + i].name); 809input.MoveToXsltAttribute(1, "infinity"); 811input.MoveToXsltAttribute(2, "NaN"); 814input.MoveToXsltAttribute(3 + idx, decimalFormatAttributes[3 + idx].name); 831ContextInfo ctxInfo = input.GetAttributes(namespaceAliasAttributes); 838if (input.MoveToXsltAttribute(0, "stylesheet-prefix")) { 839if (input.Value.Length == 0) { 842stylesheetNsUri = input.LookupXmlNamespace(input.Value == "#default" ? string.Empty : input.Value); 846if (input.MoveToXsltAttribute(1, "result-prefix")) { 847if (input.Value.Length == 0) { 850resultPrefix = input.Value == "#default" ? string.Empty : input.Value; 851resultNsUri = input.LookupXmlNamespace(resultPrefix); 863input.MoveToElement(); 873ContextInfo ctxInfo = input.GetAttributes(attributeSetAttributes); 892if (input.MoveToXsltAttribute(1, "use-attribute-sets")) { 896QName parentName = input.ElementName; 897if (input.MoveToFirstChild()) { 899switch (input.NodeType) { 902if (input.IsXsltKeyword(atoms.Attribute)) { 905ReportError(/*[XT_006]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 906input.SkipNode(); 913Debug.Assert(input.NodeType == XmlNodeType.Text); 917} while (input.MoveToNextSibling()); 924Debug.Assert(input.CanHaveApplyImports == false); 941ContextInfo ctxInfo = input.GetAttributes(templateAttributes); 947if (input.MoveToXsltAttribute(2, "priority")) { 948priority = XPathConvert.StringToDouble(input.Value); 949if (double.IsNaN(priority) && !input.ForwardCompatibility) { 950ReportError(/*[XT0530]*/Res.Xslt_InvalidAttrValue, "priority", input.Value); 956CheckError(! input.AttributeExists(1, "name"), /*[XT_007]*/Res.Xslt_BothMatchNameAbsent); 957CheckError( input.AttributeExists(3, "mode"), /*[XT_008]*/Res.Xslt_ModeWithoutMatch ); 959if (input.AttributeExists(2, "priority")) { 968if (input.MoveToXsltAttribute(4, "as")) { 972curTemplate = f.Template(name, match, mode, priority, input.XslVersion); 975input.CanHaveApplyImports = (match != null); 1076ContextInfo ctxInfo = input.GetAttributes(scriptAttributes); 1081if (input.MoveToXsltAttribute(0, "implements-prefix")) { 1082if (input.Value.Length == 0) { 1083ReportError(/*[XT_009]*/Res.Xslt_EmptyAttrValue, "implements-prefix", input.Value); 1085scriptNs = input.LookupXmlNamespace(input.Value); 1103input.SkipNode(); 1109string uriString = input.Uri; 1115input.SkipNode(); 1119QName parentName = input.ElementName; 1120if (input.MoveToFirstChild()) { 1122switch (input.NodeType) { 1124int startLine = input.Start.Line; 1125int endLine = input.End.Line; 1136scriptCode.Append(input.Value); 1140if (input.IsNs(atoms.UrnMsxsl) && (input.IsKeyword(atoms.Assembly) || input.IsKeyword(atoms.Using))) { 1142ReportError(/*[XT_012]*/Res.Xslt_ScriptNotAtTop, input.QualifiedName); 1143input.SkipNode(); 1144} else if (input.IsKeyword(atoms.Assembly)) { 1146} else if (input.IsKeyword(atoms.Using)) { 1150ReportError(/*[XT_012]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 1151input.SkipNode(); 1156input.NodeType == XmlNodeType.SignificantWhitespace || 1157input.NodeType == XmlNodeType.Whitespace 1165} while (input.MoveToNextSibling()); 1169lineNumber = input.Start.Line; 1171scriptClass.AddScriptBlock(scriptCode.ToString(), uriString, lineNumber, input.Start); 1183input.GetAttributes(assemblyAttributes); 1209asmLocation = Assembly.LoadFrom(ResolveUri(href, input.BaseUri).ToString()).Location; 1225input.GetAttributes(usingAttributes); 1227if (input.MoveToXsltAttribute(0, "namespace")) { 1228scriptClass.nsImports.Add(input.Value); 1265QName parentName = input.ElementName; 1266if (input.MoveToFirstChild()) { 1272switch (input.NodeType) { 1274string nspace = input.NamespaceUri; 1275string name = input.LocalName; 1289ReportError(error, input.QualifiedName, parentName); 1291input.SkipNode(); 1336result = SetLineInfo(f.Text(input.Value), input.BuildLineInfo()); 1341Debug.Assert(input.NodeType == XmlNodeType.Text); 1346} while (input.MoveToNextSibling()); 1353QName parentName = input.ElementName; 1356if (input.MoveToFirstChild()) { 1359switch (input.NodeType) { 1361if (input.IsXsltKeyword(atoms.WithParam)) { 1365} else if (flags == InstructionFlags.AllowSort && input.IsXsltKeyword(atoms.Sort)) { 1367} else if (flags == InstructionFlags.AllowFallback && input.IsXsltKeyword(atoms.Fallback)) { 1370ReportError(/*[XT_016]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 1371input.SkipNode(); 1378Debug.Assert(input.NodeType == XmlNodeType.Text); 1382} while (input.MoveToNextSibling()); 1389ContextInfo ctxInfo = input.GetAttributes(); 1390if (!input.CanHaveApplyImports) { 1392input.SkipNode(); 1398ctxInfo.SaveExtendedLineInfo(input); 1403if (!input.ForwardCompatibility) { 1415return SetInfo(f.ApplyImports(/*Mode:*/curTemplate.Mode, curStylesheet, input.XslVersion), content, ctxInfo); 1424ContextInfo ctxInfo = input.GetAttributes(applyTemplatesAttributes); 1433ctxInfo.SaveExtendedLineInfo(input); 1434return SetInfo(f.ApplyTemplates(mode, select, ctxInfo, input.XslVersion), 1445ContextInfo ctxInfo = input.GetAttributes(callTemplateAttributes); 1449ctxInfo.SaveExtendedLineInfo(input); 1463ContextInfo ctxInfo = input.GetAttributes(copyAttributes); 1471if (input.MoveToXsltAttribute(2, "use-attribute-sets")) { 1488ContextInfo ctxInfo = input.GetAttributes(copyOfAttributes); 1497return SetInfo(f.CopyOf(select, input.XslVersion), null, ctxInfo); 1503input.GetAttributes(); 1504input.SkipNode(); 1512ContextInfo ctxInfo = input.GetAttributes(ifAttributes); 1515return SetInfo(f.If(test, input.XslVersion), LoadInstructions(), ctxInfo); 1519ContextInfo ctxInfo = input.GetAttributes(); 1525QName parentName = input.ElementName; 1526if (input.MoveToFirstChild()) { 1528switch (input.NodeType) { 1531if (Ref.Equal(input.NamespaceUri, atoms.UriXsl)) { 1532if (Ref.Equal(input.LocalName, atoms.When)) { 1535input.SkipNode(); 1541} else if (Ref.Equal(input.LocalName, atoms.Otherwise)) { 1544input.SkipNode(); 1553ReportError(/*[XT_020]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 1554input.SkipNode(); 1563Debug.Assert(input.NodeType == XmlNodeType.Text); 1567} while (input.MoveToNextSibling()); 1574ContextInfo ctxInfo = input.GetAttributes(); 1582ContextInfo ctxInfo = input.GetAttributes(forEachAttributes); 1586input.CanHaveApplyImports = false; 1588ctxInfo.SaveExtendedLineInfo(input); 1590return SetInfo(f.ForEach(select, ctxInfo, input.XslVersion), 1602ContextInfo ctxInfo = input.GetAttributes(messageAttributes); 1612content.Insert(0, f.CopyOf(select, input.XslVersion)); 1634ContextInfo ctxInfo = input.GetAttributes(numberAttributes); 1640if (input.MoveToXsltAttribute(2, "level")) { 1641switch (input.Value) { 1646if (!input.ForwardCompatibility) { 1647ReportError(/*[XT_022]*/Res.Xslt_InvalidAttrValue, "level", input.Value); 1671input.XslVersion 1684ContextInfo ctxInfo = input.GetAttributes(valueOfAttributes); 1691if (!input.BackwardCompatibility) { 1702input.SkipNode(); 1708CheckError(select == null && content.Count == 0, /*[???]*/Res.Xslt_NoSelectNoContent, input.ElementName); 1715return SetInfo(f.XslNode(doe ? XslNodeType.ValueOfDoe : XslNodeType.ValueOf, null, select, input.XslVersion), 1751string localName = input.LocalName; 1760ContextInfo ctxInfo = input.GetAttributes( 1771if (!input.ForwardCompatibility) { 1786if (!input.ForwardCompatibility) { 1797VarPar result = f.VarPar(nodeType, name, select, input.XslVersion); 1808ContextInfo ctxInfo = input.GetAttributes(commentAttributes); 1816QName parentName = input.ElementName; 1833ContextInfo ctxInfo = input.GetAttributes(processingInstructionAttributes); 1838return SetInfo(f.PI(name, input.XslVersion), LoadContent(select != null), ctxInfo); 1846ContextInfo ctxInfo = input.GetAttributes(textAttributes); 1854QName parentName = input.ElementName; 1855if (input.MoveToFirstChild()) { 1857switch (input.NodeType) { 1862content.Add(f.Text(input.Value, hints)); 1865Debug.Assert(input.NodeType == XmlNodeType.Element); 1866ReportError(/*[XT_023]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 1867input.SkipNode(); 1870} while (input.MoveToNextSibling()); 1888ContextInfo ctxInfo = input.GetAttributes(elementAttributes); 1901if (input.MoveToXsltAttribute(3, "use-attribute-sets")) { 1904return SetInfo(f.Element(name, ns, input.XslVersion), 1920ContextInfo ctxInfo = input.GetAttributes(attributeAttributes); 1935return SetInfo(f.Attribute(name, ns, input.XslVersion), LoadContent(select != null), ctxInfo); 1950ContextInfo ctxInfo = input.GetAttributes(sortAttributes); 1979return SetInfo(f.Sort(select, lang, dataType, order, caseOrder, input.XslVersion), 2310Debug.Assert(input.NodeType == XmlNodeType.Element); 2311string prefix = input.Prefix; 2312string name = input.LocalName; 2313string nsUri = input.NamespaceUri; 2315ContextInfo ctxInfo = input.GetLiteralAttributes(asStylesheet); 2317if (input.IsExtensionNamespace(nsUri)) { 2324for (int i = 1; input.MoveToLiteralAttribute(i); i++) { 2325if (input.IsXsltNamespace() && input.IsKeyword(atoms.UseAttributeSets)) { 2330for (int i = 1; input.MoveToLiteralAttribute(i); i++) { 2331if (! input.IsXsltNamespace()) { 2332XslNode att = f.LiteralAttribute(f.QName(input.LocalName, input.NamespaceUri, input.Prefix), input.Value, input.XslVersion); 2364if (compiler.IsDebug && !input.IsEmptyElement) { 2365AddInstruction(content, SetLineInfo(f.Nop(), input.BuildLineInfo())); 2371input.GetVersionAttribute(); 2372if (!input.ForwardCompatibility) { 2373ReportError(/*[XT_026]*/Res.Xslt_UnexpectedElement, input.QualifiedName, parentName); 2374input.SkipNode(); 2377ContextInfo ctxInfo = input.GetAttributes(); 2378List<XslNode> fallbacks = LoadFallbacks(input.LocalName); 2384input.MoveToElement(); 2385ISourceLineInfo extElmLineInfo = input.BuildNameLineInfo(); 2389if (input.MoveToFirstChild()) { 2391if (input.IsXsltKeyword(atoms.Fallback)) { 2392ContextInfo ctxInfo = input.GetAttributes(); 2395input.SkipNode(); 2397} while (input.MoveToNextSibling()); 2417if (! input.MoveToXsltAttribute(attNum, "mode")) { 2422string qname = input.Value; 2435if (!compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 2445if (! input.MoveToXsltAttribute(attNum, "mode")) { 2449string modeList = input.Value; 2487if (!compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 2503if (input.MoveToXsltAttribute(attNum, "collation")) { 2525namespaceName = input.LookupXmlNamespace(prefix); 2536bool required = input.IsRequiredAttribute(attNum); 2541if (input.MoveToXsltAttribute(attNum, "name")) { 2543if (ResolveQName(/*ignoreDefaultNs:*/true, input.Value, out localName, out namespaceName, out prefix)) { 2548compiler.ExitForwardsCompatible(input.ForwardCompatibility); 2557Debug.Assert(input.IsRequiredAttribute(attNum), "It happened that @name as NCName is always required attribute"); 2558if (input.MoveToXsltAttribute(attNum, "name")) { 2559return input.Value; 2589namespaceName = input.LookupXmlNamespace(prefix); 2621if (!input.ForwardCompatibility) { 2630Debug.Assert(input.LocalName == "use-attribute-sets", "we are positioned on this attribute"); 2634foreach (string qname in XmlConvert.SplitString(input.Value)) { 2635AddInstruction(list, SetLineInfo(f.UseAttributeSet(CreateXPathQName(qname)), input.BuildLineInfo())); 2637if (!compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 2645if (input.MoveToXsltAttribute(attNum, "use-character-maps")) { 2647foreach (string qname in XmlConvert.SplitString(input.Value)) { 2650if (!compiler.ExitForwardsCompatible(input.ForwardCompatibility)) { 2658if (input.MoveToXsltAttribute(attNum, attName)) { 2659return input.Value; 2665if (input.MoveToXsltAttribute(attNum, attName)) { 2666if (input.Value.Length == 1) { 2667return input.Value[0]; 2669if (input.IsRequiredAttribute(attNum) || !input.ForwardCompatibility) { 2679Debug.Assert(!input.IsRequiredAttribute(attNum), "All Yes/No attributes are optional."); 2680if (input.MoveToXsltAttribute(attNum, attName)) { 2681switch (input.Value) { 2685if (!input.ForwardCompatibility) { 2695Debug.Assert(!input.IsRequiredAttribute(attNum), "All 'type' attributes are optional."); 2696if (input.MoveToXsltAttribute(attNum, "type")) { 2702Debug.Assert(!input.IsRequiredAttribute(attNum), "All 'validation' attributes are optional."); 2704if (input.MoveToXsltAttribute(attNum, attributeName)) { 2705string value = input.Value; 2714} else if (!input.ForwardCompatibility) { 2721Debug.Assert(!input.IsRequiredAttribute(attNum), "All 'input-type-validation' attributes are optional."); 2722if (input.MoveToXsltAttribute(attNum, "input-type-annotations")) { 2723string value = input.Value; 2736if (!input.ForwardCompatibility) { 2747input.MoveToElement(); 2748QName parentName = input.ElementName; 2761if (input.MoveToFirstChild()) { 2764if (input.NodeType != XmlNodeType.Whitespace) { 2766result = input.BuildNameLineInfo(); 2768input.SkipNode(); 2770} while (input.MoveToNextSibling()); 2834compiler.ReportError(input.BuildNameLineInfo(), res, args); 2838compiler.ReportWarning(input.BuildNameLineInfo(), res, args); 2842if (! input.ForwardCompatibility) { 2849compiler.ReportError(input.BuildNameLineInfo(), res, args);