Lines Matching full:auto
40 auto *returnStmt = ast->AsReturnStatement(); in HandleAsyncScriptFunctionBody()
41 const auto *arg = returnStmt->Argument(); in HandleAsyncScriptFunctionBody()
43 auto *voidId = in HandleAsyncScriptFunctionBody()
45 const auto &returnLoc = returnStmt->Range(); in HandleAsyncScriptFunctionBody()
71 auto *voidParam = [checker]() { in CreatePromiseVoidType()
72 auto paramsVector = ArenaVector<ir::TypeNode *>(checker->Allocator()->Adapter()); in CreatePromiseVoidType()
73 …auto *voidId = checker->AllocNode<ir::Identifier>(compiler::Signatures::UNDEFINED, checker->Alloca… in CreatePromiseVoidType()
75 auto *part = checker->AllocNode<ir::ETSTypeReferencePart>(voidId); in CreatePromiseVoidType()
77 … auto *params = checker->AllocNode<ir::TSTypeParameterInstantiation>(std::move(paramsVector)); in CreatePromiseVoidType()
81 auto *promiseVoidType = [checker, voidParam]() { in CreatePromiseVoidType()
82 auto *promiseId = in CreatePromiseVoidType()
85 auto *part = checker->AllocNode<ir::ETSTypeReferencePart>(promiseId, voidParam, nullptr); in CreatePromiseVoidType()
86 auto *type = checker->AllocNode<ir::ETSTypeReference>(part); in CreatePromiseVoidType()
101 auto *typeRef = type->AsETSTypeReference(); in CheckForPromiseVoid()
102 auto *typePart = typeRef->Part(); in CheckForPromiseVoid()
110 const auto ¶ms = typePart->TypeParams()->Params(); in CheckForPromiseVoid()
115 const auto ¶m = params.at(0); in CheckForPromiseVoid()
120 const auto *paramRef = param->AsETSTypeReference(); in CheckForPromiseVoid()
121 const auto *paramPart = paramRef->Part(); in CheckForPromiseVoid()
126 …const auto isTypePromise = typePart->Name()->AsIdentifier()->Name() == compiler::Signatures::BUILT… in CheckForPromiseVoid()
127 …const auto isParamVoid = paramPart->Name()->AsIdentifier()->Name() == compiler::Signatures::UNDEFI… in CheckForPromiseVoid()
145 auto *checker = ctx->checker->AsETSChecker(); in Perform()
147 auto genTypeLocation = [](ir::ScriptFunction *function) -> lexer::SourceRange { in Perform()
148 const auto ¶ms = function->Params(); in Perform()
149 const auto &id = function->Id(); in Perform()
150 const auto &body = function->Body(); in Perform()
152 const auto &last = params.back(); in Perform()
153 const auto &loc = last->Range(); in Perform()
158 const auto &loc = id->Range(); in Perform()
163 const auto &loc = body->Range(); in Perform()
167 const auto &loc = function->Range(); in Perform()
171 const auto transformer = [this, checker, genTypeLocation](ir::AstNode *ast) -> AstNodePtr { in Perform()
176 auto *function = ast->AsScriptFunction(); in Perform()
177 auto *returnAnn = function->ReturnTypeAnnotation(); in Perform()
178 const auto hasReturnAnn = returnAnn != nullptr; in Perform()
179 const auto hasPromiseVoid = CheckForPromiseVoid(returnAnn); in Perform()
183 const auto &loc = genTypeLocation(function); in Perform()
206 auto checkFunctionBody = [](const ir::BlockStatement *body) -> bool { in Postcondition()
210 auto *returnStmt = body->AsReturnStatement(); in Postcondition()
211 const auto *arg = returnStmt->Argument(); in Postcondition()
217 const auto *id = arg->AsIdentifier(); in Postcondition()
221 auto isOk = true; in Postcondition()
222 auto transformer = [checkFunctionBody, &isOk](ir::AstNode *ast) { in Postcondition()
226 auto *function = ast->AsScriptFunction(); in Postcondition()
227 auto *returnAnn = function->ReturnTypeAnnotation(); in Postcondition()