PropertyDefinitionEvaluation for static MethodDefinition
Allen Wirfs-Brock
allen at wirfs-brock.com
Wed Jul 22 17:06:53 UTC 2015
On Jul 22, 2015, at 9:38 AM, Yusuke SUZUKI wrote:
> Hi forks,
>
> Seeing the ES6 specification, I've found that PropertyDefinitionEvaluation for static MethodDefinition is missing.
>
> For example, In ClassDefinitionEvaluation's step 21.a, we applied IsStatic semantics to ClassElement m, and IsStatic has the definition for static MethodDefinition correctly.
> After that, we applied PropertyDefinitionEvaluation semantics to the same ClassElement m, but there's no definition in PropertyDefinitionEvaluation for static MethodDefinition.
>
> Is that correct?
static method ClassElement is defined via a "chain production" (http://www.ecma-international.org/ecma-262/6.0/#sec-algorithm-conventions ):
ClassElement : static MethodDefinition
so the definition of PropertyDefinitionEvaluation for MethodDefinition is used (http://www.ecma-international.org/ecma-262/6.0/#sec-method-definitions-runtime-semantics-propertydefinitionevaluation )
> And I'd like to make sure that static Method doesn't have the [[Construct]] (functionKind becomes "Method").
Yes.
PropertyDefinitionEvaluation for concise methods calls DefineMethod with only one argument. Taht results in DefineMethod calling FunctionCreate with Method as its kind argument
allen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20150722/f8978d6d/attachment.html>
More information about the es-discuss
mailing list