pub fn construct(lexer: TypeLexer<'_>) -> Result<Type<'_>, ParseError>
Constructs a type AST from a lexer.
Returns a ParseError if the type syntax is invalid.
ParseError