Package com.oracle.truffle.object.basic
Class BasicLocations.DoubleLocationDecorator
java.lang.Object
com.oracle.truffle.api.object.Location
com.oracle.truffle.object.LocationImpl
com.oracle.truffle.object.basic.BasicLocations.PrimitiveLocationDecorator
com.oracle.truffle.object.basic.BasicLocations.DoubleLocationDecorator
- All Implemented Interfaces:
BaseLocation,DoubleLocation,TypedLocation
- Enclosing class:
- BasicLocations
public static class BasicLocations.DoubleLocationDecorator
extends BasicLocations.PrimitiveLocationDecorator
implements DoubleLocation
-
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> -
Constructor Summary
ConstructorsConstructorDescriptionDoubleLocationDecorator(LocationImpl.InternalLongLocation longLocation, boolean allowInt) -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanReturnstrueif the location is compatible with the value.final Objectget(DynamicObject store, boolean condition) Get object value as object at this location in store.doublegetDouble(DynamicObject store, boolean condition) final doublegetDouble(DynamicObject store, Shape shape) getType()The type of this location.voidsetDouble(DynamicObject store, double value) voidsetDouble(DynamicObject store, double value, Shape shape) final voidsetDouble(DynamicObject store, double value, Shape oldShape, Shape newShape) final voidsetInternal(DynamicObject store, Object value) LikeLocation.set(DynamicObject, Object, Shape), but does not invalidate final locations.Methods inherited from class com.oracle.truffle.object.basic.BasicLocations.PrimitiveLocationDecorator
getLong, getLong, primitiveArrayCount, primitiveFieldCount, setLong, setLong, setLongInternalMethods inherited from class com.oracle.truffle.object.LocationImpl
canSet, canStoreFinal, equals, getInternal, getWhereString, hashCode, isConstant, isFinal, objectArrayCount, objectFieldCount, set, toString, valueEqualsMethods inherited from class com.oracle.truffle.api.object.Location
checkShape, finalLocation, get, incompatibleLocation, set, setMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.object.BaseLocation
get, set, set, set
-
Constructor Details
-
DoubleLocationDecorator
-
-
Method Details
-
get
Description copied from interface:BaseLocationGet object value as object at this location in store. For internal use only and subject to change, useBaseLocation.get(DynamicObject, Shape)instead.- Specified by:
getin interfaceBaseLocation- Overrides:
getin classLocationcondition- the result of a shape check orfalse- See Also:
-
getDouble
- Specified by:
getDoublein interfaceDoubleLocation- See Also:
-
setDouble
- Specified by:
setDoublein interfaceDoubleLocation- See Also:
-
setDouble
- Specified by:
setDoublein interfaceDoubleLocation- See Also:
-
setInternal
public final void setInternal(DynamicObject store, Object value) throws IncompatibleLocationException Description copied from class:LocationLikeLocation.set(DynamicObject, Object, Shape), but does not invalidate final locations. For internal use only and subject to change, useDynamicObjectFactoryto create objects with predefined properties.- Specified by:
setInternalin classLocationImpl- Throws:
IncompatibleLocationException- if value is of non-assignable type
-
getDouble
- Specified by:
getDoublein interfaceDoubleLocation- See Also:
-
canStore
Description copied from class:LocationReturnstrueif the location is compatible with the value. The value may still be rejected ifLocation.canSet(DynamicObject, Object)returns false.- Overrides:
canStorein classLocationImpl- Parameters:
value- the value in question
-
setDouble
- Specified by:
setDoublein interfaceDoubleLocation- See Also:
-
getType
Description copied from interface:TypedLocationThe type of this location.- Specified by:
getTypein interfaceDoubleLocation- Specified by:
getTypein interfaceTypedLocation
-