| Index: src/transitions.h
|
| diff --git a/src/transitions.h b/src/transitions.h
|
| index 2f2b2f2103cf5f9ccdd1a222939c5c8535128544..220755b59218956799366c516a9532fe07249565 100644
|
| --- a/src/transitions.h
|
| +++ b/src/transitions.h
|
| @@ -87,8 +87,18 @@ class TransitionArray: public FixedArray {
|
| Handle<Map> target,
|
| SimpleTransitionFlag flag);
|
|
|
| - // Search a transition for a given property name.
|
| - inline int Search(Name* name);
|
| + // Search a transition for a given type, property name and attributes.
|
| + int Search(PropertyType type, Name* name, PropertyAttributes attributes);
|
| +
|
| + // Search a non-property transition (like elements kind, observe or frozen
|
| + // transitions).
|
| + inline int SearchSpecial(Symbol* symbol) { return SearchFirst(symbol); }
|
| +
|
| + // Returns true for a non-property transitions like elements kind, observed
|
| + // or frozen transitions.
|
| + inline static bool IsSpecialTransition(Name* name);
|
| +
|
| + inline static PropertyDetails GetTargetDetails(Name* name, Map* target);
|
|
|
| // Allocates a TransitionArray.
|
| static Handle<TransitionArray> Allocate(
|
| @@ -177,6 +187,11 @@ class TransitionArray: public FixedArray {
|
| Handle<Map> target,
|
| SimpleTransitionFlag flag);
|
|
|
| + // Search a first transition for a given property name.
|
| + inline int SearchFirst(Name* name);
|
| + int SearchNext(int transition, PropertyType type, Name* name,
|
| + PropertyAttributes attributes);
|
| +
|
| inline void NoIncrementalWriteBarrierSet(int transition_number,
|
| Name* key,
|
| Map* target);
|
|
|