실험을 위해 ResultTrait를 쓰겠습니다
타입 하나로 다해먹을수 있는 BoxedResult를 준비합니다
이거 하나면 AndThen Then MapErr다 필요없고 우려먹기 가능합니다
그리고 매번 타입을 새로 래핑하는 깜찍한 Map 타입입니다
보기만해도 토가 나올듯 합니다
BoxedResult의 벤치코드
타입명이 깔끔합니다
Map 타입입니다 5번 감싼만큼 타입명이 아주 깁니다
vscode가 있으면 축약없이 풀네임을 볼수있습니다
그리고 대망의 벤치
매번 박싱 ㅅㄱ요
black box 쓰셈
그건 뭐하는거임
0ns 나오는거 보니까 최적화되서 루프가 안도는거같음
https://doc.rust-lang.org/1.31.1/test/fn.black_box.html
어디다 걸면되냐
assert_eq!(5, test::black_box(ret.into_result().unwrap())); 처럼 사용하면 될듯
8081ns vs 107ns 나오는듯
enum까지 먹어버릴줄은 몰랐네 역시 네이티브 컴파일러의 세계는 험난해
새로 찍었다 이제 완벽해
모습이 익숙하다싶더니 Fira Code에 Dracula 먹였네
난 항상 dracula에 fira code나 hack씀