このページの内容

Awesome Pest. The Elegant Parser

Pest. The Elegant Parserを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

目次

リソース

プロジェクト

pest を使うプロジェクト例:

  • pest_meta - pest 自身は pest を用いてブートストラップされています。
  • AshPaper - William Hicks が考案した Esopo 言語 AshPaper 用の Rust インタープリター。
  • cicada - Rust で書かれた、昔ながらの bash 風 Unix シェル。
  • elastic-rs - Rust で bool 式を Elasticsearch DSL に変換します。
  • handlebars-rust - Handlebars による Rust テンプレート処理。
  • hexdino - Rust で書かれた vim 風キーバインドを持つ16進エディター。
  • insta - Rust 用のスナップショットテストライブラリー。
  • jql - JSON Query Language CLI ツール。
  • json5-rs - Serde を利用する Rust JSON5 シリアライザーおよびデシリアライザー。
  • mt940 - Rust による MT940 パーサー。
  • py_literal - Python リテラルを解析・整形するための Rust crate。
  • rouler - Rust 向けの使いやすいサイコロロールライブラリー。
  • RuSh - Rust で書かれた、多くの魅力を備えた bash 互換シェルを目指すプロジェクト。
  • rs_pbrt - PBRT 本(第3版)の C++ コードに対応する実装のための Rust crate。
  • stache - Mustache テンプレートコンパイラー。
  • tera - Jinja2/Django に基づく Rust テンプレートエンジン。
  • ZoKrates - Ethereum 上の zkSNARK 向けツールボックス。
  • Vector - 高性能な可観測性データパイプライン。
  • AutoCorrect - CJK(中国語、日本語、韓国語)の間のコピーライティング改善、空白・単語・句読点の修正を支援するリンター・フォーマッター。
  • yaml-peg - Rust で書かれた YAML 用 PEG パーサー。
  • qubit - Rust と WebAssembly に基づく便利な計算機。
  • caith - サイコロローラー crate。
  • Melody - 正規表現へコンパイルされ、より読みやすく保守しやすいことを目指す言語。
  • PTA-Parser - BeancountLedger、その他の PTA 形式向けに Rust で構築されたプレーンテキスト会計パーサー。
  • Keadex Mina - C4-PlantUML によるコーディングと、大規模な C4 モデル図の整理を行うオープンソース・サーバーレス IDE。
  • Liquid Grammar - 利用する crate 向けに、Shopify Liquid(ハッシュタグは not-sponsored または affiliated ではありません)の Pairs および/または Rules を生成します。
  • ws2markdown - WordStar 文書を Markdown ファイルに変換します。
  • TypeQL Rust - Pest で書かれた TypeDB のクエリ言語。
  • Woxi - Wolfram Language のサブセット向けインタープリターおよびコンピューター代数システム。
  • Amble - パーサー(テキストアドベンチャー)ゲーム開発プラットフォーム(プレイヤー入力のパースと世界作成に使う DSL の両方で Pest を使用)。

ツール群

IDE サポート

ボイラープレート削減とテスト

  • pest-ast - pest のパースツリーを抽象構文木へ変換する際のボイラープレート削減に役立ちます。
  • pest_consume - パースツリー走査のボイラープレートに役立つ crate。
  • pest-test - pest 文法向けのテストフレームワーク。
  • pest_ascii_tree - コンソールにツリー形式で Pairs を出力します

CLI デバッガー