OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 <iosfwd> | 8 #include <iosfwd> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 1979 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1990 | 1990 |
1991 static MaybeHandle<Context> GetFunctionRealm(Handle<JSReceiver> receiver); | 1991 static MaybeHandle<Context> GetFunctionRealm(Handle<JSReceiver> receiver); |
1992 | 1992 |
1993 // Get the first non-hidden prototype. | 1993 // Get the first non-hidden prototype. |
1994 static inline MaybeHandle<Object> GetPrototype(Isolate* isolate, | 1994 static inline MaybeHandle<Object> GetPrototype(Isolate* isolate, |
1995 Handle<JSReceiver> receiver); | 1995 Handle<JSReceiver> receiver); |
1996 | 1996 |
1997 MUST_USE_RESULT static Maybe<bool> HasInPrototypeChain( | 1997 MUST_USE_RESULT static Maybe<bool> HasInPrototypeChain( |
1998 Isolate* isolate, Handle<JSReceiver> object, Handle<Object> proto); | 1998 Isolate* isolate, Handle<JSReceiver> object, Handle<Object> proto); |
1999 | 1999 |
2000 // Reads all enumerable own properties of source and adds them to target, | 2000 // Reads all enumerable own properties of source and adds them to |
2001 // using either Set or CreateDataProperty depending on the use_set argument. | 2001 // target, using either Set or CreateDataProperty depending on the |
| 2002 // use_set argument. This only copies values not present in the |
| 2003 // maybe_excluded_properties list. |
2002 MUST_USE_RESULT static Maybe<bool> SetOrCopyDataProperties( | 2004 MUST_USE_RESULT static Maybe<bool> SetOrCopyDataProperties( |
2003 Isolate* isolate, Handle<JSReceiver> target, Handle<Object> source, | 2005 Isolate* isolate, Handle<JSReceiver> target, Handle<Object> source, |
2004 bool use_set); | 2006 const ScopedVector<Handle<Name>>* excluded_properties = nullptr, |
| 2007 bool use_set = true); |
2005 | 2008 |
2006 // Implementation of [[HasProperty]], ECMA-262 5th edition, section 8.12.6. | 2009 // Implementation of [[HasProperty]], ECMA-262 5th edition, section 8.12.6. |
2007 MUST_USE_RESULT static Maybe<bool> HasProperty(LookupIterator* it); | 2010 MUST_USE_RESULT static Maybe<bool> HasProperty(LookupIterator* it); |
2008 MUST_USE_RESULT static inline Maybe<bool> HasProperty( | 2011 MUST_USE_RESULT static inline Maybe<bool> HasProperty( |
2009 Handle<JSReceiver> object, Handle<Name> name); | 2012 Handle<JSReceiver> object, Handle<Name> name); |
2010 MUST_USE_RESULT static inline Maybe<bool> HasElement( | 2013 MUST_USE_RESULT static inline Maybe<bool> HasElement( |
2011 Handle<JSReceiver> object, uint32_t index); | 2014 Handle<JSReceiver> object, uint32_t index); |
2012 | 2015 |
2013 MUST_USE_RESULT static inline Maybe<bool> HasOwnProperty( | 2016 MUST_USE_RESULT static inline Maybe<bool> HasOwnProperty( |
2014 Handle<JSReceiver> object, Handle<Name> name); | 2017 Handle<JSReceiver> object, Handle<Name> name); |
(...skipping 9630 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11645 } | 11648 } |
11646 }; | 11649 }; |
11647 | 11650 |
11648 | 11651 |
11649 } // NOLINT, false-positive due to second-order macros. | 11652 } // NOLINT, false-positive due to second-order macros. |
11650 } // NOLINT, false-positive due to second-order macros. | 11653 } // NOLINT, false-positive due to second-order macros. |
11651 | 11654 |
11652 #include "src/objects/object-macros-undef.h" | 11655 #include "src/objects/object-macros-undef.h" |
11653 | 11656 |
11654 #endif // V8_OBJECTS_H_ | 11657 #endif // V8_OBJECTS_H_ |
OLD | NEW |