DF
Size: a a a
DF
λ
λ
DF
λ
S
В
A|B и ? есть проблема...struct A;
struct B;
let _: Result<(), A | B> = try {
Err(A)?;
Err(B)?;
Ok(())
}A | B был и From<A> и From<B>, что комфликтует в дженерик коде т.к. возможно что A == B. try {
Err(A).map_err(|e| 0(e))?;
Err(B).map_err(::0)?; // is it valid? >_<
Ok(())
}p
A|B и ? есть проблема...struct A;
struct B;
let _: Result<(), A | B> = try {
Err(A)?;
Err(B)?;
Ok(())
}A | B был и From<A> и From<B>, что комфликтует в дженерик коде т.к. возможно что A == B. try {
Err(A).map_err(|e| 0(e))?;
Err(B).map_err(::0)?; // is it valid? >_<
Ok(())
}p
p
В
B
A | B), самое новое что я находил — 2016 год. И всё закрытое.... прям хоть перечитывай всё и заного пиши новый RFC чтобы его отклонили 😒p
В
В
p
A|B и ? есть проблема...struct A;
struct B;
let _: Result<(), A | B> = try {
Err(A)?;
Err(B)?;
Ok(())
}A | B был и From<A> и From<B>, что комфликтует в дженерик коде т.к. возможно что A == B. try {
Err(A).map_err(|e| 0(e))?;
Err(B).map_err(::0)?; // is it valid? >_<
Ok(())
}p
B
В
A | B по сути тот-же pub enum Either<L, R> {
Left(L),
Right(R),
}В
A | B по сути тот-же pub enum Either<L, R> {
Left(L),
Right(R),
}