MCPcopy Index your code
hub / github.com/microsoft/typescript-go / parseEnumDeclaration

Method parseEnumDeclaration

internal/parser/parser.go:2136–2155  ·  view source on GitHub ↗
(pos int, jsdoc jsdocScannerInfo, modifiers *ast.ModifierList)

Source from the content-addressed store, hash-verified

2134}
2135
2136func (p *Parser) parseEnumDeclaration(pos int, jsdoc jsdocScannerInfo, modifiers *ast.ModifierList) *ast.Node {
2137 saveHasAwaitIdentifier := p.statementHasAwaitIdentifier
2138 p.parseExpected(ast.KindEnumKeyword)
2139 name := p.parseIdentifier()
2140 var members *ast.NodeList
2141 if p.parseExpected(ast.KindOpenBraceToken) {
2142 saveContextFlags := p.contextFlags
2143 p.setContextFlags(ast.NodeFlagsYieldContext|ast.NodeFlagsAwaitContext, false)
2144 members = p.parseDelimitedList(PCEnumMembers, (*Parser).parseEnumMember)
2145 p.contextFlags = saveContextFlags
2146 p.parseExpected(ast.KindCloseBraceToken)
2147 } else {
2148 members = p.createMissingList()
2149 }
2150 result := p.finishNode(p.factory.NewEnumDeclaration(modifiers, name, members), pos)
2151 p.withJSDoc(result, jsdoc)
2152 p.checkJSSyntax(result)
2153 p.statementHasAwaitIdentifier = saveHasAwaitIdentifier
2154 return result
2155}
2156
2157func (p *Parser) parseModuleDeclaration(pos int, jsdoc jsdocScannerInfo, modifiers *ast.ModifierList) *ast.Statement {
2158 keyword := ast.KindModuleKeyword

Callers 1

Calls 9

parseExpectedMethod · 0.95
parseIdentifierMethod · 0.95
setContextFlagsMethod · 0.95
parseDelimitedListMethod · 0.95
createMissingListMethod · 0.95
finishNodeMethod · 0.95
withJSDocMethod · 0.95
checkJSSyntaxMethod · 0.95
NewEnumDeclarationMethod · 0.80

Tested by

no test coverage detected