org.millscript.millscript.expr
Class SpiceClassSlotExpr

java.lang.Object
  extended by org.millscript.millscript.expr.Expr<Action>
      extended by org.millscript.millscript.expr.SpiceClassSlotExpr

public final class SpiceClassSlotExpr
extends Expr<Action>

This class represents a class slot initialisation expression.

See Also:
SpiceClassExpr, org.millscript.millscript.action.SpiceClassSlotAction

Constructor Summary
SpiceClassSlotExpr(SlotFunction sf, Expr<?> sv)
          Constructs a new class slot initialisation expression.
 
Method Summary
 Action compileIt()
          Compiles this expression into an action.
 SlotFunction getSlotFunction()
          Returns the slot function which accesses this slot.
 Expr<?> getSlotValue()
          Returns the expression for the initial value of this slot.
 void resolve(CompilerState state)
          Resolves any NameExpr in the tree so that they refer to the correct ident.
 
Methods inherited from class org.millscript.millscript.expr.Expr
arity, compile, isIntegerExpr, resolveList, setLineNumber, setOrigin, show, show
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpiceClassSlotExpr

public SpiceClassSlotExpr(SlotFunction sf,
                          Expr<?> sv)
Constructs a new class slot initialisation expression.

Parameters:
sf - the accessor function for this slot
sv - the initial value expression for this slot
Method Detail

compileIt

public Action compileIt()
Description copied from class: Expr
Compiles this expression into an action.

Specified by:
compileIt in class Expr<Action>
Returns:
the Action for this expression
See Also:
Expr.compileIt()

getSlotFunction

public SlotFunction getSlotFunction()
Returns the slot function which accesses this slot.

Returns:
the SlotFunction to access this slot

getSlotValue

public Expr<?> getSlotValue()
Returns the expression for the initial value of this slot.

Returns:
the Expr for the initial value of this slot

resolve

public void resolve(CompilerState state)
Description copied from class: Expr
Resolves any NameExpr in the tree so that they refer to the correct ident. e.g. This method is responsible for ensuring that references to a function argument in the body of a function actually refer to the correct value.

Specified by:
resolve in class Expr<Action>
Parameters:
state - the compiler state we are resolving in
See Also:
Expr.resolve(org.millscript.millscript.vm.CompilerState)


Copyright © 2001-2007 Open World Ltd. All Rights Reserved.