OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_ARGUMENTS_H_ | 5 #ifndef V8_API_ARGUMENTS_H_ |
6 #define V8_API_ARGUMENTS_H_ | 6 #define V8_API_ARGUMENTS_H_ |
7 | 7 |
8 #include "src/api.h" | 8 #include "src/api.h" |
9 #include "src/isolate.h" | 9 #include "src/isolate.h" |
10 | 10 |
(...skipping 118 matching lines...) Loading... |
129 inline Handle<Object> Call(IndexedPropertyDefinerCallback f, uint32_t index, | 129 inline Handle<Object> Call(IndexedPropertyDefinerCallback f, uint32_t index, |
130 const v8::PropertyDescriptor& desc); | 130 const v8::PropertyDescriptor& desc); |
131 | 131 |
132 inline void Call(AccessorNameSetterCallback f, Handle<Name> name, | 132 inline void Call(AccessorNameSetterCallback f, Handle<Name> name, |
133 Handle<Object> value); | 133 Handle<Object> value); |
134 | 134 |
135 private: | 135 private: |
136 inline JSObject* holder() { | 136 inline JSObject* holder() { |
137 return JSObject::cast(this->begin()[T::kHolderIndex]); | 137 return JSObject::cast(this->begin()[T::kHolderIndex]); |
138 } | 138 } |
| 139 |
| 140 bool PerformSideEffectCheck(Isolate* isolate, Address function); |
139 }; | 141 }; |
140 | 142 |
141 class FunctionCallbackArguments | 143 class FunctionCallbackArguments |
142 : public CustomArguments<FunctionCallbackInfo<Value> > { | 144 : public CustomArguments<FunctionCallbackInfo<Value> > { |
143 public: | 145 public: |
144 typedef FunctionCallbackInfo<Value> T; | 146 typedef FunctionCallbackInfo<Value> T; |
145 typedef CustomArguments<T> Super; | 147 typedef CustomArguments<T> Super; |
146 static const int kArgsLength = T::kArgsLength; | 148 static const int kArgsLength = T::kArgsLength; |
147 static const int kHolderIndex = T::kHolderIndex; | 149 static const int kHolderIndex = T::kHolderIndex; |
148 static const int kDataIndex = T::kDataIndex; | 150 static const int kDataIndex = T::kDataIndex; |
(...skipping 40 matching lines...) Loading... |
189 | 191 |
190 private: | 192 private: |
191 internal::Object** argv_; | 193 internal::Object** argv_; |
192 int argc_; | 194 int argc_; |
193 }; | 195 }; |
194 | 196 |
195 } // namespace internal | 197 } // namespace internal |
196 } // namespace v8 | 198 } // namespace v8 |
197 | 199 |
198 #endif // V8_API_ARGUMENTS_H_ | 200 #endif // V8_API_ARGUMENTS_H_ |
OLD | NEW |