/arkcompiler/ets_frontend/ets2panda/ir/expressions/ |
H A D | binaryExpression.cpp | 27 void BinaryExpression::TransformChildren(const NodeTransformer &cb, std::string_view const transformationName) in TransformChildren() 40 void BinaryExpression::Iterate(const NodeTraverser &cb) const in Iterate() 46 void BinaryExpression::Dump(ir::AstDumper *dumper) const in Dump() 48 dumper->Add({{"type", IsLogical() ? "LogicalExpression" : "BinaryExpression"}, in Dump() 54 void BinaryExpression::Dump(ir::SrcDumper *dumper) const in Dump() 67 void BinaryExpression::Compile(compiler::PandaGen *pg) const in Compile() 72 void BinaryExpression::Compile(compiler::ETSGen *etsg) const in Compile() 77 void BinaryExpression::CompileOperands(compiler::ETSGen *etsg, compiler::VReg lhs) const in CompileOperands() 91 checker::Type *BinaryExpression::Check(checker::TSChecker *checker) in Check() 96 checker::Type *BinaryExpression [all...] |
H A D | binaryExpression.h | 28 class BinaryExpression : public Expression { class 30 BinaryExpression() = delete; 31 ~BinaryExpression() override = default; 33 NO_COPY_SEMANTIC(BinaryExpression); 34 NO_MOVE_SEMANTIC(BinaryExpression); 36 explicit BinaryExpression(Expression *const left, Expression *const right, lexer::TokenType const operatorType) in BinaryExpression() function in ark::es2panda::ark::es2panda::ir::BinaryExpression 153 [[nodiscard]] BinaryExpression *Clone(ArenaAllocator *allocator, AstNode *parent) override;
|
/arkcompiler/ets_frontend/ets2panda/compiler/base/ |
H A D | condition.h | 41 static bool CompileBinaryExpr(PandaGen *pg, const ir::BinaryExpression *binExpr, Label *falseLabel); 42 static bool CompileBinaryExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel); 43 static void CompileLogicalAndExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel); 44 static void CompileLogicalOrExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel); 45 static bool CompileBinaryExprForBigInt(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel); 46 static void CompileInstanceofExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel);
|
H A D | condition.cpp | 26 bool Condition::CompileBinaryExpr(PandaGen *pg, const ir::BinaryExpression *binExpr, Label *falseLabel) in CompileBinaryExpr() 129 void Condition::CompileLogicalOrExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel) in CompileLogicalOrExpr() 159 void Condition::CompileLogicalAndExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel) in CompileLogicalAndExpr() 190 bool Condition::CompileBinaryExprForBigInt(ETSGen *etsg, const ir::BinaryExpression *expr, Label *falseLabel) in CompileBinaryExprForBigInt() 238 void Condition::CompileInstanceofExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel) in CompileInstanceofExpr() 245 bool Condition::CompileBinaryExpr(ETSGen *etsg, const ir::BinaryExpression *binExpr, Label *falseLabel) in CompileBinaryExpr()
|
/arkcompiler/ets_frontend/es2panda/ir/expressions/ |
H A D | binaryExpression.cpp | 29 void BinaryExpression::Iterate(const NodeTraverser &cb) const in Iterate() 35 void BinaryExpression::Dump(ir::AstDumper *dumper) const in Dump() 37 dumper->Add({{"type", IsLogical() ? "LogicalExpression" : "BinaryExpression"}, in Dump() 43 void BinaryExpression::CompileLogical(compiler::PandaGen *pg) const in CompileLogical() 83 void BinaryExpression::CompilePrivateIn(compiler::PandaGen *pg) const in CompilePrivateIn() 107 void BinaryExpression::Compile(compiler::PandaGen *pg) const in Compile() 129 checker::Type *BinaryExpression::Check(checker::Checker *checker) const in Check() 195 void BinaryExpression::UpdateSelf(const NodeUpdater &cb, [[maybe_unused]] binder::Binder *binder) in UpdateSelf()
|
H A D | binaryExpression.h | 34 class BinaryExpression : public Expression { class 36 explicit BinaryExpression(Expression *leftExpr, Expression *rightExpr, lexer::TokenType operatorType) in BinaryExpression() function in panda::es2panda::panda::es2panda::panda::es2panda::ir::BinaryExpression
|
/arkcompiler/ets_frontend/ets2panda/util/ast-builders/ |
H A D | binaryExpressionBuilder.h | 26 class BinaryExpressionBuilder : public AstBuilder<ir::BinaryExpression> { 48 BinaryExpression *Build() in Build()
|
/arkcompiler/ets_frontend/ets2panda/compiler/lowering/ets/ |
H A D | stringComparison.cpp | 39 bool CheckOperatorType(ir::BinaryExpression *expr) in CheckOperatorType() 73 void StringComparisonLowering::ProcessBinaryExpression(ir::BinaryExpression *expr, public_lib::Context *ctx) in ProcessBinaryExpression() 115 [[maybe_unused]] ArenaVector<ir::BinaryExpression *> foundNodes(checker->Allocator()->Adapter()); in Perform()
|
H A D | stringComparison.h | 25 void ProcessBinaryExpression(ir::BinaryExpression *expr, public_lib::Context *ctx);
|
H A D | bigintLowering.cpp | 51 bool ReplaceStrictEqualByNormalEqual(ir::BinaryExpression *expr) in ReplaceStrictEqualByNormalEqual() 73 bool RemoveConst(ir::BinaryExpression *expr) in RemoveConst()
|
H A D | enumLowering.cpp | 539 ir::BinaryExpression *CreateIfTest(EnumLoweringPhase *const elp, ir::Identifier *const itemsArrayIdentifier, 548 auto *const expr = checker->AllocNode<ir::BinaryExpression>(paramRefIdent, valuesArrayLengthExpr, 573 checker->AllocNode<ir::BinaryExpression>(message, paramRefIdent, lexer::TokenType::PUNCTUATOR_PLUS); 759 ir::BinaryExpression *CreateForLoopTest(EnumLoweringPhase *const elp, ir::Identifier *const namesArrayIdentifier, 768 auto *const binaryExpr = checker->AllocNode<ir::BinaryExpression>(forLoopIdentClone, arrayLengthExpr, 793 auto *const namesEqualExpr = checker->AllocNode<ir::BinaryExpression>(paramRefIdent, namesArrayElementExpr,
|
/arkcompiler/ets_frontend/ets2panda/test/unit/ |
H A D | node_creator.h | 58 ir::BinaryExpression *CreateLessCmpExpr(util::StringView name = "x") in CreateLessCmpExpr() 61 return alloc_->New<ir::BinaryExpression>(CreateId(name), in CreateLessCmpExpr()
|
/arkcompiler/ets_frontend/ets2panda/test/unit/public/ |
H A D | ast_verifier_short_test.cpp | 33 using ark::es2panda::ir::BinaryExpression; 168 auto arithmeticExpression = BinaryExpression(&left, &right, TokenType::PUNCTUATOR_PLUS); in TEST_F() 192 auto right1 = BinaryExpression(&left2, &right2, TokenType::PUNCTUATOR_MULTIPLY); in TEST_F() 193 auto arithmeticExpression = BinaryExpression(&left1, &right1, TokenType::PUNCTUATOR_PLUS); in TEST_F() 217 auto arithmeticExpression = BinaryExpression(&left, &right, TokenType::PUNCTUATOR_DIVIDE); in TEST_F() 237 auto arithmeticExpression = BinaryExpression(&left, &right, TokenType::PUNCTUATOR_DIVIDE); in TEST_F()
|
/arkcompiler/ets_frontend/ets2panda/checker/ |
H A D | TSAnalyzer.h | 43 checker::Type *CheckBinaryExprArithmLogical(ir::BinaryExpression *expr, ExpressionTypeInfo *leftRightType, 58 const ir::BinaryExpression *expr) const;
|
H A D | checkerContext.h | 231 void CheckBinarySmartCastCondition(ir::BinaryExpression *binaryExpression) noexcept; 255 void CheckSmartCastEqualityCondition(ir::BinaryExpression *binaryExpression) noexcept;
|
H A D | checkerContext.cpp | 311 void CheckerContext::CheckBinarySmartCastCondition(ir::BinaryExpression *const binaryExpression) noexcept 333 void CheckerContext::CheckSmartCastEqualityCondition(ir::BinaryExpression *const binaryExpression) noexcept
|
H A D | TSchecker.h | 50 class BinaryExpression;
|
/arkcompiler/ets_frontend/ets2panda/checker/ts/ |
H A D | util.cpp | 46 ir::BinaryExpression *binaryExpr = parent->Parent()->AsBinaryExpression(); in InAssignment()
|
/arkcompiler/ets_frontend/es2panda/typescript/core/ |
H A D | util.cpp | 58 const ir::BinaryExpression *binaryExpr = parent->Parent()->AsBinaryExpression(); in InAssignment()
|
/arkcompiler/ets_frontend/es2panda/ir/ |
H A D | astNodeMapping.h | 26 _(BINARY_EXPRESSION, BinaryExpression) \
|
/arkcompiler/ets_frontend/ets2panda/checker/ets/ |
H A D | assignAnalyzer.h | 130 void AnalyzeBinaryExpr(const ir::BinaryExpression *binExpr);
|
/arkcompiler/ets_frontend/ets2panda/ir/ |
H A D | astNodeMapping.h | 25 _(BINARY_EXPRESSION, BinaryExpression) \
|
/arkcompiler/ets_frontend/ets2panda/compiler/core/ |
H A D | ETSCompiler.cpp | 459 static void CompileNullishCoalescing(compiler::ETSGen *etsg, ir::BinaryExpression const *const node) in CompileNullishCoalescing() 490 static void CompileLogical(compiler::ETSGen *etsg, const ir::BinaryExpression *expr) in CompileLogical() 537 static void CompileInstanceof(compiler::ETSGen *etsg, const ir::BinaryExpression *expr) in CompileInstanceof() 581 static bool CompileBigInt(compiler::ETSGen *etsg, const ir::BinaryExpression *expr) in CompileBigInt() 628 void ETSCompiler::Compile(const ir::BinaryExpression *expr) const in Compile()
|
/arkcompiler/ets_frontend/es2panda/ir/ts/ |
H A D | tsEnumDeclaration.cpp | 152 const ir::BinaryExpression *expr) in EvaluateBinaryExpression()
|
/arkcompiler/ets_frontend/es2panda/parser/ |
H A D | expressionParser.cpp | 1249 static inline bool ShouldBinaryExpressionBeAmended(ir::BinaryExpression *binaryExpression, in ShouldBinaryExpressionBeAmended() 1293 ir::BinaryExpression *binaryExpression = rightExpr->AsBinaryExpression(); in ParseBinaryExpression() 1294 ir::BinaryExpression *parentExpression = nullptr; in ParseBinaryExpression() 1304 auto *leftExprNode = AllocNode<ir::BinaryExpression>(left, binaryExpression->Left(), operatorType); in ParseBinaryExpression() 1312 auto *binaryOrLogicalExpressionNode = AllocNode<ir::BinaryExpression>(left, rightNode, operatorType); in ParseBinaryExpression() 1323 rightExpr = AllocNode<ir::BinaryExpression>(left, rightExpr, operatorType); in ParseBinaryExpression()
|