Lines Matching full:expression
24 static const Type& get_type(const Context& context, Expression& value, size_t count) {
84 struct Swizzle : public Expression {
85 Swizzle(const Context& context, std::unique_ptr<Expression> base, std::vector<int> components)
92 std::unique_ptr<Expression> constantPropagate(const IRGenerator& irGenerator,
94 if (fBase->fKind == Expression::kConstructor_Kind && fBase->isConstant()) {
96 ASSERT(fBase->fKind == Expression::kConstructor_Kind);
100 return std::unique_ptr<Expression>(new IntLiteral(irGenerator.fContext,
106 return std::unique_ptr<Expression>(new FloatLiteral(irGenerator.fContext,
126 std::unique_ptr<Expression> fBase;
129 typedef Expression INHERITED;