gnu.expr
Class FluidLetExp

java.lang.Object
  extended by gnu.mapping.PropertySet
      extended by gnu.mapping.Procedure
          extended by gnu.mapping.Procedure0
              extended by gnu.expr.Expression
                  extended by gnu.expr.ScopeExp
                      extended by gnu.expr.LetExp
                          extended by gnu.expr.FluidLetExp
All Implemented Interfaces:
Named, Printable, SourceLocator, org.xml.sax.Locator

public class FluidLetExp
extends LetExp

Class used to implement "fluid-let" for Scheme and "let" for Emacs.


Field Summary
 
Fields inherited from class gnu.expr.LetExp
body, inits
 
Fields inherited from class gnu.expr.ScopeExp
frameSize, id, outer
 
Fields inherited from class gnu.expr.Expression
flags, NEXT_AVAIL_FLAG, noExpressions
 
Constructor Summary
FluidLetExp(Expression[] i)
           
 
Method Summary
 void compile(Compilation comp, Target target)
           
protected  boolean mustCompile()
           
 void print(OutPort out)
           
protected  Expression walk(ExpWalker walker)
           
 
Methods inherited from class gnu.expr.LetExp
apply, getBody, getType, print, setBody, walkChildren, walkInitializers
 
Methods inherited from class gnu.expr.ScopeExp
add, add, addDeclaration, addDeclaration, addDeclaration, countDecls, currentLambda, currentModule, duplicateDeclarationError, firstDecl, getDefine, getNoDefine, getVarScope, lookup, lookup, nesting, popScope, remove, remove, replaceFollowing, setIndexes, toString
 
Methods inherited from class gnu.expr.Expression
apply0, compile, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, eval, eval, getColumnNumber, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getSystemId, inline, isStableSourceLocation, makeWhile, match0, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLocation, side_effects, valueIfConstant
 
Methods inherited from class gnu.mapping.Procedure0
apply1, apply2, apply3, apply4, applyN, numArgs
 
Methods inherited from class gnu.mapping.Procedure
apply, check0, check1, check2, check3, check4, checkArgCount, checkN, getSetter, getSourceLocation, match1, match2, match3, match4, matchN, maxArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation
 
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FluidLetExp

public FluidLetExp(Expression[] i)
Method Detail

mustCompile

protected boolean mustCompile()
Overrides:
mustCompile in class LetExp

compile

public void compile(Compilation comp,
                    Target target)
Overrides:
compile in class LetExp

walk

protected Expression walk(ExpWalker walker)
Overrides:
walk in class LetExp

print

public void print(OutPort out)
Overrides:
print in class LetExp