top | up | prev | next

UStringLiteralNode Class

Definition at line 270 of Literal.hpp

Constructors

UStringLiteralNode(const Span& span_)
UStringLiteralNode(const Span& span_, const std::u32string& value_)

Member Functions

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

Member Variables

std::u32string value

Constructor Details

UStringLiteralNode Constructor

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

Definition at line 676 of Literal.cpp :
676 : LiteralNode(NodeType::ustringLiteralNodespan_)value()
677 {
678 }


Declaration at line 273 of Literal.hpp


UStringLiteralNode Constructor

sngcm::ast::UStringLiteralNode::UStringLiteralNode(const Span& span_, const std::u32string& value_)

Definition at line 680 of Literal.cpp :
680 : LiteralNode(NodeType::ustringLiteralNodespan_)value(value_)
681 {
682 }


Declaration at line 274 of Literal.hpp


Member Function Details

Accept Member Function

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

Definition at line 689 of Literal.cpp :
690 {
691     visitor.Visit(*this);
692 }


Declaration at line 276 of Literal.hpp

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

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


Clone Member Function

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

Definition at line 684 of Literal.cpp :
685 {
686     return new UStringLiteralNode(GetSpan()value);
687 }


Declaration at line 275 of Literal.hpp

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

Calls: sngcm::ast::Node::GetSpan


Read Member Function

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

Definition at line 700 of Literal.cpp :
701 {
702     LiteralNode::Read(reader);
703     value = reader.GetBinaryReader().ReadUtf32String();
704 }


Declaration at line 278 of Literal.hpp

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

Calls: sngcm::ast::AstReader::GetBinaryReader , sngcm::ast::LiteralNode::Read , soulng::util::BinaryReader::ReadUtf32String


ToString Member Function

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

Definition at line 706 of Literal.cpp :
707 {
708     return "\"" + StringStr(ToUtf8(value)) + "\"";
709 }


Declaration at line 279 of Literal.hpp

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


Value Member Function

const std::u32string& sngcm::ast::UStringLiteralNode::Value() const

Definition at line 280 of Literal.hpp :
280 { return value; }

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


Write Member Function

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

Definition at line 694 of Literal.cpp :
695 {
696     LiteralNode::Write(writer);
697     writer.GetBinaryWriter().Write(value);
698 }


Declaration at line 277 of Literal.hpp

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

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


top | up | prev | next