|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.erights.e.elib.base.MethodNode | +--org.erights.e.elib.prim.JavaMemberNode | +--org.erights.e.elib.prim.StaticMethodNode
Untamed: How a java static is made to appear as an instance method of an StaticMaker when seen thru E.call*() or E.send*().
Field Summary | |
private static MethodNode |
TheToStringVerb
|
private static MethodNode |
TheTypeVerb
|
Fields inherited from class org.erights.e.elib.prim.JavaMemberNode |
myMember |
Constructor Summary | |
StaticMethodNode(java.lang.reflect.Method method)
Enabled: |
Method Summary | |
static void |
defineMembers(VTable vTable,
Class clazz,
SafeJ safeJ)
Enabled: |
String |
explain(String args)
Enabled: |
String |
getDocComment()
Enabled: |
Object |
innerExecute(Object self,
Object[] args)
Enabled: |
Class[] |
parameterTypes()
Enabled: |
Class |
receiverType()
Enabled: |
Class |
returnType()
Enabled: |
private static MethodNode |
wrapMethod(String verb)
This indirect nonesense is needed because static init expressions may not have Exceptions in need of declaration. |
Methods inherited from class org.erights.e.elib.prim.JavaMemberNode |
addJavaMemberNodesToMap, execute, getArity, getOptTypedVerb, getVerb, makeMessageType, member, optCoerceArgs, shorten, subPrintOn, toString, traceOn |
Methods inherited from class org.erights.e.elib.base.MethodNode |
protocol, respondsTo |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
private static final MethodNode TheTypeVerb
private static final MethodNode TheToStringVerb
Constructor Detail |
public StaticMethodNode(java.lang.reflect.Method method)
Method Detail |
public static void defineMembers(VTable vTable, Class clazz, SafeJ safeJ) throws AlreadyDefinedException
AlreadyDefinedException
public String explain(String args)
explain
in class JavaMemberNode
public Object innerExecute(Object self, Object[] args) throws IllegalAccessException, IllegalArgumentException, java.lang.reflect.InvocationTargetException
innerExecute
in class JavaMemberNode
IllegalArgumentException
- if the number of actual and formal
parameters differ, or if an unwrapping or method
invocation conversion fails.
IllegalAccessException
java.lang.reflect.InvocationTargetException
public Class receiverType()
receiverType
in class JavaMemberNode
public String getDocComment()
getDocComment
in class MethodNode
public Class[] parameterTypes()
parameterTypes
in class JavaMemberNode
public Class returnType()
returnType
in class JavaMemberNode
private static MethodNode wrapMethod(String verb)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |