void |
AddOverriddenPureVirtualFunctions(ClassTypeSymbol* cls, std::unordered_set<FunctionSymbol*>& pureVirtualFunctions, std::unordered_set<FunctionSymbol*>& overriddenPureVirtuals) |
std::vector<Symbol*> |
BindExpression(Node* node, SymbolTable& symbolTable, ContainerScope* containerScope, const std::vector<ContainerScope*>& prevContainerScopes, BoundSourceFile* boundSourceFile, FunctionSymbol* currentFunction, StatementBinder* statementBinder) |
std::vector<Symbol*> |
BindExpression(Node* node, SymbolTable& symbolTable, ContainerScope* containerScope, const std::vector<ContainerScope*>& prevContainerScopes, BoundSourceFile* boundSourceFile, FunctionSymbol* currentFunction, StatementBinder* statementBinder, bool& subjectIsConst) |
void |
CollectPureVirtualFunctions(ClassTypeSymbol* cls, std::unordered_set<FunctionSymbol*>& pureVirtualFunctions) |
bool |
Overrides(FunctionSymbol* derivedFun, FunctionSymbol* baseFun) |
void |
ResolveOverrideSets(ClassTypeSymbol* cls) |
void |
ResolveOverrideSets(FunctionSymbol* derivedFun, ClassTypeSymbol* parentClass) |
void |
ResolveOverrideSets(const std::unordered_set<ClassTypeSymbol*>& classes) |
TypeSymbol* |
ResolveType(SymbolTable& symbolTable, ContainerScope* containerScope, const std::vector<ContainerScope*>& prevContainerScopes, BoundSourceFile& boundSourceFile, ClassTypeSymbol* currentClassType, Node* node) |
TypeSymbol* |
ResolveType(SymbolTable& symbolTable, ContainerScope* containerScope, const std::vector<ContainerScope*>& prevContainerScopes, BoundSourceFile& boundSourceFile, TypeResolverFlags flags, ClassTypeSymbol* currentClassType, Node* node) |
TypeResolverFlags |
operator&(TypeResolverFlags left, TypeResolverFlags right) inline |
TypeResolverFlags |
operator|(TypeResolverFlags left, TypeResolverFlags right) inline |