()
| 253 | } |
| 254 | |
| 255 | func (p *Parser) parseTypeMap() (*ast.TypeMap, error) { |
| 256 | keyType, err := p.parseType() |
| 257 | if err != nil { |
| 258 | return nil, err |
| 259 | } |
| 260 | ok, err := p.lexer.match(':') |
| 261 | if err != nil { |
| 262 | return nil, err |
| 263 | } |
| 264 | if !ok { |
| 265 | return nil, p.error("value type missing while parsing map type") |
| 266 | } |
| 267 | valType, err := p.parseType() |
| 268 | if err != nil { |
| 269 | return nil, err |
| 270 | } |
| 271 | return &ast.TypeMap{ |
| 272 | Kind: "TypeMap", |
| 273 | KeyType: keyType, |
| 274 | ValType: valType, |
| 275 | }, nil |
| 276 | } |
| 277 | |
| 278 | func (p *Parser) matchTypeParens() (ast.Type, error) { |
| 279 | l := p.lexer |
no test coverage detected