allow-nlt-before-with.js |
---
description: >
`with` AttributesKeyword in WithClause in ImportDeclaration can
be preceded by a line terminator
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword { WithEntries ,opt }
AttributesKeyword:
with
[no LineTerminator here] assert
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module, raw]
--- |
794 |
browser.js |
|
0 |
early-dup-attribute-key-export.js |
---
description: WithClause may not have duplicate keys (export declaration)
esid: sec-modules
info: |
WithClause: AttributesKeyword { WithEntries,opt }
- It is a Syntax Error if WithClauseToAttributes of WithClause has two
entries a and b such that a.[[Key]] is b.[[Key]].
features: [import-attributes]
flags: [module]
negative:
phase: parse
type: SyntaxError
--- |
764 |
early-dup-attribute-key-import-nobinding.js |
---
description: >
WithClause may not have duplicate keys (import declaration without binding)
esid: sec-modules
info: |
WithClause: AttributesKeyword { WithEntries,opt }
- It is a Syntax Error if WithClauseToAttributes of WithClause has two
entries a and b such that a.[[Key]] is b.[[Key]].
features: [import-attributes]
flags: [module]
negative:
phase: parse
type: SyntaxError
--- |
777 |
early-dup-attribute-key-import-withbinding.js |
---
description: >
WithClause may not have duplicate keys (import declaration with binding)
esid: sec-modules
info: |
WithClause: AttributesKeyword { WithEntries,opt }
- It is a Syntax Error if WithClauseToAttributes of WithClause has two
entries a and b such that a.[[Key]] is b.[[Key]].
features: [import-attributes]
flags: [module]
negative:
phase: parse
type: SyntaxError
--- |
781 |
import-attribute-1_FIXTURE.js |
|
197 |
import-attribute-2_FIXTURE.js |
|
197 |
import-attribute-3_FIXTURE.js |
|
197 |
import-attribute-empty.js |
---
description: WithClause in ImportDeclaration may be empty
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
features: [import-attributes, globalThis]
flags: [module]
--- |
937 |
import-attribute-key-identifiername.js |
---
description: >
WithClause in ImportDeclaration may use any valid IdentifierName as a key
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes]
flags: [module]
--- |
1096 |
import-attribute-key-string-double.js |
---
description: >
WithClause in ImportDeclaration may use a string literal as a key (delimited with U+0022)
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1161 |
import-attribute-key-string-single.js |
---
description: >
WithClause in ImportDeclaration may use a string literal as a key (delimited with U+0027)
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1161 |
import-attribute-many.js |
---
description: >
WithClause in ImportDeclaration may contain multiple WithEntries
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1208 |
import-attribute-newlines.js |
---
description: >
WithClause in ImportDeclaration may include line terminators
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
This test uses all four LineFeed characters in order to completely verify the
grammar.
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1362 |
import-attribute-trlng-comma.js |
---
description: >
WithClause in ImportDeclaration may contain a trailing comma
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1084 |
import-attribute-value-string-double.js |
---
description: >
WithClause in ImportDeclaration may use a string literal as a value (delimited with U+0022)
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
negative:
phase: resolution
type: SyntaxError
features: [import-attributes, globalThis]
flags: [module]
--- |
1128 |
import-attribute-value-string-single.js |
---
description: >
WithClause in ImportDeclaration may use a string literal as a value (delimited with U+0027)
esid: sec-modules
info: |
ImportDeclaration:
import ModuleSpecifier[no LineTerminator here] WithClause;
WithClause:
AttributesKeyword {}
AttributesKeyword {WithEntries ,opt}
WithEntries:
AttributeKey : StringLiteral
AttributeKey : StringLiteral , WithEntries
AttributeKey:
IdentifierName
StringLiteral
features: [import-attributes, globalThis]
negative:
phase: resolution
type: SyntaxError
flags: [module]
--- |
1128 |
shell.js |
|
0 |