kawa.standard
Class define

java.lang.Object
  extended by kawa.lang.Syntax
      extended by kawa.standard.define
All Implemented Interfaces:
Named, Printable

public class define
extends Syntax

The Syntax transformer that re-writes the "%define" internal form. This is used to implement define, define-private, and define-constant. Syntax: (%define name code type value). The name is an identifier (String or Symbol) or Declaration. The code is an integer mask, where 1 means type specified, 2 means a function definition, 4 means private, and 8 means constant. The type is the declarated type or null. The value is the initializing value. *


Field Summary
static define defineRaw
           
 
Constructor Summary
define(Lambda lambda)
           
 
Method Summary
 Expression rewriteForm(Pair form, Translator tr)
           
 void scanForm(Pair st, ScopeExp defs, Translator tr)
           
 
Methods inherited from class kawa.lang.Syntax
getName, getSymbol, print, rewrite, rewriteForm, scanForDefinitions, setName, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

defineRaw

public static final define defineRaw
Constructor Detail

define

public define(Lambda lambda)
Method Detail

scanForm

public void scanForm(Pair st,
                     ScopeExp defs,
                     Translator tr)
Overrides:
scanForm in class Syntax

rewriteForm

public Expression rewriteForm(Pair form,
                              Translator tr)
Overrides:
rewriteForm in class Syntax