Files
hakorune/docs/examples/README.md
Moe Charm cc2a820af7 feat(plugin): Fix plugin BoxRef return and Box argument support
- Fixed deadlock in FileBox plugin copyFrom implementation (single lock)
- Added TLV Handle (tag=8) parsing in calls.rs for returned BoxRefs
- Improved plugin loader with config path consistency and detailed logging
- Fixed loader routing for proper Handle type_id/fini_method_id resolution
- Added detailed logging for TLV encoding/decoding in plugin_loader_v2

Test docs/examples/plugin_boxref_return.nyash now works correctly:
- cloneSelf() returns FileBox Handle properly
- copyFrom(Box) accepts plugin Box arguments
- Both FileBox instances close and fini correctly

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 00:41:26 +09:00

688 B

Examples: Plugin BoxRef Return (v2.2)

  • File: plugin_boxref_return.nyash
  • Purpose: Demonstrates a plugin method returning a Box (BoxRef/Handle), and passing Box as an argument.

How to run (after full build):

  • Ensure nyash.toml includes FileBox with methods:
    • copyFrom = { method_id = 7, args = [ { kind = "box", category = "plugin" } ] }
    • cloneSelf = { method_id = 8 }
  • Build the plugin: cd plugins/nyash-filebox-plugin && cargo build --release
  • Run the example: ./target/release/nyash docs/examples/plugin_boxref_return.nyash

Expected behavior:

  • Creates two FileBox instances (f, g), writes to f, copies content to g via copyFrom, then closes both.