| OLD | NEW |
| 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 /** \mainpage V8 API Reference Guide | 5 /** \mainpage V8 API Reference Guide |
| 6 * | 6 * |
| 7 * V8 is Google's open source JavaScript engine. | 7 * V8 is Google's open source JavaScript engine. |
| 8 * | 8 * |
| 9 * This set of documents provides reference material generated from the | 9 * This set of documents provides reference material generated from the |
| 10 * V8 header file, include/v8.h. | 10 * V8 header file, include/v8.h. |
| (...skipping 2950 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2961 | 2961 |
| 2962 /** | 2962 /** |
| 2963 * Returns Object.getOwnPropertyDescriptor as per ES5 section 15.2.3.3. | 2963 * Returns Object.getOwnPropertyDescriptor as per ES5 section 15.2.3.3. |
| 2964 */ | 2964 */ |
| 2965 V8_DEPRECATED("Use maybe version", | 2965 V8_DEPRECATED("Use maybe version", |
| 2966 Local<Value> GetOwnPropertyDescriptor(Local<String> key)); | 2966 Local<Value> GetOwnPropertyDescriptor(Local<String> key)); |
| 2967 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetOwnPropertyDescriptor( | 2967 V8_WARN_UNUSED_RESULT MaybeLocal<Value> GetOwnPropertyDescriptor( |
| 2968 Local<Context> context, Local<String> key); | 2968 Local<Context> context, Local<String> key); |
| 2969 | 2969 |
| 2970 V8_DEPRECATE_SOON("Use maybe version", bool Has(Local<Value> key)); | 2970 V8_DEPRECATE_SOON("Use maybe version", bool Has(Local<Value> key)); |
| 2971 /** |
| 2972 * Object::Has() calls the abstract operation HasProperty(O, P) described |
| 2973 * in ECMA-262, 7.3.10. Has() returns |
| 2974 * true, if the object has the property, either own or on the prototype chain. |
| 2975 * Interceptors, i.e., PropertyQueryCallbacks, are called if present. |
| 2976 * |
| 2977 * Has() has the same side effects as JavaScript's `variable in object`. |
| 2978 * For example, calling Has() on a revoked proxy will throw an exception. |
| 2979 * |
| 2980 * \note Has() converts the key to a name, which possibly calls back into |
| 2981 * JavaScript. |
| 2982 * |
| 2983 * See also v8::Object::HasOwnProperty() and |
| 2984 * v8::Object::HasRealNamedProperty(). |
| 2985 */ |
| 2971 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, | 2986 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, |
| 2972 Local<Value> key); | 2987 Local<Value> key); |
| 2973 | 2988 |
| 2974 V8_DEPRECATE_SOON("Use maybe version", bool Delete(Local<Value> key)); | 2989 V8_DEPRECATE_SOON("Use maybe version", bool Delete(Local<Value> key)); |
| 2975 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT | 2990 // TODO(dcarney): mark V8_WARN_UNUSED_RESULT |
| 2976 Maybe<bool> Delete(Local<Context> context, Local<Value> key); | 2991 Maybe<bool> Delete(Local<Context> context, Local<Value> key); |
| 2977 | 2992 |
| 2978 V8_DEPRECATED("Use maybe version", bool Has(uint32_t index)); | 2993 V8_DEPRECATED("Use maybe version", bool Has(uint32_t index)); |
| 2979 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index); | 2994 V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index); |
| 2980 | 2995 |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3125 * Sets a 2-byte-aligned native pointer in an internal field. To retrieve such | 3140 * Sets a 2-byte-aligned native pointer in an internal field. To retrieve such |
| 3126 * a field, GetAlignedPointerFromInternalField must be used, everything else | 3141 * a field, GetAlignedPointerFromInternalField must be used, everything else |
| 3127 * leads to undefined behavior. | 3142 * leads to undefined behavior. |
| 3128 */ | 3143 */ |
| 3129 void SetAlignedPointerInInternalField(int index, void* value); | 3144 void SetAlignedPointerInInternalField(int index, void* value); |
| 3130 void SetAlignedPointerInInternalFields(int argc, int indices[], | 3145 void SetAlignedPointerInInternalFields(int argc, int indices[], |
| 3131 void* values[]); | 3146 void* values[]); |
| 3132 | 3147 |
| 3133 // Testers for local properties. | 3148 // Testers for local properties. |
| 3134 V8_DEPRECATED("Use maybe version", bool HasOwnProperty(Local<String> key)); | 3149 V8_DEPRECATED("Use maybe version", bool HasOwnProperty(Local<String> key)); |
| 3150 |
| 3151 /** |
| 3152 * HasOwnProperty() is like JavaScript's Object.prototype.hasOwnProperty(). |
| 3153 * |
| 3154 * See also v8::Object::Has() and v8::Object::HasRealNamedProperty(). |
| 3155 */ |
| 3135 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context, | 3156 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context, |
| 3136 Local<Name> key); | 3157 Local<Name> key); |
| 3137 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context, | 3158 V8_WARN_UNUSED_RESULT Maybe<bool> HasOwnProperty(Local<Context> context, |
| 3138 uint32_t index); | 3159 uint32_t index); |
| 3139 V8_DEPRECATE_SOON("Use maybe version", | 3160 V8_DEPRECATE_SOON("Use maybe version", |
| 3140 bool HasRealNamedProperty(Local<String> key)); | 3161 bool HasRealNamedProperty(Local<String> key)); |
| 3162 /** |
| 3163 * Use HasRealNamedProperty() if you want to check if an object has an own |
| 3164 * property without causing side effects, i.e., without calling interceptors. |
| 3165 * |
| 3166 * This function is similar to v8::Object::HasOwnProperty(), but it does not |
| 3167 * call interceptors. |
| 3168 * |
| 3169 * \note Consider using non-masking interceptors, i.e., the interceptors are |
| 3170 * not called if the receiver has the real named property. See |
| 3171 * `v8::PropertyHandlerFlags::kNonMasking`. |
| 3172 * |
| 3173 * See also v8::Object::Has(). |
| 3174 */ |
| 3141 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedProperty(Local<Context> context, | 3175 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedProperty(Local<Context> context, |
| 3142 Local<Name> key); | 3176 Local<Name> key); |
| 3143 V8_DEPRECATE_SOON("Use maybe version", | 3177 V8_DEPRECATE_SOON("Use maybe version", |
| 3144 bool HasRealIndexedProperty(uint32_t index)); | 3178 bool HasRealIndexedProperty(uint32_t index)); |
| 3145 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealIndexedProperty( | 3179 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealIndexedProperty( |
| 3146 Local<Context> context, uint32_t index); | 3180 Local<Context> context, uint32_t index); |
| 3147 V8_DEPRECATE_SOON("Use maybe version", | 3181 V8_DEPRECATE_SOON("Use maybe version", |
| 3148 bool HasRealNamedCallbackProperty(Local<String> key)); | 3182 bool HasRealNamedCallbackProperty(Local<String> key)); |
| 3149 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedCallbackProperty( | 3183 V8_WARN_UNUSED_RESULT Maybe<bool> HasRealNamedCallbackProperty( |
| 3150 Local<Context> context, Local<Name> key); | 3184 Local<Context> context, Local<Name> key); |
| (...skipping 1968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5119 * template. | 5153 * template. |
| 5120 */ | 5154 */ |
| 5121 bool HasInstance(Local<Value> object); | 5155 bool HasInstance(Local<Value> object); |
| 5122 | 5156 |
| 5123 private: | 5157 private: |
| 5124 FunctionTemplate(); | 5158 FunctionTemplate(); |
| 5125 friend class Context; | 5159 friend class Context; |
| 5126 friend class ObjectTemplate; | 5160 friend class ObjectTemplate; |
| 5127 }; | 5161 }; |
| 5128 | 5162 |
| 5163 /** |
| 5164 * Configuration flags for v8::NamedPropertyHandlerConfiguration or |
| 5165 * v8::IndexedPropertyHandlerConfiguration. |
| 5166 */ |
| 5129 enum class PropertyHandlerFlags { | 5167 enum class PropertyHandlerFlags { |
| 5168 /** |
| 5169 * None. |
| 5170 */ |
| 5130 kNone = 0, | 5171 kNone = 0, |
| 5131 // See ALL_CAN_READ above. | 5172 |
| 5173 /** |
| 5174 * See ALL_CAN_READ above. |
| 5175 */ |
| 5132 kAllCanRead = 1, | 5176 kAllCanRead = 1, |
| 5133 // Will not call into interceptor for properties on the receiver or prototype | 5177 |
| 5134 // chain, i.e., only call into interceptor for properties that do not exist. | 5178 /** Will not call into interceptor for properties on the receiver or prototype |
| 5135 // Currently only valid for named interceptors. | 5179 * chain, i.e., only call into interceptor for properties that do not exist. |
| 5180 * Currently only valid for named interceptors. |
| 5181 */ |
| 5136 kNonMasking = 1 << 1, | 5182 kNonMasking = 1 << 1, |
| 5137 // Will not call into interceptor for symbol lookup. Only meaningful for | 5183 |
| 5138 // named interceptors. | 5184 /** |
| 5185 * Will not call into interceptor for symbol lookup. Only meaningful for |
| 5186 * named interceptors. |
| 5187 */ |
| 5139 kOnlyInterceptStrings = 1 << 2, | 5188 kOnlyInterceptStrings = 1 << 2, |
| 5140 }; | 5189 }; |
| 5141 | 5190 |
| 5142 struct NamedPropertyHandlerConfiguration { | 5191 struct NamedPropertyHandlerConfiguration { |
| 5143 NamedPropertyHandlerConfiguration( | 5192 NamedPropertyHandlerConfiguration( |
| 5144 /** Note: getter is required */ | 5193 /** Note: getter is required */ |
| 5145 GenericNamedPropertyGetterCallback getter = 0, | 5194 GenericNamedPropertyGetterCallback getter = 0, |
| 5146 GenericNamedPropertySetterCallback setter = 0, | 5195 GenericNamedPropertySetterCallback setter = 0, |
| 5147 GenericNamedPropertyQueryCallback query = 0, | 5196 GenericNamedPropertyQueryCallback query = 0, |
| 5148 GenericNamedPropertyDeleterCallback deleter = 0, | 5197 GenericNamedPropertyDeleterCallback deleter = 0, |
| (...skipping 4424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9573 */ | 9622 */ |
| 9574 | 9623 |
| 9575 | 9624 |
| 9576 } // namespace v8 | 9625 } // namespace v8 |
| 9577 | 9626 |
| 9578 | 9627 |
| 9579 #undef TYPE_CHECK | 9628 #undef TYPE_CHECK |
| 9580 | 9629 |
| 9581 | 9630 |
| 9582 #endif // INCLUDE_V8_H_ | 9631 #endif // INCLUDE_V8_H_ |
| OLD | NEW |