[binllion] モジュール化する
前回、機能毎に関数で切り出して細分化してみましたがよりRustぽくするためにモジュール化を行います。 モジュールとすることで関連するコードをまとめたり、アクセス範囲を狭めたり、処理内容を隠蔽することができます。 上記がソ…
前回、機能毎に関数で切り出して細分化してみましたがよりRustぽくするためにモジュール化を行います。 モジュールとすることで関連するコードをまとめたり、アクセス範囲を狭めたり、処理内容を隠蔽することができます。 上記がソ…
今までのコードはキーボードからの入力をio::stdin().bytes()で読み込み、処理を行ってきましたがcrosstermでも入力処理を提供しています。 こちらはキーボードだけでなくマウスの入力やウィンドウリサイズ…
エラー処理を行う ここでunwrap()について考えてみましょう。 このコードの中でunwrap()が使われているのは下記の3箇所です。 enable_raw_mode()のドキュメントを見ると、enable_raw_m…
crateの追加 では端末を制御してrawモードにするためにcrateを使うようにしましょう。このような機能を提供するcrateは複数ありますが今回はcrosstermを使用します。 下記のcargo addコマンド1を…
Rustのコードを書いてみる アプリケーションの最初のステップとして、サンプルで作られたmain.rsを書き換えてみましょう。 このコードは単純に標準入力から押されたキーの文字を読み込んで表示します。 まず最初にコメント…
cargoでプロジェクト初期化 ここまでで作業を開始できる状態になっていると思います。早速Rustのプロジェクトを作ってみましょう。 cargo new コマンドあるいはcargo initコマンドでRustを始めます。…
Rustのインストール 開発のためのRustのセットアップから始めたいと思います。 使用するプラットフォームはLinux環境になります。ですが、コードはなるべくどの環境でも動作するようなものにしたいと考えています。が個々…
副題 Build your own binary editor in Rust 前回postで学習機会を作るためにRustで何かアプリケーションを作りたい、と書きましたがネタを探しているとBuild your own t…