Lines Matching refs:ConstantExpression

44 struct ConstantExpression {  struct
45 static std::unique_ptr<ConstantExpression> Zero(ScalarType::Kind kind);
46 static std::unique_ptr<ConstantExpression> One(ScalarType::Kind kind);
47 static std::unique_ptr<ConstantExpression> ValueOf(ScalarType::Kind kind, uint64_t value);
49 ConstantExpression(const std::string& expr);
50 virtual ~ConstantExpression() {} in ~ConstantExpression() argument
59 status_t recursivePass(const std::function<status_t(ConstantExpression*)>& func,
60 std::unordered_set<const ConstantExpression*>* visited,
62 status_t recursivePass(const std::function<status_t(const ConstantExpression*)>& func,
63 std::unordered_set<const ConstantExpression*>* visited,
73 std::vector<ConstantExpression*> getConstantExpressions();
74 virtual std::vector<const ConstantExpression*> getConstantExpressions() const = 0;
85 CheckAcyclicStatus(status_t status, const ConstantExpression* cycleEnd = nullptr, argument
92 const ConstantExpression* cycleEnd;
100 CheckAcyclicStatus checkAcyclic(std::unordered_set<const ConstantExpression*>* visited,
101 std::unordered_set<const ConstantExpression*>* stack) const;
122 std::unique_ptr<ConstantExpression> addOne(ScalarType::Kind baseKind);
173 struct LiteralConstantExpression : public ConstantExpression { argument
177 std::vector<const ConstantExpression*> getConstantExpressions() const override;
182 struct UnaryConstantExpression : public ConstantExpression {
183 UnaryConstantExpression(const std::string& mOp, ConstantExpression* value);
185 std::vector<const ConstantExpression*> getConstantExpressions() const override;
188 ConstantExpression* const mUnary;
192 struct BinaryConstantExpression : public ConstantExpression {
193 BinaryConstantExpression(ConstantExpression* lval, const std::string& op,
194 ConstantExpression* rval);
196 std::vector<const ConstantExpression*> getConstantExpressions() const override;
199 ConstantExpression* const mLval;
200 ConstantExpression* const mRval;
204 struct TernaryConstantExpression : public ConstantExpression {
205 TernaryConstantExpression(ConstantExpression* cond, ConstantExpression* trueVal,
206 ConstantExpression* falseVal);
208 std::vector<const ConstantExpression*> getConstantExpressions() const override;
211 ConstantExpression* const mCond;
212 ConstantExpression* const mTrueVal;
213 ConstantExpression* const mFalseVal;
216 struct ReferenceConstantExpression : public ConstantExpression {
221 std::vector<const ConstantExpression*> getConstantExpressions() const override;
229 struct AttributeConstantExpression : public ConstantExpression {
236 std::vector<const ConstantExpression*> getConstantExpressions() const override;