top | up | prev | next

AxiomStatementNode Class

Definition at line 250 of Concept.hpp

Constructors

AxiomStatementNode(const Span& span_, const boost::uuids::uuid& moduleId_)
AxiomStatementNode(const Span& span_, const boost::uuids::uuid& moduleId_, Node* expression_, const std::u32string& text_)

Member Functions

void Accept(Visitor& visitor) override
Node* Clone(CloneContext& cloneContext) const override
const Node* Expression() const
Node* Expression()
void Read(AstReader& reader) override
const std::u32string& Text() const
std::string ToString() const override
void Write(AstWriter& writer) override

Member Variables

std::unique_ptr<Node> expression
std::u32string text

Constructor Details

AxiomStatementNode Constructor

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

Definition at line 642 of Concept.cpp :
 642 : Node(NodeType::axiomStatementNodespan_moduleId_)expression()text()
 643 {
 644 }


Declaration at line 253 of Concept.hpp


AxiomStatementNode Constructor

sngcm::ast::AxiomStatementNode::AxiomStatementNode(const Span& span_, const boost::uuids::uuid& moduleId_, Node * expression_, const std::u32string& text_)

Definition at line 646 of Concept.cpp :
 646 :
 647 Node(NodeType::axiomStatementNodespan_moduleId_)expression(expression_)text(text_)
 648 {
 649     expression->SetParent(this);
 650 }


Declaration at line 254 of Concept.hpp


Member Function Details

Accept Member Function

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

Definition at line 658 of Concept.cpp :
 659 {
 660     visitor.Visit(*this);
 661 }


Declaration at line 256 of Concept.hpp

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

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


Clone Member Function

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

Definition at line 652 of Concept.cpp :
 653 {
 654     AxiomStatementNode* clone = new AxiomStatementNode(GetSpan()ModuleId()expression->Clone(cloneContext)text);
 655     return clone;
 656 }


Declaration at line 255 of Concept.hpp

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

Calls: sngcm::ast::AxiomStatementNode::Clone , sngcm::ast::Node::GetSpan , sngcm::ast::Node::ModuleId

Called by: sngcm::ast::AxiomStatementNode::Clone


Expression Member Function

const Node * sngcm::ast::AxiomStatementNode::Expression() const

Definition at line 259 of Concept.hpp :
259 { return expression.get(); }


Expression Member Function

Node * sngcm::ast::AxiomStatementNode::Expression()

Definition at line 260 of Concept.hpp :
260 { return expression.get(); }

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


Read Member Function

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

Definition at line 670 of Concept.cpp :
 671 {
 672     Node::Read(reader);
 673     expression.reset(reader.ReadNode());
 674     expression->SetParent(this);
 675     text = reader.GetBinaryReader().ReadUtf32String();
 676 }


Declaration at line 258 of Concept.hpp

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

Calls: sngcm::ast::AstReader::GetBinaryReader , sngcm::ast::AstReader::ReadNode , sngcm::ast::Node::Read , sngcm::ast::Node::SetParent , soulng::util::BinaryReader::ReadUtf32String


Text Member Function

const std::u32string& sngcm::ast::AxiomStatementNode::Text() const

Definition at line 261 of Concept.hpp :
261 { return text; }


ToString Member Function

std::string sngcm::ast::AxiomStatementNode::ToString() const override

Definition at line 678 of Concept.cpp :
 679 {
 680     return ToUtf8(text);
 681 }


Declaration at line 262 of Concept.hpp

Base class overridden functions: sngcm::ast::Node::ToString


Write Member Function

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

Definition at line 663 of Concept.cpp :
 664 {
 665     Node::Write(writer);
 666     writer.Write(expression.get());
 667     writer.GetBinaryWriter().Write(text);
 668 }


Declaration at line 257 of Concept.hpp

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

Calls: sngcm::ast::AstWriter::GetBinaryWriter , sngcm::ast::Node::Write , soulng::util::BinaryWriter::Write


top | up | prev | next