Add record literal syntax (#326)

This commit is contained in:
JT
2021-11-11 12:14:00 +13:00
committed by GitHub
parent 586c6d9fa8
commit 568e566adf
9 changed files with 160 additions and 4 deletions

View File

@ -297,6 +297,20 @@ pub fn eval_expression(
span: expr.span,
})
}
Expr::Record(fields) => {
let mut cols = vec![];
let mut vals = vec![];
for (col, val) in fields {
cols.push(eval_expression(engine_state, stack, col)?.as_string()?);
vals.push(eval_expression(engine_state, stack, val)?);
}
Ok(Value::Record {
cols,
vals,
span: expr.span,
})
}
Expr::Table(headers, vals) => {
let mut output_headers = vec![];
for expr in headers {