CBMC
is_compile_time_constantt Class Reference

Architecturally similar to can_forward_propagatet, but specialized for what is a constexpr, i.e., an expression that can be fully evaluated at compile time. More...

+ Collaboration diagram for is_compile_time_constantt:

Public Member Functions

 is_compile_time_constantt (const namespacet &ns)
 
bool operator() (const exprt &e) const
 returns true iff the expression can be considered constant More...
 

Protected Member Functions

bool is_constant (const exprt &e) const
 This function determines what expressions are to be propagated as "constants". More...
 
bool is_constant_address_of (const exprt &e) const
 this function determines which reference-typed expressions are constant More...
 

Protected Attributes

const namespacetns
 

Detailed Description

Architecturally similar to can_forward_propagatet, but specialized for what is a constexpr, i.e., an expression that can be fully evaluated at compile time.

Definition at line 4620 of file c_typecheck_expr.cpp.

Constructor & Destructor Documentation

◆ is_compile_time_constantt()

is_compile_time_constantt::is_compile_time_constantt ( const namespacet ns)
inlineexplicit

Definition at line 4623 of file c_typecheck_expr.cpp.

Member Function Documentation

◆ is_constant()

bool is_compile_time_constantt::is_constant ( const exprt e) const
inlineprotected

This function determines what expressions are to be propagated as "constants".

Definition at line 4638 of file c_typecheck_expr.cpp.

◆ is_constant_address_of()

bool is_compile_time_constantt::is_constant_address_of ( const exprt e) const
inlineprotected

this function determines which reference-typed expressions are constant

Definition at line 4670 of file c_typecheck_expr.cpp.

◆ operator()()

bool is_compile_time_constantt::operator() ( const exprt e) const
inline

returns true iff the expression can be considered constant

Definition at line 4628 of file c_typecheck_expr.cpp.

Member Data Documentation

◆ ns

const namespacet& is_compile_time_constantt::ns
protected

Definition at line 4634 of file c_typecheck_expr.cpp.


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