top | up | prev | next

DestructorNode Class

Definition at line 137 of Class.hpp

Constructors

DestructorNode(const Span& span_)
DestructorNode(const Span& span_, Specifiers specifiers_, Attributes* 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_)

Definition at line 406 of Class.cpp :
406 : FunctionNode(NodeType::destructorNodespan_)
407 {
408 }


Declaration at line 140 of Class.hpp


DestructorNode Constructor

sngcm::ast::DestructorNode::DestructorNode(const Span& span_, Specifiers specifiers_, Attributes * attributes_)

Definition at line 410 of Class.cpp :
410 : FunctionNode(NodeType::destructorNodespan_specifiers_nullptrU"@destructor"attributes_)
411 {
412 }


Declaration at line 141 of Class.hpp


Member Function Details

Accept Member Function

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

Definition at line 422 of Class.cpp :
423 {
424     visitor.Visit(*this);
425 }


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 414 of Class.cpp :
415 {
416     DestructorNode* clone = new DestructorNode(GetSpan()GetSpecifiers()nullptr);
417     clone->classId.reset(static_cast<IdentifierNode*>(classId->Clone(cloneContext)));
418     CloneContent(clonecloneContext);
419     return clone;
420 }


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

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


Read Member Function

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

Definition at line 433 of Class.cpp :
434 {
435     FunctionNode::Read(reader);
436     classId.reset(reader.ReadIdentifierNode());
437 }


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 427 of Class.cpp :
428 {
429     FunctionNode::Write(writer);
430     writer.Write(classId.get());
431 }


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