タグ

ブックマーク / lealog.hateblo.jp (2)

  • html-rewriter-wasmでHTMLをパースする - console.lealog();

    HTMLファイルをパースして、 特定の文字列を抜き出したり 特定の属性を書き換えたものを書き出したり ってことをやりたい時、今までは`cheerio`を使うことが個人的には多かった。 GitHub - cheeriojs/cheerio: Fast, flexible, and lean implementation of core jQuery designed specifically for the server. 懐かしい`jQuery`的な記法で操作できる・・とはいえ、もはや`jQuery`のことぜんぜん覚えてなくて、生DOMのAPIばっか使っちゃったり。 かといって、`cheerio`が内部で使ってるHTMLのASTパーサーである`parse5`や`htmlparser2`をそのまま使うのは、ローレベルすぎて乗り気じゃなかったり。 というところで、なんか代用できるものはないかな

    html-rewriter-wasmでHTMLをパースする - console.lealog();
    dozo
    dozo 2022/06/28
  • バンドラを使わずにRustをWASMにする - console.lealog();

    調べると初手`wasm-pack`があまりに多くて、諸事情により`webpack`いらないんですけど・・ってなシーンでどうすればいいかわからんかった。 それを2019年末にあれこれトライアンドエラーしてみた結果のメモです。 最小構成で試す とりあえずやってみる。 Rustを書く まずモジュールを作る。 `cargo new --lib wasm`的な感じでプロジェクトを作って書いてく。 #[no_mangle] pub fn add(a: i32, b: i32) -> i32 { a + b } あわせて`Cargo.toml`にこれを書き足す。 [lib] crate-type = ["cdylib"]これをビルドする。 `cargo build --target wasm32-unknown-unknown --release`とかで。 ホストする 適当にサーバーを立てればいい。 `

    バンドラを使わずにRustをWASMにする - console.lealog();
  • 1