MySQL 8.4.0
Source Code Documentation
Designator Class Reference

Designator grammar. More...

#include <designator.h>

Classes

class  Constraint
 

Public Types

enum  Relation {
  LESS_THEN , LESS_EQUAL , EQUAL , NOT_EQUAL ,
  GREATER_EQUAL , GREATER_THEN
}
 

Public Member Functions

 Designator (const std::string &str)
 
bool version_good (const Version &ver) const
 

Public Attributes

std::string plugin
 
Constraint constraint
 

Private Member Functions

void trace (const std::string &where) const
 
void parse_error (const std::string &prefix) const
 
std::string::value_type peek () const
 
std::string::value_type next ()
 
Relation parse_relation ()
 
Version parse_version ()
 
long parse_number ()
 
void parse_plugin ()
 
void parse_root ()
 
void parse_version_list ()
 
void skip_space ()
 

Private Attributes

const std::string & input_
 
std::string::const_iterator cur_
 

Detailed Description

Designator grammar.

root ::= name root ::= name "(" op version ( "," op version )* ")" op ::= "<<" | "<=" | "!=" | "==" | ">>" | ">=" version ::= number "." number "." number

Member Enumeration Documentation

◆ Relation

Enumerator
LESS_THEN 
LESS_EQUAL 
EQUAL 
NOT_EQUAL 
GREATER_EQUAL 
GREATER_THEN 

Constructor & Destructor Documentation

◆ Designator()

Designator::Designator ( const std::string &  str)
explicit

Member Function Documentation

◆ next()

std::string::value_type Designator::next ( )
inlineprivate

◆ parse_error()

void Designator::parse_error ( const std::string &  prefix) const
private

◆ parse_number()

long Designator::parse_number ( )
private

◆ parse_plugin()

void Designator::parse_plugin ( )
private

◆ parse_relation()

Designator::Relation Designator::parse_relation ( )
private

◆ parse_root()

void Designator::parse_root ( )
private

◆ parse_version()

Version Designator::parse_version ( )
private

◆ parse_version_list()

void Designator::parse_version_list ( )
private

◆ peek()

std::string::value_type Designator::peek ( ) const
inlineprivate

◆ skip_space()

void Designator::skip_space ( )
private

◆ trace()

void Designator::trace ( const std::string &  where) const
private

◆ version_good()

bool Designator::version_good ( const Version ver) const

Member Data Documentation

◆ constraint

Constraint Designator::constraint

◆ cur_

std::string::const_iterator Designator::cur_
private

◆ input_

const std::string& Designator::input_
private

◆ plugin

std::string Designator::plugin

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