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
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MultiChoiceSetting
  2. Clearable
  3. Setting
  4. SettingValue
  5. AbsSetting
  6. AbsSettingValue
  7. Ordered
  8. Comparable
  9. AnyRef
  10. 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. Protected

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] toany2stringadd[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] toArrowAssoc[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, selections: List[String]): Unit
  12. def add(arg: String): Unit

    Add a named choice to the multichoice value.

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

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

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

  20. def contains(s: String): Boolean
  21. def contains(choice: E.Value): Boolean
  22. val default: Option[List[String]]
  23. def dependencies: List[(Setting, String)]
    Definition Classes
    SettingAbsSetting
  24. def dependsOn(s: Setting, value: String): MultiChoiceSetting.this.type
    Definition Classes
    Setting
  25. def deprecationMessage: Option[String]
    Definition Classes
    SettingAbsSetting
  26. def descriptions: List[String]
  27. def disable(choice: E.Value): Unit
  28. val domain: E
  29. def enable(choice: E.Value): Unit
  30. def ensuring(cond: (MultiChoiceSetting[E]) => Boolean, msg: => Any): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toEnsuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  31. def ensuring(cond: (MultiChoiceSetting[E]) => Boolean): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toEnsuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  32. def ensuring(cond: Boolean, msg: => Any): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toEnsuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  33. def ensuring(cond: Boolean): MultiChoiceSetting[E]
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toEnsuring[MultiChoiceSetting[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  34. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  35. 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
  36. def errorAndValue[A](msg: String, x: A): A

    Issue error and return the value.

    Issue error and return the value.

    Definition Classes
    AbsSetting
  37. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  38. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  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 helpArg: String
  42. val helpDescription: String
    Definition Classes
    SettingAbsSetting
  43. def helpSyntax: String
    Definition Classes
    SettingAbsSetting
  44. val helpText: Option[String]
  45. def internalOnly(): MultiChoiceSetting.this.type
    Definition Classes
    AbsSetting
  46. def isAdvanced: Boolean

    Standard options are shown on the -help output, advanced on -X, private on -Y, warning on -W, verbose on -V.

    Standard options are shown on the -help output, advanced on -X, private on -Y, warning on -W, verbose on -V.

    The single char options themselves, including -P, are explained on -help. Additionally, -Werror is on -help and -Xlint on -W.

    Definition Classes
    AbsSetting
  47. def isDefault: Boolean
    Definition Classes
    SettingValue → AbsSettingValue
  48. def isDeprecated: Boolean
    Definition Classes
    AbsSetting
  49. 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
  50. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  51. def isInternalOnly: Boolean
    Definition Classes
    AbsSetting
  52. def isPrivate: Boolean
    Definition Classes
    AbsSetting
  53. def isSetByUser: Boolean
    Definition Classes
    SettingValue
  54. def isStandard: Boolean
    Definition Classes
    AbsSetting
  55. def isVerbose: Boolean
    Definition Classes
    AbsSetting
  56. def isWarning: Boolean
    Definition Classes
    AbsSetting
  57. val name: String
    Definition Classes
    SettingAbsSetting
  58. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  59. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  60. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  61. def postSetHook(): Unit
    Definition Classes
    Setting → SettingValue
  62. def reset(): Unit
    Definition Classes
    MultiChoiceSettingSetting
  63. def respondsTo(label: String): Boolean
    Definition Classes
    AbsSetting
  64. val setByUser: Boolean
    Attributes
    protected
    Definition Classes
    SettingValue
  65. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  66. def toString(): String
    Definition Classes
    AbsSetting → AnyRef → Any
  67. def tryToSet(args: List[String]): Some[List[String]]

    Setting is presented the remaining command line arguments.

    Setting is presented the remaining command line arguments. It should consume any applicable args and return the rest, or None on error.

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

    Setting is presented arguments in form -Xfoo:bar,baz.

    Setting is presented arguments in form -Xfoo:bar,baz. It should consume all the arguments and return an empty list, or None on error. Unconsumed args may error.

    Definition Classes
    MultiChoiceSettingAbsSetting
  69. 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
  70. def unparse: List[String]
    Definition Classes
    MultiChoiceSettingAbsSetting
  71. var v: T
    Attributes
    protected
    Definition Classes
    MultiChoiceSetting → SettingValue
  72. def value: T
    Definition Classes
    SettingValue → AbsSettingValue
  73. def valueSetByUser: Option[T]
    Definition Classes
    SettingValue
  74. def value_=(arg: T): Unit
    Definition Classes
    SettingValue
  75. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  76. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  77. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  78. def withAbbreviation(s: String): MultiChoiceSetting.this.type
    Definition Classes
    SettingAbsSetting
  79. def withDeprecationMessage(msg: String): MultiChoiceSetting.this.type
    Definition Classes
    SettingAbsSetting
  80. def withHelpSyntax(s: String): MultiChoiceSetting.this.type
    Definition Classes
    SettingAbsSetting
  81. def withPostSetHook(f: (MultiChoiceSetting.this.type) => Unit): MultiChoiceSetting.this.type
    Definition Classes
    Setting
  82. object ChoiceOrVal

Shadowed Implicit Value Members

  1. def <(that: MultiChoiceSetting[E]): Boolean
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] tomath.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] tomath.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] tomath.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] tomath.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] tomath.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] tomath.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

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toStringFormat[MultiChoiceSetting[E]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  2. def [B](y: B): (MultiChoiceSetting[E], B)
    Implicit
    This member is added by an implicit conversion from MultiChoiceSetting[E] toArrowAssoc[MultiChoiceSetting[E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Clearable

Inherited from Setting

Inherited from math.Ordered[Setting]

Inherited from Comparable[Setting]

Inherited from AnyRef

Inherited from Any

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

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

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

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

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

Ungrouped