MCPcopy Create free account
hub / github.com/microsoft/typescript-go / parseAssertsTypePredicate

Method parseAssertsTypePredicate

internal/parser/parser.go:3675–3689  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

3673}
3674
3675func (p *Parser) parseAssertsTypePredicate() *ast.TypeNode {
3676 pos := p.nodePos()
3677 assertsModifier := p.parseExpectedToken(ast.KindAssertsKeyword)
3678 var parameterName *ast.Node
3679 if p.token == ast.KindThisKeyword {
3680 parameterName = p.parseThisTypeNode()
3681 } else {
3682 parameterName = p.parseIdentifier()
3683 }
3684 var typeNode *ast.TypeNode
3685 if p.parseOptional(ast.KindIsKeyword) {
3686 typeNode = p.parseType()
3687 }
3688 return p.finishNode(p.factory.NewTypePredicateNode(assertsModifier, parameterName, typeNode), pos)
3689}
3690
3691func (p *Parser) parseTemplateType() *ast.Node {
3692 pos := p.nodePos()

Callers 1

parseNonArrayTypeMethod · 0.95

Calls 8

nodePosMethod · 0.95
parseExpectedTokenMethod · 0.95
parseThisTypeNodeMethod · 0.95
parseIdentifierMethod · 0.95
parseOptionalMethod · 0.95
parseTypeMethod · 0.95
finishNodeMethod · 0.95
NewTypePredicateNodeMethod · 0.80

Tested by

no test coverage detected