liquid_layout/layout/
context.rs1use std::collections::HashMap;
2
3use bumpalo::Bump;
4use z3::ast::{Bool, Real};
5
6pub struct LayoutContext {
7 pub alloc: Bump,
8}
9
10impl LayoutContext {
11 pub fn new() -> Self {
12 LayoutContext { alloc: Bump::new() }
13 }
14}
15
16pub struct Z3BuildContext<'ctx> {
17 pub prop_cache: HashMap<usize, Bool<'ctx>>,
18 pub measure_cache: HashMap<usize, Real<'ctx>>,
19 pub z3_ctx: &'ctx z3::Context,
20}
21
22impl<'ctx> Z3BuildContext<'ctx> {
23 pub fn new(z3_ctx: &'ctx z3::Context) -> Self {
24 Self {
25 prop_cache: HashMap::new(),
26 measure_cache: HashMap::new(),
27 z3_ctx,
28 }
29 }
30}