cli20 0.1.2
A C++20 typed-schema command-line parser
Loading...
Searching...
No Matches
cli::TokenizerConfig Struct Reference

Controls how tokenize() recognises option and separator syntax. More...

#include <parser.hh>

Public Member Functions

constexpr TokenizerConfig ()=default
constexpr auto option_prefixes () const -> std::span< const std::string_view >
constexpr auto short_option_prefix () const -> std::string_view
constexpr auto end_of_options_separator () const -> std::string_view
constexpr auto inline_value_separator () const -> char
template<StringLiteral... Prefixes>
constexpr auto set_option_prefixes () -> void
template<StringLiteral... Prefixes>
constexpr auto with_option_prefixes () const -> TokenizerConfig
template<StringLiteral Prefix>
constexpr auto with_short_option_prefix () const -> TokenizerConfig
template<StringLiteral Separator>
constexpr auto with_end_of_options_separator () const -> TokenizerConfig
constexpr auto with_inline_value_separator (char separator) const -> TokenizerConfig

Static Public Attributes

static constexpr std::size_t max_option_prefixes = 4

Detailed Description

Controls how tokenize() recognises option and separator syntax.

The defaults implement GNU-style --long / -s argument conventions with = as the inline value separator and -- as the end-of-options marker.

Definition at line 291 of file parser.hh.

Constructor & Destructor Documentation

◆ TokenizerConfig()

cli::TokenizerConfig::TokenizerConfig ( )
constexprdefault

Member Function Documentation

◆ end_of_options_separator()

auto cli::TokenizerConfig::end_of_options_separator ( ) const -> std::string_view
inlinenodiscardconstexpr

Definition at line 314 of file parser.hh.

◆ inline_value_separator()

auto cli::TokenizerConfig::inline_value_separator ( ) const -> char
inlinenodiscardconstexpr

Definition at line 319 of file parser.hh.

◆ option_prefixes()

auto cli::TokenizerConfig::option_prefixes ( ) const -> std::span< const std::string_view >
inlinenodiscardconstexpr

Definition at line 305 of file parser.hh.

◆ set_option_prefixes()

template<StringLiteral... Prefixes>
auto cli::TokenizerConfig::set_option_prefixes ( ) -> void
inlineconstexpr

Definition at line 324 of file parser.hh.

◆ short_option_prefix()

auto cli::TokenizerConfig::short_option_prefix ( ) const -> std::string_view
inlinenodiscardconstexpr

Definition at line 310 of file parser.hh.

◆ with_end_of_options_separator()

template<StringLiteral Separator>
auto cli::TokenizerConfig::with_end_of_options_separator ( ) const -> TokenizerConfig
inlinenodiscardconstexpr

Definition at line 349 of file parser.hh.

◆ with_inline_value_separator()

auto cli::TokenizerConfig::with_inline_value_separator ( char separator) const -> TokenizerConfig
inlinenodiscardconstexpr

Definition at line 356 of file parser.hh.

◆ with_option_prefixes()

template<StringLiteral... Prefixes>
auto cli::TokenizerConfig::with_option_prefixes ( ) const -> TokenizerConfig
inlinenodiscardconstexpr

Definition at line 334 of file parser.hh.

◆ with_short_option_prefix()

template<StringLiteral Prefix>
auto cli::TokenizerConfig::with_short_option_prefix ( ) const -> TokenizerConfig
inlinenodiscardconstexpr

Definition at line 341 of file parser.hh.

Member Data Documentation

◆ max_option_prefixes

std::size_t cli::TokenizerConfig::max_option_prefixes = 4
staticconstexpr

Definition at line 292 of file parser.hh.


The documentation for this struct was generated from the following file: