cprover
Parser Class Reference
+ Collaboration diagram for Parser:

Public Member Functions

 Parser (cpp_parsert &_cpp_parser)
 
bool operator() ()
 

Protected Types

enum  DeclKind { kDeclarator, kArgDeclarator, kCastDeclarator }
 
enum  TemplateDeclKind {
  tdk_unknown, tdk_decl, tdk_instantiation, tdk_specialization,
  num_tdks
}
 

Protected Member Functions

new_scopetadd_id (const irept &name, new_scopet::kindt)
 
new_scopetadd_id (const irep_idt &, new_scopet::kindt)
 
void make_sub_scope (const irept &name, new_scopet::kindt)
 
void make_sub_scope (const irep_idt &, new_scopet::kindt)
 
bool rProgram (cpp_itemt &item)
 
bool SyntaxError ()
 
bool rDefinition (cpp_itemt &)
 
bool rNullDeclaration (cpp_declarationt &)
 
bool rTypedef (cpp_declarationt &)
 
bool rTypedefUsing (cpp_declarationt &)
 
optionalt< codetrTypedefStatement ()
 
bool rTypeSpecifier (typet &, bool)
 
bool isTypeSpecifier ()
 
bool rLinkageSpec (cpp_linkage_spect &)
 
bool rNamespaceSpec (cpp_namespace_spect &)
 
bool rUsing (cpp_usingt &)
 
bool rStaticAssert (cpp_static_assertt &)
 
bool rLinkageBody (cpp_linkage_spect::itemst &)
 
bool rTemplateDecl (cpp_declarationt &)
 
bool rTemplateDecl2 (typet &, TemplateDeclKind &kind)
 
bool rTempArgList (irept &)
 
bool rTempArgDeclaration (cpp_declarationt &)
 
bool rExternTemplateDecl (cpp_declarationt &)
 
bool rDeclaration (cpp_declarationt &)
 
bool rIntegralDeclaration (cpp_declarationt &, cpp_storage_spect &, cpp_member_spect &, typet &, typet &)
 
bool rConstDeclaration (cpp_declarationt &)
 
bool rOtherDeclaration (cpp_declarationt &, cpp_storage_spect &, cpp_member_spect &, typet &)
 
bool rCondition (exprt &)
 
bool rSimpleDeclaration (cpp_declarationt &)
 
bool isConstructorDecl ()
 
bool isPtrToMember (int)
 
bool optMemberSpec (cpp_member_spect &)
 
bool optStorageSpec (cpp_storage_spect &)
 
bool optCvQualify (typet &)
 
bool optAlignas (typet &)
 
bool rAttribute (typet &)
 
bool optAttribute (typet &)
 
bool optIntegralTypeOrClassSpec (typet &)
 
bool rConstructorDecl (cpp_declaratort &, typet &, typet &trailing_return_type)
 
bool optThrowDecl (irept &)
 
bool rDeclarators (cpp_declarationt::declaratorst &, bool, bool=false)
 
bool rDeclaratorWithInit (cpp_declaratort &, bool, bool)
 
bool rDeclarator (cpp_declaratort &, DeclKind, bool, bool)
 
bool rDeclaratorQualifier ()
 
bool optPtrOperator (typet &)
 
bool rMemberInitializers (irept &)
 
bool rMemberInit (exprt &)
 
bool rName (irept &)
 
bool rOperatorName (irept &)
 
bool rCastOperatorName (irept &)
 
bool rPtrToMember (irept &)
 
bool rTemplateArgs (irept &)
 
bool rArgDeclListOrInit (exprt &, bool &, bool)
 
bool rArgDeclList (irept &)
 
bool rArgDeclaration (cpp_declarationt &)
 
bool rFunctionArguments (exprt &)
 
bool rInitializeExpr (exprt &)
 
bool rEnumSpec (typet &)
 
bool rEnumBody (irept &)
 
bool rClassSpec (typet &)
 
bool rBaseSpecifiers (irept &)
 
bool rClassBody (exprt &)
 
bool rClassMember (cpp_itemt &)
 
bool rAccessDecl (cpp_declarationt &)
 
bool rCommaExpression (exprt &)
 
bool rExpression (exprt &, bool)
 
bool rConditionalExpr (exprt &, bool)
 
bool rLogicalOrExpr (exprt &, bool)
 
bool rLogicalAndExpr (exprt &, bool)
 
bool rInclusiveOrExpr (exprt &, bool)
 
bool rExclusiveOrExpr (exprt &, bool)
 
bool rAndExpr (exprt &, bool)
 
bool rEqualityExpr (exprt &, bool)
 
bool rRelationalExpr (exprt &, bool)
 
bool rShiftExpr (exprt &, bool)
 
bool rAdditiveExpr (exprt &)
 
bool rMultiplyExpr (exprt &)
 
bool rPmExpr (exprt &)
 
bool rCastExpr (exprt &)
 
bool rTypeName (typet &)
 
bool rTypeNameOrFunctionType (typet &)
 
bool rUnaryExpr (exprt &)
 
bool rThrowExpr (exprt &)
 
bool rNoexceptExpr (exprt &)
 
bool rSizeofExpr (exprt &)
 
bool rTypeidExpr (exprt &)
 
bool rAlignofExpr (exprt &)
 
bool isAllocateExpr (int)
 
bool rAllocateExpr (exprt &)
 
bool rAllocateType (exprt &, typet &, exprt &)
 
bool rNewDeclarator (typet &)
 
bool rAllocateInitializer (exprt &)
 
bool rPostfixExpr (exprt &)
 
bool rPrimaryExpr (exprt &)
 
bool rVarName (exprt &)
 
bool rVarNameCore (exprt &)
 
bool maybeTemplateArgs ()
 
bool rFunctionBody (cpp_declaratort &)
 
optionalt< codetrCompoundStatement ()
 
optionalt< codetrStatement ()
 
optionalt< codetrIfStatement ()
 
optionalt< codetrSwitchStatement ()
 
optionalt< codetrWhileStatement ()
 
optionalt< codetrDoStatement ()
 
optionalt< codetrForStatement ()
 
optionalt< codetrTryStatement ()
 
optionalt< codetrExprStatement ()
 
optionalt< codetrDeclarationStatement ()
 
optionalt< codetrIntegralDeclStatement (cpp_storage_spect &, typet &, typet &)
 
optionalt< codetrOtherDeclStatement (cpp_storage_spect &, typet &)
 
bool MaybeTypeNameOrClassTemplate (cpp_tokent &)
 
void SkipTo (int token)
 
bool moreVarName ()
 
bool rString (cpp_tokent &tk)
 
optionalt< codetrGCCAsmStatement ()
 
optionalt< codetrMSC_tryStatement ()
 
optionalt< codetrMSC_leaveStatement ()
 
optionalt< codetrMSCAsmStatement ()
 
optionalt< codetrMSC_if_existsStatement ()
 
bool rTypePredicate (exprt &)
 
bool rMSCuuidof (exprt &)
 
bool rMSC_if_existsExpr (exprt &)
 
void merge_types (const typet &src, typet &dest)
 
void set_location (irept &dest, const cpp_tokent &token)
 
void make_subtype (const typet &src, typet &dest)
 

Protected Attributes

cpp_token_buffertlex
 
cpp_parsertparser
 
new_scopet root_scope
 
new_scopetcurrent_scope
 
std::size_t number_of_errors
 
irep_idt current_function
 
unsigned int max_errors
 

Detailed Description

Definition at line 199 of file parse.cpp.

Member Enumeration Documentation

◆ DeclKind

enum Parser::DeclKind
protected
Enumerator
kDeclarator 
kArgDeclarator 
kCastDeclarator 

Definition at line 225 of file parse.cpp.

◆ TemplateDeclKind

enum Parser::TemplateDeclKind
protected
Enumerator
tdk_unknown 
tdk_decl 
tdk_instantiation 
tdk_specialization 
num_tdks 

Definition at line 226 of file parse.cpp.

Constructor & Destructor Documentation

◆ Parser()

Parser::Parser ( cpp_parsert _cpp_parser)
inlineexplicit

Definition at line 202 of file parse.cpp.

Member Function Documentation

◆ add_id() [1/2]

new_scopet & Parser::add_id ( const irep_idt id,
new_scopet::kindt  kind 
)
protected

Definition at line 430 of file parse.cpp.

◆ add_id() [2/2]

new_scopet & Parser::add_id ( const irept name,
new_scopet::kindt  kind 
)
protected

Definition at line 417 of file parse.cpp.

◆ isAllocateExpr()

bool Parser::isAllocateExpr ( int  t)
protected

Definition at line 6040 of file parse.cpp.

◆ isConstructorDecl()

bool Parser::isConstructorDecl ( )
protected

Definition at line 1858 of file parse.cpp.

◆ isPtrToMember()

bool Parser::isPtrToMember ( int  i)
protected

Definition at line 1894 of file parse.cpp.

◆ isTypeSpecifier()

bool Parser::isTypeSpecifier ( )
protected

Definition at line 754 of file parse.cpp.

◆ make_sub_scope() [1/2]

void Parser::make_sub_scope ( const irep_idt id,
new_scopet::kindt  kind 
)
protected

Definition at line 447 of file parse.cpp.

◆ make_sub_scope() [2/2]

void Parser::make_sub_scope ( const irept name,
new_scopet::kindt  kind 
)
protected

Definition at line 441 of file parse.cpp.

◆ make_subtype()

void Parser::make_subtype ( const typet src,
typet dest 
)
inlineprotected

Definition at line 396 of file parse.cpp.

◆ maybeTemplateArgs()

bool Parser::maybeTemplateArgs ( )
protected

Definition at line 7073 of file parse.cpp.

◆ MaybeTypeNameOrClassTemplate()

bool Parser::MaybeTypeNameOrClassTemplate ( cpp_tokent )
protected

Definition at line 8335 of file parse.cpp.

◆ merge_types()

void Parser::merge_types ( const typet src,
typet dest 
)
protected

Definition at line 461 of file parse.cpp.

◆ moreVarName()

bool Parser::moreVarName ( )
protected

Definition at line 7056 of file parse.cpp.

◆ operator()()

bool Parser::operator() ( void  )

Definition at line 8354 of file parse.cpp.

◆ optAlignas()

bool Parser::optAlignas ( typet cv)
protected

Definition at line 2108 of file parse.cpp.

◆ optAttribute()

bool Parser::optAttribute ( typet t)
protected

Definition at line 2365 of file parse.cpp.

◆ optCvQualify()

bool Parser::optCvQualify ( typet cv)
protected

Definition at line 2022 of file parse.cpp.

◆ optIntegralTypeOrClassSpec()

bool Parser::optIntegralTypeOrClassSpec ( typet p)
protected

Definition at line 2410 of file parse.cpp.

◆ optMemberSpec()

bool Parser::optMemberSpec ( cpp_member_spect member_spec)
protected

Definition at line 1951 of file parse.cpp.

◆ optPtrOperator()

bool Parser::optPtrOperator ( typet ptrs)
protected

Definition at line 3252 of file parse.cpp.

◆ optStorageSpec()

bool Parser::optStorageSpec ( cpp_storage_spect storage_spec)
protected

Definition at line 1986 of file parse.cpp.

◆ optThrowDecl()

bool Parser::optThrowDecl ( irept throw_decl)
protected

Definition at line 2765 of file parse.cpp.

◆ rAccessDecl()

bool Parser::rAccessDecl ( cpp_declarationt mem)
protected

Definition at line 4736 of file parse.cpp.

◆ rAdditiveExpr()

bool Parser::rAdditiveExpr ( exprt exp)
protected

Definition at line 5261 of file parse.cpp.

◆ rAlignofExpr()

bool Parser::rAlignofExpr ( exprt exp)
protected

Definition at line 5975 of file parse.cpp.

◆ rAllocateExpr()

bool Parser::rAllocateExpr ( exprt exp)
protected

Definition at line 6053 of file parse.cpp.

◆ rAllocateInitializer()

bool Parser::rAllocateInitializer ( exprt init)
protected

Definition at line 6270 of file parse.cpp.

◆ rAllocateType()

bool Parser::rAllocateType ( exprt arguments,
typet atype,
exprt initializer 
)
protected

Definition at line 6143 of file parse.cpp.

◆ rAndExpr()

bool Parser::rAndExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5090 of file parse.cpp.

◆ rArgDeclaration()

bool Parser::rArgDeclaration ( cpp_declarationt declaration)
protected

Definition at line 4110 of file parse.cpp.

◆ rArgDeclList()

bool Parser::rArgDeclList ( irept arglist)
protected

Definition at line 4057 of file parse.cpp.

◆ rArgDeclListOrInit()

bool Parser::rArgDeclListOrInit ( exprt arglist,
bool &  is_args,
bool  maybe_init 
)
protected

Definition at line 4018 of file parse.cpp.

◆ rAttribute()

bool Parser::rAttribute ( typet t)
protected

Definition at line 2164 of file parse.cpp.

◆ rBaseSpecifiers()

bool Parser::rBaseSpecifiers ( irept bases)
protected

Definition at line 4537 of file parse.cpp.

◆ rCastExpr()

bool Parser::rCastExpr ( exprt exp)
protected

Definition at line 5405 of file parse.cpp.

◆ rCastOperatorName()

bool Parser::rCastOperatorName ( irept name)
protected

Definition at line 3733 of file parse.cpp.

◆ rClassBody()

bool Parser::rClassBody ( exprt body)
protected

Definition at line 4608 of file parse.cpp.

◆ rClassMember()

bool Parser::rClassMember ( cpp_itemt member)
protected

Definition at line 4668 of file parse.cpp.

◆ rClassSpec()

bool Parser::rClassSpec ( typet spec)
protected

Definition at line 4422 of file parse.cpp.

◆ rCommaExpression()

bool Parser::rCommaExpression ( exprt exp)
protected

Definition at line 4761 of file parse.cpp.

◆ rCompoundStatement()

optionalt< codet > Parser::rCompoundStatement ( )
protected

Definition at line 7221 of file parse.cpp.

◆ rCondition()

bool Parser::rCondition ( exprt statement)
protected

Definition at line 8137 of file parse.cpp.

◆ rConditionalExpr()

bool Parser::rConditionalExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 4885 of file parse.cpp.

◆ rConstDeclaration()

bool Parser::rConstDeclaration ( cpp_declarationt declaration)
protected

Definition at line 1655 of file parse.cpp.

◆ rConstructorDecl()

bool Parser::rConstructorDecl ( cpp_declaratort constructor,
typet type_name,
typet trailing_return_type 
)
protected

Definition at line 2635 of file parse.cpp.

◆ rDeclaration()

bool Parser::rDeclaration ( cpp_declarationt declaration)
protected

Definition at line 1386 of file parse.cpp.

◆ rDeclarationStatement()

optionalt< codet > Parser::rDeclarationStatement ( )
protected

Definition at line 8176 of file parse.cpp.

◆ rDeclarator()

bool Parser::rDeclarator ( cpp_declaratort declarator,
DeclKind  kind,
bool  should_be_declarator,
bool  is_statement 
)
protected

Definition at line 3004 of file parse.cpp.

◆ rDeclaratorQualifier()

bool Parser::rDeclaratorQualifier ( )
protected

Definition at line 2971 of file parse.cpp.

◆ rDeclarators()

bool Parser::rDeclarators ( cpp_declarationt::declaratorst declarators,
bool  should_be_declarator,
bool  is_statement = false 
)
protected

Definition at line 2833 of file parse.cpp.

◆ rDeclaratorWithInit()

bool Parser::rDeclaratorWithInit ( cpp_declaratort dw,
bool  should_be_declarator,
bool  is_statement 
)
protected

Definition at line 2862 of file parse.cpp.

◆ rDefinition()

bool Parser::rDefinition ( cpp_itemt item)
protected

Definition at line 551 of file parse.cpp.

◆ rDoStatement()

optionalt< codet > Parser::rDoStatement ( )
protected

Definition at line 7643 of file parse.cpp.

◆ rEnumBody()

bool Parser::rEnumBody ( irept body)
protected

Definition at line 4366 of file parse.cpp.

◆ rEnumSpec()

bool Parser::rEnumSpec ( typet spec)
protected

Definition at line 4283 of file parse.cpp.

◆ rEqualityExpr()

bool Parser::rEqualityExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5129 of file parse.cpp.

◆ rExclusiveOrExpr()

bool Parser::rExclusiveOrExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5051 of file parse.cpp.

◆ rExpression()

bool Parser::rExpression ( exprt exp,
bool  template_args 
)
protected

Definition at line 4804 of file parse.cpp.

◆ rExprStatement()

optionalt< codet > Parser::rExprStatement ( )
protected

Definition at line 8065 of file parse.cpp.

◆ rExternTemplateDecl()

bool Parser::rExternTemplateDecl ( cpp_declarationt decl)
protected

Definition at line 1338 of file parse.cpp.

◆ rForStatement()

optionalt< codet > Parser::rForStatement ( )
protected

Definition at line 7680 of file parse.cpp.

◆ rFunctionArguments()

bool Parser::rFunctionArguments ( exprt args)
protected

Definition at line 4243 of file parse.cpp.

◆ rFunctionBody()

bool Parser::rFunctionBody ( cpp_declaratort declarator)
protected

Definition at line 7174 of file parse.cpp.

◆ rGCCAsmStatement()

optionalt< codet > Parser::rGCCAsmStatement ( )
protected

Definition at line 7890 of file parse.cpp.

◆ rIfStatement()

optionalt< codet > Parser::rIfStatement ( )
protected

Definition at line 7534 of file parse.cpp.

◆ rInclusiveOrExpr()

bool Parser::rInclusiveOrExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5012 of file parse.cpp.

◆ rInitializeExpr()

bool Parser::rInitializeExpr ( exprt expr)
protected

Definition at line 4155 of file parse.cpp.

◆ rIntegralDeclaration()

bool Parser::rIntegralDeclaration ( cpp_declarationt declaration,
cpp_storage_spect storage_spec,
cpp_member_spect member_spec,
typet integral,
typet cv_q 
)
protected

Definition at line 1532 of file parse.cpp.

◆ rIntegralDeclStatement()

optionalt< codet > Parser::rIntegralDeclStatement ( cpp_storage_spect storage_spec,
typet integral,
typet cv_q 
)
protected

Definition at line 8245 of file parse.cpp.

◆ rLinkageBody()

bool Parser::rLinkageBody ( cpp_linkage_spect::itemst items)
protected

Definition at line 957 of file parse.cpp.

◆ rLinkageSpec()

bool Parser::rLinkageSpec ( cpp_linkage_spect linkage_spec)
protected

Definition at line 786 of file parse.cpp.

◆ rLogicalAndExpr()

bool Parser::rLogicalAndExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 4973 of file parse.cpp.

◆ rLogicalOrExpr()

bool Parser::rLogicalOrExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 4934 of file parse.cpp.

◆ rMemberInit()

bool Parser::rMemberInit ( exprt init)
protected

Definition at line 3404 of file parse.cpp.

◆ rMemberInitializers()

bool Parser::rMemberInitializers ( irept init)
protected

Definition at line 3371 of file parse.cpp.

◆ rMSC_if_existsExpr()

bool Parser::rMSC_if_existsExpr ( exprt expr)
protected

Definition at line 6515 of file parse.cpp.

◆ rMSC_if_existsStatement()

optionalt< codet > Parser::rMSC_if_existsStatement ( )
protected

Definition at line 6560 of file parse.cpp.

◆ rMSC_leaveStatement()

optionalt< codet > Parser::rMSC_leaveStatement ( )
protected

Definition at line 7874 of file parse.cpp.

◆ rMSC_tryStatement()

optionalt< codet > Parser::rMSC_tryStatement ( )
protected

Definition at line 7812 of file parse.cpp.

◆ rMSCAsmStatement()

optionalt< codet > Parser::rMSCAsmStatement ( )
protected

Definition at line 7989 of file parse.cpp.

◆ rMSCuuidof()

bool Parser::rMSCuuidof ( exprt expr)
protected

Definition at line 6466 of file parse.cpp.

◆ rMultiplyExpr()

bool Parser::rMultiplyExpr ( exprt exp)
protected

Definition at line 5308 of file parse.cpp.

◆ rName()

bool Parser::rName ( irept name)
protected

Definition at line 3486 of file parse.cpp.

◆ rNamespaceSpec()

bool Parser::rNamespaceSpec ( cpp_namespace_spect namespace_spec)
protected

Definition at line 826 of file parse.cpp.

◆ rNewDeclarator()

bool Parser::rNewDeclarator ( typet decl)
protected

Definition at line 6239 of file parse.cpp.

◆ rNoexceptExpr()

bool Parser::rNoexceptExpr ( exprt exp)
protected

Definition at line 6003 of file parse.cpp.

◆ rNullDeclaration()

bool Parser::rNullDeclaration ( cpp_declarationt decl)
protected

Definition at line 587 of file parse.cpp.

◆ rOperatorName()

bool Parser::rOperatorName ( irept name)
protected

Definition at line 3629 of file parse.cpp.

◆ rOtherDeclaration()

bool Parser::rOtherDeclaration ( cpp_declarationt declaration,
cpp_storage_spect storage_spec,
cpp_member_spect member_spec,
typet cv_q 
)
protected

Definition at line 1674 of file parse.cpp.

◆ rOtherDeclStatement()

optionalt< codet > Parser::rOtherDeclStatement ( cpp_storage_spect storage_spec,
typet cv_q 
)
protected

Definition at line 8289 of file parse.cpp.

◆ rPmExpr()

bool Parser::rPmExpr ( exprt exp)
protected

Definition at line 5361 of file parse.cpp.

◆ rPostfixExpr()

bool Parser::rPostfixExpr ( exprt exp)
protected

Definition at line 6327 of file parse.cpp.

◆ rPrimaryExpr()

bool Parser::rPrimaryExpr ( exprt exp)
protected

Definition at line 6677 of file parse.cpp.

◆ rProgram()

bool Parser::rProgram ( cpp_itemt item)
protected

Definition at line 521 of file parse.cpp.

◆ rPtrToMember()

bool Parser::rPtrToMember ( irept ptr_to_mem)
protected

Definition at line 3773 of file parse.cpp.

◆ rRelationalExpr()

bool Parser::rRelationalExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5169 of file parse.cpp.

◆ rShiftExpr()

bool Parser::rShiftExpr ( exprt exp,
bool  template_args 
)
protected

Definition at line 5221 of file parse.cpp.

◆ rSimpleDeclaration()

bool Parser::rSimpleDeclaration ( cpp_declarationt declaration)
protected

Definition at line 1474 of file parse.cpp.

◆ rSizeofExpr()

bool Parser::rSizeofExpr ( exprt exp)
protected

Definition at line 5903 of file parse.cpp.

◆ rStatement()

optionalt< codet > Parser::rStatement ( )
protected

Definition at line 7282 of file parse.cpp.

◆ rStaticAssert()

bool Parser::rStaticAssert ( cpp_static_assertt cpp_static_assert)
protected

Definition at line 916 of file parse.cpp.

◆ rString()

bool Parser::rString ( cpp_tokent tk)
protected

Definition at line 453 of file parse.cpp.

◆ rSwitchStatement()

optionalt< codet > Parser::rSwitchStatement ( )
protected

Definition at line 7581 of file parse.cpp.

◆ rTempArgDeclaration()

bool Parser::rTempArgDeclaration ( cpp_declarationt declaration)
protected

Definition at line 1154 of file parse.cpp.

◆ rTempArgList()

bool Parser::rTempArgList ( irept args)
protected

Definition at line 1120 of file parse.cpp.

◆ rTemplateArgs()

bool Parser::rTemplateArgs ( irept template_args)
protected

Definition at line 3870 of file parse.cpp.

◆ rTemplateDecl()

bool Parser::rTemplateDecl ( cpp_declarationt decl)
protected

Definition at line 1005 of file parse.cpp.

◆ rTemplateDecl2()

bool Parser::rTemplateDecl2 ( typet decl,
TemplateDeclKind kind 
)
protected

Definition at line 1061 of file parse.cpp.

◆ rThrowExpr()

bool Parser::rThrowExpr ( exprt exp)
protected

Definition at line 5798 of file parse.cpp.

◆ rTryStatement()

optionalt< codet > Parser::rTryStatement ( )
protected

Definition at line 7737 of file parse.cpp.

◆ rTypedef()

bool Parser::rTypedef ( cpp_declarationt declaration)
protected

Definition at line 603 of file parse.cpp.

◆ rTypedefStatement()

optionalt< codet > Parser::rTypedefStatement ( )
protected

Definition at line 680 of file parse.cpp.

◆ rTypedefUsing()

bool Parser::rTypedefUsing ( cpp_declarationt declaration)
protected

Definition at line 631 of file parse.cpp.

◆ rTypeidExpr()

bool Parser::rTypeidExpr ( exprt exp)
protected

Definition at line 5837 of file parse.cpp.

◆ rTypeName()

bool Parser::rTypeName ( typet tname)
protected

Definition at line 5465 of file parse.cpp.

◆ rTypeNameOrFunctionType()

bool Parser::rTypeNameOrFunctionType ( typet tname)
protected

Definition at line 5509 of file parse.cpp.

◆ rTypePredicate()

bool Parser::rTypePredicate ( exprt expr)
protected

Definition at line 6615 of file parse.cpp.

◆ rTypeSpecifier()

bool Parser::rTypeSpecifier ( typet tspec,
bool  check 
)
protected

Definition at line 694 of file parse.cpp.

◆ rUnaryExpr()

bool Parser::rUnaryExpr ( exprt exp)
protected

Definition at line 5691 of file parse.cpp.

◆ rUsing()

bool Parser::rUsing ( cpp_usingt cpp_using)
protected

Definition at line 888 of file parse.cpp.

◆ rVarName()

bool Parser::rVarName ( exprt name)
protected

Definition at line 6911 of file parse.cpp.

◆ rVarNameCore()

bool Parser::rVarNameCore ( exprt name)
protected

Definition at line 6924 of file parse.cpp.

◆ rWhileStatement()

optionalt< codet > Parser::rWhileStatement ( )
protected

Definition at line 7612 of file parse.cpp.

◆ set_location()

void Parser::set_location ( irept dest,
const cpp_tokent token 
)
inlineprotected

Definition at line 386 of file parse.cpp.

◆ SkipTo()

void Parser::SkipTo ( int  token)
protected

Definition at line 8340 of file parse.cpp.

◆ SyntaxError()

bool Parser::SyntaxError ( )
protected

Definition at line 487 of file parse.cpp.

Member Data Documentation

◆ current_function

irep_idt Parser::current_function
protected

Definition at line 382 of file parse.cpp.

◆ current_scope

new_scopet* Parser::current_scope
protected

Definition at line 219 of file parse.cpp.

◆ lex

cpp_token_buffert& Parser::lex
protected

Definition at line 214 of file parse.cpp.

◆ max_errors

unsigned int Parser::max_errors
protected

Definition at line 414 of file parse.cpp.

◆ number_of_errors

std::size_t Parser::number_of_errors
protected

Definition at line 381 of file parse.cpp.

◆ parser

cpp_parsert& Parser::parser
protected

Definition at line 215 of file parse.cpp.

◆ root_scope

new_scopet Parser::root_scope
protected

Definition at line 218 of file parse.cpp.


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