Package gnu.kawa.reflect
Class SlotSet
- java.lang.Object
-
- gnu.mapping.PropertySet
-
- gnu.mapping.Procedure
-
- gnu.mapping.Procedure3
-
- gnu.kawa.reflect.SlotSet
-
- All Implemented Interfaces:
Inlineable,Named
public class SlotSet extends Procedure3 implements Inlineable
-
-
Field Summary
Fields Modifier and Type Field Description static SlotSetsetFieldstatic SlotSetsetStaticField-
Fields inherited from class gnu.mapping.Procedure3
applyToObject
-
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 Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidapply(boolean isStatic, Object obj, Object member, Object value)Objectapply3(Object obj, Object fname, Object value)voidcompile(ApplyExp exp, Compilation comp, Target target)static MemberlookupMember(ObjectType clas, String name, ClassType caller)Get a setter property - field or 'set' accessor method.static voidsetField(Object obj, String name, Object value)static voidsetStaticField(Object obj, String name, Object value)-
Methods inherited from class gnu.mapping.Procedure3
apply0, apply1, apply2, apply4, applyN, applyToObject, numArgs
-
Methods inherited from class gnu.mapping.Procedure
applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
-
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
-
-
-
Constructor Detail
-
SlotSet
public SlotSet(String name, boolean isStatic)
-
-
Method Detail
-
apply3
public Object apply3(Object obj, Object fname, Object value)
- Specified by:
apply3in classProcedure3
-
lookupMember
public static Member lookupMember(ObjectType clas, String name, ClassType caller)
Get a setter property - field or 'set' accessor method.- Parameters:
clas- the class type declaring the property.name- the source (unmangled) name of the property. Note if a method is returned it may not be the most specific/appropriate, since we don't take the setter value into account here. Therefore it is best to just use the method name, and do a second lookup that takes arguments into account, as in CompileReflect#makeSetterCall.
-
compile
public void compile(ApplyExp exp, Compilation comp, Target target)
- Specified by:
compilein interfaceInlineable
-
-