(input: ParseStream)
| 1081 | } |
| 1082 | |
| 1083 | fn parse_literal_array(input: ParseStream) -> Result { |
| 1084 | use mz_expr::func::variadic::ArrayCreate; |
| 1085 | |
| 1086 | let elem_type = SqlScalarType::Int64; // FIXME |
| 1087 | let func = VariadicFunc::ArrayCreate(ArrayCreate { elem_type }); |
| 1088 | let exprs = input.parse_comma_sep(parse_literal_ok)?; |
| 1089 | |
| 1090 | // Evaluate into a datum |
| 1091 | let temp_storage = RowArena::default(); |
| 1092 | let datum = func.eval(&[], &temp_storage, &exprs).expect("datum"); |
| 1093 | let typ = ReprScalarType::from(&SqlScalarType::Array(Box::new(SqlScalarType::Int64))); // FIXME |
| 1094 | Ok(MirScalarExpr::literal_ok(datum, typ)) |
| 1095 | } |
| 1096 | fn parse_literal_list(input: ParseStream) -> Result { |
| 1097 | use mz_expr::func::variadic::ListCreate; |
| 1098 |
no test coverage detected