Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(437)

Side by Side Diff: runtime/vm/dart_entry.h

Issue 18463003: Implement the invoke methods (invoke, getField, setField, newInstance, apply) as internal natives. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_DART_ENTRY_H_ 5 #ifndef VM_DART_ENTRY_H_
6 #define VM_DART_ENTRY_H_ 6 #define VM_DART_ENTRY_H_
7 7
8 #include "vm/allocation.h" 8 #include "vm/allocation.h"
9 #include "vm/growable_array.h" 9 #include "vm/growable_array.h"
10 10
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 // On success, returns a RawInstance. On failure, a RawError. 134 // On success, returns a RawInstance. On failure, a RawError.
135 static RawObject* InvokeClosure(const Array& arguments, 135 static RawObject* InvokeClosure(const Array& arguments,
136 const Array& arguments_descriptor); 136 const Array& arguments_descriptor);
137 137
138 // Invokes the noSuchMethod instance function on the receiver. 138 // Invokes the noSuchMethod instance function on the receiver.
139 // On success, returns a RawInstance. On failure, a RawError. 139 // On success, returns a RawInstance. On failure, a RawError.
140 static RawObject* InvokeNoSuchMethod(const Instance& receiver, 140 static RawObject* InvokeNoSuchMethod(const Instance& receiver,
141 const String& target_name, 141 const String& target_name,
142 const Array& arguments, 142 const Array& arguments,
143 const Array& arguments_descriptor); 143 const Array& arguments_descriptor);
144
145 // Invokes a generative constructor, redirecting constructor, factory or
146 // redirecting factory. On success, returns a RawInstance. On failure,
147 // a RawError.
148 static RawObject* InvokeConstructor(const Class& klass,
rmacnak 2013/07/09 21:04:54 We do not yet have a variant supporting named/opti
149 const Function &constructor,
150 const Array& arguments);
144 }; 151 };
145 152
146 153
147 // Utility functions to call from VM into Dart bootstrap libraries. 154 // Utility functions to call from VM into Dart bootstrap libraries.
148 // Each may return an exception object. 155 // Each may return an exception object.
149 class DartLibraryCalls : public AllStatic { 156 class DartLibraryCalls : public AllStatic {
150 public: 157 public:
151 // On success, returns a RawInstance. On failure, a RawError. 158 // On success, returns a RawInstance. On failure, a RawError.
152 static RawObject* ExceptionCreate(const Library& library, 159 static RawObject* ExceptionCreate(const Library& library,
153 const String& exception_name, 160 const String& exception_name,
(...skipping 27 matching lines...) Expand all
181 188
182 // Gets the _id field of a SendPort/ReceivePort. 189 // Gets the _id field of a SendPort/ReceivePort.
183 // 190 //
184 // Returns the value of _id on success, a RawError on failure. 191 // Returns the value of _id on success, a RawError on failure.
185 static RawObject* PortGetId(const Instance& port); 192 static RawObject* PortGetId(const Instance& port);
186 }; 193 };
187 194
188 } // namespace dart 195 } // namespace dart
189 196
190 #endif // VM_DART_ENTRY_H_ 197 #endif // VM_DART_ENTRY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698