jj/lib
Yuya Nishihara 0fcc13a6f4 revset: make resolve() return different type describing evaluation plan
New ResolvedExpression enum ensures that the evaluation engine doesn't have
to know the symbol resolution details. In this commit, I've moved Filter
and NotIn resolution to resolve_visibility(). Implicit All/VisibleHeads
resolution will be migrated later.

It's tempting to combine resolve_symbols() and resolve_visibility() to get
rid of panic!()s, but the resolution might have to be two passes to first
resolve&collect explicit commit ids, and then substitute "all()" with
"(:visible_heads())|commit_id|..". It's also possible to apply some tree
transformation after symbol resolution.
2023-04-10 00:39:58 +09:00
..
benches benches: group unchanged/modified/reversed-line diffs together 2023-03-27 23:38:56 +09:00
gen-protos cargo: bump prost-build from 0.11.7 to 0.11.8 2023-02-28 16:13:14 +00:00
src revset: make resolve() return different type describing evaluation plan 2023-04-10 00:39:58 +09:00
tests revset: make resolve() return different type describing evaluation plan 2023-04-10 00:39:58 +09:00
testutils cargo: bump git2 from 0.16.1 to 0.17.0 2023-04-03 09:24:05 -07:00
build.rs lib: replace protobuf crate with prost 2022-12-22 07:04:35 -08:00
Cargo.toml cargo: bump pest_derive from 2.5.6 to 2.5.7 2023-04-03 09:29:53 -07:00