Flow123d  3.9.1-787489b
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
feal::Exc_assert Class Reference

Helper class. More...

#include <asserts.hh>

Inheritance diagram for feal::Exc_assert:
Inheritance graph
[legend]
Collaboration diagram for feal::Exc_assert:
Collaboration graph
[legend]

Public Member Functions

 Exc_assert ()
 
 ~Exc_assert ()
 Destructor. More...
 
void print_info (std::ostringstream &out) const override
 Print formatted assert message. More...
 
- Public Member Functions inherited from ExceptionBase
 ExceptionBase ()
 Default constructor, just calls fill_stacktrace(). More...
 
 ExceptionBase (const ExceptionBase &other)
 Copy constructor, performs deep copy of stacktrace. More...
 
void print_stacktrace (std::ostream &out) const
 Prints formated stacktrace into given stream out. More...
 
const char * what () const throw ()
 
virtual ~ExceptionBase () throw ()
 Destructor, possibly free stacktrace. More...
 

Protected Member Functions

std::string what_type_msg () const override
 Override ExceptionBase::what_type_msg() More...
 
std::ostringstream & form_message (std::ostringstream &) const override
 Override ExceptionBase::form_message() More...
 

Protected Attributes

std::string expression_
 Assertion expression. More...
 
std::string file_name_
 Actual file. More...
 
std::string function_
 Actual function. More...
 
int line_
 Actual line. More...
 
std::vector< std::string > current_val_
 Formated strings of names and values of given variables. More...
 
std::string what_type_msg_
 String representation of message type (Program error, Warning, ...) More...
 
- Protected Attributes inherited from ExceptionBase
StackTrace stack_trace_
 Stacktrace of exception. More...
 
std::vector< std::string > frames_to_cut_
 Stacktrace frames, which will be cut, see StackTrace::print method. More...
 

Friends

class Assert
 

Detailed Description

Helper class.

Stores data of assert and allow throws exception.

Definition at line 35 of file asserts.hh.

Constructor & Destructor Documentation

◆ Exc_assert()

feal::Exc_assert::Exc_assert ( )

Definition at line 29 of file asserts.cc.

◆ ~Exc_assert()

feal::Exc_assert::~Exc_assert ( )
inline

Destructor.

Definition at line 42 of file asserts.hh.

Member Function Documentation

◆ form_message()

std::ostringstream & feal::Exc_assert::form_message ( std::ostringstream &  converter) const
overrideprotectedvirtual

Override ExceptionBase::form_message()

Reimplemented from ExceptionBase.

Definition at line 52 of file asserts.cc.

◆ print_info()

void feal::Exc_assert::print_info ( std::ostringstream &  out) const
overridevirtual

Print formatted assert message.

Implements ExceptionBase.

Definition at line 34 of file asserts.cc.

Here is the caller graph for this function:

◆ what_type_msg()

std::string feal::Exc_assert::what_type_msg ( ) const
overrideprotectedvirtual

Override ExceptionBase::what_type_msg()

Reimplemented from ExceptionBase.

Definition at line 47 of file asserts.cc.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ Assert

friend class Assert
friend

Definition at line 36 of file asserts.hh.

Member Data Documentation

◆ current_val_

std::vector< std::string > feal::Exc_assert::current_val_
protected

Formated strings of names and values of given variables.

Definition at line 58 of file asserts.hh.

◆ expression_

std::string feal::Exc_assert::expression_
protected

Assertion expression.

Definition at line 54 of file asserts.hh.

◆ file_name_

std::string feal::Exc_assert::file_name_
protected

Actual file.

Definition at line 55 of file asserts.hh.

◆ function_

std::string feal::Exc_assert::function_
protected

Actual function.

Definition at line 56 of file asserts.hh.

◆ line_

int feal::Exc_assert::line_
protected

Actual line.

Definition at line 57 of file asserts.hh.

◆ what_type_msg_

std::string feal::Exc_assert::what_type_msg_
protected

String representation of message type (Program error, Warning, ...)

Definition at line 59 of file asserts.hh.


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