| Index: src/types.h
|
| diff --git a/src/types.h b/src/types.h
|
| index 8f806245327100a867b9f292527547cc1b0013ca..228b6d0773181ce1a4c5a37ad4943e27419f6be9 100644
|
| --- a/src/types.h
|
| +++ b/src/types.h
|
| @@ -233,6 +233,7 @@ namespace internal {
|
| V(Detectable, kDetectableReceiver | kNumber | kName) \
|
| V(Object, kDetectableObject | kUndetectable) \
|
| V(Receiver, kObject | kProxy) \
|
| + V(ReceiverOrUndefined, kReceiver | kUndefined) \
|
| V(StringOrReceiver, kString | kReceiver) \
|
| V(Unique, kBoolean | kUniqueName | kNull | kUndefined | \
|
| kReceiver) \
|
| @@ -410,6 +411,14 @@ class TypeImpl : public Config::Base {
|
| function->InitParameter(2, param2);
|
| return function;
|
| }
|
| + static TypeHandle Function(TypeHandle result, int arity, TypeHandle* params,
|
| + Region* region) {
|
| + FunctionHandle function = Function(result, Any(region), arity, region);
|
| + for (int i = 0; i < arity; ++i) {
|
| + function->InitParameter(i, params[i]);
|
| + }
|
| + return function;
|
| + }
|
|
|
| static TypeHandle Union(TypeHandle type1, TypeHandle type2, Region* reg);
|
| static TypeHandle Intersect(TypeHandle type1, TypeHandle type2, Region* reg);
|
|
|