package scallop
- Source
- package.scala
- Alphabetic
- By Inheritance
- scallop
- DefaultConverters
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Package Members
- package exceptions
- package tokenize
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 (
-1
or-3
, like GNU tail for example).Descriptor for a number option (
-1
or-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=value
or-D key1=value1 key2=value2
).Descriptor for a property option (like
-Dkey=value
or-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
validate
methods 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)
- 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, 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.
- 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 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
--opt
and--opt arg
command lines).Creates a converter for an option with single optional argument (it will parse both
--opt
and--opt arg
command 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
- 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
- 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]