Home
last modified time | relevance | path

Searched refs:BinaryExpression (Results 1 - 25 of 36) sorted by relevance

12

/arkcompiler/ets_frontend/ets2panda/ir/expressions/
H A DbinaryExpression.cpp27 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 DbinaryExpression.h28 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 Dcondition.h41 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 Dcondition.cpp26 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 DbinaryExpression.cpp29 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 DbinaryExpression.h34 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 DbinaryExpressionBuilder.h26 class BinaryExpressionBuilder : public AstBuilder<ir::BinaryExpression> {
48 BinaryExpression *Build() in Build()
/arkcompiler/ets_frontend/ets2panda/compiler/lowering/ets/
H A DstringComparison.cpp39 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 DstringComparison.h25 void ProcessBinaryExpression(ir::BinaryExpression *expr, public_lib::Context *ctx);
H A DbigintLowering.cpp51 bool ReplaceStrictEqualByNormalEqual(ir::BinaryExpression *expr) in ReplaceStrictEqualByNormalEqual()
73 bool RemoveConst(ir::BinaryExpression *expr) in RemoveConst()
H A DenumLowering.cpp539 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 Dnode_creator.h58 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 Dast_verifier_short_test.cpp33 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 DTSAnalyzer.h43 checker::Type *CheckBinaryExprArithmLogical(ir::BinaryExpression *expr, ExpressionTypeInfo *leftRightType,
58 const ir::BinaryExpression *expr) const;
H A DcheckerContext.h231 void CheckBinarySmartCastCondition(ir::BinaryExpression *binaryExpression) noexcept;
255 void CheckSmartCastEqualityCondition(ir::BinaryExpression *binaryExpression) noexcept;
H A DcheckerContext.cpp311 void CheckerContext::CheckBinarySmartCastCondition(ir::BinaryExpression *const binaryExpression) noexcept
333 void CheckerContext::CheckSmartCastEqualityCondition(ir::BinaryExpression *const binaryExpression) noexcept
H A DTSchecker.h50 class BinaryExpression;
/arkcompiler/ets_frontend/ets2panda/checker/ts/
H A Dutil.cpp46 ir::BinaryExpression *binaryExpr = parent->Parent()->AsBinaryExpression(); in InAssignment()
/arkcompiler/ets_frontend/es2panda/typescript/core/
H A Dutil.cpp58 const ir::BinaryExpression *binaryExpr = parent->Parent()->AsBinaryExpression(); in InAssignment()
/arkcompiler/ets_frontend/es2panda/ir/
H A DastNodeMapping.h26 _(BINARY_EXPRESSION, BinaryExpression) \
/arkcompiler/ets_frontend/ets2panda/checker/ets/
H A DassignAnalyzer.h130 void AnalyzeBinaryExpr(const ir::BinaryExpression *binExpr);
/arkcompiler/ets_frontend/ets2panda/ir/
H A DastNodeMapping.h25 _(BINARY_EXPRESSION, BinaryExpression) \
/arkcompiler/ets_frontend/ets2panda/compiler/core/
H A DETSCompiler.cpp459 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 DtsEnumDeclaration.cpp152 const ir::BinaryExpression *expr) in EvaluateBinaryExpression()
/arkcompiler/ets_frontend/es2panda/parser/
H A DexpressionParser.cpp1249 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()

Completed in 17 milliseconds

12