retdec
Public Member Functions | Protected Member Functions | List of all members
retdec::utils::NonCopyable Class Reference

A mixin to make classes non-copyable. More...

#include <non_copyable.h>

Inherited by retdec::ar_extractor::ArchiveWrapper [private], retdec::cpdetect::CompilerDetector [private], retdec::fileformat::FileFormat [private], retdec::fileinfo::FileDetector [private], retdec::llvmir2hll::APICallInfoSeqParser [private], retdec::llvmir2hll::APICallSeqFinder [private], retdec::llvmir2hll::AliasAnalysis [private], retdec::llvmir2hll::ArithmExprEvaluator [private], retdec::llvmir2hll::BasicBlockConverter [private], retdec::llvmir2hll::BreakInIfAnalysis [private], retdec::llvmir2hll::CFG [private], retdec::llvmir2hll::CFG::Edge [private], retdec::llvmir2hll::CFG::Node [private], retdec::llvmir2hll::CFGBuilder [private], retdec::llvmir2hll::CFGNode [private], retdec::llvmir2hll::CFGNode::CFGEdge [private], retdec::llvmir2hll::CFGTraversal [private], retdec::llvmir2hll::CFGWriter [private], retdec::llvmir2hll::CG [private], retdec::llvmir2hll::CGBuilder [private], retdec::llvmir2hll::CGWriter [private], retdec::llvmir2hll::CallInfo [private], retdec::llvmir2hll::CallInfoObtainer [private], retdec::llvmir2hll::CallInfoObtainer::SCCComputer [private], retdec::llvmir2hll::CallsInModuleObtainer [private], retdec::llvmir2hll::CallsObtainer [private], retdec::llvmir2hll::CompoundOpManager [private], retdec::llvmir2hll::CompoundSemanticsBuilder [private], retdec::llvmir2hll::Config [private], retdec::llvmir2hll::ConstSymbolConverter [private], retdec::llvmir2hll::DefUseAnalysis [private], retdec::llvmir2hll::ExprTypesAnalysis [private], retdec::llvmir2hll::ExprTypesFixer [private], retdec::llvmir2hll::ExpressionNegater [private], retdec::llvmir2hll::FuncInfo [private], retdec::llvmir2hll::FunctionBuilder [private], retdec::llvmir2hll::GotoTargetAnalysis [private], retdec::llvmir2hll::HLLWriter [private], retdec::llvmir2hll::HeadersForDeclaredFuncs [private], retdec::llvmir2hll::IndirectFuncRefAnalysis [private], retdec::llvmir2hll::LLVMConstantConverter [private], retdec::llvmir2hll::LLVMDebugInfoObtainer [private], retdec::llvmir2hll::LLVMFCmpConverter [private], retdec::llvmir2hll::LLVMIR2BIRConverter [private], retdec::llvmir2hll::LLVMInstructionConverter [private], retdec::llvmir2hll::LLVMIntrinsicConverter [private], retdec::llvmir2hll::LLVMTypeConverter [private], retdec::llvmir2hll::LLVMValueConverter [private], retdec::llvmir2hll::LabelsHandler [private], retdec::llvmir2hll::LibraryFuncsRemover [private], retdec::llvmir2hll::Module [private], retdec::llvmir2hll::NoInitVarDefAnalysis [private], retdec::llvmir2hll::NullPointerAnalysis [private], retdec::llvmir2hll::Optimizer [private], retdec::llvmir2hll::OptimizerManager [private], retdec::llvmir2hll::Pattern [private], retdec::llvmir2hll::PatternFinder [private], retdec::llvmir2hll::Semantics [private], retdec::llvmir2hll::SpecialFPAnalysis [private], retdec::llvmir2hll::StatementsCounter [private], retdec::llvmir2hll::StructTypesSorter [private], retdec::llvmir2hll::StructureConverter [private], retdec::llvmir2hll::SubOptimizer [private], retdec::llvmir2hll::UnreachableCodeInCFGRemover [private], retdec::llvmir2hll::UseDefAnalysis [private], retdec::llvmir2hll::UsedTypesVisitor [private], retdec::llvmir2hll::UsedVarsVisitor [private], retdec::llvmir2hll::Value [private], retdec::llvmir2hll::ValueAnalysis [private], retdec::llvmir2hll::ValueTextReprVisitor [private], retdec::llvmir2hll::VarNameGen [private], retdec::llvmir2hll::VarUsesVisitor [private], retdec::llvmir2hll::VariableReplacer [private], retdec::llvmir2hll::VariablesManager [private], and retdec::llvmir2hll::WrittenIntoGlobalsVisitor [private].

Public Member Functions

 NonCopyable (const NonCopyable &)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 

Protected Member Functions

 NonCopyable ()=default
 
 ~NonCopyable ()=default
 

Detailed Description

A mixin to make classes non-copyable.

If you want your class to be non-copyable, inherit privately from this class. For example,

class CannotBeCopied: private NonCopyable {
// ...
};

This mixin can be used if you want your class to have reference object semantics.

Constructor & Destructor Documentation

◆ NonCopyable() [1/2]

retdec::utils::NonCopyable::NonCopyable ( const NonCopyable )
delete

◆ NonCopyable() [2/2]

retdec::utils::NonCopyable::NonCopyable ( )
protecteddefault

◆ ~NonCopyable()

retdec::utils::NonCopyable::~NonCopyable ( )
protecteddefault

Member Function Documentation

◆ operator=()

NonCopyable& retdec::utils::NonCopyable::operator= ( const NonCopyable )
delete

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