//////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //Expression visitors //////////////////////////////////////////////////////////////////////////// public override Expression visit(ProgramVariableExpression v) { if (subExpressions.tryAdd(v.name)) { firstOccurenceVariables.Add(v.name); } return(checkReplace(v)); }
public Expression visit(ProgramVariableExpression e) { addExpression(e); Debug.Assert(e.type.freeTypeVariables.Count == 0); e.type.visit(this); return(e); }
public virtual Expression visit(ProgramVariableExpression e) { ProgramVariable newV = visitReadProgramVariable(e.programVariable); if (!ReferenceEquals(e.programVariable, newV)) { return(new BasicProgramVariableExpression(newV)); } else { return(e); } }
public Expression visit(ProgramVariableExpression e) { symbols.Add(e.programVariable.name); return(e); }
public Expression visit(ProgramVariableExpression e) { return(e); }