1#ifndef SOURCEMETA_CORE_URITEMPLATE_TOKEN_H_
2#define SOURCEMETA_CORE_URITEMPLATE_TOKEN_H_
4#ifndef SOURCEMETA_CORE_URITEMPLATE_EXPORT
5#include <sourcemeta/core/uritemplate_export.h>
13namespace sourcemeta::core {
20#pragma warning(disable : 4251)
46 std::vector<URITemplateVariableSpecification>
variables;
50 static constexpr bool NAMED =
false;
59 std::vector<URITemplateVariableSpecification>
variables;
65 static constexpr bool NAMED =
false;
74 std::vector<URITemplateVariableSpecification>
variables;
82 static constexpr bool NAMED =
false;
91 std::vector<URITemplateVariableSpecification>
variables;
99 static constexpr bool NAMED =
false;
108 std::vector<URITemplateVariableSpecification>
variables;
116 static constexpr bool NAMED =
false;
123struct SOURCEMETA_CORE_URITEMPLATE_EXPORT
126 std::vector<URITemplateVariableSpecification>
variables;
143 std::vector<URITemplateVariableSpecification>
variables;
160struct SOURCEMETA_CORE_URITEMPLATE_EXPORT
163 std::vector<URITemplateVariableSpecification>
variables;
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:93
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:118
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:101
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:116
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:48
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:97
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:84
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:63
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:82
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:132
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:136
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:74
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:65
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:114
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:78
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:95
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:108
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:167
std::string_view value
The literal string content.
Definition uritemplate_token.h:27
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:61
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:76
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:52
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:165
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:80
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:153
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:171
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:145
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:91
std::uint16_t length
The maximum prefix length to apply to the value.
Definition uritemplate_token.h:37
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:134
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:130
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:50
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:126
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:67
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:151
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:128
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:147
bool explode
Whether the variable is exploded into multiple values.
Definition uritemplate_token.h:39
static constexpr bool ALLOW_RESERVED
Whether reserved characters are preserved unencoded.
Definition uritemplate_token.h:173
static constexpr char OPERATOR
The operator character that introduces the expression.
Definition uritemplate_token.h:110
static constexpr char EMPTY_SUFFIX
The character appended to names with empty values.
Definition uritemplate_token.h:155
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:163
static constexpr bool NAMED
Whether the expansion includes variable names.
Definition uritemplate_token.h:99
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:143
static constexpr char SEPARATOR
The character that separates expanded values.
Definition uritemplate_token.h:112
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:169
std::string_view name
The variable name.
Definition uritemplate_token.h:34
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:59
static constexpr char EMPTY_SUFFIX
The character appended to names with empty values.
Definition uritemplate_token.h:175
std::vector< URITemplateVariableSpecification > variables
The variable specifications to expand.
Definition uritemplate_token.h:46
static constexpr char PREFIX
The character prepended to the expansion output.
Definition uritemplate_token.h:149
std::variant< URITemplateTokenLiteral, URITemplateTokenVariable, URITemplateTokenReservedExpansion, URITemplateTokenFragmentExpansion, URITemplateTokenLabelExpansion, URITemplateTokenPathExpansion, URITemplateTokenPathParameterExpansion, URITemplateTokenQueryExpansion, URITemplateTokenQueryContinuationExpansion > URITemplateToken
Definition uritemplate_token.h:184