| Index: runtime/vm/kernel.h
|
| diff --git a/runtime/vm/kernel.h b/runtime/vm/kernel.h
|
| index e51abf314f653d7615272f3444883c4dc7affef0..49649aff87eb16569b83b8647a9a24ec1cc4a47f 100644
|
| --- a/runtime/vm/kernel.h
|
| +++ b/runtime/vm/kernel.h
|
| @@ -15,7 +15,6 @@
|
|
|
| #define KERNEL_NODES_DO(M) \
|
| M(Name) \
|
| - M(InferredValue) \
|
| M(DartType) \
|
| M(InvalidType) \
|
| M(DynamicType) \
|
| @@ -701,7 +700,6 @@ class Field : public Member {
|
| intptr_t source_uri_index() { return source_uri_index_; }
|
|
|
| DartType* type() { return type_; }
|
| - InferredValue* inferred_value() { return inferred_value_; }
|
| Expression* initializer() { return initializer_; }
|
|
|
| private:
|
| @@ -713,7 +711,6 @@ class Field : public Member {
|
| word flags_;
|
| intptr_t source_uri_index_;
|
| Child<DartType> type_;
|
| - Child<InferredValue> inferred_value_;
|
| Child<Expression> initializer_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(Field);
|
| @@ -969,7 +966,6 @@ class FunctionNode : public TreeNode {
|
| }
|
| List<VariableDeclaration>& named_parameters() { return named_parameters_; }
|
| DartType* return_type() { return return_type_; }
|
| - InferredValue* inferred_return_value() { return inferred_return_value_; }
|
| Statement* body() { return body_; }
|
| TokenPosition position() { return position_; }
|
| TokenPosition end_position() { return end_position_; }
|
| @@ -986,7 +982,6 @@ class FunctionNode : public TreeNode {
|
| List<VariableDeclaration> positional_parameters_;
|
| List<VariableDeclaration> named_parameters_;
|
| Child<DartType> return_type_;
|
| - Child<InferredValue> inferred_return_value_;
|
| Child<Statement> body_;
|
| TokenPosition position_;
|
| TokenPosition end_position_;
|
| @@ -2469,7 +2464,6 @@ class VariableDeclaration : public Statement {
|
|
|
| String* name() { return name_; }
|
| DartType* type() { return type_; }
|
| - InferredValue* inferred_value() { return inferred_value_; }
|
| Expression* initializer() { return initializer_; }
|
| TokenPosition equals_position() { return equals_position_; }
|
| TokenPosition end_position() { return end_position_; }
|
| @@ -2486,7 +2480,6 @@ class VariableDeclaration : public Statement {
|
| word flags_;
|
| Ref<String> name_;
|
| Child<DartType> type_;
|
| - Child<InferredValue> inferred_value_;
|
| Child<Expression> initializer_;
|
| TokenPosition equals_position_;
|
| TokenPosition end_position_;
|
| @@ -2548,59 +2541,6 @@ class Name : public Node {
|
| };
|
|
|
|
|
| -class InferredValue : public Node {
|
| - public:
|
| - static const uint8_t kNull = 1 << 0;
|
| - static const uint8_t kInteger = 1 << 1;
|
| - static const uint8_t kDouble = 1 << 2;
|
| - static const uint8_t kString = 1 << 3;
|
| - static const uint8_t kOther = 1 << 4;
|
| -
|
| - enum BaseClassKind {
|
| - kNone,
|
| - kExact,
|
| - kSubclass,
|
| - kSubtype,
|
| - };
|
| -
|
| - static InferredValue* ReadFrom(Reader* reader);
|
| -
|
| - virtual ~InferredValue();
|
| -
|
| - DEFINE_CASTING_OPERATIONS(InferredValue);
|
| -
|
| - virtual void AcceptVisitor(Visitor* visitor);
|
| - virtual void VisitChildren(Visitor* visitor);
|
| -
|
| - bool IsInterfaceType() { return kind_ == kSubtype; }
|
| - bool IsExactClass() { return kind_ == kExact; }
|
| - bool IsSubclass() { return kind_ == kSubclass; }
|
| -
|
| - bool CanBeNull() { return (value_bits_ & kNull) != 0; }
|
| - bool CanBeInteger() { return (value_bits_ & kInteger) != 0; }
|
| - bool CanBeDouble() { return (value_bits_ & kDouble) != 0; }
|
| - bool CanBeString() { return (value_bits_ & kString) != 0; }
|
| -
|
| - bool IsAlwaysNull() { return value_bits_ == kNull; }
|
| - bool IsAlwaysInteger() { return value_bits_ == kInteger; }
|
| - bool IsAlwaysDouble() { return value_bits_ == kDouble; }
|
| - bool IsAlwaysString() { return value_bits_ == kString; }
|
| -
|
| - Class* klass() { return klass_reference_->AsClass(); }
|
| - BaseClassKind kind() { return kind_; }
|
| - uint8_t value_bits() { return value_bits_; }
|
| -
|
| - private:
|
| - InferredValue() {}
|
| -
|
| - Ref<CanonicalName> klass_reference_;
|
| - BaseClassKind kind_;
|
| - uint8_t value_bits_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(InferredValue);
|
| -};
|
| -
|
| -
|
| class DartType : public Node {
|
| public:
|
| static DartType* ReadFrom(Reader* reader);
|
| @@ -3146,9 +3086,6 @@ class Visitor : public TreeVisitor,
|
| virtual ~Visitor() {}
|
|
|
| virtual void VisitDefaultNode(Node* node) = 0;
|
| - virtual void VisitInferredValue(InferredValue* node) {
|
| - VisitDefaultNode(node);
|
| - }
|
| virtual void VisitDefaultTreeNode(TreeNode* node) { VisitDefaultNode(node); }
|
| virtual void VisitDefaultDartType(DartType* node) { VisitDefaultNode(node); }
|
| virtual void VisitName(Name* node) { VisitDefaultNode(node); }
|
|
|