kawa.lang

Class AutoloadProcedure

Implemented Interfaces:
Externalizable, Named

public class AutoloadProcedure
extends Procedure
implements Externalizable

Implement autoloading of Procedures. A named class is loaded, and apply requests are forwarded to it.

Constructor Summary

AutoloadProcedure()
AutoloadProcedure(String name, String className)
AutoloadProcedure(String name, String className, Language language)

Method Summary

Object
apply0()
Object
apply1(Object arg1)
Object
apply2(Object arg1, Object arg2)
Object
apply3(Object arg1, Object arg2, Object arg3)
Object
apply4(Object arg1, Object arg2, Object arg3, Object arg4)
Object
applyN(Object[] args)
Procedure
getLoaded()
Object
getProperty(Object key, Object defaultValue)
Procedure
getSetter()
int
numArgs()
void
print(java.io.PrintWriter ps)
void
readExternal(ObjectInput in)
void
writeExternal(ObjectOutput out)

Methods inherited from class gnu.mapping.Procedure

apply, apply, apply0, apply1, apply2, apply3, apply4, applyN, check0, check1, check2, check3, check4, checkArgCount, checkN, getName, getProperty, getSetter, getSymbol, match0, match1, match2, match3, match4, matchN, maxArgs, minArgs, name, numArgs, removeProperty, set0, set1, setN, setName, setProperty, setProperty, setSetter, setSymbol, toString

Constructor Details

AutoloadProcedure

public AutoloadProcedure()

AutoloadProcedure

public AutoloadProcedure(String name,
                         String className)

AutoloadProcedure

public AutoloadProcedure(String name,
                         String className,
                         Language language)

Method Details

apply0

public Object apply0()
            throws Throwable
Overrides:
apply0 in interface Procedure

apply1

public Object apply1(Object arg1)
            throws Throwable
Overrides:
apply1 in interface Procedure

apply2

public Object apply2(Object arg1,
                     Object arg2)
            throws Throwable
Overrides:
apply2 in interface Procedure

apply3

public Object apply3(Object arg1,
                     Object arg2,
                     Object arg3)
            throws Throwable
Overrides:
apply3 in interface Procedure

apply4

public Object apply4(Object arg1,
                     Object arg2,
                     Object arg3,
                     Object arg4)
            throws Throwable
Overrides:
apply4 in interface Procedure

applyN

public Object applyN(Object[] args)
            throws Throwable
Overrides:
applyN in interface Procedure

getLoaded

public Procedure getLoaded()

getProperty

public Object getProperty(Object key,
                          Object defaultValue)
Overrides:
getProperty in interface Procedure

getSetter

public Procedure getSetter()
Overrides:
getSetter in interface Procedure

numArgs

public int numArgs()
Overrides:
numArgs in interface Procedure

print

public void print(java.io.PrintWriter ps)

readExternal

public void readExternal(ObjectInput in)
            throws IOException,
                   ClassNotFoundException

writeExternal

public void writeExternal(ObjectOutput out)
            throws IOException