org.millscript.millscript.expr
Class BindingFromToExpr

java.lang.Object
  extended by org.millscript.millscript.expr.Expr<A>
      extended by org.millscript.millscript.expr.ForConditionExpr<A>
          extended by org.millscript.millscript.expr.BindingExpr<BindingFromToAction>
              extended by org.millscript.millscript.expr.BindingFromToExpr

public final class BindingFromToExpr
extends BindingExpr<BindingFromToAction>

This class represents a for loop from-to counter binding expression. A from-to counter expression binds a counter to a name, where the counter increases on each iteration, up to a specified value. This condition will cause the for loop to terminate when the counter reaches the end value.


Constructor Summary
BindingFromToExpr(NameExpr n, Expr<?> f, Expr<?> t)
          Constructs a new from-to counter binding expression, with the suplied name, starting point and end point expressions.
 
Method Summary
 BindingFromToAction 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

BindingFromToExpr

public BindingFromToExpr(NameExpr n,
                         Expr<?> f,
                         Expr<?> t)
Constructs a new from-to counter binding expression, with the suplied name, starting point and end point expressions.

Parameters:
n - the name expression to bind to
f - the counter starting point expression
t - the counter end point expression
Method Detail

compileIt

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

Specified by:
compileIt in class Expr<BindingFromToAction>
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<BindingFromToAction>
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.