caseapp.core

package caseapp.core

Core types / classes of caseapp.

Not that in most use cases of caseapp, simply importing things right under caseapp, rather things from caseapp.core, should be enough.

This package is itself split in several sub-packages:

Attributes

Members list

Concise view

Type members

Classlikes

case class Arg(name: Name, extraNames: Seq[Name], valueDescription: Option[ValueDescription], helpMessage: Option[HelpMessage], noHelp: Boolean, isFlag: Boolean, group: Option[Group], origin: Option[String], tags: Seq[Tag])

Infos about an argument / option an application can accept.

Infos about an argument / option an application can accept.

Attributes

extraNames:

extra names

helpMessage:

help message for this argument (optional)

isFlag:

if true, passing an actual value to this argument is optional

name:

main name of the argument

noHelp:

if true, this argument should not appear in help messages

valueDescription:

description of its value (optional)

Companion:
object
Graph
Supertypes
trait Product
trait Equals
class Object
trait Matchable
class Any
object Arg

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Arg.type
sealed abstract class Counter

Helper to count how many times a flag argument is specified.

Helper to count how many times a flag argument is specified.

Should be used with Int and caseapp.@@, like Int @@ Counter.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
sealed abstract class Error extends Product with Serializable

Base type for errors during arguments parsing

Base type for errors during arguments parsing

Attributes

Companion:
object
Graph
Supertypes
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object Error

Attributes

Companion:
class
Graph
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Error.type
final case class Indexed[+T](index: Int, length: Int, value: T)

Attributes

Companion:
object
Graph
Supertypes
trait Product
trait Equals
class Object
trait Matchable
class Any
object Indexed

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Indexed.type
case class RemainingArgs(indexedRemaining: Seq[Indexed[String]], indexedUnparsed: Seq[Indexed[String]])

Arguments that don't correspond to options.

Arguments that don't correspond to options.

Attributes

remaining:

arguments before any --

unparsed:

arguments after a first --, if any

Graph
Supertypes
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type