< prev index next >

src/java.base/share/classes/java/lang/invoke/VarHandle.java

Print this page

 488              VarHandleChars.Array,
 489              VarHandleChars.FieldInstanceReadOnly,
 490              VarHandleChars.FieldStaticReadOnly,
 491              VarHandleDoubles.Array,
 492              VarHandleDoubles.FieldInstanceReadOnly,
 493              VarHandleDoubles.FieldStaticReadOnly,
 494              VarHandleFloats.Array,
 495              VarHandleFloats.FieldInstanceReadOnly,
 496              VarHandleFloats.FieldStaticReadOnly,
 497              VarHandleInts.Array,
 498              VarHandleInts.FieldInstanceReadOnly,
 499              VarHandleInts.FieldStaticReadOnly,
 500              VarHandleLongs.Array,
 501              VarHandleLongs.FieldInstanceReadOnly,
 502              VarHandleLongs.FieldStaticReadOnly,
 503              VarHandleReferences.Array,
 504              VarHandleReferences.FieldInstanceReadOnly,
 505              VarHandleReferences.FieldStaticReadOnly,
 506              VarHandleShorts.Array,
 507              VarHandleShorts.FieldInstanceReadOnly,
 508              VarHandleShorts.FieldStaticReadOnly {





 509     final VarForm vform;
 510     final boolean exact;
 511 
 512     VarHandle(VarForm vform) {
 513         this(vform, false);
 514     }
 515 
 516     VarHandle(VarForm vform, boolean exact) {
 517         this.vform = vform;
 518         this.exact = exact;
 519     }
 520 
 521     /**
 522      * Returns the target VarHandle.   Subclasses may override this method to implement
 523      * additional logic for example lazily initializing the declaring class of a static field var handle.
 524      */
 525     @ForceInline
 526     VarHandle target() {
 527         return asDirect();
 528     }

 488              VarHandleChars.Array,
 489              VarHandleChars.FieldInstanceReadOnly,
 490              VarHandleChars.FieldStaticReadOnly,
 491              VarHandleDoubles.Array,
 492              VarHandleDoubles.FieldInstanceReadOnly,
 493              VarHandleDoubles.FieldStaticReadOnly,
 494              VarHandleFloats.Array,
 495              VarHandleFloats.FieldInstanceReadOnly,
 496              VarHandleFloats.FieldStaticReadOnly,
 497              VarHandleInts.Array,
 498              VarHandleInts.FieldInstanceReadOnly,
 499              VarHandleInts.FieldStaticReadOnly,
 500              VarHandleLongs.Array,
 501              VarHandleLongs.FieldInstanceReadOnly,
 502              VarHandleLongs.FieldStaticReadOnly,
 503              VarHandleReferences.Array,
 504              VarHandleReferences.FieldInstanceReadOnly,
 505              VarHandleReferences.FieldStaticReadOnly,
 506              VarHandleShorts.Array,
 507              VarHandleShorts.FieldInstanceReadOnly,
 508              VarHandleShorts.FieldStaticReadOnly,
 509              VarHandleFlatValues.FieldInstanceReadOnly,
 510              VarHandleNonAtomicReferences.Array,
 511              VarHandleNonAtomicReferences.FieldInstanceReadOnly,
 512              VarHandleNonAtomicReferences.FieldStaticReadOnly,
 513              VarHandleNonAtomicFlatValues.FieldInstanceReadOnly {
 514     final VarForm vform;
 515     final boolean exact;
 516 
 517     VarHandle(VarForm vform) {
 518         this(vform, false);
 519     }
 520 
 521     VarHandle(VarForm vform, boolean exact) {
 522         this.vform = vform;
 523         this.exact = exact;
 524     }
 525 
 526     /**
 527      * Returns the target VarHandle.   Subclasses may override this method to implement
 528      * additional logic for example lazily initializing the declaring class of a static field var handle.
 529      */
 530     @ForceInline
 531     VarHandle target() {
 532         return asDirect();
 533     }
< prev index next >