post on option type and pattern matching in Rust