CBMC
cpp_parsert Class Reference

#include <cpp_parser.h>

+ Inheritance diagram for cpp_parsert:
+ Collaboration diagram for cpp_parsert:

Public Member Functions

virtual bool parse () override
 
virtual void clear () override
 
 cpp_parsert ()
 
cpp_tokentcurrent_token ()
 
void add_location ()
 
- Public Member Functions inherited from parsert
 parsert ()
 
virtual ~parsert ()
 
bool read (char &ch)
 
bool eof ()
 
void parse_error (const std::string &message, const std::string &before)
 
void inc_line_no ()
 
void set_line_no (unsigned _line_no)
 
void set_file (const irep_idt &file)
 
irep_idt get_file () const
 
unsigned get_line_no () const
 
unsigned get_column () const
 
void set_column (unsigned _column)
 
void set_source_location (exprt &e)
 
void set_function (const irep_idt &function)
 
void advance_column (unsigned token_width)
 
- Public Member Functions inherited from messaget
virtual void set_message_handler (message_handlert &_message_handler)
 
message_handlertget_message_handler ()
 
 messaget ()
 
 messaget (const messaget &other)
 
messagetoperator= (const messaget &other)
 
 messaget (message_handlert &_message_handler)
 
virtual ~messaget ()
 
mstreamtget_mstream (unsigned message_level) const
 
mstreamterror () const
 
mstreamtwarning () const
 
mstreamtresult () const
 
mstreamtstatus () const
 
mstreamtstatistics () const
 
mstreamtprogress () const
 
mstreamtdebug () const
 
void conditional_output (mstreamt &mstream, const std::function< void(mstreamt &)> &output_generator) const
 Generate output to message_stream using output_generator if the configured verbosity is at least as high as that of message_stream. More...
 

Public Attributes

cpp_parse_treet parse_tree
 
ansi_c_parsert::modet mode
 
bool recognize_wchar_t
 
cpp_token_buffert token_buffer
 
unsigned parenthesis_counter
 
bool asm_block_following
 
- Public Attributes inherited from parsert
std::istream * in
 
std::string this_line
 
std::string last_line
 
std::vector< exprtstack
 

Additional Inherited Members

- Public Types inherited from messaget
enum  message_levelt {
  M_ERROR =1, M_WARNING =2, M_RESULT =4, M_STATUS =6,
  M_STATISTICS =8, M_PROGRESS =9, M_DEBUG =10
}
 
- Static Public Member Functions inherited from messaget
static unsigned eval_verbosity (const std::string &user_input, const message_levelt default_verbosity, message_handlert &dest)
 Parse a (user-)provided string as a verbosity level and set it as the verbosity of dest. More...
 
static commandt command (unsigned c)
 Create an ECMA-48 SGR (Select Graphic Rendition) command. More...
 
- Static Public Attributes inherited from messaget
static eomt eom
 
static const commandt reset
 return to default formatting, as defined by the terminal More...
 
static const commandt red
 render text with red foreground color More...
 
static const commandt green
 render text with green foreground color More...
 
static const commandt yellow
 render text with yellow foreground color More...
 
static const commandt blue
 render text with blue foreground color More...
 
static const commandt magenta
 render text with magenta foreground color More...
 
static const commandt cyan
 render text with cyan foreground color More...
 
static const commandt bright_red
 render text with bright red foreground color More...
 
static const commandt bright_green
 render text with bright green foreground color More...
 
static const commandt bright_yellow
 render text with bright yellow foreground color More...
 
static const commandt bright_blue
 render text with bright blue foreground color More...
 
static const commandt bright_magenta
 render text with bright magenta foreground color More...
 
static const commandt bright_cyan
 render text with bright cyan foreground color More...
 
static const commandt bold
 render text with bold font More...
 
static const commandt faint
 render text with faint font More...
 
static const commandt italic
 render italic text More...
 
static const commandt underline
 render underlined text More...
 
- Protected Attributes inherited from parsert
source_locationt source_location
 
unsigned line_no
 
unsigned previous_line_no
 
unsigned column
 
- Protected Attributes inherited from messaget
message_handlertmessage_handler
 
mstreamt mstream
 

Detailed Description

Definition at line 22 of file cpp_parser.h.

Constructor & Destructor Documentation

◆ cpp_parsert()

cpp_parsert::cpp_parsert ( )
inline

Definition at line 37 of file cpp_parser.h.

Member Function Documentation

◆ add_location()

void cpp_parsert::add_location ( )
inline

Definition at line 59 of file cpp_parser.h.

◆ clear()

virtual void cpp_parsert::clear ( )
inlineoverridevirtual

Reimplemented from parsert.

Definition at line 29 of file cpp_parser.h.

◆ current_token()

cpp_tokent& cpp_parsert::current_token ( )
inline

Definition at line 54 of file cpp_parser.h.

◆ parse()

bool cpp_parsert::parse ( )
overridevirtual

Implements parsert.

Definition at line 20 of file cpp_parser.cpp.

Member Data Documentation

◆ asm_block_following

bool cpp_parsert::asm_block_following

Definition at line 67 of file cpp_parser.h.

◆ mode

ansi_c_parsert::modet cpp_parsert::mode

Definition at line 46 of file cpp_parser.h.

◆ parenthesis_counter

unsigned cpp_parsert::parenthesis_counter

Definition at line 66 of file cpp_parser.h.

◆ parse_tree

cpp_parse_treet cpp_parsert::parse_tree

Definition at line 25 of file cpp_parser.h.

◆ recognize_wchar_t

bool cpp_parsert::recognize_wchar_t

Definition at line 50 of file cpp_parser.h.

◆ token_buffer

cpp_token_buffert cpp_parsert::token_buffer

Definition at line 52 of file cpp_parser.h.


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