retdec
Public Member Functions | Private Attributes | List of all members
retdec::llvmir2hll::PlainOutputManager Class Reference

#include <plain_manager.h>

Inheritance diagram for retdec::llvmir2hll::PlainOutputManager:
Inheritance graph
[legend]
Collaboration diagram for retdec::llvmir2hll::PlainOutputManager:
Collaboration graph
[legend]

Public Member Functions

 PlainOutputManager (llvm::raw_ostream &out)
 
virtual void newLine () override
 
virtual void space (const std::string &space=" ") override
 
virtual void punctuation (char p) override
 
virtual void operatorX (const std::string &op) override
 
virtual void globalVariableId (const std::string &id) override
 
virtual void localVariableId (const std::string &id) override
 
virtual void memberId (const std::string &id) override
 
virtual void labelId (const std::string &id) override
 
virtual void functionId (const std::string &id) override
 
virtual void parameterId (const std::string &id) override
 
virtual void keyword (const std::string &k) override
 
virtual void dataType (const std::string &t) override
 
virtual void preprocessor (const std::string &p) override
 
virtual void include (const std::string &i) override
 
virtual void constantBool (const std::string &c) override
 
virtual void constantInt (const std::string &c) override
 
virtual void constantFloat (const std::string &c) override
 
virtual void constantString (const std::string &c) override
 
virtual void constantSymbol (const std::string &c) override
 
virtual void constantPointer (const std::string &c) override
 
virtual void comment (const std::string &comment) override
 
virtual void commentModifier () override
 
virtual void addressPush (Address a) override
 
virtual void addressPop () override
 
- Public Member Functions inherited from retdec::llvmir2hll::OutputManager
virtual ~OutputManager ()
 
virtual void finalize ()
 
void setCommentPrefix (const std::string &prefix)
 
const std::string & getCommentPrefix () const
 
void setOutputLanguage (const std::string &lang)
 
const std::string & getOutputLanguage () const
 
virtual void operatorX (const std::string &op, bool spaceBefore, bool spaceAfter)
 
virtual void comment (const std::string &comment, const std::string &indent)
 
virtual void commentLine (const std::string &comment, const std::string &indent="")
 
virtual void includeLine (const std::string &header, const std::string &indent="", const std::string &comment="")
 
virtual void typedefLine (const std::string &indent, const std::string &t1, const std::string &t2)
 

Private Attributes

llvm::raw_ostream & _out
 

Constructor & Destructor Documentation

◆ PlainOutputManager()

retdec::llvmir2hll::PlainOutputManager::PlainOutputManager ( llvm::raw_ostream &  out)

Member Function Documentation

◆ addressPop()

void retdec::llvmir2hll::PlainOutputManager::addressPop ( )
overridevirtual

Associates all subsequently added tokens with address that was used before the last addressPush(addr).

Implements retdec::llvmir2hll::OutputManager.

◆ addressPush()

void retdec::llvmir2hll::PlainOutputManager::addressPush ( Address  a)
overridevirtual

Associates all subsequently added tokens with the passed address. Intended to be used in pair with addressPop(). Every addressPush() must have a corresponding addressPop() that always gets executed (e.g. cannot be skipped because of early function return or similar). Together, these methods are designed to recursively encapsulate token blocks with the same address.

Implements retdec::llvmir2hll::OutputManager.

◆ comment()

void retdec::llvmir2hll::PlainOutputManager::comment ( const std::string &  comment)
overridevirtual

◆ commentModifier()

void retdec::llvmir2hll::PlainOutputManager::commentModifier ( )
overridevirtual

◆ constantBool()

void retdec::llvmir2hll::PlainOutputManager::constantBool ( const std::string &  c)
overridevirtual

◆ constantFloat()

void retdec::llvmir2hll::PlainOutputManager::constantFloat ( const std::string &  c)
overridevirtual

◆ constantInt()

void retdec::llvmir2hll::PlainOutputManager::constantInt ( const std::string &  c)
overridevirtual

◆ constantPointer()

void retdec::llvmir2hll::PlainOutputManager::constantPointer ( const std::string &  c)
overridevirtual

◆ constantString()

void retdec::llvmir2hll::PlainOutputManager::constantString ( const std::string &  c)
overridevirtual

◆ constantSymbol()

void retdec::llvmir2hll::PlainOutputManager::constantSymbol ( const std::string &  c)
overridevirtual

◆ dataType()

void retdec::llvmir2hll::PlainOutputManager::dataType ( const std::string &  t)
overridevirtual

◆ functionId()

void retdec::llvmir2hll::PlainOutputManager::functionId ( const std::string &  id)
overridevirtual

◆ globalVariableId()

void retdec::llvmir2hll::PlainOutputManager::globalVariableId ( const std::string &  id)
overridevirtual

◆ include()

void retdec::llvmir2hll::PlainOutputManager::include ( const std::string &  i)
overridevirtual

◆ keyword()

void retdec::llvmir2hll::PlainOutputManager::keyword ( const std::string &  k)
overridevirtual

◆ labelId()

void retdec::llvmir2hll::PlainOutputManager::labelId ( const std::string &  id)
overridevirtual

◆ localVariableId()

void retdec::llvmir2hll::PlainOutputManager::localVariableId ( const std::string &  id)
overridevirtual

◆ memberId()

void retdec::llvmir2hll::PlainOutputManager::memberId ( const std::string &  id)
overridevirtual

◆ newLine()

void retdec::llvmir2hll::PlainOutputManager::newLine ( )
overridevirtual

◆ operatorX()

void retdec::llvmir2hll::PlainOutputManager::operatorX ( const std::string &  op)
overridevirtual

◆ parameterId()

void retdec::llvmir2hll::PlainOutputManager::parameterId ( const std::string &  id)
overridevirtual

◆ preprocessor()

void retdec::llvmir2hll::PlainOutputManager::preprocessor ( const std::string &  p)
overridevirtual

◆ punctuation()

void retdec::llvmir2hll::PlainOutputManager::punctuation ( char  p)
overridevirtual

◆ space()

void retdec::llvmir2hll::PlainOutputManager::space ( const std::string &  space = " ")
overridevirtual

Member Data Documentation

◆ _out

llvm::raw_ostream& retdec::llvmir2hll::PlainOutputManager::_out
private

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