di 0.1.0
Loading...
Searching...
No Matches
di::cli Namespace Reference

Namespaces

namespace  bash
namespace  zsh

Classes

struct  ParseArgumentError
struct  ParseOptionError
struct  ShortOptionMissingRequiredValue
struct  LongOptionMissingRequiredValue
struct  MissingRequiredOption
struct  MissingRequiredArgument
struct  UnknownShortOption
struct  UnknownLongOption
struct  ExtraArguments
struct  ParseSubcommandError
struct  UnknownSubcommand
struct  MissingSubcommand
struct  ConcreteError
class  Error
class  ErrorDomain

Concepts

concept  HasCliParser

Typedefs

using ErrorVariant
using ErrorCode = vocab::StatusCode<ErrorDomain>

Enumerations

enum class  Shell { Bash , Zsh }
enum class  ValueType {
  Unknown , Enum , Path , Directory ,
  Executable , CommandName , CommandWithArgs
}

Functions

constexpr auto tag_invoke (Tag< vocab::into_status_code >, Error error)
template<concepts::Object T>
constexpr auto cli_parser (TransparentStringView app_name, StringView description)

Variables

constexpr auto error_domain = ErrorDomain {}
constexpr auto get_cli_parser_in_place = detail::GetCliParserInPlaceFunction {}
template<typename T>
constexpr auto get_cli_parser = detail::GetCliParserFunction<T> {}
template<typename T>
constexpr auto default_value_type = detail::DefaultValueType<meta::RemoveCVRef<T>>::value

Typedef Documentation

◆ ErrorCode

◆ ErrorVariant

Enumeration Type Documentation

◆ Shell

enum class di::cli::Shell
strong
Enumerator
Bash 
Zsh 

◆ ValueType

enum class di::cli::ValueType
strong
Enumerator
Unknown 
Enum 
Path 
Directory 
Executable 
CommandName 
CommandWithArgs 

Function Documentation

◆ cli_parser()

template<concepts::Object T>
auto di::cli::cli_parser ( TransparentStringView app_name,
StringView description )
constexpr

◆ tag_invoke()

auto di::cli::tag_invoke ( Tag< vocab::into_status_code > ,
Error error )
constexpr

Variable Documentation

◆ default_value_type

template<typename T>
auto di::cli::default_value_type = detail::DefaultValueType<meta::RemoveCVRef<T>>::value
inlineconstexpr

◆ error_domain

auto di::cli::error_domain = ErrorDomain {}
inlineconstexpr

◆ get_cli_parser

template<typename T>
auto di::cli::get_cli_parser = detail::GetCliParserFunction<T> {}
inlineconstexpr

◆ get_cli_parser_in_place

auto di::cli::get_cli_parser_in_place = detail::GetCliParserInPlaceFunction {}
inlineconstexpr