openpql_range_parser/checker/
mod.rs1type IdxVec<const N: usize> = SmallVec<[Idx; N]>;
2type RankDiff = i8;
3
4use super::{
5 Array, Card, Card64, Error, From, Idx, Itertools, LazyLock, LocInfo,
6 PhantomData, Rank, Rank16, SmallVec, Suit, Suit4, ast,
7 ast::{
8 List, ListElem, RangeCard, RankVar, Span, SpanElem, SuitVar, Term,
9 TermElem,
10 },
11 ops, parse_expr,
12};
13
14pub type BoardRangeChecker<const SD: bool> = Checker<5, true, SD>;
16pub type RangeChecker<const N: usize, const SD: bool> = Checker<N, false, SD>;
18
19#[allow(clippy::module_inception)]
20mod checker;
21mod constrain;
22mod constrain_rank;
23mod constrain_suit;
24mod expr;
25mod leaf;
26mod perm_indices;
27mod var_condition;
28mod var_condition_rank;
29mod var_condition_suit;
30
31pub use checker::Checker;
32use constrain::Constrain;
33use constrain_rank::ConstrainRank;
34use constrain_suit::ConstrainSuit;
35use expr::Expr;
36use leaf::{Deps, Leaf};
37use perm_indices::range_cond_indices;
38use var_condition::VarCondition;
39use var_condition_rank::VarConditionRank;
40use var_condition_suit::VarConditionSuit;