Starting ES6 classes

This commit is contained in:
Fábio Santos
2015-10-27 00:40:46 +00:00
parent 64e7a00399
commit 5f7cb6939c
4 changed files with 140 additions and 28 deletions

View File

@@ -955,6 +955,14 @@ var AST_ObjectGetter = DEFNODE("ObjectGetter", null, {
$documentation: "An object getter property",
}, AST_ObjectProperty);
var AST_Class = DEFNODE("Class", "name extends", {
$propdoc: {
name: "[AST_SymbolClassName?] optional class name.",
extends: "[AST_Node]? optional parent class",
},
$documentation: "An ES6 class",
}, AST_Object);
var AST_Symbol = DEFNODE("Symbol", "scope name thedef", {
$propdoc: {
name: "[string] name of this symbol",
@@ -999,6 +1007,10 @@ var AST_SymbolLambda = DEFNODE("SymbolLambda", null, {
$documentation: "Symbol naming a function expression",
}, AST_SymbolDeclaration);
var AST_SymbolClassName = DEFNODE("SymbolClassName", null, {
$documentation: "Symbol naming a class's name. Lexically scoped to the class."
}, AST_SymbolDeclaration);
var AST_SymbolCatch = DEFNODE("SymbolCatch", null, {
$documentation: "Symbol naming the exception in catch",
}, AST_SymbolDeclaration);