void |
AddEnumerator(EnumeratorNode* enumeratorNode, const std::u32string& enumeratorName, const std::u32string& enumeratorValue) |
void |
AddParameter(ParameterNode* parameterNode, const std::u32string& parameterName) |
RuleSymbol* |
AddRule(const Span& span, const std::u32string& ruleName) |
void |
AddTypedef(TypedefNode* node, const std::u32string& typedefName, const std::u32string& projectName) |
void |
AddVariable(Node* node, const std::u32string& variableName, const std::u32string& projectName) |
void |
BeginClass(ClassNode* classNode, const std::u32string& className, std::vector<std::unique_ptr<TypeSymbol>>& templateParameters, const std::u32string& projectName) |
void |
BeginContainer(ContainerSymbol* container_) |
void |
BeginDeclarationBlock(Node* blockNode) |
void |
BeginEnumType(EnumTypeNode* enumTypeNode, const std::u32string& enumTypeName, const std::u32string& projectName) |
void |
BeginFunction(FunctionDeclaratorNode* functionDeclaratorNode, const std::u32string& groupName, const std::u32string& functionName, std::vector<std::unique_ptr<TypeSymbol>>& templateParameters, Specifier specifiers, const std::u32string& projectName) |
void |
BeginFunctionDeclaration(FunctionDeclaratorNode* functionDeclaratorNode, const std::u32string& groupName, const std::u32string& functionName, std::vector<std::unique_ptr<TypeSymbol>>& templateParameters, Specifier specifiers, const std::u32string& projectName) |
void |
BeginGrammar(const Span& span, const std::u32string& grammarName, const std::u32string& projectName) |
void |
BeginLambdaExpression(LambdaExpressionNode* lambdaExpressionNode) |
int |
BeginNameSequence(const std::vector<std::pair<std::u32string, int>>& nameSequence) |
void |
BeginNamespace(const std::u32string& namespaceName, const std::u32string& projectName) |
std::unique_ptr<sngxml::dom::Element> |
CreateTypesElement() |
void |
EndClass(const std::u32string& projectName) |
void |
EndContainer() |
void |
EndDeclarationBlock() |
void |
EndEnumType(const std::u32string& projectName) |
void |
EndFunction(const std::u32string& projectName) |
void |
EndFunctionDeclaration() |
void |
EndGrammar(const std::u32string& projectName) |
void |
EndLambdaExpression() |
void |
EndNameSequence(int n) |
void |
EndNamespace() |
TypeSymbol* |
GetBoolType() |
TypeSymbol* |
GetChar16Type() |
TypeSymbol* |
GetChar32Type() |
TypeSymbol* |
GetCharType() |
ContainerScope* |
GetContainerScope() |
TypeSymbol* |
GetDoubleType() |
const std::vector<IdentifierNode*>& |
GetIdNodeSequence(Node* node) |
TypeSymbol* |
GetIntType() |
TypeSymbol* |
GetLongType() |
Symbol* |
GetSymbol(Node* node) |
Symbol* |
GetSymbolNothrow(Node* node) |
const std::vector<Node*>& |
GetTemplateArgumentNodes(TemplateIdNode* templateIdNode) |
TypeSymbol* |
GetUIntType() |
TypeSymbol* |
GetVoidType() |
NamespaceSymbol* |
GlobalNs() |
bool |
InGendocMode() const |
TypeSymbol* |
MakeClassGroupTypeSymbol(ClassGroupSymbol* classGroup) |
TypeSymbol* |
MakeClassTemplateSpecializationSymbol(const Span& span, TypeSymbol* primaryClassTemplate, const std::vector<TypeSymbol*>& templateArguments) |
TypeSymbol* |
MakeDerivedTypeSymbol(std::vector<Derivation>& derivations, TypeSymbol* baseType) |
TypeSymbol* |
MakeElaborateClassTypeSymbol(ClassKey classKey, TypeSymbol* classType) |
TypeSymbol* |
MakeExternalTypeSymbol(const Span& span, const std::u32string& name, ClassKey classKey) |
TypeSymbol* |
MakeIntegerLiteralTypeSymbol(const Span& span, const std::u32string& valueName) |
TypeSymbol* |
MakeSimpleTypeSymbol(SimpleTypeNode& simpleTypeNode) |
void |
MapIdNodeSequence(Node* node, const std::vector<IdentifierNode*>& idNodeSequence) |
void |
MapNode(Node* node, Symbol* symbol) |
void |
MapTemplateIdToTemplateArgumentNodes(TemplateIdNode* templateIdNode, const std::vector<Node*>& templateArgumentNodes) |
void |
SetGendocMode() |
std::unique_ptr<sngxml::dom::Document> |
ToDomDocument() |
std::unique_ptr<sngxml::dom::Element> |
ToDomElement() |