С
Size: a a a
С
С
БП
БП
С
NL
R
EG
EG
std::fs::File
EG
EG
EG
С
EG
struct R;
struct W;
struct RW;
trait RMode { }
impl RMode for R { }
impl RMode for RW { }
trait WMode { }
impl WMode for W { }
impl WMode for RW { }
struct File<Mode>(/* whatever */);
impl<Mode: RMode> Read for File<Mode> { /* ... */ }
impl<Mode: WMode> Write for File<Mode> { /* ... */ }
EG
С
EG
impl Trait for A, B, C { }
)С
EG
EG