top | up | prev | next

DestructorSymbol Class

Definition at line 353 of FunctionSymbol.hpp

Constructors

DestructorSymbol(const Span& span_, const boost::uuids::uuid& sourceModuleId_, const std::u32string& name_)

Member Functions

void Accept(SymbolCollector* collector) override
const char* ClassName() const override
std::u32string CodeName() const override
FunctionSymbol* Copy() const override
bool DontThrow() const override
ParameterSymbol* GetThisParam() const override
std::u32string Info() const override
bool IsConstructorDestructorOrNonstaticMemberFunction() const override
bool IsExportSymbol() const override
bool IsGeneratedFunction() const override
void Read(SymbolReader& reader) override
void SetGenerated()
void SetSpecifiers(Specifiers specifiers)
int StartParamIndex() const override
std::string TypeString() const override
void Write(SymbolWriter& writer) override

Member Variables

bool generated

Constructor Details

DestructorSymbol Constructor

cmajor::symbols::DestructorSymbol::DestructorSymbol(const Span& span_, const boost::uuids::uuid& sourceModuleId_, const std::u32string& name_)

Definition at line 1857 of FunctionSymbol.cpp :
1857 :
1858 FunctionSymbol(SymbolType::destructorSymbolspan_sourceModuleId_name_)generated(false)
1859 {
1860     SetGroupName(U"@destructor");
1861 }


Declaration at line 356 of FunctionSymbol.hpp


Member Function Details

Accept Member Function

void cmajor::symbols::DestructorSymbol::Accept(SymbolCollector * collector) override

Definition at line 360 of FunctionSymbol.hpp :
360 {}

Base class overridden functions: cmajor::symbols::ContainerSymbol::Accept , cmajor::symbols::FunctionSymbol::Accept , cmajor::symbols::Symbol::Accept


ClassName Member Function

const char * cmajor::symbols::DestructorSymbol::ClassName() const override

Definition at line 370 of FunctionSymbol.hpp :
370 { return "DestructorSymbol"; }

Base class overridden functions: cmajor::symbols::ContainerSymbol::ClassName , cmajor::symbols::FunctionSymbol::ClassName , cmajor::symbols::Symbol::ClassName


CodeName Member Function

std::u32string cmajor::symbols::DestructorSymbol::CodeName() const override

Definition at line 1974 of FunctionSymbol.cpp :
1975 {
1976     return U"~" + Parent()->CodeName();
1977 }


Declaration at line 363 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::FunctionSymbol::CodeName , cmajor::symbols::Symbol::CodeName

Calls: cmajor::symbols::Symbol::CodeName , cmajor::symbols::Symbol::Parent


Copy Member Function

FunctionSymbol * cmajor::symbols::DestructorSymbol::Copy() const override

Definition at line 1863 of FunctionSymbol.cpp :
1864 {
1865     DestructorSymbol* copy = new DestructorSymbol(GetSpan()SourceModuleId()Name());
1866     copy->CopyFrom(this);
1867     copy->generated = generated;
1868     return copy;
1869 }


Declaration at line 372 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::FunctionSymbol::Copy

Calls: cmajor::symbols::FunctionSymbol::CopyFrom , cmajor::symbols::Symbol::GetSpan , cmajor::symbols::Symbol::Name , cmajor::symbols::Symbol::SourceModuleId


DontThrow Member Function

bool cmajor::symbols::DestructorSymbol::DontThrow() const override

Definition at line 1979 of FunctionSymbol.cpp :
1980 {
1981     if (GetBackEnd() == BackEnd::cmcpp)
1982     {
1983         return !HasCleanup();
1984     }
1985     return true;
1986 }


Declaration at line 366 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::FunctionSymbol::DontThrow

Calls: cmajor::symbols::FunctionSymbol::HasCleanup


GetThisParam Member Function

ParameterSymbol * cmajor::symbols::DestructorSymbol::GetThisParam() const override

Definition at line 362 of FunctionSymbol.hpp :
362 { return Parameters()[0]; }

Base class overridden functions: cmajor::symbols::FunctionSymbol::GetThisParam

Calls: cmajor::symbols::FunctionSymbol::Parameters


Info Member Function

std::u32string cmajor::symbols::DestructorSymbol::Info() const override

Definition at line 369 of FunctionSymbol.hpp :
369 { return std::u32string(); }

Base class overridden functions: cmajor::symbols::FunctionSymbol::Info , cmajor::symbols::Symbol::Info


IsConstructorDestructorOrNonstaticMemberFunction Member Function

bool cmajor::symbols::DestructorSymbol::IsConstructorDestructorOrNonstaticMemberFunction() const override

Definition at line 364 of FunctionSymbol.hpp :
364 { return true; }

Base class overridden functions: cmajor::symbols::FunctionSymbol::IsConstructorDestructorOrNonstaticMemberFunction


IsExportSymbol Member Function

bool cmajor::symbols::DestructorSymbol::IsExportSymbol() const override

Definition at line 1871 of FunctionSymbol.cpp
Declaration at line 359 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::FunctionSymbol::IsExportSymbol , cmajor::symbols::Symbol::IsExportSymbol

Calls: cmajor::symbols::ClassTemplateSpecializationSymbol::IsPrototype , cmajor::symbols::Symbol::GetSymbolType , cmajor::symbols::Symbol::Parent


IsGeneratedFunction Member Function

bool cmajor::symbols::DestructorSymbol::IsGeneratedFunction() const override

Definition at line 365 of FunctionSymbol.hpp :
365 { return generated; }

Base class overridden functions: cmajor::symbols::FunctionSymbol::IsGeneratedFunction


Read Member Function

void cmajor::symbols::DestructorSymbol::Read(SymbolReader & reader) override

Definition at line 1890 of FunctionSymbol.cpp :
1891 {
1892     FunctionSymbol::Read(reader);
1893     generated = reader.GetBinaryReader().ReadBool();
1894 }


Declaration at line 358 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::ContainerSymbol::Read , cmajor::symbols::FunctionSymbol::Read , cmajor::symbols::Symbol::Read

Calls: cmajor::symbols::FunctionSymbol::Read , cmajor::symbols::SymbolReader::GetBinaryReader


SetGenerated Member Function

void cmajor::symbols::DestructorSymbol::SetGenerated()

Definition at line 368 of FunctionSymbol.hpp :
368 { generated = true; }

Called by: cmajor::symbols::ClassTypeSymbol::CreateDestructorSymbol


SetSpecifiers Member Function

void cmajor::symbols::DestructorSymbol::SetSpecifiers(Specifiers specifiers)

Definition at line 1896 of FunctionSymbol.cpp
Declaration at line 367 of FunctionSymbol.hpp

Calls: cmajor::symbols::FunctionSymbol::IsVirtual , cmajor::symbols::FunctionSymbol::SetDefault , cmajor::symbols::FunctionSymbol::SetOverride , cmajor::symbols::FunctionSymbol::SetVirtual , cmajor::symbols::Symbol::GetSpan , cmajor::symbols::Symbol::SetAccess , cmajor::symbols::Symbol::SourceModuleId


StartParamIndex Member Function

int cmajor::symbols::DestructorSymbol::StartParamIndex() const override

Definition at line 371 of FunctionSymbol.hpp :
371 { return 1; }

Base class overridden functions: cmajor::symbols::FunctionSymbol::StartParamIndex


TypeString Member Function

std::string cmajor::symbols::DestructorSymbol::TypeString() const override

Definition at line 361 of FunctionSymbol.hpp :
361 { return "destructor"; }

Base class overridden functions: cmajor::symbols::ContainerSymbol::TypeString , cmajor::symbols::FunctionSymbol::TypeString , cmajor::symbols::Symbol::TypeString


Write Member Function

void cmajor::symbols::DestructorSymbol::Write(SymbolWriter & writer) override

Definition at line 1884 of FunctionSymbol.cpp :
1885 {
1886     FunctionSymbol::Write(writer);
1887     writer.GetBinaryWriter().Write(generated);
1888 }


Declaration at line 357 of FunctionSymbol.hpp

Base class overridden functions: cmajor::symbols::ContainerSymbol::Write , cmajor::symbols::FunctionSymbol::Write , cmajor::symbols::Symbol::Write

Calls: cmajor::symbols::DestructorSymbol::Write , cmajor::symbols::FunctionSymbol::Write , cmajor::symbols::SymbolWriter::GetBinaryWriter

Called by: cmajor::symbols::DestructorSymbol::Write


top | up | prev | next