refactor: 大型プラグインのモジュール分割によるコード品質向上
nyash-json-plugin:
- 796行の単一ファイルから6モジュール構造へ分割
- constants.rs, provider.rs, doc_box.rs, node_box.rs, tlv_helpers.rs, ffi.rsに責任分離
- 最大ファイルサイズを374行に削減(53%削減)
- 共有状態管理をprovider.rsに集約
nyash-net-plugin:
- 1112行の巨大ファイルから17ファイル構造へ分割
- boxesサブディレクトリでBox実装を整理(server, client, request, response, socket系)
- 最大ファイルサイズを290行に削減(74%削減)
- logging, tlv, http_helpers等の共通機能を独立モジュール化
両プラグインともビルド成功確認済み、完全な後方互換性を維持
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 01:57:12 +09:00
|
|
|
//! Constants and type definitions
|
|
|
|
|
|
|
|
|
|
// Result codes
|
|
|
|
|
pub const OK: i32 = 0;
|
|
|
|
|
pub const E_SHORT: i32 = -1;
|
|
|
|
|
pub const E_TYPE: i32 = -2;
|
|
|
|
|
pub const E_METHOD: i32 = -3;
|
|
|
|
|
pub const E_ARGS: i32 = -4;
|
|
|
|
|
pub const E_PLUGIN: i32 = -5;
|
|
|
|
|
pub const E_HANDLE: i32 = -8;
|
|
|
|
|
|
|
|
|
|
// Method IDs - JsonDocBox
|
|
|
|
|
pub const JD_BIRTH: u32 = 0;
|
|
|
|
|
pub const JD_PARSE: u32 = 1;
|
|
|
|
|
pub const JD_ROOT: u32 = 2;
|
|
|
|
|
pub const JD_ERROR: u32 = 3;
|
|
|
|
|
pub const JD_FINI: u32 = u32::MAX;
|
|
|
|
|
|
|
|
|
|
// Method IDs - JsonNodeBox
|
|
|
|
|
pub const JN_BIRTH: u32 = 0;
|
|
|
|
|
pub const JN_KIND: u32 = 1;
|
|
|
|
|
pub const JN_GET: u32 = 2;
|
|
|
|
|
pub const JN_SIZE: u32 = 3;
|
|
|
|
|
pub const JN_AT: u32 = 4;
|
|
|
|
|
pub const JN_STR: u32 = 5;
|
|
|
|
|
pub const JN_INT: u32 = 6;
|
|
|
|
|
pub const JN_BOOL: u32 = 7;
|
|
|
|
|
pub const JN_FINI: u32 = u32::MAX;
|
|
|
|
|
|
|
|
|
|
// Type IDs (for Handle TLV)
|
|
|
|
|
pub const T_JSON_DOC: u32 = 70;
|
2025-09-26 14:34:42 +09:00
|
|
|
pub const T_JSON_NODE: u32 = 71;
|