Package com.oracle.truffle.object.basic
Class BasicLocations.LongFieldLocation
java.lang.Object
com.oracle.truffle.api.object.Location
com.oracle.truffle.object.LocationImpl
com.oracle.truffle.object.basic.BasicLocations.FieldLocation
com.oracle.truffle.object.basic.BasicLocations.MethodHandleFieldLocation
com.oracle.truffle.object.basic.BasicLocations.LongFieldLocation
- All Implemented Interfaces:
BaseLocation
,LongLocation
,TypedLocation
,LocationImpl.InternalLongLocation
- Enclosing class:
- BasicLocations
public static class BasicLocations.LongFieldLocation
extends BasicLocations.MethodHandleFieldLocation
implements LocationImpl.InternalLongLocation
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.object.LocationImpl
LocationImpl.EffectivelyFinalLocation<T extends Location>, LocationImpl.InternalLongLocation, LocationImpl.TypedObjectLocation<T extends Location & ObjectLocation>
-
Field Summary
Fields inherited from class com.oracle.truffle.object.basic.BasicLocations.MethodHandleFieldLocation
getter, setter
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
Returnstrue
if the location is compatible with the value.static LongLocation
create
(LocationImpl.InternalLongLocation longLocation, boolean allowInt) final Object
get
(DynamicObject store, boolean condition) Get object value as object at this location in store.long
getLong
(DynamicObject store, boolean condition) final long
getLong
(DynamicObject store, Shape shape) getType()
The type of this location.final int
Get the number of in-object primitive fields this location requires.final void
setInternal
(DynamicObject store, Object value) LikeLocation.set(DynamicObject, Object, Shape)
, but does not invalidate final locations.final void
setLong
(DynamicObject store, long value) void
setLong
(DynamicObject store, long value, Shape shape) final void
setLong
(DynamicObject store, long value, Shape oldShape, Shape newShape) final void
setLongInternal
(DynamicObject store, long value) Methods inherited from class com.oracle.truffle.object.basic.BasicLocations.FieldLocation
equals, getIndex, getWhereString, hashCode
Methods inherited from class com.oracle.truffle.object.LocationImpl
canSet, canStoreFinal, getInternal, isConstant, isFinal, objectArrayCount, objectFieldCount, primitiveArrayCount, set, toString, valueEquals
Methods inherited from class com.oracle.truffle.api.object.Location
checkShape, finalLocation, get, incompatibleLocation, set, set
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.oracle.truffle.api.object.BaseLocation
get, set, set, set
-
Constructor Details
-
LongFieldLocation
-
-
Method Details
-
create
-
get
Description copied from interface:BaseLocation
Get object value as object at this location in store. For internal use only and subject to change, useBaseLocation.get(DynamicObject, Shape)
instead.- Specified by:
get
in interfaceBaseLocation
- Overrides:
get
in classLocation
condition
- the result of a shape check orfalse
- See Also:
-
setInternal
public final void setInternal(DynamicObject store, Object value) throws IncompatibleLocationException Description copied from class:Location
LikeLocation.set(DynamicObject, Object, Shape)
, but does not invalidate final locations. For internal use only and subject to change, useDynamicObjectFactory
to create objects with predefined properties.- Specified by:
setInternal
in classLocationImpl
- Throws:
IncompatibleLocationException
- if value is of non-assignable type
-
canStore
Description copied from class:Location
Returnstrue
if the location is compatible with the value. The value may still be rejected ifLocation.canSet(DynamicObject, Object)
returns false.- Overrides:
canStore
in classLocationImpl
- Parameters:
value
- the value in question
-
setLong
- Specified by:
setLong
in interfaceLongLocation
- See Also:
-
getLong
- Specified by:
getLong
in interfaceLongLocation
- See Also:
-
setLong
- Specified by:
setLong
in interfaceLongLocation
- See Also:
-
setLong
- Specified by:
setLong
in interfaceLongLocation
- Throws:
FinalLocationException
- See Also:
-
setLongInternal
- Specified by:
setLongInternal
in interfaceLocationImpl.InternalLongLocation
-
getLong
- Specified by:
getLong
in interfaceLongLocation
- See Also:
-
primitiveFieldCount
public final int primitiveFieldCount()Description copied from class:LocationImpl
Get the number of in-object primitive fields this location requires.- Overrides:
primitiveFieldCount
in classLocationImpl
-
getType
Description copied from interface:TypedLocation
The type of this location.- Specified by:
getType
in interfaceLongLocation
- Specified by:
getType
in interfaceTypedLocation
-