package scallop
- Source
- package.scala
- Alphabetic
- By Inheritance
- scallop
- DefaultConverters
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
sealed
trait
CliOption extends AnyRef
Parent class for option descriptors.
Parent class for option descriptors. Each option descriptor contains everything needed to parse that option - option names, defaults, converters, validators, etc.
-
trait
DefaultConverters extends AnyRef
This trait contains various predefined converters for common use-cases.
This trait contains various predefined converters for common use-cases. org.rogach.scallop package object inherits from this trait, thus you can get all the converters simply by importing
org.rogach.scallop._. -
case class
HelpInfo(argLine: String, description: String, defaultValue: () ⇒ Option[String]) extends Product with Serializable
Internal class - container for help information for a single option.
-
class
LazyMap[A, +B] extends Map[A, B] with ScallopOptionBase
A class that lazily encapsulates a map inside.
-
case class
LongNamedPropertyOption(name: String, descr: String, converter: ValueConverter[_], keyName: String, valueName: String, hidden: Boolean) extends CliOption with Product with Serializable
Descriptor for a property option with a "long" name (like
--Props key1=value1 key2=value2).Descriptor for a property option with a "long" name (like
--Props key1=value1 key2=value2).- name
Internal name for the option.
- descr
Description for this property option, for help description.
- converter
The converter for this option.
- keyName
Name for 'key' part of this option arg name, as it will appear in help option definition.
- valueName
Name for 'value' part of this option arg name, as it will appear in help option definition.
- hidden
If set to true, then this option will be hidden from generated help output.
-
case class
NumberArgOption(name: String, required: Boolean, descr: String, converter: ValueConverter[Long], validator: (Any) ⇒ Boolean, default: () ⇒ Option[Long], hidden: Boolean) extends CliOption with Product with Serializable
Descriptor for a number option (
-1or-3, like GNU tail for example).Descriptor for a number option (
-1or-3, like GNU tail for example).- name
Name for new definition, used for identification.
- required
Is this trailing argument required?
- descr
Description for this option, for help text.
- converter
The converter for this option.
- validator
The function that validates the parsed value.
- default
If this argument is not required and not found in the argument list, use this value.
- hidden
If set to true then this option will not be present in auto-generated help.
-
case class
PropertyOption(name: String, short: Char, descr: String, converter: ValueConverter[_], keyName: String, valueName: String, hidden: Boolean) extends CliOption with Product with Serializable
Descriptor for a property option (like
-Dkey=valueor-D key1=value1 key2=value2).Descriptor for a property option (like
-Dkey=valueor-D key1=value1 key2=value2).- name
Internal name for the option.
- short
Character that will be used as prefix for property arguments.
- descr
Description for this property option, for help description.
- converter
The converter for this option.
- keyName
Name for 'key' part of this option arg name, as it will appear in help option definition.
- valueName
Name for 'value' part of this option arg name, as it will appear in help option definition.
- hidden
If set to true, then this option will be hidden from generated help output.
-
case class
Scallop(args: Seq[String] = Nil, opts: List[CliOption] = Nil, mainOptions: List[CliOption] = Nil, optionGroups: List[(String, Seq[CliOption])] = Nil, vers: Option[String] = None, bann: Option[String] = None, foot: Option[String] = None, descr: String = "", helpWidth: Option[Int] = None, shortSubcommandsHelp: Boolean = false, appendDefaultToDescription: Boolean = false, noshort: Boolean = false, helpFormatter: ScallopHelpFormatter = new ScallopHelpFormatter, subbuilders: List[(String, Scallop)] = Nil) extends ScallopArgListLoader with Product with Serializable
Internal configuration builder.
- trait ScallopArgListLoader extends AnyRef
-
abstract
class
ScallopConf extends ScallopConfBase
Base class for CLI parsers.
-
abstract
class
ScallopConfBase extends ScallopConfValidations
Contains non-platform-specific functionality of ScallopConf.
-
trait
ScallopConfValidations extends AnyRef
Helper trait for generaton of
validatemethods on ScallopConf. -
class
ScallopHelpFormatter extends AnyRef
Used by ScallopConf.helpFormatter to create help output.
Used by ScallopConf.helpFormatter to create help output. Users of the library can override chosen (or all) methods to tweak help output to their requirements.
-
abstract
class
ScallopOption[A] extends ScallopOptionBase
A class to hold a reference to not-yet-computed option values.
A class to hold a reference to not-yet-computed option values.
Basically, this is a lazy option - it batches up all operations, and evaluates the value only as the last resort.
- trait ScallopOptionBase extends AnyRef
-
class
ScallopOptionGroup extends AnyRef
Group of options.
Group of options. Options added to the group will be shown before all other options in help output, in the same order as they were added in. (options without groups will be sorted alphabetically and shown after all option groups)
-
trait
Serialization extends Serializable
Use this trait to make your ScallopConf serializable.
Use this trait to make your ScallopConf serializable. Warning: this serialization method expects your ScallopConf class to have public constructor that accepts Seq[String] or List[String] as a single parameter.
If your class does not have such constructor, you will need to implement serialization/deserialization logic yourself (see https://github.com/scallop/scallop/issues/137)
- class SerializationProxy extends Serializable
-
case class
SimpleOption(name: String, short: Option[Char], descr: String, required: Boolean, converter: ValueConverter[_], default: () ⇒ Option[Any], validator: (Any) ⇒ Boolean, argName: String, hidden: Boolean, noshort: Boolean) extends CliOption with Product with Serializable
Descriptor for a simple option - describes flag, one-arg or multi-arg options (--opt [ARGS]...).
Descriptor for a simple option - describes flag, one-arg or multi-arg options (--opt [ARGS]...).
- name
Name for new option, used as long option name in parsing, and for option identification.
- short
Overload the char that will be used as short option name.
- descr
Description for this option, for help output.
- required
Is this option required?
- converter
The converter for this option.
- default
Default value to use if option is not found in input arguments.
- validator
The function that validates the parsed value.
- argName
The name for this option argument, as it will appear in help.
- hidden
Hides description of this option from help (this can be useful for debugging options).
- noshort
If set to true, then this option does not have any short name.
-
class
Subcommand extends ScallopConf
Base class for CLI subcommands.
-
case class
ToggleOption(name: String, default: () ⇒ Option[Boolean], short: Option[Char], noshort: Boolean, prefix: String, descrYes: String, descrNo: String, required: Boolean, hidden: Boolean) extends CliOption with Product with Serializable
Descriptor for a toggle option (like
--verbose/--noverbose).Descriptor for a toggle option (like
--verbose/--noverbose).- name
Name of this option.
- default
Default value for this option.
- short
Overload the char that will be used as short option name.
- noshort
If set to true, then this option will not have any short name.
- prefix
Prefix to name of the option, that will be used for "negative" version of the option.
- descrYes
Description for positive variant of this option.
- descrNo
Description for negative variant of this option.
- required
Is this option required?
- hidden
If set to true, then this option will not be present in auto-generated help.
-
case class
TrailingArgsOption(name: String, required: Boolean, descr: String, converter: ValueConverter[_], validator: (Any) ⇒ Boolean, default: () ⇒ Option[Any], hidden: Boolean) extends CliOption with Product with Serializable
Descriptor for a trailing arg option.
Descriptor for a trailing arg option.
- name
Name for new definition, used for identification.
- required
Is this trailing argument required?
- descr
Description for this option, for help text.
- converter
The converter for this option.
- validator
The function that validates the parsed value.
- default
If this argument is not required and not found in the argument list, use this value.
- hidden
If set to true then this option will not be present in auto-generated help.
-
trait
ValueConverter[A] extends AnyRef
Converter from list of plain strings to something meaningful.
Value Members
-
implicit
val
bigDecimalConverter: ValueConverter[BigDecimal]
- Definition Classes
- DefaultConverters
-
implicit
val
bigIntConverter: ValueConverter[BigInt]
- Definition Classes
- DefaultConverters
-
implicit
val
byteConverter: ValueConverter[Byte]
- Definition Classes
- DefaultConverters
-
implicit
val
byteListConverter: ValueConverter[List[Byte]]
- Definition Classes
- DefaultConverters
-
implicit
val
bytePropsConverter: ValueConverter[Map[String, Byte]]
- Definition Classes
- DefaultConverters
-
implicit
val
charConverter: ValueConverter[Char]
- Definition Classes
- DefaultConverters
-
implicit
val
charPropsConverter: ValueConverter[Map[String, Char]]
- Definition Classes
- DefaultConverters
-
implicit
val
doubleConverter: ValueConverter[Double]
- Definition Classes
- DefaultConverters
-
implicit
val
doubleListConverter: ValueConverter[List[Double]]
- Definition Classes
- DefaultConverters
-
implicit
val
doublePropsConverter: ValueConverter[Map[String, Double]]
- Definition Classes
- DefaultConverters
-
implicit
val
durationConverter: ValueConverter[Duration]
- Definition Classes
- DefaultConverters
- implicit val fileConverter: ValueConverter[File]
- implicit val fileListConverter: ValueConverter[List[File]]
-
implicit
val
finiteDurationConverter: ValueConverter[FiniteDuration]
- Definition Classes
- DefaultConverters
-
implicit
val
flagConverter: ValueConverter[Boolean]
- Definition Classes
- DefaultConverters
-
implicit
val
floatConverter: ValueConverter[Float]
- Definition Classes
- DefaultConverters
-
implicit
val
floatListConverter: ValueConverter[List[Float]]
- Definition Classes
- DefaultConverters
-
implicit
val
floatPropsConverter: ValueConverter[Map[String, Float]]
- Definition Classes
- DefaultConverters
-
implicit
val
intConverter: ValueConverter[Int]
- Definition Classes
- DefaultConverters
-
implicit
val
intListConverter: ValueConverter[List[Int]]
- Definition Classes
- DefaultConverters
-
implicit
val
intPropsConverter: ValueConverter[Map[String, Int]]
- Definition Classes
- DefaultConverters
-
def
listArgConverter[A](conv: (String) ⇒ A): ValueConverter[List[A]]
Creates a converter for an option which accepts multiple arguments.
Creates a converter for an option which accepts multiple arguments.
- conv
The conversion function to use on each argument. May throw an exception on error.
- returns
A ValueConverter instance.
- Definition Classes
- DefaultConverters
-
implicit
val
longConverter: ValueConverter[Long]
- Definition Classes
- DefaultConverters
-
implicit
val
longListConverter: ValueConverter[List[Long]]
- Definition Classes
- DefaultConverters
-
implicit
val
longPropsConverter: ValueConverter[Map[String, Long]]
- Definition Classes
- DefaultConverters
-
def
numberHandler[T](name: String): PartialFunction[Throwable, Either[String, Option[T]]]
Handler function for numeric types which expects a NumberFormatException and prints a more helpful error message.
Handler function for numeric types which expects a NumberFormatException and prints a more helpful error message.
- name
the type name to display
- Definition Classes
- DefaultConverters
-
def
optDefault[A](default: A)(implicit conv: ValueConverter[A]): ValueConverter[A]
Creates a converter for an option with single optional argument (it will parse both
--optand--opt argcommand lines).Creates a converter for an option with single optional argument (it will parse both
--optand--opt argcommand lines).- default
The default value to use if argument wasn't provided.
- conv
Converter instance to use if argument was provided.
- returns
A ValueConverter instance.
- Definition Classes
- DefaultConverters
- implicit val pathConverter: ValueConverter[Path]
- implicit val pathListConverter: ValueConverter[List[Path]]
-
def
propsConverter[A](conv: ValueConverter[A]): ValueConverter[Map[String, A]]
Creates a converter for a property option.
Creates a converter for a property option.
- conv
The converter function to use on each value. May throw an exception on error.
- returns
A ValueConverter instance.
- Definition Classes
- DefaultConverters
-
implicit
val
shortConverter: ValueConverter[Short]
- Definition Classes
- DefaultConverters
-
implicit
val
shortListConverter: ValueConverter[List[Short]]
- Definition Classes
- DefaultConverters
-
implicit
val
shortPropsConverter: ValueConverter[Map[String, Short]]
- Definition Classes
- DefaultConverters
-
def
singleArgConverter[A](conv: (String) ⇒ A, handler: PartialFunction[Throwable, Either[String, Option[A]]] = PartialFunction.empty): ValueConverter[A]
Creates a converter for an option with a single argument.
Creates a converter for an option with a single argument.
- conv
The conversion function to use. May throw an exception on error.
- handler
An error handler function for writing custom error messages.
- returns
A ValueConverter instance.
- Definition Classes
- DefaultConverters
-
implicit
val
stringConverter: ValueConverter[String]
- Definition Classes
- DefaultConverters
-
implicit
val
stringListConverter: ValueConverter[List[String]]
- Definition Classes
- DefaultConverters
-
implicit
val
stringPropsConverter: ValueConverter[Map[String, String]]
- Definition Classes
- DefaultConverters
-
val
tallyConverter: ValueConverter[Int] { val argType: org.rogach.scallop.ArgType.FLAG.type }
Converter for a tally option, used in ScallopConf.tally
Converter for a tally option, used in ScallopConf.tally
- Definition Classes
- DefaultConverters
- implicit val uriConverter: ValueConverter[URI]
- implicit val urlConverter: ValueConverter[URL]
-
object
ArgType
An enumeration of possible arg types by number of arguments they can take.
-
object
Compat
Contains helper functions to handle differences between different platforms (JVM, Native, JS).
- object Formatter
-
object
TrailingArgumentsParser
Parses the trailing arguments (including the arguments to last option).
Parses the trailing arguments (including the arguments to last option). Uses simple backtraking algorithm.
- object Util
- object overrideColorOutput extends DynamicVariable[Option[Boolean]]
- object throwError extends DynamicVariable[Boolean]