Class Operator

Inheritance Relationships

Derived Types

Class Documentation

class URI::Template::Operator

Abstract base to hold definition of expression operator.

Defines interface to represent various operators defined in RFC 6570. This table used to fill definitions (https://tools.ietf.org/html/rfc6570#page-31): | noop | + | . | / | ; | ? | & | # —|—-|—-|—-|—-|—|—|—|—- first | “” | “” | “.” | “/” | “;” | “?” | “&” | “#” sep | “,” | “,” | “.” | “/” | “;” | “&” | “&” | “,” named | false | false | false | false | true | true | true | false ifemp | “” | “” | “” | “” | “” | “=” | “=” | “” allow | U | U+R | U | U | U | U | U | U+R

Subclassed by URI::Template::OpFragment, URI::Template::OpLabel, URI::Template::OpNoop, URI::Template::OpPath, URI::Template::OpPathParam, URI::Template::OpQuery, URI::Template::OpQueryContinue

Public Functions

virtual ~Operator() = default

Destructor.

virtual OperatorType Type() const = 0

Get type of the operator.

virtual char Start() const = 0

Get starting character of the operator.

virtual char First() const = 0

Get the first character used for operator expansion.

virtual char Separator() const = 0

Get the separator character used for operator expansion.

virtual bool Named() const = 0

Check if the operator using named variables or not.

virtual bool EmptyEq() const = 0

Check if the operator using ‘=’ sign for empty variables.

virtual bool Reserved() const = 0

Check if the operator allows reserved characters for variable value.

virtual bool StartExpanded() const = 0

Check if the operator’s start character also used in expansion.

Public Static Attributes

static const char kNoCharacter

Constant used to represent absent character. Equals ‘\0’.