public override Result VisitPathName([NotNull] OclParser.PathNameContext context) { for (int i = this.vars.Count - 1; i >= 0; i--) { if (this.vars[i].ContainsKey(context.NAME()[0].GetText())) { return(this.vars[i][context.NAME()[0].GetText()]); } } return(new StringResult(context.NAME()[0].GetText())); }
/// <summary> /// Visit a parse tree produced by <see cref="OclParser.pathName"/>. /// <para> /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/> /// on <paramref name="context"/>. /// </para> /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public virtual Result VisitPathName([NotNull] OclParser.PathNameContext context) { return(VisitChildren(context)); }