public override object Evaluate(NodeEvaluationContext evaluationContext) { Debug.Assert(evaluationContext != null); exceptionHelper.ResolveAndThrowIf(!evaluationContext.HasArgument(this.index), "ArgumentNotFound", this.index); // variable values are passed inside the context for each evaluation return(evaluationContext.GetArgument(this.index)); }