コード例 #1
0
 public void DeclareVariable(XPathCompiledExpression compiledExpression)
 {
     if (_scopeStack is not null)
     {
         _scopeStack.Peek()[compiledExpression.Expression] = default;
     }
 }
コード例 #2
0
        public object Evaluate(XPathCompiledExpression compiledExpression)
        {
            Infra.NotNull(ExecutionContext);

            compiledExpression.SetResolver(this);

            return(new DataModelXPathNavigator(ExecutionContext.DataModel).Evaluate(compiledExpression.XPathExpression) !);
        }
コード例 #3
0
        public XPathLocationExpressionEvaluator(ILocationExpression locationExpression, XPathCompiledExpression compiledExpression)
        {
            _locationExpression = locationExpression;
            _compiledExpression = compiledExpression;

            if (_locationExpression.Is <XPathLocationExpression>(out var xPathLocationExpression))
            {
                _assignType = xPathLocationExpression.AssignType;
                _attribute  = xPathLocationExpression.Attribute;
            }
            else
            {
                _assignType = XPathAssignType.ReplaceChildren;
            }
        }
コード例 #4
0
 public XPathValueExpressionEvaluator(IValueExpression valueExpression, XPathCompiledExpression compiledExpression)
 {
     _valueExpression    = valueExpression;
     _compiledExpression = compiledExpression;
 }
コード例 #5
0
 public string GetName(XPathCompiledExpression compiledExpression) => compiledExpression.Expression;
コード例 #6
0
 public XPathConditionExpressionEvaluator(IConditionExpression conditionExpression, XPathCompiledExpression compiledExpression)
 {
     _conditionExpression = conditionExpression;
     _compiledExpression  = compiledExpression;
 }