OLD | NEW |
1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1575 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1586 String* name, | 1586 String* name, |
1587 bool continue_search); | 1587 bool continue_search); |
1588 | 1588 |
1589 // Returns true if most of the elements backing storage is used. | 1589 // Returns true if most of the elements backing storage is used. |
1590 bool HasDenseElements(); | 1590 bool HasDenseElements(); |
1591 | 1591 |
1592 Object* DefineGetterSetter(String* name, PropertyAttributes attributes); | 1592 Object* DefineGetterSetter(String* name, PropertyAttributes attributes); |
1593 | 1593 |
1594 void LookupInDescriptor(String* name, LookupResult* result); | 1594 void LookupInDescriptor(String* name, LookupResult* result); |
1595 | 1595 |
1596 // Attempts to get property with a named interceptor getter. | 1596 // Attempts to get property with a named interceptor getter. Returns |
1597 // Sets |attributes| to ABSENT if interceptor didn't return anything | 1597 // |true| and stores result into |result| if succesful, otherwise |
1598 Object* GetPropertyWithInterceptorProper(JSObject* receiver, | 1598 // returns |false| |
1599 String* name, | 1599 bool GetPropertyWithInterceptorProper(JSObject* receiver, |
1600 PropertyAttributes* attributes); | 1600 String* name, |
| 1601 PropertyAttributes* attributes, |
| 1602 Object** result); |
1601 | 1603 |
1602 DISALLOW_IMPLICIT_CONSTRUCTORS(JSObject); | 1604 DISALLOW_IMPLICIT_CONSTRUCTORS(JSObject); |
1603 }; | 1605 }; |
1604 | 1606 |
1605 | 1607 |
1606 // Abstract super class arrays. It provides length behavior. | 1608 // Abstract super class arrays. It provides length behavior. |
1607 class Array: public HeapObject { | 1609 class Array: public HeapObject { |
1608 public: | 1610 public: |
1609 // [length]: length of the array. | 1611 // [length]: length of the array. |
1610 inline int length(); | 1612 inline int length(); |
(...skipping 1652 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3263 | 3265 |
3264 DECL_ACCESSORS(data, Object) | 3266 DECL_ACCESSORS(data, Object) |
3265 | 3267 |
3266 inline Type TypeTag(); | 3268 inline Type TypeTag(); |
3267 inline int CaptureCount(); | 3269 inline int CaptureCount(); |
3268 inline Flags GetFlags(); | 3270 inline Flags GetFlags(); |
3269 inline String* Pattern(); | 3271 inline String* Pattern(); |
3270 inline Object* DataAt(int index); | 3272 inline Object* DataAt(int index); |
3271 // Set implementation data after the object has been prepared. | 3273 // Set implementation data after the object has been prepared. |
3272 inline void SetDataAt(int index, Object* value); | 3274 inline void SetDataAt(int index, Object* value); |
| 3275 static int code_index(bool is_ascii) { |
| 3276 return is_ascii ? kIrregexpASCIICodeIndex : kIrregexpUC16CodeIndex; |
| 3277 } |
3273 | 3278 |
3274 static inline JSRegExp* cast(Object* obj); | 3279 static inline JSRegExp* cast(Object* obj); |
3275 | 3280 |
3276 // Dispatched behavior. | 3281 // Dispatched behavior. |
3277 #ifdef DEBUG | 3282 #ifdef DEBUG |
3278 void JSRegExpVerify(); | 3283 void JSRegExpVerify(); |
3279 #endif | 3284 #endif |
3280 | 3285 |
3281 static const int kDataOffset = JSObject::kHeaderSize; | 3286 static const int kDataOffset = JSObject::kHeaderSize; |
3282 static const int kSize = kDataOffset + kPointerSize; | 3287 static const int kSize = kDataOffset + kPointerSize; |
(...skipping 1331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4614 } else { | 4619 } else { |
4615 value &= ~(1 << bit_position); | 4620 value &= ~(1 << bit_position); |
4616 } | 4621 } |
4617 return value; | 4622 return value; |
4618 } | 4623 } |
4619 }; | 4624 }; |
4620 | 4625 |
4621 } } // namespace v8::internal | 4626 } } // namespace v8::internal |
4622 | 4627 |
4623 #endif // V8_OBJECTS_H_ | 4628 #endif // V8_OBJECTS_H_ |
OLD | NEW |