gnu.commonlisp.lang
Class defun

java.lang.Object
  extended by kawa.lang.Syntax
      extended by gnu.commonlisp.lang.defun
All Implemented Interfaces:
Named, Printable

public class defun
extends Syntax
implements Printable

The Syntax transformer that re-writes the `defun' ELisp builtin.


Constructor Summary
defun(Lambda lambdaSyntax)
           
 
Method Summary
 Expression rewriteForm(Pair form, Translator tr)
           
 boolean scanForDefinitions(Pair st, java.util.Vector forms, ScopeExp defs, Translator tr)
          Check if a statement is a definition, for initial pass.
 
Methods inherited from class kawa.lang.Syntax
getName, getSymbol, print, rewrite, rewriteForm, scanForm, setName, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gnu.mapping.Printable
print
 

Constructor Detail

defun

public defun(Lambda lambdaSyntax)
Method Detail

scanForDefinitions

public boolean scanForDefinitions(Pair st,
                                  java.util.Vector forms,
                                  ScopeExp defs,
                                  Translator tr)
Description copied from class: Syntax
Check if a statement is a definition, for initial pass. Semi-deprecated - should convert calls to use scanForm.

Overrides:
scanForDefinitions in class Syntax
Parameters:
st - the statement to check
forms - where to append the (possibly-modified) statement
defs - where to add Declarations for found definitions
tr - the compilation state
Returns:
true on success

rewriteForm

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