top | up | prev | next

DestructorNode Class

Definition at line 137 of Class.hpp

Constructors

DestructorNode(const Span& span_, const boost::uuids::uuid& moduleId_)
DestructorNode(const Span& span_, const boost::uuids::uuid& moduleId_, Specifiers specifiers_, AttributesNode* attributes_)

Member Functions

void Accept(Visitor& visitor) override
IdentifierNode* ClassId()
Node* Clone(CloneContext& cloneContext) const override
void Read(AstReader& reader) override
void SetClassId(IdentifierNode* classId_)
void Write(AstWriter& writer) override

Member Variables

std::unique_ptr<IdentifierNode> classId

Constructor Details

DestructorNode Constructor

sngcm::ast::DestructorNode::DestructorNode(const Span& span_, const boost::uuids::uuid& moduleId_)

Definition at line 409 of Class.cpp :
409 : FunctionNode(NodeType::destructorNodespan_moduleId_)
410 {
411 }


Declaration at line 140 of Class.hpp


DestructorNode Constructor

sngcm::ast::DestructorNode::DestructorNode(const Span& span_, const boost::uuids::uuid& moduleId_, Specifiers specifiers_, AttributesNode * attributes_)

Definition at line 413 of Class.cpp :
413 :
414 FunctionNode(NodeType::destructorNodespan_moduleId_specifiers_nullptrU"@destructor"attributes_)
415 {
416 }


Declaration at line 141 of Class.hpp


Member Function Details

Accept Member Function

void sngcm::ast::DestructorNode::Accept(Visitor & visitor) override

Definition at line 426 of Class.cpp :
427 {
428     visitor.Visit(*this);
429 }


Declaration at line 143 of Class.hpp

Base class overridden functions: sngcm::ast::FunctionNode::Accept , sngcm::ast::Node::Accept

Calls: sngcm::ast::Visitor::Visit


ClassId Member Function

IdentifierNode * sngcm::ast::DestructorNode::ClassId()

Definition at line 147 of Class.hpp :
147 { return classId.get(); }

Called by: sngcm::ast::SourceWriter::Visit


Clone Member Function

Node * sngcm::ast::DestructorNode::Clone(CloneContext & cloneContext) const override

Definition at line 418 of Class.cpp :
419 {
420     DestructorNode* clone = new DestructorNode(GetSpan()ModuleId()GetSpecifiers()nullptr);
421     clone->classId.reset(static_cast<IdentifierNode*>(classId->Clone(cloneContext)));
422     CloneContent(clonecloneContext);
423     return clone;
424 }


Declaration at line 142 of Class.hpp

Base class overridden functions: sngcm::ast::FunctionNode::Clone , sngcm::ast::Node::Clone

Calls: sngcm::ast::DestructorNode::Clone , sngcm::ast::FunctionNode::CloneContent , sngcm::ast::FunctionNode::GetSpecifiers , sngcm::ast::Node::GetSpan , sngcm::ast::Node::ModuleId

Called by: sngcm::ast::DestructorNode::Clone


Read Member Function

void sngcm::ast::DestructorNode::Read(AstReader & reader) override

Definition at line 437 of Class.cpp :
438 {
439     FunctionNode::Read(reader);
440     classId.reset(reader.ReadIdentifierNode());
441 }


Declaration at line 145 of Class.hpp

Base class overridden functions: sngcm::ast::FunctionNode::Read , sngcm::ast::Node::Read

Calls: sngcm::ast::AstReader::ReadIdentifierNode , sngcm::ast::FunctionNode::Read


SetClassId Member Function

void sngcm::ast::DestructorNode::SetClassId(IdentifierNode * classId_)

Definition at line 146 of Class.hpp :
146 { classId.reset(classId_); }


Write Member Function

void sngcm::ast::DestructorNode::Write(AstWriter & writer) override

Definition at line 431 of Class.cpp :
432 {
433     FunctionNode::Write(writer);
434     writer.Write(classId.get());
435 }


Declaration at line 144 of Class.hpp

Base class overridden functions: sngcm::ast::FunctionNode::Write , sngcm::ast::Node::Write

Calls: sngcm::ast::FunctionNode::Write


top | up | prev | next