[estree] add Directive to Program (#40996)

This commit is contained in:
Thomas Chetwin
2019-12-23 14:11:57 -06:00
committed by Andrew Branch
parent 68be545f66
commit 464ff4d363
2 changed files with 13 additions and 1 deletions
+6
View File
@@ -7,6 +7,7 @@ declare var statement: ESTree.Statement;
declare var emptyStatement: ESTree.EmptyStatement;
declare var blockStatement: ESTree.BlockStatement;
declare var expressionStatement: ESTree.ExpressionStatement;
declare var directive: ESTree.Directive;
declare var ifStatement: ESTree.IfStatement;
declare var labeledStatement: ESTree.LabeledStatement;
declare var breakStatement: ESTree.BreakStatement;
@@ -120,6 +121,11 @@ statement = blockStatement.body[0];
var expressionStatement: ESTree.ExpressionStatement;
expression = expressionStatement.expression;
// Directive
literal = directive.expression;
// $ExpectType string
directive.directive;
// IfStatement
var ifStatement: ESTree.IfStatement;
expression = ifStatement.test;
+7 -1
View File
@@ -62,10 +62,16 @@ export interface Position {
export interface Program extends BaseNode {
type: "Program";
sourceType: "script" | "module";
body: Array<Statement | ModuleDeclaration>;
body: Array<Directive | Statement | ModuleDeclaration>;
comments?: Array<Comment>;
}
export interface Directive extends BaseNode {
type: "ExpressionStatement";
expression: Literal;
directive: string;
}
interface BaseFunction extends BaseNode {
params: Array<Pattern>;
generator?: boolean;