kawa.lang
Class AutoloadProcedure

java.lang.Object
  extended by gnu.mapping.PropertySet
      extended by gnu.mapping.Procedure
          extended by kawa.lang.AutoloadProcedure
All Implemented Interfaces:
Named, java.io.Externalizable, java.io.Serializable

public class AutoloadProcedure
extends Procedure
implements java.io.Externalizable

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

See Also:
Serialized Form

Constructor Summary
AutoloadProcedure()
           
AutoloadProcedure(java.lang.String name, java.lang.String className)
           
AutoloadProcedure(java.lang.String name, java.lang.String className, Language language)
           
 
Method Summary
 java.lang.Object apply0()
           
 java.lang.Object apply1(java.lang.Object arg1)
           
 java.lang.Object apply2(java.lang.Object arg1, java.lang.Object arg2)
           
 java.lang.Object apply3(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
           
 java.lang.Object apply4(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
           
 java.lang.Object applyN(java.lang.Object[] args)
           
 Procedure getLoaded()
           
 java.lang.Object getProperty(java.lang.Object key, java.lang.Object defaultValue)
           
 Procedure getSetter()
           
 int numArgs()
          Return minArgs()|(maxArgs<<12).
 void print(java.io.PrintWriter ps)
           
 void readExternal(java.io.ObjectInput in)
           
 void writeExternal(java.io.ObjectOutput out)
           
 
Methods inherited from class gnu.mapping.Procedure
apply, apply, check0, check1, check2, check3, check4, checkArgCount, checkN, getSourceLocation, match0, match1, match2, match3, match4, matchN, maxArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
 
Methods inherited from class gnu.mapping.PropertySet
getName, 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

AutoloadProcedure

public AutoloadProcedure()

AutoloadProcedure

public AutoloadProcedure(java.lang.String name,
                         java.lang.String className)

AutoloadProcedure

public AutoloadProcedure(java.lang.String name,
                         java.lang.String className,
                         Language language)
Method Detail

print

public void print(java.io.PrintWriter ps)

getLoaded

public Procedure getLoaded()

numArgs

public int numArgs()
Description copied from class: Procedure
Return minArgs()|(maxArgs<<12).

Overrides:
numArgs in class Procedure

apply0

public java.lang.Object apply0()
                        throws java.lang.Throwable
Specified by:
apply0 in class Procedure
Throws:
java.lang.Throwable

apply1

public java.lang.Object apply1(java.lang.Object arg1)
                        throws java.lang.Throwable
Specified by:
apply1 in class Procedure
Throws:
java.lang.Throwable

apply2

public java.lang.Object apply2(java.lang.Object arg1,
                               java.lang.Object arg2)
                        throws java.lang.Throwable
Specified by:
apply2 in class Procedure
Throws:
java.lang.Throwable

apply3

public java.lang.Object apply3(java.lang.Object arg1,
                               java.lang.Object arg2,
                               java.lang.Object arg3)
                        throws java.lang.Throwable
Specified by:
apply3 in class Procedure
Throws:
java.lang.Throwable

apply4

public java.lang.Object apply4(java.lang.Object arg1,
                               java.lang.Object arg2,
                               java.lang.Object arg3,
                               java.lang.Object arg4)
                        throws java.lang.Throwable
Specified by:
apply4 in class Procedure
Throws:
java.lang.Throwable

applyN

public java.lang.Object applyN(java.lang.Object[] args)
                        throws java.lang.Throwable
Specified by:
applyN in class Procedure
Throws:
java.lang.Throwable

getSetter

public Procedure getSetter()
Overrides:
getSetter in class Procedure

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException
Specified by:
writeExternal in interface java.io.Externalizable
Throws:
java.io.IOException

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
Specified by:
readExternal in interface java.io.Externalizable
Throws:
java.io.IOException
java.lang.ClassNotFoundException

getProperty

public java.lang.Object getProperty(java.lang.Object key,
                                    java.lang.Object defaultValue)
Overrides:
getProperty in class PropertySet