cleanup API

main
Ziyang Hu 2 years ago
parent 2109c974dc
commit 23f4f20e74

@ -281,12 +281,14 @@ impl Db {
pub fn run_query(&self, payload: &JsonValue) -> Result<JsonValue> { pub fn run_query(&self, payload: &JsonValue) -> Result<JsonValue> {
let mut tx = self.transact()?; let mut tx = self.transact()?;
let (input_program, out_spec, vld) = tx.parse_query(payload)?; let (input_program, out_spec, vld) = tx.parse_query(payload)?;
let normalized_program = input_program.to_normalized_program()?; let program = input_program
let stratified_program = normalized_program.stratify()?; .to_normalized_program()?
let program = stratified_program.magic_sets_rewrite(); .stratify()?
.magic_sets_rewrite();
let result = tx.stratified_magic_evaluate(&program)?; let result = tx.stratified_magic_evaluate(&program)?;
let ret = tx.run_pull_on_query_results(result, out_spec, vld)?; let ret: Vec<_> = tx
let ret: Vec<_> = ret.try_collect()?; .run_pull_on_query_results(result, out_spec, vld)?
.try_collect()?;
Ok(json!(ret)) Ok(json!(ret))
} }
} }

Loading…
Cancel
Save