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
 
 cpp_parsert (message_handlert &message_handler)
 
cpp_tokentcurrent_token ()
 
void add_location ()
 
- Public Member Functions inherited from parsert
 parsert (message_handlert &message_handler)
 
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 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
 

Protected Attributes

std::optional< bool > support_float16
 
- Protected Attributes inherited from parsert
messaget log
 
source_locationt source_location
 
unsigned line_no
 
unsigned previous_line_no
 
unsigned column
 

Detailed Description

Definition at line 24 of file cpp_parser.h.

Constructor & Destructor Documentation

◆ cpp_parsert()

cpp_parsert::cpp_parsert ( message_handlert message_handler)
inlineexplicit

Definition at line 31 of file cpp_parser.h.

Member Function Documentation

◆ add_location()

void cpp_parsert::add_location ( )
inline

Definition at line 56 of file cpp_parser.h.

◆ current_token()

cpp_tokent& cpp_parsert::current_token ( )
inline

Definition at line 51 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 64 of file cpp_parser.h.

◆ mode

ansi_c_parsert::modet cpp_parsert::mode

Definition at line 43 of file cpp_parser.h.

◆ parenthesis_counter

unsigned cpp_parsert::parenthesis_counter

Definition at line 63 of file cpp_parser.h.

◆ parse_tree

cpp_parse_treet cpp_parsert::parse_tree

Definition at line 27 of file cpp_parser.h.

◆ recognize_wchar_t

bool cpp_parsert::recognize_wchar_t

Definition at line 47 of file cpp_parser.h.

◆ support_float16

std::optional<bool> cpp_parsert::support_float16
protected

Definition at line 67 of file cpp_parser.h.

◆ token_buffer

cpp_token_buffert cpp_parsert::token_buffer

Definition at line 49 of file cpp_parser.h.


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