Lines Matching refs:checker
19 #include "checker/SemanticAnalyzer.h"
20 #include "checker/ETSchecker.h"
23 namespace ark::es2panda::checker {
27 explicit ETSAnalyzer(Checker *checker) : SemanticAnalyzer(checker) {};
30 #define DECLARE_ETSANALYZER_CHECK_METHOD(_, nodeType) checker::Type *Check(ir::nodeType *node) const override;
36 virtual checker::Type *Check(ir::nodeType *node) const override;
39 checker::Type *PreferredType(ir::ObjectExpression *expr) const;
40 checker::Type *GetPreferredType(ir::ArrayExpression *expr) const;
41 void CheckObjectExprProps(const ir::ObjectExpression *expr, checker::PropertySearchFlags searchFlags) const;
49 checker::Signature *ResolveSignature(ETSChecker *checker, ir::CallExpression *expr, checker::Type *calleeType,
51 checker::Type *GetReturnType(ir::CallExpression *expr, checker::Type *calleeType) const;
52 checker::Type *GetFunctionReturnType(ir::ReturnStatement *st, ir::ScriptFunction *containingFunc) const;
53 checker::Type *GetCallExpressionReturnType(ir::CallExpression *expr, checker::Type *calleeType) const;
54 checker::Type *UnwrapPromiseType(checker::Type *type) const;
55 checker::Type *GetSmartType(ir::AssignmentExpression *expr, checker::Type *leftType,
56 checker::Type *rightType) const;
58 checker::Type *&funcReturnType, ir::TypeNode *returnTypeAnnotation,
59 ETSChecker *checker) const;
61 checker::Type *GetCalleeType(ETSChecker *checker, ir::ETSNewClassInstanceExpression *expr) const
63 checker::Type *calleeType = expr->GetTypeRef()->Check(checker);
65 expr->GetTypeRef()->SetTsType(checker->GlobalTypeError());
66 return checker->GlobalTypeError();
70 checker->LogTypeError("This expression is not constructible.", expr->Start());
71 expr->GetTypeRef()->SetTsType(checker->GlobalTypeError());
72 return checker->GlobalTypeError();
78 void CheckVoidTypeExpression(ETSChecker *checker, const ir::Expression *expr) const
94 checker->LogTypeError({"Cannot use type 'void' as value. "}, expr->Start());
99 } // namespace ark::es2panda::checker