ParseType parses a column type.
(sql string)
| 375 | |
| 376 | // ParseType parses a column type. |
| 377 | func ParseType(sql string) (tree.ResolvableTypeReference, error) { |
| 378 | expr, err := ParseExpr(fmt.Sprintf("1::%s", sql)) |
| 379 | if err != nil { |
| 380 | return nil, err |
| 381 | } |
| 382 | |
| 383 | cast, ok := expr.(*tree.CastExpr) |
| 384 | if !ok { |
| 385 | return nil, errors.AssertionFailedf("expected a tree.CastExpr, but found %T", expr) |
| 386 | } |
| 387 | |
| 388 | return cast.Type, nil |
| 389 | } |
| 390 | |
| 391 | var errBitLengthNotPositive = pgerror.WithCandidateCode( |
| 392 | errors.New("length for type bit must be at least 1"), pgcode.InvalidParameterValue) |
no test coverage detected