top | up | prev | next

ConditionalCompilationPartNode Class

Definition at line 642 of Statement.hpp

Constructors

ConditionalCompilationPartNode(const Span& span_)
ConditionalCompilationPartNode(const Span& span_, ConditionalCompilationExpressionNode* expr_)

Member Functions

void Accept(Visitor& visitor) override
void AddStatement(StatementNode* statement)
Node* Clone(CloneContext& cloneContext) const override
ConditionalCompilationExpressionNode* Expr() const
const Span& KeywordSpan() const
const Span& LeftParenSpan() const
void Read(AstReader& reader) override
const Span& RightParenSpan() const
void SetKeywordSpan(const Span& keywordSpan_)
void SetLeftParenSpan(const Span& leftParenSpan_)
void SetRightParenSpan(const Span& rightParenSpan_)
const NodeList<StatementNode>& Statements() const
void Write(AstWriter& writer) override

Member Variables

std::unique_ptr<ConditionalCompilationExpressionNode> expr
Span keywordSpan
Span leftParenSpan
Span rightParenSpan
NodeList<StatementNode> statements

Constructor Details

ConditionalCompilationPartNode Constructor

sngcm::ast::ConditionalCompilationPartNode::ConditionalCompilationPartNode(const Span& span_)

Definition at line 1348 of Statement.cpp :
1348 : Node(NodeType::conditionalCompilationPartNodespan_)
1349 {
1350 }


Declaration at line 645 of Statement.hpp


ConditionalCompilationPartNode Constructor

sngcm::ast::ConditionalCompilationPartNode::ConditionalCompilationPartNode(const Span& span_, ConditionalCompilationExpressionNode * expr_)

Definition at line 1352 of Statement.cpp :
1352 : Node(NodeType::conditionalCompilationPartNodespan_)expr(expr_)
1353 {
1354     if (expr)
1355     {
1356         expr->SetParent(this);
1357     }
1358 }


Declaration at line 646 of Statement.hpp


Member Function Details

Accept Member Function

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

Definition at line 1385 of Statement.cpp :
1386 {
1387     visitor.Visit(*this);
1388 }


Declaration at line 649 of Statement.hpp

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

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

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


AddStatement Member Function

void sngcm::ast::ConditionalCompilationPartNode::AddStatement(StatementNode * statement)

Definition at line 1360 of Statement.cpp :
1361 {
1362     statement->SetParent(this);
1363     statements.Add(statement);
1364 }


Declaration at line 647 of Statement.hpp

Calls: sngcm::ast::Node::SetParent , sngcm::ast::NodeList::Add

Called by: sngcm::ast::ConditionalCompilationPartNode::Clone


Clone Member Function

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

Definition at line 1366 of Statement.cpp
Declaration at line 648 of Statement.hpp

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

Calls: sngcm::ast::ConditionalCompilationPartNode::AddStatement , sngcm::ast::ConditionalCompilationPartNode::Clone , sngcm::ast::ConditionalCompilationPartNode::SetKeywordSpan , sngcm::ast::ConditionalCompilationPartNode::SetLeftParenSpan , sngcm::ast::ConditionalCompilationPartNode::SetRightParenSpan , sngcm::ast::Node::GetSpan , sngcm::ast::NodeList::Count

Called by: sngcm::ast::ConditionalCompilationPartNode::Clone , sngcm::ast::ConditionalCompilationStatementNode::Clone


Expr Member Function

ConditionalCompilationExpressionNode * sngcm::ast::ConditionalCompilationPartNode::Expr() const

Definition at line 652 of Statement.hpp :
652 { return expr.get();  }

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


KeywordSpan Member Function

const Span& sngcm::ast::ConditionalCompilationPartNode::KeywordSpan() const

Definition at line 655 of Statement.hpp :
655 { return keywordSpan; }


LeftParenSpan Member Function

const Span& sngcm::ast::ConditionalCompilationPartNode::LeftParenSpan() const

Definition at line 657 of Statement.hpp :
657 { return leftParenSpan; }


Read Member Function

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

Definition at line 1405 of Statement.cpp
Declaration at line 651 of Statement.hpp

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

Calls: sngcm::ast::AstReader::GetBinaryReader , sngcm::ast::AstReader::ReadConditionalCompilationExpressionNode , sngcm::ast::AstReader::ReadSpan , sngcm::ast::Node::Read , sngcm::ast::Node::SetParent , sngcm::ast::NodeList::Read , sngcm::ast::NodeList::SetParent , soulng::util::BinaryReader::ReadBool


RightParenSpan Member Function

const Span& sngcm::ast::ConditionalCompilationPartNode::RightParenSpan() const

Definition at line 659 of Statement.hpp :
659 { return rightParenSpan; }


SetKeywordSpan Member Function

void sngcm::ast::ConditionalCompilationPartNode::SetKeywordSpan(const Span& keywordSpan_)

Definition at line 654 of Statement.hpp :
654 { keywordSpan = keywordSpan_; }

Called by: sngcm::ast::ConditionalCompilationPartNode::Clone


SetLeftParenSpan Member Function

void sngcm::ast::ConditionalCompilationPartNode::SetLeftParenSpan(const Span& leftParenSpan_)

Definition at line 656 of Statement.hpp :
656 { leftParenSpan = leftParenSpan_; }

Called by: sngcm::ast::ConditionalCompilationPartNode::Clone


SetRightParenSpan Member Function

void sngcm::ast::ConditionalCompilationPartNode::SetRightParenSpan(const Span& rightParenSpan_)

Definition at line 658 of Statement.hpp :
658 { rightParenSpan = rightParenSpan_; }

Called by: sngcm::ast::ConditionalCompilationPartNode::Clone


Statements Member Function

const NodeList <StatementNode >& sngcm::ast::ConditionalCompilationPartNode::Statements() const

Definition at line 653 of Statement.hpp :
653 { return statements; }

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


Write Member Function

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

Definition at line 1390 of Statement.cpp
Declaration at line 650 of Statement.hpp

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

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


top | up | prev | next