kawa.lang

Class TemplateScope

Implemented Interfaces:
Externalizable, org.xml.sax.Locator, Named, Printable, SourceLocator

public class TemplateScope
extends LetExp
implements Externalizable

A scope created when expanding a SyntaxTemplate. This is used to ensure proper "hygiene".

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

NEXT_AVAIL_FLAG, flags, noExpressions

Constructor Summary

TemplateScope()
TemplateScope(ScopeExp outer)

Method Summary

static TemplateScope
make()
static TemplateScope
make(Translator tr)
void
readExternal(ObjectInput in)
void
writeExternal(ObjectOutput out)

Methods inherited from class gnu.expr.LetExp

apply, compile, getBody, getType, mustCompile, print, print, setBody, walk, 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, walk

Methods inherited from class gnu.expr.Expression

apply, apply0, compile, compile, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, eval, eval, getColumnNumber, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getSystemId, getType, inline, isStableSourceLocation, makeWhile, match0, mustCompile, print, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLocation, side_effects, toString, valueIfConstant, walk, walkChildren

Methods inherited from class gnu.mapping.Procedure0

apply0, apply1, apply2, apply3, apply4, applyN, numArgs

Methods inherited from class gnu.mapping.Procedure

apply, apply, apply0, apply1, apply2, apply3, apply4, applyN, check0, check1, check2, check3, check4, checkArgCount, checkN, getSetter, getSourceLocation, match0, match1, match2, match3, match4, matchN, maxArgs, minArgs, numArgs, set0, set1, setN, setSetter, setSourceLocation, toString

Methods inherited from class gnu.mapping.PropertySet

getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol

Constructor Details

TemplateScope

public TemplateScope()

TemplateScope

public TemplateScope(ScopeExp outer)

Method Details

make

public static TemplateScope make()

make

public static TemplateScope make(Translator tr)

readExternal

public void readExternal(ObjectInput in)
            throws IOException,
                   ClassNotFoundException

writeExternal

public void writeExternal(ObjectOutput out)
            throws IOException