or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Rust勉強会 第14回
14章
2020/10/23 岡本拓海
本日のメニュー
プレゼン20分くらい+議論10分位で18:30前後終了を目指します。
リリースプロファイルでビルドをカスタマイズする
Rustのビルドプロファイル
cargo build
で生成されるcargo build --release
で生成ビルドのカスタマイズ
Cargo.tomlファイルで最適化設定をカスタマイズできます。
crates.ioでライブラリを公開する(準備)
ドキュメンテーションコメント
///
でドキュメンテーションコメントです(javadocとかdoxygenとかで見たことありますよね)
以下を記述して
cargo doc --open
でクレートのドキュメント用のHTMLを自動で生成してくれますよく使われるセクション
便利!ドキュメンテーションテスト
'''cargo test'''を走らせた時ドキュメンテーションコメントにコードが含まれていると、そのコードも自動でテストしてくれます。
lib.rs等のファイルにコメントをつける
//!
を使いましょう。モジュールの内部で使用して、クレートやモジュール全体にドキュメントをつけます。
pub useで便利な公開APIをエクスポートする
これを
pub useで便利な公開APIをエクスポートする
こうじゃ
pub useで便利な公開APIをエクスポートする
するとこうなる
crates.ioでライブラリを公開する
crates.ioに作ったライブラリを公開しましょう!!
Crates.ioのアカウントをセットアップする
クレートにメタデータを追加する
以下のように最低限のメタデータを追加します
Crates.ioに公開する
以下のコマンドでcrates.ioに自分のクレートを公開できます!!
https://crates.io/dashboard を見ると自分の公開したクレートが表示されているはずです。
既存のクレートの新バージョンを公開する
cargo yankでCrates.ioからバージョンを削除する
取り下げは、コードの削除は一切しません
例えば、誤ってテストコードにアップロードされた秘密鍵を削除することはできません。もしやってしまったら秘密鍵を再作成しなければなりません。
ワークスペースで巨大なプロジェクトを体系化する
複数のクレートを含むディレクトリに,Cargo.tomlファイルを作成し、以下のような記述をすると、ディレクトリ下のクレート複数をまとめて
cargo build
でビルドできるようになります。ワークスペース外部のクレートに依存する
通常の外部のクレートを使用するのと同様に記述すれば、ワークスペースで使用するバージョンが一致するように依存関係を解決してくれます。
ワークスペース中の特定のクレートのテストを実行する
crates.ioからバイナリをインストールする
cargo installコマンドにより、バイナリクレートをローカルにインストールし、使用することができます。
独自のコマンドを使用してCargoを拡張する
参考資料
https://doc.rust-jp.rs/book-ja/ch14-00-more-about-cargo.html
ご清聴ありがとうございました