|
hoshi-lang dev
Yet another programming language
|
This is the complete list of members for visitor, including all inherited members.
| canCastTo(const std::shared_ptr< IRValueType > &fromType, const std::shared_ptr< IRValueType > &toType) | visitor | |
| checkConceptSatisfaction(yoi::externModuleAccessExpression *stmt, const yoi::wstr ¶mName, const std::shared_ptr< IRValueType > &args) | visitor | |
| checkConceptSatisfaction(yoi::externModuleAccessExpression *stmt) | visitor | |
| checkMarcoSatisfaction(yoi::marcoDescriptor *desc) | visitor | |
| constructDataStruct(yoi::indexT datastructIndex, yoi::indexT moduleIndex, yoi::invocationArguments *args) | visitor | |
| createCallableImplementationForFunction(const std::shared_ptr< IRFunctionDefinition > &func, yoi::indexT funcIndex, yoi::indexT moduleIndex, bool hasThis) | visitor | |
| createCallableImplementationForLambda(const std::shared_ptr< IRStructDefinition > &lambda, yoi::indexT lambdaStructIndex, yoi::indexT moduleIndex) | visitor | |
| createCallableInstanceForFunction(yoi::indexT implIndex, std::pair< yoi::indexT, yoi::indexT > callableInterfaceIndex, yoi::indexT moduleIndex, bool hasThis) | visitor | |
| createCallableInterface(const yoi::vec< std::shared_ptr< IRValueType > > ¶meterTypes, const std::shared_ptr< IRValueType > &returnType) | visitor | |
| createLambdaUnnamedStruct(yoi::lambdaExpr *lambdaExpr) | visitor | |
| currentModuleIndex | visitor | |
| ejectTemporaryConceptEvaluationEnvironment() | visitor | |
| emitBasicCastInBasicArithOpByLhsAndRhs(yoi::indexT lhs, yoi::indexT rhs) | visitor | |
| emitBasicCastTo(const std::shared_ptr< IRValueType > &toType) | visitor | |
| evaluateArguments(yoi::invocationArguments *args) | visitor | |
| evaluateConstraint(yoi::conceptStmt *stmt, const IRDebugInfo ¤tDebugInfo) | visitor | |
| extractTemplateParamsFromTypeArgs(yoi::templateArg *templateArgs) | visitor | |
| extractTemplateParamsFromTypeArgs(yoi::defTemplateArg *templateArgs) | visitor | |
| generateNullInterfaceImplementation(const std::shared_ptr< IRValueType > &structType) | visitor | |
| getExternEntry(yoi::indexT moduleIndex, const yoi::wstr &identifier) const | visitor | |
| getFunctionAttributes(const yoi::vec< lexer::token > &attrs) | visitor | |
| getFuncUniqueNameStr(const std::vector< std::shared_ptr< IRValueType > > &argumentTypes, bool whetherIgnoreFirstParam=false) | visitor | |
| getGeneratorContext(const yoi::wstr &funcName, const std::shared_ptr< IRValueType > &yieldType) | visitor | |
| getIncompleteType(const yoi::wstr &typeName) const | visitor | |
| getInterfaceImplName(const std::pair< yoi::indexT, yoi::indexT > &interfaceSrc, const std::shared_ptr< IRValueType > &typeSrc) | visitor | static |
| getInterfaceNameStr(const std::pair< yoi::indexT, yoi::indexT > &interfaceSrc) | visitor | |
| getMangledTemplateName(const yoi::wstr &baseName, const yoi::vec< std::shared_ptr< IRValueType > > &templateArgs) | visitor | |
| getSpecializedMangledMethodName(yoi::indexTable< yoi::wstr, IRTemplateBuilder::Argument > &templateArgs, const yoi::wstr &baseMethodName, const yoi::vec< std::shared_ptr< IRValueType > > &specializedArgTypes) | visitor | |
| getTemplateArgs(const yoi::defTemplateArg &templateArgs) | visitor | |
| getTypeSpecUniqueNameStr(const std::shared_ptr< IRValueType > &type) | visitor | |
| handleBinaryOperatorOverload(const yoi::wstr &overloadName, T *rhsAST) | visitor | |
| handleInvocationExtern(const yoi::wstr &baseName, yoi::invocationArguments *args, yoi::indexT targetModule, const std::shared_ptr< IRValueType > &structContext=nullptr, bool noThisCall=false, yoi::templateArg *templateArgs=nullptr) | visitor | |
| handleSubscript(yoi::vec< yoi::subscript * >::iterator &it, yoi::vec< yoi::subscript * >::iterator end, bool isStoreOp, bool isLastTerm) | visitor | |
| handleUnaryOperatorOverload(const yoi::wstr &overloadName) | visitor | |
| irModule | visitor | |
| isModuleName(identifierWithTemplateArg *it, yoi::indexT currentModule) const | visitor | |
| isModuleName(identifier *it, yoi::indexT currentModule) const | visitor | |
| isVisitingGlobalScope() const | visitor | |
| mapEnumTypeToBasicType(yoi::indexT targetModule, yoi::indexT targetEnumType) | visitor | |
| moduleContext | visitor | |
| moduleContextStack | visitor | private |
| parseConceptName(yoi::externModuleAccessExpression *conceptName) | visitor | |
| parseIdentifierWithTemplateArg(yoi::identifierWithTemplateArg *identifierWithTemplateArg) | visitor | |
| parseInterfaceName(yoi::externModuleAccessExpression *structDef) | visitor | |
| parseTemplateArgs(const yoi::templateArg &templateArgs) | visitor | |
| parseTypeSpec(yoi::identifier *identifier) | visitor | |
| parseTypeSpec(yoi::identifierWithTemplateArg *identifierWithTemplateArg) | visitor | |
| parseTypeSpec(yoi::subscriptExpr *subscriptExpr) | visitor | |
| parseTypeSpec(yoi::funcTypeSpec *typeSpec) | visitor | |
| parseTypeSpec(yoi::typeSpec *typeSpec) | visitor | |
| parseTypeSpec(yoi::externModuleAccessExpression *emaExpression) | visitor | |
| parseTypeSpecExtern(yoi::identifier *identifier, yoi::indexT targetModule) | visitor | |
| parseTypeSpecExtern(yoi::identifierWithTemplateArg *identifierWithTemplateArg, yoi::indexT targetModule) | visitor | |
| parseTypeSpecExtern(yoi::subscriptExpr *subscriptExpr, yoi::indexT targetModule) | visitor | |
| popModuleContext() | visitor | private |
| pushModuleContext(yoi::indexT moduleIndex) | visitor | private |
| resolveOverloadExtern(const yoi::wstr &baseName, const yoi::vec< std::shared_ptr< IRValueType > > &argTypes, yoi::indexT targetModule, const std::shared_ptr< IRStructDefinition > &structContext=nullptr) | visitor | |
| resolveOverloadInterface(const yoi::wstr &baseName, const yoi::vec< std::shared_ptr< IRValueType > > &argTypes, yoi::indexT targetModule, const std::shared_ptr< IRInterfaceInstanceDefinition > &interfaceContext) | visitor | |
| setupTemporaryConceptEvaluationEnvironment(yoi::indexT moduleIndex, const yoi::wstr &conceptName, const std::vector< std::shared_ptr< IRValueType > > &args) | visitor | |
| specializeFunctionTemplate(yoi::funcDefStmt *astNode, const yoi::vec< std::shared_ptr< IRValueType > > &templateArgs, yoi::indexT moduleIndex) | visitor | |
| specializeInterfaceImplementation(yoi::implStmt *implAst, const std::shared_ptr< IRValueType > &concreteStructType, const yoi::wstr &specializedStructName, const yoi::vec< std::shared_ptr< IRValueType > > &concreteTemplateArgs, yoi::indexT targetModule) | visitor | |
| specializeInterfaceTemplate(const yoi::wstr &templateName, const yoi::vec< std::shared_ptr< IRValueType > > &concreteTemplateArgs, yoi::indexT moduleIndex) | visitor | |
| specializeStructMethodDeclaration(IRTemplateBuilder &structTemplate, yoi::structDefInnerPair *methodAstNode, const yoi::wstr &specializedStructName, const yoi::vec< std::shared_ptr< IRValueType > > &concreteTemplateArgs, yoi::indexT moduleIndex) | visitor | |
| specializeStructMethodDefinition(IRTemplateBuilder &structTemplate, const std::shared_ptr< IRStructDefinition > &specializedStruct, yoi::implInnerPair *methodAstNode, const yoi::wstr &specializedStructName, const yoi::vec< std::shared_ptr< IRValueType > > &concreteTemplateArgs, yoi::indexT moduleIndex) | visitor | |
| specializeStructMethodTemplate(const std::shared_ptr< IRStructDefinition > &structDef, yoi::structDefInnerPair *decl, yoi::implInnerPair *def, const yoi::wstr &baseMethodName, const yoi::vec< std::shared_ptr< IRValueType > > &methodTemplateArgs, yoi::indexT moduleIndex) | visitor | |
| specializeStructTemplate(const yoi::wstr &templateName, const yoi::vec< std::shared_ptr< IRValueType > > &concreteTemplateArgs, yoi::implStmt *pureTemplateImplAst, yoi::indexT moduleIndex) | visitor | |
| tryCastTo(const std::shared_ptr< IRValueType > &toType) | visitor | |
| visit() | visitor | |
| visit(yoi::hoshiModule *module) | visitor | |
| visit(yoi::basicLiterals *basicLiterals) | visitor | |
| visit(yoi::bracedInitalizerList *bracedInitalizerList) | visitor | |
| visit(yoi::identifier *identifier, bool isStoreOp=false) | visitor | |
| visit(yoi::identifierWithTemplateArg *identifierWithTemplateArg, bool isStoreOp=false) | visitor | |
| visit(yoi::subscriptExpr *subscriptExpr, bool isStoreOp=false) | visitor | |
| visit(yoi::memberExpr *memberExpr, bool isStoreOp=false) | visitor | |
| visit(yoi::primary *primary, bool isStoreOp=false) | visitor | |
| visit(yoi::abstractExpr *abstractExpr, bool isStoreOp=false) | visitor | |
| visit(yoi::uniqueExpr *uniqueExpr, bool isStoreOp=false) | visitor | |
| visit(yoi::leftExpr *leftExpr) | visitor | |
| visit(yoi::mulExpr *mulExpr) | visitor | |
| visit(yoi::addExpr *addExpr) | visitor | |
| visit(yoi::shiftExpr *shiftExpr) | visitor | |
| visit(yoi::relationalExpr *relationalExpr) | visitor | |
| visit(yoi::equalityExpr *equalityExpr) | visitor | |
| visit(yoi::andExpr *andExpr) | visitor | |
| visit(yoi::exclusiveExpr *exclusiveExpr) | visitor | |
| visit(yoi::inclusiveExpr *inclusiveExpr) | visitor | |
| visit(yoi::logicalAndExpr *logicalAndExpr) | visitor | |
| visit(yoi::logicalOrExpr *logicalOrExpr) | visitor | |
| visit(yoi::rExpr *rExpr) | visitor | |
| visit(yoi::typeIdExpression *typeIdExpression) | visitor | |
| visit(yoi::dynCastExpression *dynCastExpression) | visitor | |
| visit(yoi::newExpression *newExpression) | visitor | |
| visit(yoi::codeBlock *codeBlock, bool notEmitNewBlockInstruction=false) | visitor | |
| visit(yoi::useStmt *useStmt) | visitor | |
| visit(yoi::funcDefStmt *funcDefStmt) | visitor | |
| visit(yoi::interfaceDefStmt *interfaceDefStmt) | visitor | |
| visit(yoi::structDefStmt *structDefStmt) | visitor | |
| visit(yoi::implStmt *implStmt) | visitor | |
| visit(yoi::letStmt *letStmt) | visitor | |
| visit(yoi::exportDecl *exportDecl) | visitor | |
| visit(yoi::importDecl *importDecl) | visitor | |
| visit(yoi::typeAliasStmt *typeAlias) | visitor | |
| visit(yoi::globalStmt *globalStmt) | visitor | |
| visit(yoi::ifStmt *ifStmt) | visitor | |
| visit(yoi::whileStmt *whileStmt) | visitor | |
| visit(yoi::forStmt *forStmt) | visitor | |
| visit(yoi::forEachStmt *forEachStmt) | visitor | |
| visit(yoi::returnStmt *returnStmt) | visitor | |
| visit(yoi::continueStmt *continueStmt) | visitor | |
| visit(yoi::breakStmt *breakStmt) | visitor | |
| visit(yoi::inCodeBlockStmt *inCodeBlockStmt) | visitor | |
| visit(yoi::funcExpr *func) | visitor | |
| visit(yoi::yieldStmt *stmt) | visitor | |
| visit(yoi::conceptDefinition *conceptDefinition) | visitor | |
| visit(yoi::enumerationDefinition *enumerationDefinition) | visitor | |
| visit(yoi::dataStructDefStmt *dataStructDefStmt) | visitor | |
| visitExtern(yoi::identifier *identifier, yoi::indexT targetModule, bool isStoreOp=false) | visitor | |
| visitExtern(yoi::identifierWithTemplateArg *identifierWithTemplateArg, yoi::indexT targetModule, bool isStoreOp=false) | visitor | |
| visitExtern(yoi::subscriptExpr *subscriptExpr, yoi::indexT targetModule, bool isStoreOp=false) | visitor | |
| visitor(const std::shared_ptr< yoi::moduleContext > &moduleContext, const std::shared_ptr< yoi::IRModule > &irModule, yoi::indexT moduleIndex) | visitor |