Package gnu.kawa.functions
Class NamedPart
- java.lang.Object
-
- gnu.mapping.PropertySet
-
- gnu.mapping.Procedure
-
- gnu.mapping.ProcedureN
-
- gnu.kawa.functions.NamedPart
-
- All Implemented Interfaces:
HasSetter
,Named
,Externalizable
,Serializable
public class NamedPart extends ProcedureN implements HasSetter, Externalizable
A reference to a named feature/part of a specific object.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
NamedPart.Setter
-
Field Summary
-
Fields inherited from class gnu.mapping.ProcedureN
applyToObject, noArgs
-
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
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
applyN(Object[] args)
Procedure
getSetter()
int
numArgs()
ReturnminArgs()|(maxArgs<<12)
.void
readExternal(ObjectInput in)
void
set0(Object value)
If HasSetter, the Procedure is called in the LHS of an assignment.void
set1(Object object, Object value)
void
writeExternal(ObjectOutput out)
-
Methods inherited from class gnu.mapping.ProcedureN
applyToObject
-
Methods inherited from class gnu.mapping.Procedure
apply0, apply1, apply2, apply3, apply4, applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, setN, setSetter, setSourceLocation, toString
-
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
-
-
-
Constructor Detail
-
NamedPart
public NamedPart(Object container, String mname, char kind, MethodProc methods)
-
-
Method Detail
-
numArgs
public int numArgs()
Description copied from class:Procedure
ReturnminArgs()|(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.
-
getSetter
public Procedure getSetter()
-
set0
public void set0(Object value) throws Throwable
Description copied from class:Procedure
If HasSetter, the Procedure is called in the LHS of an assignment.
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-
-