top | up | prev | next

LambdaExpressionNode Class

Definition at line 428 of Expression.hpp

Constructors

LambdaExpressionNode()
LambdaExpressionNode(const Span& span_)

Member Functions

void Accept(Visitor& visitor) override
void AddCapture(Node* capture)
CompoundStatementNode* Body()
Node* Captures()
Node* Parameters()
void Read(Reader& reader) override
void SetBody(CompoundStatementNode* body_)
void SetParameters(Node* parameters_)
void Write(Writer& writer) override

Member Variables

std::unique_ptr<CompoundStatementNode> body
std::unique_ptr<Node> captures
std::unique_ptr<Node> parameters

Constructor Details

LambdaExpressionNode Constructor

sngcpp::ast::LambdaExpressionNode::LambdaExpressionNode()

Definition at line 970 of Expression.cpp :
 970 : Node(NodeType::lambdaExpressionNode)
 971 {
 972 }


Declaration at line 431 of Expression.hpp


LambdaExpressionNode Constructor

sngcpp::ast::LambdaExpressionNode::LambdaExpressionNode(const Span& span_)

Definition at line 974 of Expression.cpp :
 974 : Node(NodeType::lambdaExpressionNodespan_)
 975 {
 976 }


Declaration at line 432 of Expression.hpp


Member Function Details

Accept Member Function

void sngcpp::ast::LambdaExpressionNode::Accept(Visitor & visitor) override

Definition at line 1000 of Expression.cpp :
1001 {
1002     visitor.Visit(*this);
1003 }


Declaration at line 439 of Expression.hpp

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

Calls: sngcpp::ast::Visitor::Visit


AddCapture Member Function

void sngcpp::ast::LambdaExpressionNode::AddCapture(Node * capture)

Definition at line 978 of Expression.cpp :
 979 {
 980     if (captures)
 981     {
 982         captures.reset(new CaptureSequenceNode(capture->GetSpan()captures.release()capture));
 983     }
 984     else
 985     {
 986         captures.reset(capture);
 987     }
 988 }


Declaration at line 433 of Expression.hpp

Calls: sngcpp::ast::Node::GetSpan


Body Member Function

CompoundStatementNode * sngcpp::ast::LambdaExpressionNode::Body()

Definition at line 438 of Expression.hpp :
438 { return body.get(); }


Captures Member Function

Node * sngcpp::ast::LambdaExpressionNode::Captures()

Definition at line 434 of Expression.hpp :
434 { return captures.get(); }


Parameters Member Function

Node * sngcpp::ast::LambdaExpressionNode::Parameters()

Definition at line 436 of Expression.hpp :
436 { return parameters.get(); }


Read Member Function

void sngcpp::ast::LambdaExpressionNode::Read(Reader & reader) override

Definition at line 1021 of Expression.cpp
Declaration at line 441 of Expression.hpp

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

Calls: sngcpp::ast::Node::Read , sngcpp::ast::Reader::GetBinaryReader , sngcpp::ast::Reader::ReadCompoundStatementNode , sngcpp::ast::Reader::ReadNode


SetBody Member Function

void sngcpp::ast::LambdaExpressionNode::SetBody(CompoundStatementNode * body_)

Definition at line 995 of Expression.cpp :
 996 {
 997     body.reset(body_);
 998 }


Declaration at line 437 of Expression.hpp


SetParameters Member Function

void sngcpp::ast::LambdaExpressionNode::SetParameters(Node * parameters_)

Definition at line 990 of Expression.cpp :
 991 {
 992     parameters.reset(parameters_);
 993 }


Declaration at line 435 of Expression.hpp


Write Member Function

void sngcpp::ast::LambdaExpressionNode::Write(Writer & writer) override

Definition at line 1005 of Expression.cpp
Declaration at line 440 of Expression.hpp

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

Calls: sngcpp::ast::LambdaExpressionNode::Write , sngcpp::ast::Node::Write , sngcpp::ast::Writer::GetBinaryWriter

Called by: sngcpp::ast::LambdaExpressionNode::Write


top | up | prev | next