Class ConstantResolver<E extends java.lang.Enum<E>>


  • class ConstantResolver<E extends java.lang.Enum<E>>
    extends java.lang.Object
    Provides forward and reverse lookup utilities to cross-platform enums
    • Field Detail

      • __UNKNOWN_CONSTANT__

        public static final java.lang.String __UNKNOWN_CONSTANT__
        See Also:
        Constant Field Values
      • modLock

        private final java.lang.Object modLock
      • enumType

        private final java.lang.Class<E extends java.lang.Enum<E>> enumType
      • reverseLookupMap

        private final java.util.Map<java.lang.Long,​E extends java.lang.Enum<E>> reverseLookupMap
      • nextUnknown

        private final java.util.concurrent.atomic.AtomicLong nextUnknown
      • bitmask

        private final boolean bitmask
      • valueCache

        private volatile E extends java.lang.Enum<E>[] valueCache
      • cacheGuard

        private volatile int cacheGuard
    • Constructor Detail

      • ConstantResolver

        private ConstantResolver​(java.lang.Class<E> enumType)
      • ConstantResolver

        private ConstantResolver​(java.lang.Class<E> enumType,
                                 int firstUnknown,
                                 int lastUnknown,
                                 boolean bitmask)
    • Method Detail

      • getResolver

        static <T extends java.lang.Enum<T>> ConstantResolver<T> getResolver​(java.lang.Class<T> enumType)
      • getResolver

        static <T extends java.lang.Enum<T>> ConstantResolver<T> getResolver​(java.lang.Class<T> enumType,
                                                                             int first,
                                                                             int last)
      • getBitmaskResolver

        static <T extends java.lang.Enum<T>> ConstantResolver<T> getBitmaskResolver​(java.lang.Class<T> enumType)
      • getConstant

        private Constant getConstant​(E e)
      • lookupAndCacheConstant

        private Constant lookupAndCacheConstant​(E e)
      • intValue

        final int intValue​(E e)
      • longValue

        final long longValue​(E e)
      • description

        final java.lang.String description​(E e)
      • defined

        final boolean defined​(E e)
      • valueOf

        final E valueOf​(long value)