CAPCOM-TD-OSS/REDox

High-performance, token-based structured data engine for .NET. A core component of REX, the technology behind CAPCOM's next-generation game engine.

解決する問題

RE:Doxは、.NET向けの高性能構造化データエンジンであり、速度、メモリ使用量、編集可能性の間のトレードオフに対処します。JSON、CBOR、MessagePackなどのさまざまなデータ形式を、コンパクトで共有されたトークンベースの中間表現に変換することで、解析、編集、シリアライズの統一された方法を提供します。

仕組み

RE:Doxは、重いオブジェクトツリーを作成する代わりに、入力を固定サイズの64ビットトークン配列に解析します。この構造は、コンパクトなドキュメントモデルとシリアライザの共通レイヤーの両方として機能します。構造が完全にアドレス指定可能であるため、エンジンは自動並列デシリアライズ、順序不同のコンストラクタバインディング、値の遅延デコードなどの高度な操作を実行できます。読み取りと書き込みで異なるパスを使用してパフォーマンスを最適化します。書き込みはデータをバッファに直接ストリーミングし、読み取りはトークンDOMを構築してランダムアクセスと効率的な操作を可能にします。

対象読者

このプロジェクトは、ゲームエンジンや大規模で複雑なデータペイロードを扱うシステムなど、パフォーマンス重視のアプリケーションに取り組む.NET開発者向けに設計されており、標準ライブラリよりも高速なシリアライズ速度と低いメモリ割り当てを必要とします。

ハイライト

  • 高性能: System.Text.Jsonと比較して、大幅に高速なシリアライズとデシリアライズを提供し、メモリ割り当てを削減します。
  • 並列処理: 大きな配列を自動的に検出し、要素を並列にデシリアライズしてCPU使用率を最大化します。
  • 統一API: JSON、CBOR、MessagePack、INIを含む複数の形式にわたって単一のコンバータモデルを使用します。
  • 可変トークンDOM: ドキュメント全体を再構築せずに、構造化データのインプレース編集(挿入、削除、置換)を可能にします。
  • トリビア保存: コメントと空白を保持しながらJSON5の編集をサポートします。
  • 互換性: Newtonsoft.JsonやSystem.Text.Jsonなどの既存のシリアライザ用のレイヤーが含まれています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト