lc3-traits has grown pretty large; unlike all of our other crates it's hard to describe exactly what it does, concisely. I think it's time to split it up into:
lc3-peripheral-traits: traits/src/peripherals/*, traits/src/memory.rs, traits/src/control/metadata.rs, and traits/src/error.rs
lc3-control: traits/src/control/*.rs
lc3-rpc: traits/src/control/rpc/*.rs
Alternatively we can just leave control where it is and just spin off rpc into it's own crate. This may make more sense.
steps
where
branch: imp/trait-crate-split
open questions
Haven't completely thought this through but I don't think coherence gets in our way here.
what
lc3-traits
has grown pretty large; unlike all of our other crates it's hard to describe exactly what it does, concisely. I think it's time to split it up into:lc3-peripheral-traits
:traits/src/peripherals/*
,traits/src/memory.rs
,traits/src/control/metadata.rs
, andtraits/src/error.rs
lc3-control
:traits/src/control/*.rs
lc3-rpc
:traits/src/control/rpc/*.rs
Alternatively we can just leave
control
where it is and just spin offrpc
into it's own crate. This may make more sense.steps
where
branch:
imp/trait-crate-split
open questions
Haven't completely thought this through but I don't think coherence gets in our way here.