| 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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
| 6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
| 7 | 7 |
| 8 #include "allocation.h" | 8 #include "allocation.h" |
| 9 #include "assert-scope.h" | 9 #include "assert-scope.h" |
| 10 #include "builtins.h" | 10 #include "builtins.h" |
| (...skipping 7578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7589 inline bool has_instance_prototype(); | 7589 inline bool has_instance_prototype(); |
| 7590 inline Object* prototype(); | 7590 inline Object* prototype(); |
| 7591 inline Object* instance_prototype(); | 7591 inline Object* instance_prototype(); |
| 7592 static void SetPrototype(Handle<JSFunction> function, | 7592 static void SetPrototype(Handle<JSFunction> function, |
| 7593 Handle<Object> value); | 7593 Handle<Object> value); |
| 7594 static void SetInstancePrototype(Handle<JSFunction> function, | 7594 static void SetInstancePrototype(Handle<JSFunction> function, |
| 7595 Handle<Object> value); | 7595 Handle<Object> value); |
| 7596 | 7596 |
| 7597 // After prototype is removed, it will not be created when accessed, and | 7597 // After prototype is removed, it will not be created when accessed, and |
| 7598 // [[Construct]] from this function will not be allowed. | 7598 // [[Construct]] from this function will not be allowed. |
| 7599 void RemovePrototype(); | 7599 bool RemovePrototype(); |
| 7600 inline bool should_have_prototype(); | 7600 inline bool should_have_prototype(); |
| 7601 | 7601 |
| 7602 // Accessor for this function's initial map's [[class]] | 7602 // Accessor for this function's initial map's [[class]] |
| 7603 // property. This is primarily used by ECMA native functions. This | 7603 // property. This is primarily used by ECMA native functions. This |
| 7604 // method sets the class_name field of this function's initial map | 7604 // method sets the class_name field of this function's initial map |
| 7605 // to a given value. It creates an initial map if this function does | 7605 // to a given value. It creates an initial map if this function does |
| 7606 // not have one. Note that this method does not copy the initial map | 7606 // not have one. Note that this method does not copy the initial map |
| 7607 // if it has one already, but simply replaces it with the new value. | 7607 // if it has one already, but simply replaces it with the new value. |
| 7608 // Instances created afterwards will have a map whose [[class]] is | 7608 // Instances created afterwards will have a map whose [[class]] is |
| 7609 // set to 'value', but there is no guarantees on instances created | 7609 // set to 'value', but there is no guarantees on instances created |
| (...skipping 3473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11083 } else { | 11083 } else { |
| 11084 value &= ~(1 << bit_position); | 11084 value &= ~(1 << bit_position); |
| 11085 } | 11085 } |
| 11086 return value; | 11086 return value; |
| 11087 } | 11087 } |
| 11088 }; | 11088 }; |
| 11089 | 11089 |
| 11090 } } // namespace v8::internal | 11090 } } // namespace v8::internal |
| 11091 | 11091 |
| 11092 #endif // V8_OBJECTS_H_ | 11092 #endif // V8_OBJECTS_H_ |
| OLD | NEW |