DescriptionX87: [es6] Introduce spec compliant IsConstructor.
port 8fe3ac07014ce5891be0a1cbd8019e9f3b02ff0b (30902).
original commit message:
There was already a bit on the Map named "function with prototype",
which basically meant that the Map was a map for a JSFunction that could
be used as a constructor. Now this CL generalizes that bit to
IsConstructor, which says that whatever (Heap)Object you are looking at
can be used as a constructor (i.e. the bit is also set for bound
functions that can be used as constructors and proxies that have a
[[Construct]] internal method).
This way we have a single chokepoint for IsConstructor checking, which
allows us to get rid of the various ways in which we tried to guess
whether something could be used as a constructor or not.
Drive-by-fix: Renamed IsConstructor on FunctionKind to
IsClassConstructor to resolve the weird name clash, and the
IsClassConstructor name also matches the spec.
BUG=
Committed: https://crrev.com/11fd60f5a9b5925843fe2160025f1fd8b68cf9c8
Cr-Commit-Position: refs/heads/master@{#30908}
Patch Set 1 #
Messages
Total messages: 7 (2 generated)
|