Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index a19e51065f2f3a17cf908242018989cbe669f963..d6c475040c17949c6c1bd6e0eeab163fb693d580 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -1768,10 +1768,13 @@ class JSObject: public JSReceiver { |
Handle<Object> value, |
PropertyAttributes attributes); |
+ static inline Handle<String> ExpectedTransitionKey(Handle<Map> map); |
+ static inline Handle<Map> ExpectedTransitionTarget(Handle<Map> map); |
+ |
// Try to follow an existing transition to a field with attributes NONE. The |
// return value indicates whether the transition was successful. |
- static inline bool TryTransitionToField(Handle<JSObject> object, |
- Handle<Name> key); |
+ static inline Handle<Map> FindTransitionToField(Handle<Map> map, |
+ Handle<Name> key); |
inline int LastAddedFieldIndex(); |
@@ -1779,6 +1782,8 @@ class JSObject: public JSReceiver { |
// passed map. This also extends the property backing store if necessary. |
static void AddFastPropertyUsingMap(Handle<JSObject> object, Handle<Map> map); |
inline MUST_USE_RESULT MaybeObject* AddFastPropertyUsingMap(Map* map); |
+ static void TransitionToMap(Handle<JSObject> object, Handle<Map> map); |
+ inline MUST_USE_RESULT MaybeObject* TransitionToMap(Map* map); |
// Can cause GC. |
MUST_USE_RESULT MaybeObject* SetLocalPropertyIgnoreAttributes( |
@@ -5242,6 +5247,7 @@ class Map: public HeapObject { |
Descriptor* descriptor, |
int index, |
TransitionFlag flag); |
+ MUST_USE_RESULT MaybeObject* AsElementsKind(ElementsKind kind); |
MUST_USE_RESULT MaybeObject* CopyAsElementsKind(ElementsKind kind, |
TransitionFlag flag); |