|
@ -27,6 +27,14 @@ struct SetupInner<CORE, Rs, As> { |
|
|
#[derive(Debug)]
|
|
|
#[derive(Debug)]
|
|
|
pub struct Setup<SR, L, B, Rs, As>(Rc<SetupInner<RegularSetupCore<SR, L, B>, Rs, As>>);
|
|
|
pub struct Setup<SR, L, B, Rs, As>(Rc<SetupInner<RegularSetupCore<SR, L, B>, Rs, As>>);
|
|
|
|
|
|
|
|
|
|
|
|
impl<SR, L, B, Rs, As> Setup<SR, L, B, Rs, As> {
|
|
|
|
|
|
pub fn new(symbol_runner: SR) -> Self {
|
|
|
|
|
|
Self(Rc::new(SetupInner {
|
|
|
|
|
|
core: RegularSetupCore::new(symbol_runner),
|
|
|
|
|
|
resources: RefCell::default(),
|
|
|
|
|
|
}))
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
impl<L: 'static, B: 'static, SR: 'static, Rs: Hash + Eq + 'static, As: 'static>
|
|
|
impl<L: 'static, B: 'static, SR: 'static, Rs: Hash + Eq + 'static, As: 'static>
|
|
|
Setup<SR, L, B, Rs, As>
|
|
|
Setup<SR, L, B, Rs, As>
|
|
|
{
|
|
|
{
|
|
@ -111,13 +119,7 @@ impl<SR, LOG> SetupFacade<SR, LOG> { |
|
|
|
|
|
|
|
|
impl<L, B, As, SR, LOG, Rs: Hash + Eq> SetupFacade<SR, LOG, L, B, Rs, As> {
|
|
|
impl<L, B, As, SR, LOG, Rs: Hash + Eq> SetupFacade<SR, LOG, L, B, Rs, As> {
|
|
|
pub fn new_with(symbol_runner: SR, logger: LOG) -> Self {
|
|
|
pub fn new_with(symbol_runner: SR, logger: LOG) -> Self {
|
|
|
Self(
|
|
|
|
|
|
logger,
|
|
|
|
|
|
Setup(Rc::new(SetupInner {
|
|
|
|
|
|
core: RegularSetupCore::new(symbol_runner),
|
|
|
|
|
|
resources: RefCell::default(),
|
|
|
|
|
|
})),
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
Self(logger, Setup::new(symbol_runner))
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|