< prev index next >

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

Print this page

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



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

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