top | up | prev | next

ConditionalCompilationPartNode Class

Definition at line 654 of Statement.hpp

Constructors

ConditionalCompilationPartNode(const Span& span_, const boost::uuids::uuid& moduleId_)
ConditionalCompilationPartNode(const Span& span_, const boost::uuids::uuid& moduleId_, 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_, const boost::uuids::uuid& moduleId_)

Definition at line 1426 of Statement.cpp :
1426 : Node(NodeType::conditionalCompilationPartNodespan_moduleId_)
1427 {
1428 }


Declaration at line 657 of Statement.hpp


ConditionalCompilationPartNode Constructor

sngcm::ast::ConditionalCompilationPartNode::ConditionalCompilationPartNode(const Span& span_, const boost::uuids::uuid& moduleId_, ConditionalCompilationExpressionNode * expr_)

Definition at line 1430 of Statement.cpp :
1430 :
1431 Node(NodeType::conditionalCompilationPartNodespan_moduleId_)expr(expr_)
1432 {
1433     if (expr)
1434     {
1435         expr->SetParent(this);
1436     }
1437 }


Declaration at line 658 of Statement.hpp


Member Function Details

Accept Member Function

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

Definition at line 1464 of Statement.cpp :
1465 {
1466     visitor.Visit(*this);
1467 }


Declaration at line 661 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 1439 of Statement.cpp :
1440 {
1441     statement->SetParent(this);
1442     statements.Add(statement);
1443 }


Declaration at line 659 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 1445 of Statement.cpp
Declaration at line 660 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::Node::ModuleId , 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 664 of Statement.hpp :
664 { return expr.get();  }

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


KeywordSpan Member Function

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

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


LeftParenSpan Member Function

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

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


Read Member Function

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

Definition at line 1485 of Statement.cpp
Declaration at line 663 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 671 of Statement.hpp :
671 { return rightParenSpan; }


SetKeywordSpan Member Function

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

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

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


SetLeftParenSpan Member Function

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

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

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


SetRightParenSpan Member Function

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

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

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


Statements Member Function

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

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

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


Write Member Function

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

Definition at line 1469 of Statement.cpp
Declaration at line 662 of Statement.hpp

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

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


top | up | prev | next