2020-01-01から1年間の記事一覧
surf surf-1.x 系では↓のように Cargo.toml にバージョン番号または所在だけ書けば wasm 向けにもそのまま使えました。べんり。 # surf-1.x [dependencies] surf = "1.0.3" surf-2.x 系から↓のように Cargo.toml に default-features と features を明示的に…
package.json -> licenses.json おまけ: Cargo.toml -> licenses.json package.json -> licenses.json package.json と npm|yarn を使っているプロジェクトでお世話になっている依存ライブラリーのライセンス表示を自動生成したい時、とりあえず yarn で yar…
問題 // ↓これは問題ありません trait Trait { fn function() -> Self; } // ↓これは E0277: the size for values of type `Self` cannot be known at compilation time trait TraitOptional { fn function() -> Option<Self>; } // -> Result<Self, E> とかする場合も同様</self,></self>…
Repos: https://github.com/usagi/rust-memory-container-cs 作ったので GitHub ↑ しつつ、なんとなくすごい久しぶりに Qiita に初心者さんに優しそうな雰囲気を装った解説↓ https://qiita.com/usagi/items/fc329895cebd3466910e も書いてみました。ちなみに…
dimension_shift_buffer https://crates.io/crates/dimension_shiftable_buffer https://github.com/usagi/dimension_shiftable_buffer https://docs.rs/dimension_shiftable_buffer/1.0.0/dimension_shiftable_buffer/ vec-dimension-shift https://crates.…
trait T を実装した struct S について、 S から &dyn T へアップキャストした後、 &dyn T から &S へダウンキャストでき…ません。Rustでtrait継承のdynなオブジェクトを扱おうとすると悲しむポイントです。 trait T { fn hello(&self); } struct S {} impl …
publishedhttps://t.co/hJD0s7Leoh: tiahttps://t.co/Rpx0g9zfdpgithub: usagi/tiahttps://t.co/IrrhxsH58Rtia; trait, impl accessors | automaticThis is a syntax sugar proc-macro crate for trait, impl accessors patterns.#Rust #rustlang— Usagi Ito…
主題 Rust の impl な fn の第1引数、つまり: struct S { } impl S { fn f(❤ここ❤) { } } ❤ここ❤ の部分の書き方と、書き方に応じてどのような効果、意図として扱われうるかを整理します。 fn f() fn f(self) fn f(mut self) fn f(&self) fn f(&mut self) す…
default 状態でホイールのスクロール量が体感0.1行くらいでつらすぎる場合にスクロール量を数行単位程度へ改善する設定手順: Menu bar: Edit -> Preferences (CTRL+K) -> Page Display -> Default Layout and Zoom -> Page Layout Single Page Continuous へ…
https://crates.io/crates/roxmltree/ https://github.com/RazrFalcon/roxmltree/ https://docs.rs/roxmltree/0.13.0/roxmltree/ note: このメモは roxmltree-0.13.0 の時代に書きました。 はじめに知っておくとよいこと 与えられた XML ≈ Document を Node …
結果 test benches::amxml_root ... bench: 40,783 ns/iter (+/- 6,365) test benches::amxml_sec ... bench: 28,487 ns/iter (+/- 1,295) test benches::minidom_root ... bench: 1,942 ns/iter (+/- 73) test benches::minidom_sec ... bench: 2,127 ns/it…
XPath 使いたい需要に対応できる XML パーサーを crates.io で探すと有用そうな crate が2つ見つかりました。簡単な XPath で使い勝手を確認したメモです。 amxml sxd-xpath ( + sxd-document ) 1. amxml cargo add amxml #[cfg(test)] mod tests { /// 共通…
↓こんな感じで alias を仕込むと WSL 環境でのみ alias を張れます: if [[ $(grep -i Microsoft /proc/version) ]]; then alias code="/mnt/c/Users/usagi/AppData/Local/Programs/Microsoft\ VS\ Code/bin/code" alias display.blank="/mnt/c/Windows/Syste…
状況 crates.io には執筆時点では複数の XML お取り扱いらしい crate が存在しています: xml-rs 4,013kDL quick-xml 681 kDL xml5ever 183kDL xmlparser 232kDL sxd-document 63kDL strong-xml 0.7kDL trashy-xml 0.7kDL などなど。他にもいくつも登録されて…
症状 WSL2 経由で動作する VSCode の rust-analyzer が一見動作しているように見えて OUTPUT に大量のエラーメッセージ: Assertion failed: We don't expect to receive commands in CodeActions を吐く。発症するとエラーが吐かれる度、作業中やログ監視な…
だいじな事: crate を分割したら、お呼ばれされる側の Cargo.toml で [lib] の crate-type が明示的に rlib を吐かない定義になっていないか確認しよう! 期待動作する例 # crate aaa に依存される側の crate bbb の Cargo.toml # ☆ ↓ src/lib.rs ありの cra…
期待動作する例 ↓は button をポチると hidden で置いてあるファイルアップロード用の input の click を発火するコンポーネント的な例です。 import React, { Component } from "react"; interface IProps { } interface IState { } export default class F…
問題 https://rustwasm.github.io/wasm-bindgen/examples/fetch.html ↑ この example の run に rustwasm/wasm-bindgen のような、実装上GitHub APIで取得可能なポジトリーが実在する場合は問題ありません。 リポジトリーが存在しないパターンを run に与え…
Window をオレオレ派生した interface をでっちあげてキャストすれば window の任意のプロパティーに write access できる。後は野となれ山となれ。 ↓例、React の state 持ちの Component な App のインスタンスを window.app な global 変数として登録: Ap…
諸事情の例 コンポーネントの render 時に CDN やどこかしらから <script src="https://example.com/hogehoge.js" crossorigin></script> とかしたい コンポーネントの render 時に .jsx/.tsx の翻訳時には有効ではない ECMAScript コードをちょろまかしたい 4つの方法 もっとあるというのはさておき。 1. react-script-tag https…
こまったこと: 1. カスタムソースディレクトリー ./src.react を tsc が認識できなかった 諸事情により ./src ではなく ./src.react に react 用のソースを配置していたが、 tsconfig.json の include では "." 文字の入ったディレクトリーは認識しない仕様…
note: 2D 系(eg. phaser, ggez, etc. )は今回のメモでは含めていません。 Lang Library License WebGPU WebGL native ES & wasm ES babylon.js Apache-2.0 Ready 2 %a n/a pure ES ES three.js (+A-Frame) MIT(+MIT) (unknown†1) 1 + (2) n/a pure ES ES pla…
症状 数日ぶり程度に使用した Arch Linux 環境の rust 処理系で cargo が +nightly を受け付けてくれなくなって困った ( -Z したかった ) rustup toolchain では stable, nightly が installed 状態 原因 rust は rustup を per user で導入して使っていた"…
"Hello, WebAssembly" https://developer.mozilla.org/ja/docs/WebAssembly/Rust_to_wasm; MDN / WebAssembly / Rust から WebAssembly にコンパイルする 補足的なメモ 1. npm のアカウントとパッケージの公開は必要? MDNの記事そのものではそこも含めたや…
[OK♀️] Firefox-80.0a1(nightly) + gfx.webrender.all=True + dom.webgpu.enabled=True / Windows 10 [NG♀️] Firefox-78.0.1(stable) + gfx.webrender.all=True + dom.webgpu.enabled=True / Windows 10 [OK♀️] Chrome-86.0.4191.0(canary) + Unsafe WebG…
問題 WSLでCRAしてyarn startするとcmd.exeを実行できずにウェブブラウザーの起動どころかサーバーも起動せず死んでしまいます。 再現方法: WSLで npx create-react-app hoge して cd hoge; yarn start します Starting the development server... events.js…
↑一応、できました。ただし、実用上は UE4.23 以降で HTML5 ターゲットの採用はおすすめしません。…UE5時代にはWebGPU/wasmのポータブルターゲットよゆうでしたの世界が来ると楽しいですね… 理由: エンジンソースレベルからのビルド、Emscriptenによるサード…
electron-pack で扱われてる .asar のナカミをファイル単位でぱぱっと確認できるようにしたくなったとき用のメモです。npx asar l something.asar にパイプしてにゃんにゃんCLIで叩けば手っ取り早いタイプの用途とは別に、GUIのファイルエクスプローラーでに…
状況 Electron アプリを作っています。 yarn/npm で client-side 向けの library X (仮) を追加しています。 X は開発環境では yarn/npm により node_modules/X ディレクトリーに取り込まれています。 Electron アプリの client-side の static なファイル資…
https://github.com/microsoft/winget-cli ; winget https://github.com/microsoft/winget-pkgs ; Community repo https://github.com/microsoft/winget-pkgs/tree/master/manifests ; この辺りを眺めると winget を入れなくても対応パッケージが視えます wi…