gnu.expr

Class SeriesTarget


public class SeriesTarget
extends Target

The value in the result (as a sequence of values) is passed to a function.

Field Summary

Label
done
Where to go when done executing the Expression whose target this is.
Label
function
A function to call (using jsr/jsr_w).
Declaration
param
Where to place each value.
Scope
scope
A surrounding Scope for local Variables.

Fields inherited from class gnu.expr.Target

Ignore, pushObject

Method Summary

void
compileFromStack(Compilation comp, Type stackType)
void
compileFromStackSimple(Compilation comp, Type stackType)
Type
getType()
String
toString()

Methods inherited from class gnu.expr.Target

compileFromStack, getType, pushValue

Field Details

done

public Label done
Where to go when done executing the Expression whose target this is. If null, execution should continue just after the Expression.

function

public Label function
A function to call (using jsr/jsr_w).

param

public Declaration param
Where to place each value.

scope

public Scope scope
A surrounding Scope for local Variables. This Scope should include both any calls to compileFromStackSimple and the entirety of the 'function' subroutine. This is protect against where a variable logically goes out of scope, but we cannot re-use the local variable slot until we're past the 'function'.

Method Details

compileFromStack

public void compileFromStack(Compilation comp,
                             Type stackType)
Overrides:
compileFromStack in interface Target

compileFromStackSimple

public void compileFromStackSimple(Compilation comp,
                                   Type stackType)

getType

public Type getType()
Overrides:
getType in interface Target

toString

public String toString()