if e1 == BasicEnum::Option1 {
e1 = BasicEnum::Option2
}
In section "Parameters", you said "All three languages default to pass-by-value if not otherwise specified". For privitive types it's true, but it's not. Classes in Java have reference semantic (copy only address in method). Structs in Rust have move semantic witch is connacted with ownership concept (https://doc.rust-lang.org/stable/book/ownership.html).
In common, many basic things for Rust have very good descriptions in Rust Book (https://doc.rust-lang.org/stable/book/). Please, pay attension on it and be more careful.
There are LLILC project. LLILC is an LLVM based MSIL Compiler. https://github.com/dotnet/llilc . May be it helps in the future be .Net community and Rust(llvm) community collaborate close.
It isn't implementation of trait. It specify default implementation of trait.
It must be:
In section "Enums", you can apply default implementation of equality trait:
and compare
In section "Parameters", you said "All three languages default to pass-by-value if not otherwise specified". For privitive types it's true, but it's not. Classes in Java have reference semantic (copy only address in method). Structs in Rust have move semantic witch is connacted with ownership concept (https://doc.rust-lang.org/stable/book/ownership.html).
In common, many basic things for Rust have very good descriptions in Rust Book (https://doc.rust-lang.org/stable/book/). Please, pay attension on it and be more careful.