Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ InsertVariable()

int System.Xml.Xsl.XsltOld.Compiler.InsertVariable ( VariableAction variable)
inlinepackage

Definition at line 285 of file Compiler.cs.

286 {
287 InputScope inputScope = ((!variable.IsGlobal) ? _scopeManager.VariableScope : _rootScope);
288 VariableAction variableAction = inputScope.ResolveVariable(variable.Name);
289 if (variableAction != null)
290 {
291 if (!variableAction.IsGlobal)
292 {
293 throw XsltException.Create(System.SR.Xslt_DupVarName, variable.NameStr);
294 }
295 if (variable.IsGlobal)
296 {
297 if (variable.Stylesheetid == variableAction.Stylesheetid)
298 {
299 throw XsltException.Create(System.SR.Xslt_DupVarName, variable.NameStr);
300 }
301 if (variable.Stylesheetid < variableAction.Stylesheetid)
302 {
303 inputScope.InsertVariable(variable);
304 return variableAction.VarKey;
305 }
306 return -1;
307 }
308 }
309 inputScope.InsertVariable(variable);
311 }
static string Xslt_DupVarName
Definition SR.cs:2096
Definition SR.cs:7
TemplateBaseAction _currentTemplate
Definition Compiler.cs:51
InputScopeManager _scopeManager
Definition Compiler.cs:65

References System.Xml.Xsl.XsltOld.Compiler._currentTemplate, System.Xml.Xsl.XsltOld.Compiler._rootScope, System.Xml.Xsl.XsltOld.Compiler._scopeManager, System.Xml.Xsl.XsltOld.TemplateBaseAction.AllocateVariableSlot(), System.Xml.Xsl.XsltException.Create(), System.Xml.Xsl.XsltOld.InputScopeManager.VariableScope, and System.SR.Xslt_DupVarName.