Package kawa.lang
Class AutoloadProcedure
- java.lang.Object
-
- gnu.mapping.PropertySet
-
- gnu.mapping.Procedure
-
- 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
-
-
Field Summary
-
Fields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
-
Fields inherited from class gnu.mapping.PropertySet
nameKey
-
-
Constructor Summary
Constructors Constructor Description AutoloadProcedure()AutoloadProcedure(java.lang.String name, java.lang.String className)AutoloadProcedure(java.lang.String name, java.lang.String className, Language language)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectapply0()java.lang.Objectapply1(java.lang.Object arg1)java.lang.Objectapply2(java.lang.Object arg1, java.lang.Object arg2)java.lang.Objectapply3(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)java.lang.Objectapply4(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)java.lang.ObjectapplyN(java.lang.Object[] args)ProceduregetLoaded()java.lang.ObjectgetProperty(java.lang.Object key, java.lang.Object defaultValue)ProceduregetSetter()intnumArgs()ReturnminArgs()|(maxArgs<<12).voidprint(java.io.PrintWriter ps)voidreadExternal(java.io.ObjectInput in)voidwriteExternal(java.io.ObjectOutput out)-
Methods inherited from class gnu.mapping.Procedure
applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
-
Methods inherited from class gnu.mapping.PropertySet
getName, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
-
-
-
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:ProcedureReturnminArgs()|(maxArgs<<12). We use a single virtual function to reduce the number of methods in the system, as well as the number of virtual method table entries. We shift by 12 so the number can normally be represented using a sipush instruction, without requiring a constant pool entry.
-
apply0
public java.lang.Object apply0() throws java.lang.Throwable
-
apply1
public java.lang.Object apply1(java.lang.Object arg1) throws java.lang.Throwable
-
apply2
public java.lang.Object apply2(java.lang.Object arg1, java.lang.Object arg2) 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
-
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
-
applyN
public java.lang.Object applyN(java.lang.Object[] args) throws java.lang.Throwable
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException- Specified by:
writeExternalin interfacejava.io.Externalizable- Throws:
java.io.IOException
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException- Specified by:
readExternalin interfacejava.io.Externalizable- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
getProperty
public java.lang.Object getProperty(java.lang.Object key, java.lang.Object defaultValue)- Overrides:
getPropertyin classPropertySet
-
-