Skip to content

Commit a876515

Browse files
authored
Restore correct postfix parsing (microsoft#94)
1 parent bb76a58 commit a876515

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

internal/compiler/parser.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2233,11 +2233,18 @@ func (p *Parser) parsePostfixTypeOrHigher() *ast.Node {
22332233
typeNode := p.parseNonArrayType()
22342234
for !p.hasPrecedingLineBreak() {
22352235
switch p.token {
2236+
case ast.KindExclamationToken:
2237+
p.nextToken()
2238+
typeNode = p.factory.NewJSDocNonNullableType(typeNode)
2239+
p.finishNode(typeNode, pos)
22362240
case ast.KindQuestionToken:
22372241
// If next token is start of a type we have a conditional type
22382242
if p.lookAhead(p.nextIsStartOfType) {
22392243
return typeNode
22402244
}
2245+
p.nextToken()
2246+
typeNode = p.factory.NewJSDocNullableType(typeNode)
2247+
p.finishNode(typeNode, pos)
22412248
case ast.KindOpenBracketToken:
22422249
p.parseExpected(ast.KindOpenBracketToken)
22432250
if p.isStartOfType(false /*isStartOfParameter*/) {

0 commit comments

Comments
 (0)