summaryrefslogtreecommitdiff
path: root/crates/system_action/action_macros/src/lib.rs
AgeCommit message (Collapse)Author
2026-01-12Reorganize crate structure and move documentation files魏曹先生
2025-11-25Improve documentation for system action and config file crates魏曹先生
2025-10-27fixed: Incorrect condition setting for determining whether to send魏曹先生
parameters during `on_proc_begin`
2025-10-27"fix: Fix indentation issues魏曹先生
2025-10-27fix: Make the ActionContext passed to on_proc_begin mutable魏曹先生
2025-10-13Fix Clippy warnings and optimize code魏曹先生
- Fix let_underscore_future warning by properly awaiting async functions - Make accept_import function async to match add_mapping usage - Propagate errors properly with ? operator instead of ignoring them - Replace manual Default implementation with derive attribute - Replace vec! with array literal to avoid useless_vec warning - All tests pass and code is now Clippy clean
2025-10-13feat: implement asynchronous action call system魏曹先生
- Add async callback support with proper argument passing - Implement remote action invocation via TCP connection - Add hello_world_action example demonstrating async communication - Improve ActionPool with type-safe async processing - Update client registry for remote action handling - Enhance ActionContext with better instance management - Support both local and remote action execution modes
2025-10-13feat: Implement JSON-based type-erased action invocation魏曹先生
- Add process_json method to ActionPool for type-agnostic calls using JSON serialization - Extend ActionContext with action_name and action_args fields and setter methods - Update action_gen macro to use process_json instead of typed process method - Implement remote action invocation framework in client_registry and action_service - Add protocol definitions for remote action communication - Enable flexible action execution without explicit type specifications
2025-10-13feat: Add JSON-based action invocation to ActionPool魏曹先生
- Extend action_gen macro to generate JSON serialization logic - Implement generic action processing using JSON text for type-agnostic calls - Add callback mechanism with action name and arguments in ActionPool - Update client and server registries to use new callback system - Improve action system flexibility at the cost of serialization overhead
2025-10-12refactor: Update action macros and error types魏曹先生
- Enhance action_gen macro functionality - Add new error variants for TCP connection
2025-10-06refactor: optimize procedural macros in action_system魏曹先生
- Add register_to_pool and process_at_pool helper methods to generated structs - Improve documentation with usage examples - Enhance macro-generated code structure
2025-10-06Fix macro to properly extract and use parameter names from function signature魏曹先生
- Extract actual parameter names (ctx, upstream) from function signature - Use extracted parameter names in generated process method - Remove workaround that manually assigned context to ctx variable - Ensure generated code matches the original function parameter names exactly
2025-10-06Fix macro expansion type errors in action_system macros魏曹先生
- Update macro-generated code to use correct action_system crate name - Replace vcs_service references with action_system in generated implementations - Ensure Action trait implementations reference the correct module path - Fix ActionContext type references in generated process methods
2025-10-06Rename vcs_service to action_system for better naming clarity魏曹先生
- Create new action_system crate with action framework - Create action_system_macros crate for procedural macros - Update vcs crate dependencies to use action_system - Maintain same functionality with improved naming