尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Rust のコードを見て「コンパイルが通るか」を考える 10 問クイズです。 基礎 3 問 + 応用 7 問がランダムに出題されます。判定はフロントエンドのみで行い、Cloudflare Workers (静的アセット) で動きます。
すべての問題の正解は、実際の rustc 1.99.1 でコンパイルして検証しています。
npm install
npm run dev # questions.json を生成して wrangler dev を起動
npm run deploy # Cloudflare Workers にデプロイ
npm test # 描画関数の round-trip テスト (rustc 不要)
npm run og # シェア用 OG 画像 (public/og/*.png) を再生成
シェアリンク (/?s=<点数>) の OG メタタグは src/worker.js がスコアに合わせて書き換え、
画像は public/og/<点数>.png を使います。画像はコミット済みで、称号 (public/ranks.js) や
デザインを変えたときだけ npm run og で作り直します (Noto Sans JP と Monaspace Radon のシステムフォントが必要)。
独自ドメインで公開する場合は、wrangler.jsonc の routes のコメントを外してください。
questions/basic/ (基礎) か questions/advanced/ (応用) に .rs ファイルを 1 つ置くだけです。
// ---
// topic: 借用
// answer: error
// edition: 2024
// explain: 解説文。`code` はインラインコードになります。
// キーのない行は前のキーの続き (改行) として扱われます。
// ---
fn main() {
// ここから下が出題されるコード
}
| キー | 必須 | 内容 |
|---|---|---|
answer | ○ | ok (コンパイルが通る) / error (コンパイルエラー) |
explain | ○ | 回答後に表示する解説 |
topic | 画面に表示するタグ (所有権、借用など) | |
edition | 2015 / 2018 / 2021 / 2024 (省略時は 2024) |
追加したら検証します。
rustup toolchain install 1.99.1 --profile minimal # 初回のみ
npm run verify # 全問題をコンパイルして answer と照合
npm run verify -- 036 # id の部分一致で絞り込み
npm run verify は結果と rustc のエラーメッセージを questions/verified.json に保存します。
このファイルはコミットしてください。npm run build はこの保存結果を使うので、rustc がないビルド環境でも動きます。
verified.json は更新されません (終了コード 1)。verified.json には問題ごとに、実行した rustc のバージョンと引数 (rustc +1.99.1 --edition 2024 main.rs) も保存されます。status と compiles の矛盾、エラー問題の output に error 行があるか、成功問題に error 行が混ざっていないかなども検査し、矛盾があれば失敗します。npm run verify -- 036 のように絞り込んだ場合、他の問題の検証結果はそのまま残ります。ただし toolchain が既存の結果と違う場合は混在を防ぐため書き込みません。別のツールチェインで検証する場合は RUST_TOOLCHAIN=1.100.0 npm run verify のように指定します。
全問を同じ toolchain で検証し直す必要があります。
GitHub Actions (.github/workflows/ci.yml) で以下を実行します。
npm test — 描画関数 (public/render.js) の round-trip テストnpm run verify — rustc 1.99.1 で全問をコンパイルquestions/verified.json が最新か (git diff --exit-code)npm run build — public/questions.json の生成