Ada 3.1.0
Fast spec-compliant URL parser
Loading...
Searching...
No Matches
ada::url_pattern_helpers::constructor_string_parser< regex_provider > Struct Template Reference

#include <url_pattern_helpers.h>

Public Types

enum class  State {
  INIT , PROTOCOL , AUTHORITY , USERNAME ,
  PASSWORD , HOSTNAME , PORT , PATHNAME ,
  SEARCH , HASH , DONE
}
 

Public Member Functions

 constructor_string_parser (std::string_view new_input, std::vector< token > &&new_token_list)
 
void rewind ()
 
bool is_hash_prefix ()
 
bool is_search_prefix ()
 
void change_state (State state, size_t skip)
 
bool is_group_open () const
 
bool is_group_close () const
 
bool is_protocol_suffix () const
 
std::optional< errorscompute_protocol_matches_special_scheme_flag ()
 
bool next_is_authority_slashes () const
 
bool is_an_identity_terminator () const
 
bool is_pathname_start () const
 
bool is_password_prefix () const
 
bool is_an_ipv6_open () const
 
bool is_an_ipv6_close () const
 
bool is_port_prefix () const
 

Static Public Member Functions

static tl::expected< url_pattern_init, errorsparse (std::string_view input)
 

Detailed Description

template<url_pattern_regex::regex_concept regex_provider>
struct ada::url_pattern_helpers::constructor_string_parser< regex_provider >

Definition at line 154 of file url_pattern_helpers.h.

Member Enumeration Documentation

◆ State

template<url_pattern_regex::regex_concept regex_provider>
enum class ada::url_pattern_helpers::constructor_string_parser::State
strong
Enumerator
INIT 
PROTOCOL 
AUTHORITY 
USERNAME 
PASSWORD 
HOSTNAME 
PORT 
PATHNAME 
SEARCH 
HASH 
DONE 

Definition at line 172 of file url_pattern_helpers.h.

Constructor & Destructor Documentation

◆ constructor_string_parser()

template<url_pattern_regex::regex_concept regex_provider>
ada::url_pattern_helpers::constructor_string_parser< regex_provider >::constructor_string_parser ( std::string_view new_input,
std::vector< token > && new_token_list )
inlineexplicit

Definition at line 155 of file url_pattern_helpers.h.

Referenced by parse().

Member Function Documentation

◆ change_state()

template<url_pattern_regex::regex_concept regex_provider>
void ada::url_pattern_helpers::constructor_string_parser< regex_provider >::change_state ( State state,
size_t skip )

◆ compute_protocol_matches_special_scheme_flag()

◆ is_an_identity_terminator()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_an_identity_terminator ( ) const

Definition at line 294 of file url_pattern_helpers-inl.h.

◆ is_an_ipv6_close()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_an_ipv6_close ( ) const

Definition at line 323 of file url_pattern_helpers-inl.h.

◆ is_an_ipv6_open()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_an_ipv6_open ( ) const

Definition at line 316 of file url_pattern_helpers-inl.h.

◆ is_group_close()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_group_close ( ) const

Definition at line 144 of file url_pattern_helpers-inl.h.

References ada::url_pattern_helpers::CLOSE.

◆ is_group_open()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_group_open ( ) const

Definition at line 137 of file url_pattern_helpers-inl.h.

References ada::url_pattern_helpers::OPEN.

◆ is_hash_prefix()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_hash_prefix ( )

Definition at line 55 of file url_pattern_helpers-inl.h.

◆ is_password_prefix()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_password_prefix ( ) const

Definition at line 309 of file url_pattern_helpers-inl.h.

◆ is_pathname_start()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_pathname_start ( ) const

Definition at line 302 of file url_pattern_helpers-inl.h.

◆ is_port_prefix()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_port_prefix ( ) const

Definition at line 330 of file url_pattern_helpers-inl.h.

◆ is_protocol_suffix()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::is_protocol_suffix ( ) const

Definition at line 167 of file url_pattern_helpers-inl.h.

◆ is_search_prefix()

◆ next_is_authority_slashes()

template<url_pattern_regex::regex_concept regex_provider>
bool ada::url_pattern_helpers::constructor_string_parser< regex_provider >::next_is_authority_slashes ( ) const

Definition at line 151 of file url_pattern_helpers-inl.h.

◆ parse()

◆ rewind()

template<url_pattern_regex::regex_concept regex_provider>
void ada::url_pattern_helpers::constructor_string_parser< regex_provider >::rewind ( )

Definition at line 47 of file url_pattern_helpers-inl.h.


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