【Rust】テストコード用のマクロ

macro_rules! test_eq { ($func_name:ident, $arg:expr => $ans:expr) => { #[test] fn $func_name() { assert_eq!($arg, $ans); } } } macro_rules! test_ne { ($func_name:ident, $arg:expr => $ans:expr) => { #[test] fn $func_name() { assert_ne!($arg…

Rustの定数の定義方法

構造体や関数の外でグローバルに宣言できる。 const CONST_NUM: i32 = 10; fn main() {} ドキュメント: https://doc.rust-jp.rs/rust-by-example-ja/custom_types/constants.html

dev-dependenciesの意味

概要 サンプルプロジェクトを見ていて、Cargo.tomlに [dev-dependencies] なる項目を発見し、初めて見たので調べてみました。 dev-dependenciesとは テストコードやexamplesでしか使わないcrateを導入するために用いる様です。 例) test-caseを導入する場合 …

dev-dependenciesの意味

概要 サンプルプロジェクトを見ていて、Cargo.tomlに [dev-dependencies] なる項目を発見し、初めて見たので調べてみました。 dev-dependenciesとは テストコードやexamplesでしか使わないcrateを導入するために用いる様です。 例) test-caseを導入する場合 …

ggezことはじめ

Cargo.tomlの[dependencies]に [dependencies] ggez = "0.6.0-rc1" と入力。 公式のリポジトリのREADMEには"0.6"と書かれているが、これだと stdout : Updating crates.io index error: failed to select a version for the requirement `ggez = "^0.6"` can…

crateを追加する時の手順

crates.io crates.ioで使いたいcrateを探す。 Cargo.toml Cargo.tomlを編集し、 [dependencies] sdl2 = "0.33.0" のように追記する。