aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sksl/ir/SkSLTypeReference.h
diff options
context:
space:
mode:
authorGravatar ethannicholas <ethannicholas@google.com>2016-07-25 10:08:54 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-07-25 10:08:54 -0700
commitd598f7981f34811e6f2a949207dc13638852f3f7 (patch)
tree83dd4cf4983f90125651a0ab380f4f71cb3e27f2 /src/sksl/ir/SkSLTypeReference.h
parentd9ddad2952cdfd0809249abbd94a285abdb6b1d0 (diff)
SkSL performance improvements (plus a couple of minor warning fixes)
Diffstat (limited to 'src/sksl/ir/SkSLTypeReference.h')
-rw-r--r--src/sksl/ir/SkSLTypeReference.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/sksl/ir/SkSLTypeReference.h b/src/sksl/ir/SkSLTypeReference.h
index 5f4990f35d..76923aae4d 100644
--- a/src/sksl/ir/SkSLTypeReference.h
+++ b/src/sksl/ir/SkSLTypeReference.h
@@ -8,6 +8,7 @@
#ifndef SKSL_TYPEREFERENCE
#define SKSL_TYPEREFERENCE
+#include "SkSLContext.h"
#include "SkSLExpression.h"
namespace SkSL {
@@ -17,16 +18,16 @@ namespace SkSL {
* always eventually replaced by Constructors in valid programs.
*/
struct TypeReference : public Expression {
- TypeReference(Position position, std::shared_ptr<Type> type)
- : INHERITED(position, kTypeReference_Kind, kInvalid_Type)
- , fValue(std::move(type)) {}
+ TypeReference(const Context& context, Position position, const Type& type)
+ : INHERITED(position, kTypeReference_Kind, *context.fInvalid_Type)
+ , fValue(type) {}
std::string description() const override {
ASSERT(false);
return "<type>";
}
- const std::shared_ptr<Type> fValue;
+ const Type& fValue;
typedef Expression INHERITED;
};