の呟きは 38
gitのグローバル設定てどこに置くんだったっけ・・・?
idpwmemoを簡単にwrapするだけのstructをexport対象にすれば使えるのだろうか・・・?
コンパイルタイム~
まぁ依存関係は
たいていは初回のみコンパイルってな感じなはず・・・新たなインストールが・・・
お、ビルドできた・・・?
おおお
- (UPD ) #
えっと、デフォのalertしかないgreet()関数しか出力されてないようだが・・・
ちょろっとやってみた感じ
idpwmemo_rsをwasmにする価値は皆無ぽそう
- (UPD ) #
作ったrustライブラリがwasmに組み込めるかは
cargo build --target wasm32-unknown-unknownすればいい、みたいなこと書いてあるな
エラーが無ければ使えるとかどうとか・・・
https://rustwasm.github.io/book/reference/add-wasm-support-to-crate.html#maybe-your-crate-already-supports-webassembly(omitted)
(omitted)
(omitted)
(omitted)
これ、要するにJS側に一切表出させないならOKだよって感じのOKだよな…
JS側から呼び出す関数内部でのみ、ライブラリ使える、という感じ
つまり完全にwasm内でしか使わない感じ- (UPD ) #
idpwmemo_rsをwasmで呼び出そうとして悪戦苦闘した結果として
idpwmemoの目的にwasmは全く向かない設計的にIDPWMemoのデータを直接操作する感じになっており・・・
wasm側からJS側へ表出させることが出来ない構造してるから
IDPWMemoが全く使えないという、役立たず操作するためのメソッドを作れば
まぁデータは操作できなくもなさそうぽいけど
他のIDPWMemoとはかなり違った使い方になる・・・
- (UPD ) #
おお、idpwmemo_rsがwasmで動いた
ところでこのinit()とやら
自動的に実行とかやってくれないんすかね・・・チュートリアルのやり方だと
どうもinit()を呼び出してくれてなさそうで
関数が見つからないエラーが出たんだよね・・・
まぁそもそもチュートリアルがnpm前提で書かれてるからかもしれんが・・・- (UPD ) #
このinitはJSモジュールにおけるデフォルトエクスポートという形式でエクスポートされているらしいが
まぁよくわからん・・・
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/exportデフォルトエクスポートはJSモジュールごとに1個持てるらしい
他のエクスポートのクラスや関数や変数とは異なるようで- (UPD ) #
idpwmemo_wasm.jsでは
wasmコードを読み込む処理のinit関数がデフォルトエクスポートとして定義されており・・・ところでwasm-pack newだとアンダースコアがハイフンに変換された記憶があるんだが
何で生成物はアンダースコアになってんの・・・