retdec
Public Member Functions | Protected Member Functions | List of all members
retdec::llvmir2hll::Pattern Class Referenceabstract

A base class for representing code patterns. More...

#include <pattern.h>

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

Public Member Functions

virtual ~Pattern ()=default
 
virtual void print (llvm::raw_ostream &os, const std::string &indentation="") const =0
 Prints the pattern to stream os, each line indented with indentation. More...
 

Protected Member Functions

 Pattern ()=default
 

Additional Inherited Members

- Private Member Functions inherited from retdec::utils::NonCopyable
 NonCopyable (const NonCopyable &)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 
 NonCopyable ()=default
 
 ~NonCopyable ()=default
 

Detailed Description

A base class for representing code patterns.

This class is a base class for all representations of code patterns.

Instances of this class and subclasses have reference object semantics.

Constructor & Destructor Documentation

◆ ~Pattern()

virtual retdec::llvmir2hll::Pattern::~Pattern ( )
virtualdefault

◆ Pattern()

retdec::llvmir2hll::Pattern::Pattern ( )
protecteddefault

Member Function Documentation

◆ print()

virtual void retdec::llvmir2hll::Pattern::print ( llvm::raw_ostream &  os,
const std::string &  indentation = "" 
) const
pure virtual

Prints the pattern to stream os, each line indented with indentation.

The pattern may span over multiple lines. When the pattern is empty, nothing should be printed. If the pattern is non-empty, the output is ended with a new line.

Implemented in retdec::llvmir2hll::StmtsPattern.


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