RetroArch
Classes | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
peg::ParserGenerator Class Reference

#include <peglib.h>

Classes

struct  Data
 
struct  DetectLeftRecursion
 

Static Public Member Functions

static std::shared_ptr< Grammarparse (const char *s, size_t n, std::string &start, MatchAction ma, Log log)
 
static Grammargrammar ()
 

Private Member Functions

 ParserGenerator ()
 
void make_grammar ()
 
void setup_actions ()
 
std::shared_ptr< Grammarperform_core (const char *s, size_t n, std::string &start, MatchAction ma, Log log)
 
bool is_hex (char c, int &v)
 
bool is_digit (char c, int &v)
 
std::pair< char, size_t > parse_hex_number (const char *s, size_t n, size_t i)
 
std::pair< char, size_t > parse_octal_number (const char *s, size_t n, size_t i)
 
std::string resolve_escape_sequence (const char *s, size_t n)
 

Static Private Member Functions

static ParserGeneratorget_instance ()
 

Private Attributes

Grammar g
 

Constructor & Destructor Documentation

◆ ParserGenerator()

peg::ParserGenerator::ParserGenerator ( )
inlineprivate

Member Function Documentation

◆ get_instance()

static ParserGenerator& peg::ParserGenerator::get_instance ( )
inlinestaticprivate

◆ grammar()

static Grammar& peg::ParserGenerator::grammar ( )
inlinestatic

◆ is_digit()

bool peg::ParserGenerator::is_digit ( char  c,
int &  v 
)
inlineprivate

◆ is_hex()

bool peg::ParserGenerator::is_hex ( char  c,
int &  v 
)
inlineprivate

◆ make_grammar()

void peg::ParserGenerator::make_grammar ( )
inlineprivate
Here is the call graph for this function:

◆ parse()

static std::shared_ptr<Grammar> peg::ParserGenerator::parse ( const char *  s,
size_t  n,
std::string start,
MatchAction  ma,
Log  log 
)
inlinestatic

◆ parse_hex_number()

std::pair<char, size_t> peg::ParserGenerator::parse_hex_number ( const char *  s,
size_t  n,
size_t  i 
)
inlineprivate

◆ parse_octal_number()

std::pair<char, size_t> peg::ParserGenerator::parse_octal_number ( const char *  s,
size_t  n,
size_t  i 
)
inlineprivate

◆ perform_core()

std::shared_ptr<Grammar> peg::ParserGenerator::perform_core ( const char *  s,
size_t  n,
std::string start,
MatchAction  ma,
Log  log 
)
inlineprivate
Here is the call graph for this function:

◆ resolve_escape_sequence()

std::string peg::ParserGenerator::resolve_escape_sequence ( const char *  s,
size_t  n 
)
inlineprivate

◆ setup_actions()

void peg::ParserGenerator::setup_actions ( )
inlineprivate
Here is the call graph for this function:

Member Data Documentation

◆ g

Grammar peg::ParserGenerator::g
private

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