gnu.expr
Class ConsumerTarget

java.lang.Object
  extended by gnu.expr.Target
      extended by gnu.expr.ConsumerTarget

public class ConsumerTarget
extends Target

A Target which is some variable that implements gnu.lists.Consumer.


Field Summary
 
Fields inherited from class gnu.expr.Target
Ignore, pushObject
 
Constructor Summary
ConsumerTarget(Variable consumer)
           
 
Method Summary
 void compileFromStack(Compilation comp, Type stackType)
           
static void compileUsingConsumer(Expression exp, Compilation comp, Target target)
          Compile an expression using a temporary Consumer, if needed.
static void compileUsingConsumer(Expression exp, Compilation comp, Target target, Method makeMethod, Method resultMethod)
           
 boolean compileWrite(Expression exp, Compilation comp)
           
 Variable getConsumerVariable()
           
 Type getType()
           
 boolean isContextTarget()
          True iff this target is the current CallContext's current Consumer.
static Target makeContextTarget(Compilation comp)
          Make a Target that uses the current CallContext's current Consumer.
 
Methods inherited from class gnu.expr.Target
pushValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConsumerTarget

public ConsumerTarget(Variable consumer)
Method Detail

getConsumerVariable

public Variable getConsumerVariable()

isContextTarget

public final boolean isContextTarget()
True iff this target is the current CallContext's current Consumer.


makeContextTarget

public static Target makeContextTarget(Compilation comp)
Make a Target that uses the current CallContext's current Consumer.


compileUsingConsumer

public static void compileUsingConsumer(Expression exp,
                                        Compilation comp,
                                        Target target)
Compile an expression using a temporary Consumer, if needed.


compileUsingConsumer

public static void compileUsingConsumer(Expression exp,
                                        Compilation comp,
                                        Target target,
                                        Method makeMethod,
                                        Method resultMethod)

compileFromStack

public void compileFromStack(Compilation comp,
                             Type stackType)
Specified by:
compileFromStack in class Target

compileWrite

public boolean compileWrite(Expression exp,
                            Compilation comp)

getType

public Type getType()
Specified by:
getType in class Target