org.millscript.millscript.expr
Class InitExpr

java.lang.Object
  extended by org.millscript.millscript.expr.Expr<InitAction>
      extended by org.millscript.millscript.expr.InitExpr
All Implemented Interfaces:
ZeroResults

public final class InitExpr
extends Expr<InitAction>
implements ZeroResults

This class implements a init expression. This expression will never return any results, as we are running the initialiser on an object, not constructing a new one.

See Also:
InitSyntax, InitAction

Constructor Summary
InitExpr(Expr<?> f, Expr<?> a)
          Creates a new init expression for the specified function and arguments expressions.
 
Method Summary
 InitAction compileIt()
          Compiles this expression into an action.
 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

InitExpr

public InitExpr(Expr<?> f,
                Expr<?> a)
Creates a new init expression for the specified function and arguments expressions.

Parameters:
f - the function expression, which must return a function as a single result
a - the arguments expression, which can return zero or more results
Method Detail

compileIt

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

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

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<InitAction>
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.