Index: runtime/vm/object.h |
=================================================================== |
--- runtime/vm/object.h (revision 24991) |
+++ runtime/vm/object.h (working copy) |
@@ -926,8 +926,9 @@ |
RawArray* constants() const; |
- RawFunction* GetNoSuchMethodDispatcher(const String& target_name, |
- const Array& args_desc) const; |
+ RawFunction* GetInvocationDispatcher(const String& target_name, |
+ const Array& args_desc, |
+ RawFunction::Kind kind) const; |
void Finalize() const; |
@@ -1018,10 +1019,11 @@ |
void set_canonical_types(const Array& value) const; |
RawArray* canonical_types() const; |
- RawArray* no_such_method_cache() const; |
- void set_no_such_method_cache(const Array& cache) const; |
- RawFunction* CreateNoSuchMethodDispatcher(const String& target_name, |
- const Array& args_desc) const; |
+ RawArray* invocation_dispatcher_cache() const; |
+ void set_invocation_dispatcher_cache(const Array& cache) const; |
+ RawFunction* CreateInvocationDispatcher(const String& target_name, |
+ const Array& args_desc, |
+ RawFunction::Kind kind) const; |
void CalculateFieldOffsets() const; |
// Assigns empty array to all raw class array fields. |
@@ -1439,6 +1441,10 @@ |
return kind() == RawFunction::kNoSuchMethodDispatcher; |
} |
+ bool IsInvokeFieldDispatcher() const { |
+ return kind() == RawFunction::kInvokeFieldDispatcher; |
+ } |
+ |
// Returns true iff an implicit closure function has been created |
// for this function. |
bool HasImplicitClosureFunction() const { |
@@ -1484,6 +1490,7 @@ |
case RawFunction::kImplicitSetter: |
case RawFunction::kMethodExtractor: |
case RawFunction::kNoSuchMethodDispatcher: |
+ case RawFunction::kInvokeFieldDispatcher: |
return true; |
case RawFunction::kClosureFunction: |
case RawFunction::kConstructor: |