class MultiChoiceSetting[E <: MultiChoiceEnumeration] extends Setting with Clearable

A Setting that collects string-valued settings from an enumerated domain.

  • These choices can be turned on or off: "-option:on,-off"
  • If an option is set both on and off, then the option is on
  • The choice "_" enables all choices that have not been explicitly disabled

Arguments can be provided in colonated or non-colonated mode, i.e. "-option a b" or "-option:a,b". Note that arguments starting with a "-" can only be provided in colonated mode, otherwise they are interpreted as a new option.

In non-colonated mode, the setting stops consuming arguments at the first non-choice, i.e. "-option a b c" only consumes "a" and "b" if "c" is not a valid choice.

Source
MutableSettings.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MultiChoiceSetting
  2. Clearable
  3. Setting
  4. Mutable
  5. SettingValue
  6. AbsSetting
  7. AbsSettingValue
  8. Ordered
  9. Comparable
  10. AnyRef
  11. Any
Implicitly
  1. by orderingToOrdered
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type T = E.ValueSet
    Definition Classes
    MultiChoiceSetting → AbsSettingValue

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to any2stringadd[MultiChoiceSetting[E]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (MultiChoiceSetting[E], B)
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to ArrowAssoc[MultiChoiceSetting[E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. def <(that: Setting): Boolean
    Definition Classes
    Ordered
  6. def <=(that: Setting): Boolean
    Definition Classes
    Ordered
  7. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def >(that: Setting): Boolean
    Definition Classes
    Ordered
  9. def >=(that: Setting): Boolean
    Definition Classes
    Ordered
  10. def abbreviations: List[String]
    Definition Classes
    SettingAbsSetting
  11. def add(arg: String): Unit

    Add a named choice to the multichoice value.

  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. val choices: List[String]
    Definition Classes
    MultiChoiceSettingAbsSetting
  14. def clear(): Unit
    Definition Classes
    MultiChoiceSetting → Clearable
  15. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. def compare(that: Setting): Int
    Definition Classes
    AbsSetting → Ordered
  17. def compareTo(that: Setting): Int
    Definition Classes
    Ordered → Comparable
  18. def compute(): Unit

    (Re)compute from current yeas, nays, wildcard status.

  19. def contains(s: String): Boolean
  20. def contains(choice: E.Value): Boolean
  21. val default: Option[List[String]]
  22. def dependencies: List[(Setting, String)]
    Definition Classes
    SettingAbsSetting
  23. def dependsOn(s: Setting, value: String): MultiChoiceSetting.this.type
    Definition Classes
    Setting
  24. def deprecationMessage: Option[String]
    Definition Classes
    SettingAbsSetting
  25. def descriptions: List[String]
  26. def disable(choice: E.Value): Unit
  27. val domain: E
  28. def enable(choice: E.Value): Unit
  29. def ensuring(cond: (MultiChoiceSetting[E]) ⇒ Boolean, msg: ⇒ Any): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to Ensuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  30. def ensuring(cond: (MultiChoiceSetting[E]) ⇒ Boolean): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to Ensuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  31. def ensuring(cond: Boolean, msg: ⇒ Any): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to Ensuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  32. def ensuring(cond: Boolean): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to Ensuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  33. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  34. def equals(that: Any): Boolean

    Equality tries to sidestep all the drama and define it simply and in one place: two AbsSetting objects are equal if their names and values compare equal.

    Equality tries to sidestep all the drama and define it simply and in one place: two AbsSetting objects are equal if their names and values compare equal.

    Definition Classes
    AbsSetting → AnyRef → Any
  35. def errorAndValue[T](msg: String, x: T): T

    Issue error and return

    Issue error and return

    Definition Classes
    AbsSetting
  36. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to StringFormat[MultiChoiceSetting[E]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  38. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  39. def hashCode(): Int
    Definition Classes
    AbsSetting → AnyRef → Any
  40. def help: String

    The help message to be printed if isHelping.

    The help message to be printed if isHelping.

    Definition Classes
    MultiChoiceSettingAbsSetting
  41. val helpDescription: String
    Definition Classes
    SettingAbsSetting
  42. def helpSyntax: String
    Definition Classes
    SettingAbsSetting
  43. def internalOnly(): MultiChoiceSetting.this.type
    Definition Classes
    AbsSetting
  44. def isAdvanced: Boolean

    These categorizations are so the help output shows -X and -P among the standard options and -Y among the advanced options.

    These categorizations are so the help output shows -X and -P among the standard options and -Y among the advanced options.

    Definition Classes
    AbsSetting
  45. def isDefault: Boolean
    Definition Classes
    SettingValue → AbsSettingValue
  46. def isDeprecated: Boolean
    Definition Classes
    AbsSetting
  47. def isForDebug: Boolean
    Definition Classes
    AbsSetting
  48. def isHelping: Boolean

    If this method returns true, print the help message and exit.

    If this method returns true, print the help message and exit.

    Definition Classes
    MultiChoiceSettingAbsSetting
  49. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  50. def isInternalOnly: Boolean
    Definition Classes
    AbsSetting
  51. def isPrivate: Boolean
    Definition Classes
    AbsSetting
  52. def isSetByUser: Boolean
    Definition Classes
    SettingValue
  53. def isStandard: Boolean
    Definition Classes
    AbsSetting
  54. val name: String
    Definition Classes
    SettingAbsSetting
  55. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  56. final def notify(): Unit
    Definition Classes
    AnyRef
  57. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  58. def postSetHook(): Unit
    Definition Classes
    Setting → SettingValue
  59. def respondsTo(label: String): Boolean
    Definition Classes
    AbsSetting
  60. val setByUser: Boolean
    Attributes
    protected
    Definition Classes
    SettingValue
  61. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  62. def toString(): String
    Definition Classes
    AbsSetting → AnyRef → Any
  63. def tryToSet(args: List[String]): Some[List[String]]

    After correct Setting has been selected, tryToSet is called with the remainder of the command line.

    After correct Setting has been selected, tryToSet is called with the remainder of the command line. It consumes any applicable arguments and returns the unconsumed ones.

    Definition Classes
    MultiChoiceSettingAbsSetting
  64. def tryToSetColon(args: List[String]): Some[List[String]]

    Commands which can take lists of arguments in form -Xfoo:bar,baz override this method and accept them as a list.

    Commands which can take lists of arguments in form -Xfoo:bar,baz override this method and accept them as a list. It returns List[String] for consistency with tryToSet, and should return its incoming arguments unmodified on failure, and Nil on success.

    Definition Classes
    MultiChoiceSettingAbsSetting
  65. def tryToSetFromPropertyValue(s: String): Unit

    Attempt to set from a properties file style property value.

    Attempt to set from a properties file style property value. Currently used by Eclipse SDT only. !!! Needs test.

    Definition Classes
    MultiChoiceSettingAbsSetting
  66. def unparse: List[String]
    Definition Classes
    MultiChoiceSettingAbsSetting
  67. var v: T
    Attributes
    protected
    Definition Classes
    MultiChoiceSetting → SettingValue
  68. def value: T
    Definition Classes
    SettingValue → AbsSettingValue
  69. def valueSetByUser: Option[T]
    Definition Classes
    SettingValue
  70. def value_=(arg: T): Unit
    Definition Classes
    SettingValue
  71. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  72. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  73. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  74. def withAbbreviation(s: String): MultiChoiceSetting.this.type

    In mutable Settings, these return the same object with a var set.

    In mutable Settings, these return the same object with a var set. In immutable, of course they will return a new object, which means we can't use "this.type", at least not in a non-casty manner, which is unfortunate because we lose type information without it.

    ...but now they're this.type because of #3462. The immutable side doesn't exist yet anyway.

    Definition Classes
    SettingAbsSetting
  75. def withDeprecationMessage(msg: String): MultiChoiceSetting.this.type
    Definition Classes
    SettingAbsSetting
  76. def withHelpSyntax(s: String): MultiChoiceSetting.this.type
    Definition Classes
    SettingAbsSetting
  77. def withPostSetHook(f: (MultiChoiceSetting.this.type) ⇒ Unit): MultiChoiceSetting.this.type
    Definition Classes
    Setting
  78. def [B](y: B): (MultiChoiceSetting[E], B)
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to ArrowAssoc[MultiChoiceSetting[E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
  79. object ChoiceOrVal

Shadowed Implicit Value Members

  1. def <(that: MultiChoiceSetting[E]): Boolean
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).<(that)
    Definition Classes
    Ordered
  2. def <=(that: MultiChoiceSetting[E]): Boolean
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).<=(that)
    Definition Classes
    Ordered
  3. def >(that: MultiChoiceSetting[E]): Boolean
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).>(that)
    Definition Classes
    Ordered
  4. def >=(that: MultiChoiceSetting[E]): Boolean
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).>=(that)
    Definition Classes
    Ordered
  5. def compare(that: MultiChoiceSetting[E]): Int
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).compare(that)
    Definition Classes
    Ordered
  6. def compareTo(that: MultiChoiceSetting[E]): Int
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[MultiChoiceSetting[E]] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (multiChoiceSetting: math.Ordered[MultiChoiceSetting[E]]).compareTo(that)
    Definition Classes
    Ordered → Comparable

Inherited from Clearable

Inherited from Setting

Inherited from Mutable

Inherited from math.Ordered[Setting]

Inherited from Comparable[Setting]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion orderingToOrdered from MultiChoiceSetting[E] to math.Ordered[MultiChoiceSetting[E]]

Inherited by implicit conversion any2stringadd from MultiChoiceSetting[E] to any2stringadd[MultiChoiceSetting[E]]

Inherited by implicit conversion StringFormat from MultiChoiceSetting[E] to StringFormat[MultiChoiceSetting[E]]

Inherited by implicit conversion Ensuring from MultiChoiceSetting[E] to Ensuring[MultiChoiceSetting[E]]

Inherited by implicit conversion ArrowAssoc from MultiChoiceSetting[E] to ArrowAssoc[MultiChoiceSetting[E]]

Ungrouped