package de.gaalop.dfg; /** * Represents a reference to an argument passed to a macro. Arguments are referenced by <code>_P(x)</code>, where x is * the index to the argument array, starting with 1. Once a macro is called at any location in the input, the macro * should be inlined, using the actual parameters rather than this reference. * * @author Christian Schwinn * */ public class FunctionArgument extends Variable { private int index; public FunctionArgument(int index) { super("_P(" + index + ")"); this.index = index; } @Override public void accept(ExpressionVisitor visitor) { visitor.visit(this); } @Override public FunctionArgument copy() { return new FunctionArgument(index); } public int getIndex() { return index; } }