程序包 cn.linjpxc.enumx

接口 FlagValue<F extends FlagValue<F,V>,V>

所有超级接口:
Comparable<F>, Serializable, Valuable<V>
所有已知实现类:
AbstractFlag, IntFlag, LongFlag, TextFlag

public interface FlagValue<F extends FlagValue<F,V>,V> extends Valuable<V>, Comparable<F>
作者:
linjpxc
  • 方法详细资料

    • name

      default String name()
      name
      返回:
      name
    • isDefined

      default boolean isDefined()
      是否默认定义的
      返回:
      定义的
    • hasFlag

      default boolean hasFlag(F flag)
      该表示是否包含指定的标识。null 则表示未包含。
      参数:
      flag - 指定的标识,可为空
      返回:
      true 表示包含。
    • hasValue

      boolean hasValue(V value)
      hasValue
      参数:
      value - hasValue
      返回:
      true
    • addFlag

      default F addFlag(F flag)
      将标识和指定的标识合并成一个新的标识,新的标识包含两者。若指定的标识为空,则不合并。
      参数:
      flag - 指定的标识。
      返回:
      返回一个新的标识。
    • addValue

      F addValue(V value)
      addValue
      参数:
      value - value
      返回:
      true
    • removeFlag

      default F removeFlag(F flag)
      将标识移除指定的标识,并生成一个新的标识。若指定的标识为空,则返回当前标识。
      参数:
      flag - 指定的标识。
      返回:
      返回一个新的标识,不包含指定的标识。
    • removeValue

      F removeValue(V value)
      removeValue
      参数:
      value - value
      返回:
      this
    • getDeclaringClass

      Class<F> getDeclaringClass()
      declaring class
      返回:
      declaring class
    • toDefineArray

      default F[] toDefineArray()
    • toDefineArray

      default F[] toDefineArray(boolean withOther)
      toDefineArray
      返回:
      toDefineArray
    • toDefineFlags

      default List<F> toDefineFlags()
    • toDefineFlags

      default List<F> toDefineFlags(boolean withOther)
      toDefineFlags
      返回:
      toDefineFlags
    • valueOf

      static <F extends FlagValue<F, V>, V> F valueOf(Class<F> clazz, V value)
      valueOf
      类型参数:
      F - F
      V - V
      参数:
      clazz - clazz
      value - value
      返回:
      Flag
    • compare

      static <F extends FlagValue<F, V>, V> int compare(F left, F right)