top | up | prev | next

Map Class

Definition at line 22 of Map.hpp

Constructors

Map()

Member Functions

void AddSourceXmlDoc(sngxml::dom::Document* sourceXmlDoc, const std::u32string& projectName)
void ClearNamespaceImports()
sngcm::ast::Node* CreateNode(const std::u32string& name)
sngcm::ast::Node* CreateNode(sngcm::ast::NodeType nodeType)
const std::u32string& CurrentProjectName() const
std::u32string GetNs(const std::u32string& source) const
void InitNameNodeTypeMap()
void InitSimpleTypeMap()
sngcm::ast::Node* MakeDerivedType(sngcm::ast::Node* node, const std::vector<sngcpp::symbols::Derivation>& derivations)
sngcm::ast::IdentifierNode* MapFullTypeName(sngcpp::symbols::TypeSymbol* type)
sngcm::ast::IdentifierNode* MapFunctionSymbol(sngcpp::symbols::CallableSymbol* callableSymbol, std::u32string& args)
sngcm::ast::IdentifierNode* MapMemberSymbol(sngcpp::symbols::Symbol* memberSymbol, std::u32string& args)
void MapNs(const std::u32string& source, const std::u32string& target)
sngcm::ast::NodeType MapSimpleType(sngcpp::ast::SimpleTypeSpecifierFlags flags)
sngcm::ast::NodeType MapSimpleType(sngcpp::symbols::SimpleTypeSymbol* simpleTypeSymbol)
sngcm::ast::Node* MapType(sngcpp::symbols::TypeSymbol* type, sngxml::dom::Document*& sourceXmlDoc)
const std::set<std::u32string>& NamespaceImports() const
std::u32string RemoveNamespace(const std::u32string& qid)
void SetCurrentContext(Context* context)
void SetCurrentProjectName(const std::u32string& projectName)
void SetSymbolTable(sngcpp::symbols::SymbolTable* symbolTable_)

Member Variables

Context* currentContext
std::u32string currentProjectName
std::unordered_map<std::u32string, sngcm::ast::NodeType> nameNodeTypeMap
std::set<std::u32string> namespaceImports
std::unordered_map<std::u32string, std::u32string> nsMap
std::unordered_map<std::u32string, sngxml::dom::Document*> projectSourceXmlDocMap
std::unordered_map<sngcpp::ast::SimpleTypeSpecifierFlags, sngcm::ast::NodeType> simpleTypeMap
std::vector<sngxml::dom::Document*> sourceXmlDocs
sngcpp::symbols::SymbolTable* symbolTable

Constructor Details

Map Constructor

cpp2cm::Map::Map()

Definition at line 71 of Map.cpp
Declaration at line 25 of Map.hpp


Member Function Details

AddSourceXmlDoc Member Function

void cpp2cm::Map::AddSourceXmlDoc(sngxml::dom::Document* sourceXmlDoc, const std::u32string& projectName)

Definition at line 176 of Map.cpp
Declaration at line 32 of Map.hpp

Called by: cpp2cm::Project::Convert


ClearNamespaceImports Member Function

void cpp2cm::Map::ClearNamespaceImports()

Definition at line 569 of Map.cpp
Declaration at line 42 of Map.hpp

Called by: cpp2cm::Converter::Visit


CreateNode Member Function

sngcm::ast::Node* cpp2cm::Map::CreateNode(const std::u32string& name)

Definition at line 150 of Map.cpp
Declaration at line 28 of Map.hpp

Calls: cpp2cm::Map::CreateNode

Called by: cpp2cm::Map::MapType


CreateNode Member Function

sngcm::ast::Node* cpp2cm::Map::CreateNode(sngcm::ast::NodeType nodeType)

Definition at line 141 of Map.cpp
Declaration at line 29 of Map.hpp

Called by: cpp2cm::Converter::Visit , cpp2cm::Map::CreateNode , cpp2cm::Map::MapType


CurrentProjectName Member Function

const std::u32string& cpp2cm::Map::CurrentProjectName() const

Definition at line 46 of Map.hpp


GetNs Member Function

std::u32string cpp2cm::Map::GetNs(const std::u32string& source) const

Definition at line 166 of Map.cpp
Declaration at line 31 of Map.hpp

Called by: cpp2cm::Converter::Visit , cpp2cm::Map::MapFullTypeName


InitNameNodeTypeMap Member Function

void cpp2cm::Map::InitNameNodeTypeMap()

Definition at line 78 of Map.cpp
Declaration at line 26 of Map.hpp


InitSimpleTypeMap Member Function

void cpp2cm::Map::InitSimpleTypeMap()

Definition at line 97 of Map.cpp
Declaration at line 27 of Map.hpp


MakeDerivedType Member Function

sngcm::ast::Node* cpp2cm::Map::MakeDerivedType(sngcm::ast::Node* node, const std::vector<sngcpp::symbols::Derivation>& derivations)

Definition at line 203 of Map.cpp
Declaration at line 36 of Map.hpp

Called by: cpp2cm::Map::MapType


MapFullTypeName Member Function

sngcm::ast::IdentifierNode* cpp2cm::Map::MapFullTypeName(sngcpp::symbols::TypeSymbol* type)

Definition at line 238 of Map.cpp
Declaration at line 37 of Map.hpp

Calls: cpp2cm::Map::GetNs

Called by: cpp2cm::Map::MapType


MapFunctionSymbol Member Function

sngcm::ast::IdentifierNode* cpp2cm::Map::MapFunctionSymbol(sngcpp::symbols::CallableSymbol* callableSymbol, std::u32string& args)

Definition at line 533 of Map.cpp
Declaration at line 40 of Map.hpp

Calls: cpp2cm::Map::RemoveNamespace

Called by: cpp2cm::Converter::ConvertExpression , cpp2cm::Converter::Visit


MapMemberSymbol Member Function

sngcm::ast::IdentifierNode* cpp2cm::Map::MapMemberSymbol(sngcpp::symbols::Symbol* memberSymbol, std::u32string& args)

Definition at line 486 of Map.cpp
Declaration at line 39 of Map.hpp

Calls: cpp2cm::Map::RemoveNamespace

Called by: cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit


MapNs Member Function

void cpp2cm::Map::MapNs(const std::u32string& source, const std::u32string& target)

Definition at line 161 of Map.cpp
Declaration at line 30 of Map.hpp

Called by: cpp2cm::Project::MapNamespaces


MapSimpleType Member Function

sngcm::ast::NodeType cpp2cm::Map::MapSimpleType(sngcpp::ast::SimpleTypeSpecifierFlags flags)

Definition at line 187 of Map.cpp
Declaration at line 34 of Map.hpp


MapSimpleType Member Function

sngcm::ast::NodeType cpp2cm::Map::MapSimpleType(sngcpp::symbols::SimpleTypeSymbol* simpleTypeSymbol)

Definition at line 198 of Map.cpp
Declaration at line 35 of Map.hpp

Called by: cpp2cm::Converter::MakeCommonType , cpp2cm::Map::MapType


MapType Member Function

sngcm::ast::Node* cpp2cm::Map::MapType(sngcpp::symbols::TypeSymbol* type, sngxml::dom::Document*& sourceXmlDoc)

Definition at line 297 of Map.cpp
Declaration at line 38 of Map.hpp

Calls: cpp2cm::Map::CreateNode , cpp2cm::Map::CreateNode , cpp2cm::Map::MakeDerivedType , cpp2cm::Map::MapFullTypeName , cpp2cm::Map::MapSimpleType , cpp2cm::Map::MapType , cpp2cm::Map::RemoveNamespace

Called by: cpp2cm::Converter::ConvertExpression , cpp2cm::Converter::ConvertIdExpr , cpp2cm::Converter::ConvertTypeExpression , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Converter::Visit , cpp2cm::Map::MapType


NamespaceImports Member Function

const std::set<std::u32string>& cpp2cm::Map::NamespaceImports() const

Definition at line 43 of Map.hpp

Called by: cpp2cm::Converter::Visit


RemoveNamespace Member Function

std::u32string cpp2cm::Map::RemoveNamespace(const std::u32string& qid)

Definition at line 576 of Map.cpp
Declaration at line 41 of Map.hpp

Called by: cpp2cm::Map::MapFunctionSymbol , cpp2cm::Map::MapMemberSymbol , cpp2cm::Map::MapType


SetCurrentContext Member Function

void cpp2cm::Map::SetCurrentContext(Context * context)

Definition at line 44 of Map.hpp

Called by: cpp2cm::Converter::Visit


SetCurrentProjectName Member Function

void cpp2cm::Map::SetCurrentProjectName(const std::u32string& projectName)

Definition at line 45 of Map.hpp

Called by: cpp2cm::Project::Convert


SetSymbolTable Member Function

void cpp2cm::Map::SetSymbolTable(sngcpp::symbols::SymbolTable* symbolTable_)

Definition at line 182 of Map.cpp
Declaration at line 33 of Map.hpp

Called by: cpp2cm::Project::Convert


top | up | prev | next