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

Side by Side Diff: src/api.h

Issue 459413002: Support symbol-named properties in API (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Include a bit that was missing from the previous patch Created 6 years, 4 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
« no previous file with comments | « src/accessors.cc ('k') | src/api.cc » ('j') | src/api.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_API_H_ 5 #ifndef V8_API_H_
6 #define V8_API_H_ 6 #define V8_API_H_
7 7
8 #include "src/v8.h" 8 #include "src/v8.h"
9 9
10 #include "include/v8-testing.h" 10 #include "include/v8-testing.h"
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 V(Uint8Array, JSTypedArray) \ 151 V(Uint8Array, JSTypedArray) \
152 V(Uint8ClampedArray, JSTypedArray) \ 152 V(Uint8ClampedArray, JSTypedArray) \
153 V(Int8Array, JSTypedArray) \ 153 V(Int8Array, JSTypedArray) \
154 V(Uint16Array, JSTypedArray) \ 154 V(Uint16Array, JSTypedArray) \
155 V(Int16Array, JSTypedArray) \ 155 V(Int16Array, JSTypedArray) \
156 V(Uint32Array, JSTypedArray) \ 156 V(Uint32Array, JSTypedArray) \
157 V(Int32Array, JSTypedArray) \ 157 V(Int32Array, JSTypedArray) \
158 V(Float32Array, JSTypedArray) \ 158 V(Float32Array, JSTypedArray) \
159 V(Float64Array, JSTypedArray) \ 159 V(Float64Array, JSTypedArray) \
160 V(DataView, JSDataView) \ 160 V(DataView, JSDataView) \
161 V(Name, Name) \
161 V(String, String) \ 162 V(String, String) \
162 V(Symbol, Symbol) \ 163 V(Symbol, Symbol) \
163 V(Script, JSFunction) \ 164 V(Script, JSFunction) \
164 V(UnboundScript, SharedFunctionInfo) \ 165 V(UnboundScript, SharedFunctionInfo) \
165 V(Function, JSFunction) \ 166 V(Function, JSFunction) \
166 V(Message, JSMessageObject) \ 167 V(Message, JSMessageObject) \
167 V(Context, Context) \ 168 V(Context, Context) \
168 V(External, Object) \ 169 V(External, Object) \
169 V(StackTrace, JSArray) \ 170 V(StackTrace, JSArray) \
170 V(StackFrame, JSObject) \ 171 V(StackFrame, JSObject) \
(...skipping 11 matching lines...) Expand all
182 183
183 static Local<FunctionTemplate> ToFunctionTemplate(NeanderObject obj); 184 static Local<FunctionTemplate> ToFunctionTemplate(NeanderObject obj);
184 static Local<ObjectTemplate> ToObjectTemplate(NeanderObject obj); 185 static Local<ObjectTemplate> ToObjectTemplate(NeanderObject obj);
185 186
186 static inline Local<Context> ToLocal( 187 static inline Local<Context> ToLocal(
187 v8::internal::Handle<v8::internal::Context> obj); 188 v8::internal::Handle<v8::internal::Context> obj);
188 static inline Local<Value> ToLocal( 189 static inline Local<Value> ToLocal(
189 v8::internal::Handle<v8::internal::Object> obj); 190 v8::internal::Handle<v8::internal::Object> obj);
190 static inline Local<Function> ToLocal( 191 static inline Local<Function> ToLocal(
191 v8::internal::Handle<v8::internal::JSFunction> obj); 192 v8::internal::Handle<v8::internal::JSFunction> obj);
193 static inline Local<Name> ToLocal(
194 v8::internal::Handle<v8::internal::Name> obj);
192 static inline Local<String> ToLocal( 195 static inline Local<String> ToLocal(
193 v8::internal::Handle<v8::internal::String> obj); 196 v8::internal::Handle<v8::internal::String> obj);
194 static inline Local<Symbol> ToLocal( 197 static inline Local<Symbol> ToLocal(
195 v8::internal::Handle<v8::internal::Symbol> obj); 198 v8::internal::Handle<v8::internal::Symbol> obj);
196 static inline Local<RegExp> ToLocal( 199 static inline Local<RegExp> ToLocal(
197 v8::internal::Handle<v8::internal::JSRegExp> obj); 200 v8::internal::Handle<v8::internal::JSRegExp> obj);
198 static inline Local<Object> ToLocal( 201 static inline Local<Object> ToLocal(
199 v8::internal::Handle<v8::internal::JSObject> obj); 202 v8::internal::Handle<v8::internal::JSObject> obj);
200 static inline Local<Array> ToLocal( 203 static inline Local<Array> ToLocal(
201 v8::internal::Handle<v8::internal::JSArray> obj); 204 v8::internal::Handle<v8::internal::JSArray> obj);
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
326 Local<v8::Type##Array> Utils::ToLocal##Type##Array( \ 329 Local<v8::Type##Array> Utils::ToLocal##Type##Array( \
327 v8::internal::Handle<v8::internal::JSTypedArray> obj) { \ 330 v8::internal::Handle<v8::internal::JSTypedArray> obj) { \
328 DCHECK(obj->type() == kExternal##Type##Array); \ 331 DCHECK(obj->type() == kExternal##Type##Array); \
329 return Convert<v8::internal::JSTypedArray, v8::Type##Array>(obj); \ 332 return Convert<v8::internal::JSTypedArray, v8::Type##Array>(obj); \
330 } 333 }
331 334
332 335
333 MAKE_TO_LOCAL(ToLocal, Context, Context) 336 MAKE_TO_LOCAL(ToLocal, Context, Context)
334 MAKE_TO_LOCAL(ToLocal, Object, Value) 337 MAKE_TO_LOCAL(ToLocal, Object, Value)
335 MAKE_TO_LOCAL(ToLocal, JSFunction, Function) 338 MAKE_TO_LOCAL(ToLocal, JSFunction, Function)
339 MAKE_TO_LOCAL(ToLocal, Name, Name)
336 MAKE_TO_LOCAL(ToLocal, String, String) 340 MAKE_TO_LOCAL(ToLocal, String, String)
337 MAKE_TO_LOCAL(ToLocal, Symbol, Symbol) 341 MAKE_TO_LOCAL(ToLocal, Symbol, Symbol)
338 MAKE_TO_LOCAL(ToLocal, JSRegExp, RegExp) 342 MAKE_TO_LOCAL(ToLocal, JSRegExp, RegExp)
339 MAKE_TO_LOCAL(ToLocal, JSObject, Object) 343 MAKE_TO_LOCAL(ToLocal, JSObject, Object)
340 MAKE_TO_LOCAL(ToLocal, JSArray, Array) 344 MAKE_TO_LOCAL(ToLocal, JSArray, Array)
341 MAKE_TO_LOCAL(ToLocal, JSArrayBuffer, ArrayBuffer) 345 MAKE_TO_LOCAL(ToLocal, JSArrayBuffer, ArrayBuffer)
342 MAKE_TO_LOCAL(ToLocal, JSArrayBufferView, ArrayBufferView) 346 MAKE_TO_LOCAL(ToLocal, JSArrayBufferView, ArrayBufferView)
343 MAKE_TO_LOCAL(ToLocal, JSDataView, DataView) 347 MAKE_TO_LOCAL(ToLocal, JSDataView, DataView)
344 MAKE_TO_LOCAL(ToLocal, JSTypedArray, TypedArray) 348 MAKE_TO_LOCAL(ToLocal, JSTypedArray, TypedArray)
345 349
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
664 spare_ = block_start; 668 spare_ = block_start;
665 } 669 }
666 DCHECK((blocks_.is_empty() && prev_limit == NULL) || 670 DCHECK((blocks_.is_empty() && prev_limit == NULL) ||
667 (!blocks_.is_empty() && prev_limit != NULL)); 671 (!blocks_.is_empty() && prev_limit != NULL));
668 } 672 }
669 673
670 674
671 // Interceptor functions called from generated inline caches to notify 675 // Interceptor functions called from generated inline caches to notify
672 // CPU profiler that external callbacks are invoked. 676 // CPU profiler that external callbacks are invoked.
673 void InvokeAccessorGetterCallback( 677 void InvokeAccessorGetterCallback(
674 v8::Local<v8::String> property, 678 v8::Local<v8::Name> property,
675 const v8::PropertyCallbackInfo<v8::Value>& info, 679 const v8::PropertyCallbackInfo<v8::Value>& info,
676 v8::AccessorGetterCallback getter); 680 v8::AccessorNameGetterCallback getter);
677 681
678 void InvokeFunctionCallback(const v8::FunctionCallbackInfo<v8::Value>& info, 682 void InvokeFunctionCallback(const v8::FunctionCallbackInfo<v8::Value>& info,
679 v8::FunctionCallback callback); 683 v8::FunctionCallback callback);
680 684
681 class Testing { 685 class Testing {
682 public: 686 public:
683 static v8::Testing::StressType stress_type() { return stress_type_; } 687 static v8::Testing::StressType stress_type() { return stress_type_; }
684 static void set_stress_type(v8::Testing::StressType stress_type) { 688 static void set_stress_type(v8::Testing::StressType stress_type) {
685 stress_type_ = stress_type; 689 stress_type_ = stress_type;
686 } 690 }
687 691
688 private: 692 private:
689 static v8::Testing::StressType stress_type_; 693 static v8::Testing::StressType stress_type_;
690 }; 694 };
691 695
692 } } // namespace v8::internal 696 } } // namespace v8::internal
693 697
694 #endif // V8_API_H_ 698 #endif // V8_API_H_
OLDNEW
« no previous file with comments | « src/accessors.cc ('k') | src/api.cc » ('j') | src/api.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698