top | up | prev | next

AxiomStatementNode Class

Definition at line 250 of Concept.hpp

Constructors

AxiomStatementNode(const Span& span_)
AxiomStatementNode(const Span& span_, 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_)

Definition at line 620 of Concept.cpp :
 620 : Node(NodeType::axiomStatementNodespan_)expression()text()
 621 {
 622 }


Declaration at line 253 of Concept.hpp


AxiomStatementNode Constructor

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

Definition at line 624 of Concept.cpp :
 624 : Node(NodeType::axiomStatementNodespan_)expression(expression_)text(text_)
 625 {
 626     expression->SetParent(this);
 627 }


Declaration at line 254 of Concept.hpp


Member Function Details

Accept Member Function

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

Definition at line 634 of Concept.cpp :
 635 {
 636     visitor.Visit(*this);
 637 }


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 629 of Concept.cpp :
 630 {
 631     return new AxiomStatementNode(GetSpan()expression->Clone(cloneContext)text);
 632 }


Declaration at line 255 of Concept.hpp

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

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

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 646 of Concept.cpp :
 647 {
 648     Node::Read(reader);
 649     expression.reset(reader.ReadNode());
 650     expression->SetParent(this);
 651     text = reader.GetBinaryReader().ReadUtf32String();
 652 }


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 654 of Concept.cpp :
 655 {
 656     return ToUtf8(text);
 657 }


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 639 of Concept.cpp :
 640 {
 641     Node::Write(writer);
 642     writer.Write(expression.get());
 643     writer.GetBinaryWriter().Write(text);
 644 }


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