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
- Alphabetic
- By Inheritance
- MultiChoiceSetting
- Clearable
- Setting
- SettingValue
- AbsSetting
- AbsSettingValue
- Ordered
- Comparable
- AnyRef
- Any
- by orderingToOrdered
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Type Members
- type T = E.ValueSet
- Definition Classes
- MultiChoiceSetting → AbsSettingValue
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- 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
- 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()
- def <(that: Setting): Boolean
- Definition Classes
- Ordered
- def <=(that: Setting): Boolean
- Definition Classes
- Ordered
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def >(that: Setting): Boolean
- Definition Classes
- Ordered
- def >=(that: Setting): Boolean
- Definition Classes
- Ordered
- def abbreviations: List[String]
- Definition Classes
- Setting → AbsSetting
- def add(arg: String): Unit
Add a named choice to the multichoice value.
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val choices: List[String]
- Definition Classes
- MultiChoiceSetting → AbsSetting
- def clear(): Unit
- Definition Classes
- MultiChoiceSetting → Clearable
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def compare(that: Setting): Int
- Definition Classes
- AbsSetting → Ordered
- def compareTo(that: Setting): Int
- Definition Classes
- Ordered → Comparable
- def compute(): Unit
(Re)compute from current yeas, nays, wildcard status.
- def contains(s: String): Boolean
- def contains(choice: E.Value): Boolean
- val default: Option[List[String]]
- def dependencies: List[(Setting, String)]
- Definition Classes
- Setting → AbsSetting
- def dependsOn(s: Setting, value: String): MultiChoiceSetting.this.type
- Definition Classes
- Setting
- def deprecationMessage: Option[String]
- Definition Classes
- Setting → AbsSetting
- def descriptions: List[String]
- def disable(choice: E.Value): Unit
- val domain: E
- def enable(choice: E.Value): Unit
- 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
- 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
- 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
- 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
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- 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
- def errorAndValue[A](msg: String, x: A): A
Issue error and return the value.
Issue error and return the value.
- Definition Classes
- AbsSetting
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AbsSetting → AnyRef → Any
- def help: String
The help message to be printed if isHelping.
The help message to be printed if isHelping.
- Definition Classes
- MultiChoiceSetting → AbsSetting
- val helpArg: String
- val helpDescription: String
- Definition Classes
- Setting → AbsSetting
- def helpSyntax: String
- Definition Classes
- Setting → AbsSetting
- def internalOnly(): MultiChoiceSetting.this.type
- Definition Classes
- AbsSetting
- 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
- def isDefault: Boolean
- Definition Classes
- SettingValue → AbsSettingValue
- def isDeprecated: Boolean
- Definition Classes
- AbsSetting
- 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
- MultiChoiceSetting → AbsSetting
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isInternalOnly: Boolean
- Definition Classes
- AbsSetting
- def isPrivate: Boolean
- Definition Classes
- AbsSetting
- def isSetByUser: Boolean
- Definition Classes
- SettingValue
- def isStandard: Boolean
- Definition Classes
- AbsSetting
- def isVerbose: Boolean
- Definition Classes
- AbsSetting
- def isWarning: Boolean
- Definition Classes
- AbsSetting
- val name: String
- Definition Classes
- Setting → AbsSetting
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def postSetHook(): Unit
- Definition Classes
- Setting → SettingValue
- def respondsTo(label: String): Boolean
- Definition Classes
- AbsSetting
- val setByUser: Boolean
- Attributes
- protected
- Definition Classes
- SettingValue
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AbsSetting → AnyRef → Any
- 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
- MultiChoiceSetting → AbsSetting
- 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
- MultiChoiceSetting → AbsSetting
- 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
- MultiChoiceSetting → AbsSetting
- def unparse: List[String]
- Definition Classes
- MultiChoiceSetting → AbsSetting
- var v: T
- Attributes
- protected
- Definition Classes
- MultiChoiceSetting → SettingValue
- def value: T
- Definition Classes
- SettingValue → AbsSettingValue
- def valueSetByUser: Option[T]
- Definition Classes
- SettingValue
- def value_=(arg: T): Unit
- Definition Classes
- SettingValue
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- 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 scala/bug#3462. The immutable side doesn't exist yet anyway.
- Definition Classes
- Setting → AbsSetting
- def withDeprecationMessage(msg: String): MultiChoiceSetting.this.type
- Definition Classes
- Setting → AbsSetting
- def withHelpSyntax(s: String): MultiChoiceSetting.this.type
- Definition Classes
- Setting → AbsSetting
- def withPostSetHook(f: (MultiChoiceSetting.this.type) => Unit): MultiChoiceSetting.this.type
- Definition Classes
- Setting
- object ChoiceOrVal
Shadowed Implicit Value Members
- 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
- 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
- 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
- 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
- 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
- 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
- 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 ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- 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.
The Scala compiler and reflection APIs.