public class SlotGet extends Procedure2 implements HasSetter, Inlineable
Modifier and Type | Field and Description |
---|---|
static SlotGet |
field |
static SlotGet |
slotRef |
static SlotGet |
staticField |
applyToObject
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
nameKey
Constructor and Description |
---|
SlotGet(java.lang.String name,
boolean isStatic) |
SlotGet(java.lang.String name,
boolean isStatic,
Procedure setter) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
apply2(java.lang.Object arg1,
java.lang.Object arg2) |
void |
compile(ApplyExp exp,
Compilation comp,
Target target) |
static java.lang.Object |
field(java.lang.Object obj,
java.lang.String fname) |
Procedure |
getSetter() |
static java.lang.Object |
getSlotValue(boolean isStatic,
java.lang.Object obj,
java.lang.String name,
java.lang.String fname,
java.lang.String getName,
java.lang.String isName,
Language language)
The actual gets of finding the field value.
|
static Member |
lookupMember(ObjectType clas,
java.lang.String name,
ClassType caller)
Get a named property - field or member class or 'get' accessor method.
|
static ApplyExp |
makeGetField(Expression value,
java.lang.String fieldName)
Convenience method to make an Expression that gets the value of a field.
|
void |
set2(java.lang.Object obj,
java.lang.Object name,
java.lang.Object value) |
void |
setN(java.lang.Object[] args) |
static java.lang.Object |
staticField(java.lang.Object obj,
java.lang.String fname) |
apply0, apply1, apply3, apply4, applyN, applyToObject, numArgs
applyL, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setSetter, setSourceLocation, toString
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
public static final SlotGet field
public static final SlotGet slotRef
public static final SlotGet staticField
public SlotGet(java.lang.String name, boolean isStatic)
public SlotGet(java.lang.String name, boolean isStatic, Procedure setter)
public static java.lang.Object field(java.lang.Object obj, java.lang.String fname)
public static java.lang.Object staticField(java.lang.Object obj, java.lang.String fname)
public java.lang.Object apply2(java.lang.Object arg1, java.lang.Object arg2)
apply2
in class Procedure2
public static java.lang.Object getSlotValue(boolean isStatic, java.lang.Object obj, java.lang.String name, java.lang.String fname, java.lang.String getName, java.lang.String isName, Language language)
public void set2(java.lang.Object obj, java.lang.Object name, java.lang.Object value)
public static Member lookupMember(ObjectType clas, java.lang.String name, ClassType caller)
clas
- the class type declaring the property.name
- the source (unmangled) name of the property.public void compile(ApplyExp exp, Compilation comp, Target target)
compile
in interface Inlineable
public Procedure getSetter()
public static ApplyExp makeGetField(Expression value, java.lang.String fieldName)
value
- evaluates to object that has the named fieldfieldName
- name of field in value