1
2
3
4
5
6
7
8
9
10
11
12
13
pub trait Backend {
    type Error;

    type Config;

    type Module<'m>
    where
        Self: 'm;

    fn init(config: Self::Config) -> Self;

    fn module(&self, name: &str, items: &[py_ir::Item]) -> Result<Self::Module<'_>, Self::Error>;
}