linuxfood は sqlite3のバインディングを作成しました。これには感謝しています。Rust (0.8) を学び始めたばかりで、このコードが何をしているのかを正確に理解しようとしています。
extern mod sqlite;
fn db() {
    let database =
        match sqlite::open("test.db") {
            Ok(db) => db,
            Err(e) => {
                println(fmt!("Error opening test.db: %?", e));
                return;
            }
        };
私は基本的にそれが何をしているのか理解しています。データベース接続を取得しようとしており、エラーのテストも行っています。それがどのように行われているのか正確にはわかりません。
それをよりよく理解するために、ステートメントを除いて書き直したかったのmatchですが、それを行う知識がありません。それは可能ですか?sqlite::open()2 つの変数を返すか、それとも 1 つだけを返すか?
この例は、ステートメントなしでどのように別の方法で記述できmatchますか? それが必要だとか好ましいと言っているわけではありませんが、言語を学ぶのに役立つかもしれません。