retdec
|
A base class of all control-flow graph (CFG) writers. More...
#include <cfg_writer.h>
Public Member Functions | |
virtual | ~CFGWriter ()=default |
virtual std::string | getId () const =0 |
Returns the ID of the writer. More... | |
virtual bool | emitCFG ()=0 |
Emits the given CFG into the given output stream. More... | |
Protected Types | |
using | NodeLabelMapping = std::map< ShPtr< CFG::Node >, std::string > |
Mapping between a node and its label. More... | |
Protected Member Functions | |
CFGWriter (ShPtr< CFG > cfg, std::ostream &out) | |
Constructs a new writer. More... | |
Protected Attributes | |
ShPtr< CFG > | cfg |
CFG to be emitted. More... | |
std::ostream & | out |
Stream, where the resulting CFG will be emitted. More... | |
Additional Inherited Members | |
![]() | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable & | operator= (const NonCopyable &)=delete |
NonCopyable ()=default | |
~NonCopyable ()=default | |
A base class of all control-flow graph (CFG) writers.
Every CFG writer should subclass this class and override emitCFG().
Instances of this class have reference object semantics.
|
protected |
Mapping between a node and its label.
|
virtualdefault |
|
pure virtual |
Emits the given CFG into the given output stream.
The format of the written data depends on the subclass of this class.
true
if some code has been emitted, false
otherwise. Implemented in retdec::llvmir2hll::GraphvizCFGWriter.
|
pure virtual |
Returns the ID of the writer.
Implemented in retdec::llvmir2hll::GraphvizCFGWriter.
|
protected |
Stream, where the resulting CFG will be emitted.