2025-08-17 22:44:16 +09:00
|
|
|
//! Nyashランタイムモジュール
|
|
|
|
|
//!
|
|
|
|
|
//! プラグインシステムとBox管理の中核
|
|
|
|
|
|
|
|
|
|
pub mod plugin_config;
|
|
|
|
|
pub mod box_registry;
|
2025-08-19 05:16:40 +09:00
|
|
|
pub mod plugin_loader_v2;
|
2025-08-26 19:13:57 +09:00
|
|
|
pub mod plugin_loader_unified;
|
|
|
|
|
pub mod plugin_ffi_common;
|
2025-08-22 05:01:11 +09:00
|
|
|
pub mod leak_tracker;
|
2025-08-19 16:43:13 +09:00
|
|
|
pub mod unified_registry;
|
2025-08-20 18:57:10 +09:00
|
|
|
pub mod nyash_runtime;
|
2025-08-27 17:06:46 +09:00
|
|
|
pub mod gc;
|
|
|
|
|
pub mod scheduler;
|
2025-08-19 05:05:21 +09:00
|
|
|
// pub mod plugin_box; // legacy - 古いPluginBox
|
|
|
|
|
// pub mod plugin_loader; // legacy - Host VTable使用
|
2025-08-27 01:03:55 +09:00
|
|
|
pub mod type_meta;
|
2025-08-17 22:52:17 +09:00
|
|
|
|
|
|
|
|
#[cfg(test)]
|
|
|
|
|
mod tests;
|
2025-08-17 22:44:16 +09:00
|
|
|
|
|
|
|
|
pub use plugin_config::PluginConfig;
|
|
|
|
|
pub use box_registry::{BoxFactoryRegistry, BoxProvider, get_global_registry};
|
2025-08-19 05:16:40 +09:00
|
|
|
pub use plugin_loader_v2::{PluginLoaderV2, get_global_loader_v2, init_global_loader_v2};
|
2025-08-26 19:13:57 +09:00
|
|
|
pub use plugin_loader_unified::{PluginHost, get_global_plugin_host, init_global_plugin_host, PluginLibraryHandle, PluginBoxType, MethodHandle};
|
2025-08-27 00:03:48 +09:00
|
|
|
pub mod cache_versions;
|
2025-08-19 16:43:13 +09:00
|
|
|
pub use unified_registry::{get_global_unified_registry, init_global_unified_registry, register_user_defined_factory};
|
2025-08-20 18:57:10 +09:00
|
|
|
pub use nyash_runtime::{NyashRuntime, NyashRuntimeBuilder};
|
2025-08-27 17:06:46 +09:00
|
|
|
pub use gc::{GcHooks, BarrierKind};
|
|
|
|
|
pub use scheduler::{Scheduler, SingleThreadScheduler};
|
2025-08-19 05:05:21 +09:00
|
|
|
// pub use plugin_box::PluginBox; // legacy
|
2025-08-19 03:48:44 +09:00
|
|
|
// Use unified plugin loader (formerly v2)
|
2025-08-20 18:57:10 +09:00
|
|
|
// pub use plugin_loader::{PluginLoaderV2 as PluginLoader, get_global_loader_v2 as get_global_loader}; // legacy
|