Current Version: 1.0.33
Project Name: csspp
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
csspp::parser Class Reference

#include <parser.h>

Public Member Functions

 parser (lexer::pointer_t l)
 
node::pointer_t component_value ()
 
node::pointer_t component_value_list ()
 
node::pointer_t declaration_list ()
 
node::pointer_t rule ()
 
node::pointer_t rule_list ()
 
node::pointer_t stylesheet ()
 

Static Public Member Functions

static bool argify (node::pointer_t n, node_type_t const separator=node_type_t::COMMA)
 
static bool is_nested_declaration (node::pointer_t n)
 
static bool is_variable_set (node::pointer_t n, bool with_block)
 

Private Member Functions

node::pointer_t at_rule (node::pointer_t at_keyword)
 
node::pointer_t block (node::pointer_t b, node_type_t closing_token)
 
node::pointer_t block_list (node::pointer_t b)
 
node::pointer_t component_value (node::pointer_t n)
 
node::pointer_t component_value_list (node::pointer_t n, int flags)
 
node::pointer_t declaration (node::pointer_t identifier)
 
node::pointer_t declaration_list (node::pointer_t n)
 
node::pointer_t next_token ()
 
node::pointer_t qualified_rule (node::pointer_t n)
 
node::pointer_t rule (node::pointer_t n)
 
node::pointer_t rule_list (node::pointer_t n)
 
node::pointer_t stylesheet (node::pointer_t n)
 

Private Attributes

node::pointer_t f_last_token = node::pointer_t()
 
lexer::pointer_t f_lexer = lexer::pointer_t()
 

Detailed Description

Definition at line 26 of file parser.h.

Constructor & Destructor Documentation

◆ parser()

csspp::parser::parser ( lexer::pointer_t  l)

Definition at line 63 of file parser.cpp.

References next_token().

Member Function Documentation

◆ argify()

bool csspp::parser::argify ( node::pointer_t  n,
node_type_t const  separator = node_type_t::COMMA 
)
static

◆ at_rule()

node::pointer_t csspp::parser::at_rule ( node::pointer_t  at_keyword)
private

◆ block()

node::pointer_t csspp::parser::block ( node::pointer_t  b,
node_type_t  closing_token 
)
private

◆ block_list()

node::pointer_t csspp::parser::block_list ( node::pointer_t  b)
private

◆ component_value() [1/2]

node::pointer_t csspp::parser::component_value ( )

Definition at line 94 of file parser.cpp.

References component_value(), and f_last_token.

Referenced by component_value(), and component_value_list().

◆ component_value() [2/2]

node::pointer_t csspp::parser::component_value ( node::pointer_t  n)
private

◆ component_value_list() [1/2]

node::pointer_t csspp::parser::component_value_list ( )

◆ component_value_list() [2/2]

node::pointer_t csspp::parser::component_value_list ( node::pointer_t  n,
int  flags 
)
private

◆ declaration()

node::pointer_t csspp::parser::declaration ( node::pointer_t  identifier)
private

◆ declaration_list() [1/2]

node::pointer_t csspp::parser::declaration_list ( )

Definition at line 84 of file parser.cpp.

References declaration_list(), and f_last_token.

Referenced by declaration_list().

◆ declaration_list() [2/2]

node::pointer_t csspp::parser::declaration_list ( node::pointer_t  n)
private

◆ is_nested_declaration()

bool csspp::parser::is_nested_declaration ( node::pointer_t  n)
static

◆ is_variable_set()

bool csspp::parser::is_variable_set ( node::pointer_t  n,
bool  with_block 
)
static

◆ next_token()

node::pointer_t csspp::parser::next_token ( )
private

◆ qualified_rule()

node::pointer_t csspp::parser::qualified_rule ( node::pointer_t  n)
private

◆ rule() [1/2]

node::pointer_t csspp::parser::rule ( )

Definition at line 79 of file parser.cpp.

References f_last_token, and rule().

Referenced by rule(), and rule_list().

◆ rule() [2/2]

node::pointer_t csspp::parser::rule ( node::pointer_t  n)
private

◆ rule_list() [1/2]

node::pointer_t csspp::parser::rule_list ( )

Definition at line 74 of file parser.cpp.

References f_last_token, and rule_list().

Referenced by rule_list().

◆ rule_list() [2/2]

node::pointer_t csspp::parser::rule_list ( node::pointer_t  n)
private

Definition at line 158 of file parser.cpp.

References csspp::EOF_TOKEN, f_last_token, csspp::LIST, and rule().

◆ stylesheet() [1/2]

node::pointer_t csspp::parser::stylesheet ( )

◆ stylesheet() [2/2]

node::pointer_t csspp::parser::stylesheet ( node::pointer_t  n)
private

Member Data Documentation

◆ f_last_token

node::pointer_t csspp::parser::f_last_token = node::pointer_t()
private

◆ f_lexer

lexer::pointer_t csspp::parser::f_lexer = lexer::pointer_t()
private

Definition at line 57 of file parser.h.

Referenced by next_token().


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

Documentation of CSS Preprocessor.

This document is part of the Snap! Websites Project.

Copyright by Made to Order Software Corp.