< prev index next >

src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java

Print this page
8197531: Miscellaneous changes imported from jsr166 CVS 2018-04
Reviewed-by: martin, psandoz


3395         return new EntrySpliterator<K,V>(comparator, h, n, null, est);
3396     }
3397 
3398     // VarHandle mechanics
3399     private static final VarHandle HEAD;
3400     private static final VarHandle ADDER;
3401     private static final VarHandle NEXT;
3402     private static final VarHandle VAL;
3403     private static final VarHandle RIGHT;
3404     static {
3405         try {
3406             MethodHandles.Lookup l = MethodHandles.lookup();
3407             HEAD = l.findVarHandle(ConcurrentSkipListMap.class, "head",
3408                                    Index.class);
3409             ADDER = l.findVarHandle(ConcurrentSkipListMap.class, "adder",
3410                                     LongAdder.class);
3411             NEXT = l.findVarHandle(Node.class, "next", Node.class);
3412             VAL = l.findVarHandle(Node.class, "val", Object.class);
3413             RIGHT = l.findVarHandle(Index.class, "right", Index.class);
3414         } catch (ReflectiveOperationException e) {
3415             throw new Error(e);
3416         }
3417     }
3418 }


3395         return new EntrySpliterator<K,V>(comparator, h, n, null, est);
3396     }
3397 
3398     // VarHandle mechanics
3399     private static final VarHandle HEAD;
3400     private static final VarHandle ADDER;
3401     private static final VarHandle NEXT;
3402     private static final VarHandle VAL;
3403     private static final VarHandle RIGHT;
3404     static {
3405         try {
3406             MethodHandles.Lookup l = MethodHandles.lookup();
3407             HEAD = l.findVarHandle(ConcurrentSkipListMap.class, "head",
3408                                    Index.class);
3409             ADDER = l.findVarHandle(ConcurrentSkipListMap.class, "adder",
3410                                     LongAdder.class);
3411             NEXT = l.findVarHandle(Node.class, "next", Node.class);
3412             VAL = l.findVarHandle(Node.class, "val", Object.class);
3413             RIGHT = l.findVarHandle(Index.class, "right", Index.class);
3414         } catch (ReflectiveOperationException e) {
3415             throw new ExceptionInInitializerError(e);
3416         }
3417     }
3418 }
< prev index next >