GCC Middle and Back End API Reference
ana::path_context Class Referenceabstract

#include <analyzer.h>

Public Member Functions

virtual ~path_context ()
 
virtual void bifurcate (std::unique_ptr< custom_edge_info > info)=0
 
virtual void terminate_path ()=0
 
virtual bool terminate_path_p () const =0
 

Detailed Description

Abstract base class for splitting state.

Most of the state-management code in the analyzer involves
modifying state objects in-place, which assumes a single outcome.

This class provides an escape hatch to allow for multiple outcomes
for such updates e.g. for modelling multiple outcomes from function
calls, such as the various outcomes of "realloc".   

Constructor & Destructor Documentation

◆ ~path_context()

virtual ana::path_context::~path_context ( )
inlinevirtual

Member Function Documentation

◆ bifurcate()

virtual void ana::path_context::bifurcate ( std::unique_ptr< custom_edge_info > info)
pure virtual

◆ terminate_path()

virtual void ana::path_context::terminate_path ( )
pure virtual

◆ terminate_path_p()

virtual bool ana::path_context::terminate_path_p ( ) const
pure virtual

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