2025-09-01 23:44:34 +09:00
|
|
|
|
[env]
|
2025-09-15 18:44:49 +09:00
|
|
|
|
# Put environment defaults used by tools or examples if needed
|
2025-09-22 06:16:20 +09:00
|
|
|
|
# Enable using resolver by default (can be disabled with NYASH_SKIP_TOML_ENV=1)
|
|
|
|
|
|
NYASH_ENABLE_USING = "1"
|
|
|
|
|
|
# Enable dev sugar preexpand for @ local alias (line-head) during parsing
|
|
|
|
|
|
NYASH_DEV_AT_LOCAL = "1"
|
2025-11-13 20:16:20 +09:00
|
|
|
|
# AOT prep/fast-path defaults (dev/quick friendly; override with NYASH_SKIP_TOML_ENV=1)
|
|
|
|
|
|
# Collections hot path rewrite (Array/Map boxcall→externcall)
|
|
|
|
|
|
NYASH_AOT_COLLECTIONS_HOT = "1"
|
|
|
|
|
|
# Integer fast paths and simple loop hoist (safe CFG-invariant opts)
|
|
|
|
|
|
NYASH_LLVM_FAST = "1"
|
|
|
|
|
|
NYASH_MIR_LOOP_HOIST = "1"
|
|
|
|
|
|
# Map key mode heuristic (h/hh chosen automatically by linearity)
|
|
|
|
|
|
NYASH_AOT_MAP_KEY_MODE = "auto"
|
2025-09-01 23:44:34 +09:00
|
|
|
|
|
2025-09-15 18:44:49 +09:00
|
|
|
|
[using]
|
2025-11-06 15:41:52 +09:00
|
|
|
|
paths = ["apps", "lib", ".", "lang/src"]
|
2025-09-01 23:44:34 +09:00
|
|
|
|
|
2025-11-01 02:51:49 +09:00
|
|
|
|
# Workspace module mapping (lang/ tree)
|
|
|
|
|
|
[modules.workspace]
|
|
|
|
|
|
members = [
|
|
|
|
|
|
"lang/src/compiler/hako_module.toml",
|
2025-11-11 22:35:45 +09:00
|
|
|
|
"lang/src/mir/hako_module.toml",
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"lang/src/shared/hako_module.toml",
|
|
|
|
|
|
"lang/src/vm/hako_module.toml",
|
|
|
|
|
|
"lang/src/runtime/meta/hako_module.toml",
|
|
|
|
|
|
"lang/src/runner/hako_module.toml",
|
|
|
|
|
|
"lang/src/llvm_ir/hako_module.toml",
|
|
|
|
|
|
"lang/src/opt/hako_module.toml",
|
|
|
|
|
|
"lang/src/selfhost/hako_module.toml"
|
|
|
|
|
|
]
|
|
|
|
|
|
|
2025-09-25 10:23:14 +09:00
|
|
|
|
# Optional package-style entries (opt-in via using resolver)
|
|
|
|
|
|
[using.json_native]
|
|
|
|
|
|
path = "apps/lib/json_native/"
|
2025-11-06 15:41:52 +09:00
|
|
|
|
main = "parser/parser.hako"
|
2025-09-25 10:23:14 +09:00
|
|
|
|
|
2025-09-25 16:03:29 +09:00
|
|
|
|
# JSON Native – String utilities as a standalone package (single-file)
|
|
|
|
|
|
[using.string_utils]
|
2025-11-06 15:41:52 +09:00
|
|
|
|
path = "apps/lib/json_native/utils/string.hako"
|
2025-09-25 16:03:29 +09:00
|
|
|
|
|
2025-09-25 10:23:14 +09:00
|
|
|
|
[using.aliases]
|
|
|
|
|
|
# Resolve `using json as ...` to json_native when desired
|
|
|
|
|
|
json = "json_native"
|
2025-09-25 16:03:29 +09:00
|
|
|
|
StringUtils = "string_utils"
|
2025-11-01 13:28:56 +09:00
|
|
|
|
StringHelpers = "sh_core"
|
2025-09-27 08:45:25 +09:00
|
|
|
|
JsonNode = "json_node"
|
|
|
|
|
|
|
|
|
|
|
|
[using.json_node]
|
2025-11-06 15:41:52 +09:00
|
|
|
|
path = "apps/lib/json_native/core/node.hako"
|
2025-09-25 10:23:14 +09:00
|
|
|
|
|
2025-11-01 13:28:56 +09:00
|
|
|
|
# JSON stringify (Stage-B compiler dependency)
|
|
|
|
|
|
[using.stringify]
|
|
|
|
|
|
path = "lang/src/shared/json/stringify.hako"
|
|
|
|
|
|
|
|
|
|
|
|
# String helpers (Parser dependency)
|
|
|
|
|
|
[using.sh_core]
|
|
|
|
|
|
path = "lang/src/shared/common/string_helpers.hako"
|
|
|
|
|
|
|
2025-09-15 18:44:49 +09:00
|
|
|
|
[modules]
|
2025-11-13 18:11:25 +09:00
|
|
|
|
# Core shared helpers (needed by parser/compiler in Stage-B)
|
|
|
|
|
|
"sh_core" = "lang/src/shared/common/string_helpers.hako"
|
2025-09-15 18:44:49 +09:00
|
|
|
|
# Map logical namespaces to Nyash source paths (consumed by runner)
|
2025-11-01 19:01:55 +09:00
|
|
|
|
# NOTE (Phase‑20.33): legacy `apps/selfhost/*` modules have been retired.
|
|
|
|
|
|
# If you still rely on `selfhost.*` keys, migrate to the `lang.*`/`hakorune.*`
|
|
|
|
|
|
# equivalents below. This removal is intentional to surface stale references.
|
2025-09-22 07:54:25 +09:00
|
|
|
|
|
2025-11-01 02:51:49 +09:00
|
|
|
|
# Lang compiler (Phase 20.33 migration)
|
|
|
|
|
|
"lang.compiler.parser.box" = "lang/src/compiler/parser/parser_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.scan.parser_string_utils_box" = "lang/src/compiler/parser/scan/parser_string_utils_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.scan.parser_ident_scan_box" = "lang/src/compiler/parser/scan/parser_ident_scan_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.scan.parser_number_scan_box" = "lang/src/compiler/parser/scan/parser_number_scan_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.scan.parser_string_scan_box" = "lang/src/compiler/parser/scan/parser_string_scan_box.hako"
|
2025-11-01 13:28:56 +09:00
|
|
|
|
"lang.compiler.parser.scan.parser_common_utils_box" = "lang/src/compiler/parser/scan/parser_common_utils_box.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"lang.compiler.parser.using.using_collector_box" = "lang/src/compiler/parser/using/using_collector_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.expr.parser_expr_box" = "lang/src/compiler/parser/expr/parser_expr_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.expr.parser_peek_box" = "lang/src/compiler/parser/expr/parser_peek_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.expr.parser_literal_box" = "lang/src/compiler/parser/expr/parser_literal_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.stmt.parser_stmt_box" = "lang/src/compiler/parser/stmt/parser_stmt_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.stmt.parser_control_box" = "lang/src/compiler/parser/stmt/parser_control_box.hako"
|
|
|
|
|
|
"lang.compiler.parser.stmt.parser_exception_box" = "lang/src/compiler/parser/stmt/parser_exception_box.hako"
|
|
|
|
|
|
"lang.compiler.stage1.json_program_box" = "lang/src/compiler/stage1/json_program_box.hako"
|
|
|
|
|
|
"lang.compiler.stage1.emitter_box" = "lang/src/compiler/stage1/emitter_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.flow_entry" = "lang/src/compiler/pipeline_v2/flow_entry.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.pipeline" = "lang/src/compiler/pipeline_v2/pipeline.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"lang.compiler.pipeline_v2.stage1_extract_flow" = "lang/src/compiler/pipeline_v2/stage1_extract_flow.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_return_box" = "lang/src/compiler/pipeline_v2/emit_return_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_binop_box" = "lang/src/compiler/pipeline_v2/emit_binop_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_compare_box" = "lang/src/compiler/pipeline_v2/emit_compare_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.regex_flow" = "lang/src/compiler/pipeline_v2/regex_flow.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_call_box" = "lang/src/compiler/pipeline_v2/emit_call_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_method_box" = "lang/src/compiler/pipeline_v2/emit_method_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_newbox_box" = "lang/src/compiler/pipeline_v2/emit_newbox_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.mir_call_box" = "lang/src/compiler/pipeline_v2/mir_call_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.compare_extract_box" = "lang/src/compiler/pipeline_v2/compare_extract_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.normalizer_box" = "lang/src/compiler/pipeline_v2/normalizer_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.map_helpers_box" = "lang/src/compiler/pipeline_v2/map_helpers_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.call_extract_box" = "lang/src/compiler/pipeline_v2/call_extract_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.method_extract_box" = "lang/src/compiler/pipeline_v2/method_extract_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.new_extract_box" = "lang/src/compiler/pipeline_v2/new_extract_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.using_resolver_box" = "lang/src/compiler/pipeline_v2/using_resolver_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.namespace_box" = "lang/src/compiler/pipeline_v2/namespace_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.signature_verifier_box" = "lang/src/compiler/pipeline_v2/signature_verifier_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.stage1_json_scanner_box" = "lang/src/compiler/pipeline_v2/stage1_json_scanner_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.stage1_name_args_normalizer_box" = "lang/src/compiler/pipeline_v2/stage1_name_args_normalizer_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.alias_preflight_box" = "lang/src/compiler/pipeline_v2/alias_preflight_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.stage1_args_parser_box" = "lang/src/compiler/pipeline_v2/stage1_args_parser_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.pipeline_helpers_box" = "lang/src/compiler/pipeline_v2/pipeline_helpers_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.backend_box" = "lang/src/compiler/pipeline_v2/backend_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.execution_pipeline_box" = "lang/src/compiler/pipeline_v2/execution_pipeline_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.mir_builder_box" = "lang/src/compiler/pipeline_v2/mir_builder_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.name_resolve_box" = "lang/src/compiler/pipeline_v2/name_resolve_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.pipeline_emit_box" = "lang/src/compiler/pipeline_v2/pipeline_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.readonly_map_view" = "lang/src/compiler/pipeline_v2/readonly_map_view.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.stage1_int_args_extract_box" = "lang/src/compiler/pipeline_v2/stage1_int_args_extract_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.terminator_guard_box" = "lang/src/compiler/pipeline_v2/terminator_guard_box.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_mir_flow" = "lang/src/compiler/pipeline_v2/emit_mir_flow.hako"
|
|
|
|
|
|
"lang.compiler.pipeline_v2.emit_mir_flow_map" = "lang/src/compiler/pipeline_v2/emit_mir_flow_map.hako"
|
|
|
|
|
|
"selfhost.shared.json.mir_v1_meta_inject_box" = "lang/src/shared/json/mir_v1_meta_inject_box.hako"
|
|
|
|
|
|
"selfhost.shared.json.json_inst_encode_box" = "lang/src/shared/json/json_inst_encode_box.hako"
|
|
|
|
|
|
"selfhost.shared.common.string_ops" = "lang/src/shared/common/string_ops.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"lang.compiler.pipeline_v2.using_resolver" = "lang/src/compiler/pipeline_v2/using_resolver_box.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"lang.compiler.builder.ssa.localvar" = "lang/src/compiler/builder/ssa/local_ssa.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"lang.compiler.builder.ssa.loop" = "lang/src/compiler/builder/ssa/loopssa.hako"
|
|
|
|
|
|
"lang.compiler.builder.ssa.cond_inserter" = "lang/src/compiler/builder/ssa/cond_inserter.hako"
|
|
|
|
|
|
"lang.compiler.builder.rewrite.special" = "lang/src/compiler/builder/rewrite/special.hako"
|
|
|
|
|
|
"lang.compiler.builder.rewrite.known" = "lang/src/compiler/builder/rewrite/known.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"lang.compiler.pipeline_v2.localvar_ssa_box" = "lang/src/compiler/pipeline_v2/local_ssa_box.hako"
|
2025-11-11 22:35:45 +09:00
|
|
|
|
"lang.compiler.entry.func_scanner" = "lang/src/compiler/entry/func_scanner.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"lang.compiler.entry.compiler" = "lang/src/compiler/entry/compiler.hako"
|
|
|
|
|
|
"lang.compiler.entry.compiler_stageb" = "lang/src/compiler/entry/compiler_stageb.hako"
|
2025-11-11 22:35:45 +09:00
|
|
|
|
"lang.compiler.entry.bundle_resolver" = "lang/src/compiler/entry/bundle_resolver.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"lang.compiler.emit.mir_emitter_box" = "lang/src/compiler/emit/mir_emitter_box.hako"
|
2025-11-01 13:28:56 +09:00
|
|
|
|
"lang.compiler.emit.common.json_emit_box" = "lang/src/compiler/emit/common/json_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.mir_emit_box" = "lang/src/compiler/emit/common/mir_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.call_emit_box" = "lang/src/compiler/emit/common/call_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.newbox_emit_box" = "lang/src/compiler/emit/common/newbox_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.header_emit_box" = "lang/src/compiler/emit/common/header_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.json_emit" = "lang/src/compiler/emit/common/json_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.mir_emit" = "lang/src/compiler/emit/common/mir_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.call_emit" = "lang/src/compiler/emit/common/call_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.newbox_emit" = "lang/src/compiler/emit/common/newbox_emit_box.hako"
|
|
|
|
|
|
"lang.compiler.emit.common.header_emit" = "lang/src/compiler/emit/common/header_emit_box.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
|
2025-11-11 22:35:45 +09:00
|
|
|
|
# MIR modules (Phase 15 compiler infrastructure)
|
|
|
|
|
|
"lang.mir.builder.func_lowering" = "lang/src/mir/builder/func_lowering.hako"
|
|
|
|
|
|
"lang.mir.builder.MirBuilderBox" = "lang/src/mir/builder/MirBuilderBox.hako"
|
|
|
|
|
|
"lang.mir.builder.MirBuilderMinBox" = "lang/src/mir/builder/MirBuilderMinBox.hako"
|
|
|
|
|
|
"lang.mir.builder.pattern_registry" = "lang/src/mir/builder/pattern_registry.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.prog_scan_box" = "lang/src/mir/builder/internal/prog_scan_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.lower_load_store_local_box" = "lang/src/mir/builder/internal/lower_load_store_local_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.lower_typeop_cast_box" = "lang/src/mir/builder/internal/lower_typeop_cast_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.lower_typeop_check_box" = "lang/src/mir/builder/internal/lower_typeop_check_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.lower_loop_simple_box" = "lang/src/mir/builder/internal/lower_loop_simple_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.loop_opts_adapter_box" = "lang/src/mir/builder/internal/loop_opts_adapter_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.builder_config_box" = "lang/src/mir/builder/internal/builder_config_box.hako"
|
|
|
|
|
|
"lang.mir.builder.internal.jsonfrag_normalizer_box" = "lang/src/mir/builder/internal/jsonfrag_normalizer_box.hako"
|
|
|
|
|
|
"lang.mir.min_emitter" = "lang/src/mir/min_emitter.hako"
|
|
|
|
|
|
|
2025-11-01 19:01:55 +09:00
|
|
|
|
# Shared helpers (selfhost shared/vm) — kept under `lang/` tree
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"selfhost.shared.json_adapter" = "lang/src/shared/json_adapter.hako"
|
|
|
|
|
|
"selfhost.shared.common.mini_vm_scan" = "lang/src/shared/common/mini_vm_scan.hako"
|
|
|
|
|
|
"selfhost.shared.common.mini_vm_binop" = "lang/src/shared/common/mini_vm_binop.hako"
|
|
|
|
|
|
"selfhost.shared.common.mini_vm_compare" = "lang/src/shared/common/mini_vm_compare.hako"
|
|
|
|
|
|
"selfhost.shared.common.string_helpers" = "lang/src/shared/common/string_helpers.hako"
|
|
|
|
|
|
"selfhost.shared.common.box_helpers" = "lang/src/shared/common/box_helpers.hako"
|
|
|
|
|
|
"selfhost.shared.json.mir_builder_min" = "lang/src/shared/json/mir_builder_min.hako"
|
|
|
|
|
|
"selfhost.shared.json.mir_v1_adapter" = "lang/src/shared/json/mir_v1_adapter.hako"
|
|
|
|
|
|
"selfhost.shared.json.core.json_cursor" = "lang/src/shared/json/json_cursor.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"selfhost.shared.json.core.string_scan" = "lang/src/shared/json/core/string_scan.hako"
|
|
|
|
|
|
"selfhost.shared.json.core.json_scan" = "lang/src/shared/json/core/json_scan.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"selfhost.shared.json.utils.json_utils" = "lang/src/shared/json/json_utils.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"selfhost.shared.json.stringify" = "lang/src/shared/json/stringify.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"selfhost.shared.mir.schema" = "lang/src/shared/mir/mir_schema_box.hako"
|
2025-11-02 04:13:17 +09:00
|
|
|
|
"selfhost.shared.mir.loopform" = "lang/src/shared/mir/loop_form_box.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
"selfhost.shared.mir.builder" = "lang/src/shared/mir/block_builder_box.hako"
|
|
|
|
|
|
"selfhost.shared.mir.io" = "lang/src/shared/mir/mir_io_box.hako"
|
|
|
|
|
|
"selfhost.shared.mir.json_emit" = "lang/src/shared/mir/json_emit_box.hako"
|
2025-11-13 16:40:58 +09:00
|
|
|
|
"selfhost.llvm.ir.normalize.print" = "lang/src/llvm_ir/boxes/normalize/normalize_print.hako"
|
|
|
|
|
|
"selfhost.llvm.ir.normalize.ref" = "lang/src/llvm_ir/boxes/normalize/normalize_ref.hako"
|
|
|
|
|
|
"selfhost.llvm.ir.normalize.array_legacy" = "lang/src/llvm_ir/boxes/normalize/normalize_array_legacy.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"selfhost.vm.entry" = "lang/src/vm/boxes/mini_vm_entry.hako"
|
|
|
|
|
|
"selfhost.vm.mir_min" = "lang/src/vm/boxes/mir_vm_min.hako"
|
|
|
|
|
|
"selfhost.vm.core" = "lang/src/vm/boxes/mini_vm_core.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.op_handlers" = "lang/src/vm/boxes/op_handlers.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.operator" = "lang/src/vm/boxes/operator_box.hako"
|
2025-11-03 23:21:48 +09:00
|
|
|
|
"selfhost.vm.helpers.mini_mir_v1_scan" = "lang/src/vm/boxes/mini_mir_v1_scan.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.mir_call_v1_handler" = "lang/src/vm/boxes/mir_call_v1_handler.hako"
|
2025-11-04 16:33:04 +09:00
|
|
|
|
"selfhost.vm.helpers.v1_phi_adapter" = "lang/src/vm/boxes/v1_phi_adapter.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.v1_phi_table" = "lang/src/vm/boxes/v1_phi_table.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.v1_schema" = "lang/src/vm/boxes/v1_schema.hako"
|
2025-11-03 23:21:48 +09:00
|
|
|
|
"selfhost.vm.hakorune-vm.json_v1_reader" = "lang/src/vm/hakorune-vm/json_v1_reader.hako"
|
|
|
|
|
|
"selfhost.vm.hv1.reader" = "lang/src/vm/hakorune-vm/json_v1_reader.hako"
|
|
|
|
|
|
"selfhost.vm.hakorune-vm.dispatch" = "lang/src/vm/hakorune-vm/dispatcher_v1.hako"
|
|
|
|
|
|
"selfhost.vm.hv1.dispatch" = "lang/src/vm/hakorune-vm/dispatcher_v1.hako"
|
2025-11-06 16:59:34 +09:00
|
|
|
|
"selfhost.vm.hakorune-vm.str_cast" = "lang/src/vm/hakorune-vm/str_cast.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"selfhost.vm.helpers.compare_ops" = "lang/src/vm/boxes/compare_ops.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.compare_scan" = "lang/src/vm/boxes/compare_scan_box.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.phi_apply" = "lang/src/vm/boxes/phi_apply_box.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.guard" = "lang/src/vm/boxes/guard_box.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.result" = "lang/src/vm/boxes/result_box.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.phi_decode" = "lang/src/vm/boxes/phi_decode_box.hako"
|
2025-11-06 16:59:34 +09:00
|
|
|
|
"selfhost.vm.helpers.method_alias_policy" = "lang/src/vm/helpers/method_alias_policy.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"selfhost.vm.helpers.ret_resolve" = "lang/src/vm/boxes/ret_resolve_simple.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.instruction_scanner" = "lang/src/vm/boxes/instruction_scanner.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.gc_hooks" = "lang/src/vm/gc/gc_hooks.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.arithmetic" = "lang/src/vm/boxes/arithmetic.hako"
|
|
|
|
|
|
"selfhost.vm.helpers.cfg_navigator" = "lang/src/vm/boxes/cfg_navigator.hako"
|
2025-11-03 23:21:48 +09:00
|
|
|
|
"selfhost.vm.helpers.mini_map" = "lang/src/vm/boxes/mini_map_box.hako"
|
2025-11-01 15:23:28 +09:00
|
|
|
|
"hakorune.vm.entry" = "lang/src/vm/boxes/mini_vm_entry.hako"
|
|
|
|
|
|
"hakorune.vm.mir_min" = "lang/src/vm/boxes/mir_vm_min.hako"
|
|
|
|
|
|
"hakorune.vm.core" = "lang/src/vm/boxes/mini_vm_core.hako"
|
2025-11-01 02:51:49 +09:00
|
|
|
|
|
2025-11-02 19:27:29 +09:00
|
|
|
|
# Phase 20.34 — Box‑First selfhost build line (aliases for Hako boxes)
|
|
|
|
|
|
"hako.mir.builder" = "lang/src/mir/builder/MirBuilderBox.hako"
|
2025-11-10 19:42:42 +09:00
|
|
|
|
"hako.mir.builder.min" = "lang/src/mir/builder/MirBuilderMinBox.hako"
|
2025-11-08 23:45:29 +09:00
|
|
|
|
"hako.mir.builder.pattern_registry" = "lang/src/mir/builder/pattern_registry.hako"
|
2025-11-09 15:11:18 +09:00
|
|
|
|
"hako.using.resolve.ssot" = "lang/src/using/resolve_ssot_box.hako"
|
2025-11-02 19:27:29 +09:00
|
|
|
|
"hako.llvm.emit" = "lang/src/llvm_ir/emit/LLVMEmitBox.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"hako.mir.builder.internal.prog_scan" = "lang/src/mir/builder/internal/prog_scan_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.pattern_util" = "lang/src/mir/builder/internal/pattern_util_box.hako"
|
2025-11-04 20:46:43 +09:00
|
|
|
|
"hako.mir.builder.internal.loop_scan" = "lang/src/mir/builder/internal/loop_scan_box.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"hako.mir.builder.internal.lower.logical" = "lang/src/mir/builder/internal/lower_return_logical_box.hako"
|
|
|
|
|
|
|
|
|
|
|
|
# MirBuilder internal lowers (alias for using)
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_then_else_following_return" = "lang/src/mir/builder/internal/lower_if_then_else_following_return_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_nested" = "lang/src/mir/builder/internal/lower_if_nested_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_compare" = "lang/src/mir/builder/internal/lower_if_compare_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_compare_fold_binints" = "lang/src/mir/builder/internal/lower_if_compare_fold_binints_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_compare_fold_varint" = "lang/src/mir/builder/internal/lower_if_compare_fold_varint_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_compare_varint" = "lang/src/mir/builder/internal/lower_if_compare_varint_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_if_compare_varvar" = "lang/src/mir/builder/internal/lower_if_compare_varvar_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_loop_sum_bc" = "lang/src/mir/builder/internal/lower_loop_sum_bc_box.hako"
|
2025-11-10 19:42:42 +09:00
|
|
|
|
"hako.mir.builder.internal.sentinel_extractor" = "lang/src/mir/builder/internal/sentinel_extractor_box.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
"hako.mir.builder.internal.lower_loop_count_param" = "lang/src/mir/builder/internal/lower_loop_count_param_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_loop_simple" = "lang/src/mir/builder/internal/lower_loop_simple_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_var_local" = "lang/src/mir/builder/internal/lower_return_var_local_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_string" = "lang/src/mir/builder/internal/lower_return_string_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_float" = "lang/src/mir/builder/internal/lower_return_float_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_method_array_map" = "lang/src/mir/builder/internal/lower_return_method_array_map_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_bool" = "lang/src/mir/builder/internal/lower_return_bool_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_binop_varint" = "lang/src/mir/builder/internal/lower_return_binop_varint_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_binop_varvar" = "lang/src/mir/builder/internal/lower_return_binop_varvar_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_binop" = "lang/src/mir/builder/internal/lower_return_binop_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_int" = "lang/src/mir/builder/internal/lower_return_int_box.hako"
|
2025-11-10 19:42:42 +09:00
|
|
|
|
"hako.mir.builder.internal.lower_return_method_string_length" = "lang/src/mir/builder/internal/lower_return_method_string_length_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_return_loop_strlen_sum" = "lang/src/mir/builder/internal/lower_return_loop_strlen_sum_box.hako"
|
2025-11-05 18:57:03 +09:00
|
|
|
|
"hako.mir.builder.internal.lower_newbox_constructor" = "lang/src/mir/builder/internal/lower_newbox_constructor_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_method_array_size" = "lang/src/mir/builder/internal/lower_method_array_size_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_method_array_push" = "lang/src/mir/builder/internal/lower_method_array_push_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_method_array_get_set" = "lang/src/mir/builder/internal/lower_method_array_get_set_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_method_map_size" = "lang/src/mir/builder/internal/lower_method_map_size_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_method_map_get_set" = "lang/src/mir/builder/internal/lower_method_map_get_set_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_load_store_local" = "lang/src/mir/builder/internal/lower_load_store_local_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_typeop_check" = "lang/src/mir/builder/internal/lower_typeop_check_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.lower_typeop_cast" = "lang/src/mir/builder/internal/lower_typeop_cast_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.runner_min" = "lang/src/mir/builder/internal/runner_min_box.hako"
|
2025-11-10 23:17:46 +09:00
|
|
|
|
"hako.mir.builder.internal.jsonfrag_normalizer" = "lang/src/mir/builder/internal/jsonfrag_normalizer_box.hako"
|
2025-11-11 09:09:55 +09:00
|
|
|
|
"hako.mir.builder.internal.builder_config" = "lang/src/mir/builder/internal/builder_config_box.hako"
|
|
|
|
|
|
"hako.mir.builder.internal.loop_opts_adapter" = "lang/src/mir/builder/internal/loop_opts_adapter_box.hako"
|
2025-11-03 16:09:19 +09:00
|
|
|
|
|
2025-11-10 19:42:42 +09:00
|
|
|
|
# Stage‑B support modules
|
|
|
|
|
|
"hako.compiler.entry.bundle_resolver" = "lang/src/compiler/entry/bundle_resolver.hako"
|
|
|
|
|
|
"hako.vm.core.dispatcher" = "lang/src/vm/core/dispatcher.hako"
|
|
|
|
|
|
|
2025-11-03 16:09:19 +09:00
|
|
|
|
# Missing alias for JsonFragBox (used widely in lowers)
|
|
|
|
|
|
"selfhost.shared.json.utils.json_frag" = "lang/src/shared/json/utils/json_frag.hako"
|
2025-11-10 23:17:46 +09:00
|
|
|
|
"selfhost.shared.json.utils.json_number_canonical" = "lang/src/shared/json/utils/json_number_canonical_box.hako"
|
2025-11-02 19:27:29 +09:00
|
|
|
|
|
2025-11-01 19:01:55 +09:00
|
|
|
|
# Temporary alias keys removed (Phase‑20.33 TTL reached). Use `selfhost.shared.*` above.
|
2025-09-01 23:44:34 +09:00
|
|
|
|
|
2025-09-17 22:01:29 +09:00
|
|
|
|
# v2 Plugin libraries (loader reads these for TypeBox ABI)
|
|
|
|
|
|
[libraries]
|
|
|
|
|
|
[libraries."libnyash_filebox_plugin.so"]
|
|
|
|
|
|
boxes = ["FileBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-filebox-plugin/libnyash_filebox_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_filebox_plugin.so".FileBox]
|
|
|
|
|
|
type_id = 6
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_filebox_plugin.so".FileBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
open = { method_id = 4 }
|
|
|
|
|
|
read = { method_id = 5 }
|
|
|
|
|
|
write = { method_id = 6 }
|
|
|
|
|
|
close = { method_id = 7 }
|
|
|
|
|
|
exists = { method_id = 8 }
|
|
|
|
|
|
copyFrom = { method_id = 9 }
|
|
|
|
|
|
cloneSelf = { method_id = 10 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_path_plugin.so"]
|
|
|
|
|
|
boxes = ["PathBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-path-plugin/libnyash_path_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_path_plugin.so".PathBox]
|
|
|
|
|
|
type_id = 55
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_path_plugin.so".PathBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
join = { method_id = 4 }
|
|
|
|
|
|
dirname = { method_id = 5 }
|
|
|
|
|
|
basename = { method_id = 6 }
|
|
|
|
|
|
extname = { method_id = 7 }
|
|
|
|
|
|
isAbs = { method_id = 8 }
|
|
|
|
|
|
normalize = { method_id = 9 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_math_plugin.so"]
|
|
|
|
|
|
boxes = ["MathBox", "TimeBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-math-plugin/libnyash_math_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_math_plugin.so".MathBox]
|
|
|
|
|
|
type_id = 50
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_math_plugin.so".MathBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
sqrt = { method_id = 4 }
|
|
|
|
|
|
sin = { method_id = 5 }
|
|
|
|
|
|
cos = { method_id = 6 }
|
|
|
|
|
|
round = { method_id = 7 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_math_plugin.so".TimeBox]
|
|
|
|
|
|
type_id = 51
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_math_plugin.so".TimeBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
now = { method_id = 4 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_regex_plugin.so"]
|
|
|
|
|
|
boxes = ["RegexBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-regex-plugin/libnyash_regex_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_regex_plugin.so".RegexBox]
|
|
|
|
|
|
type_id = 52
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_regex_plugin.so".RegexBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
compile = { method_id = 4 }
|
|
|
|
|
|
isMatch = { method_id = 5 }
|
|
|
|
|
|
find = { method_id = 6 }
|
|
|
|
|
|
replaceAll = { method_id = 7 }
|
|
|
|
|
|
split = { method_id = 8 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so"]
|
|
|
|
|
|
boxes = ["ClientBox", "ResponseBox", "RequestBox", "ServerBox", "SockServerBox", "SockClientBox", "SockConnBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-net-plugin/libnyash_net_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ClientBox]
|
|
|
|
|
|
type_id = 23
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ClientBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
get = { method_id = 4 }
|
|
|
|
|
|
post = { method_id = 5 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ResponseBox]
|
|
|
|
|
|
type_id = 22
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ResponseBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
setStatus = { method_id = 4 }
|
|
|
|
|
|
setHeader = { method_id = 5 }
|
|
|
|
|
|
write = { method_id = 6 }
|
|
|
|
|
|
readBody = { method_id = 7 }
|
|
|
|
|
|
getStatus = { method_id = 8 }
|
|
|
|
|
|
getHeader = { method_id = 9 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".RequestBox]
|
|
|
|
|
|
type_id = 21
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".RequestBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
path = { method_id = 4 }
|
|
|
|
|
|
readBody = { method_id = 5 }
|
|
|
|
|
|
respond = { method_id = 6 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ServerBox]
|
|
|
|
|
|
type_id = 20
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".ServerBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
start = { method_id = 4 }
|
|
|
|
|
|
stop = { method_id = 5 }
|
|
|
|
|
|
accept = { method_id = 6 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockServerBox]
|
|
|
|
|
|
type_id = 30
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockServerBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
start = { method_id = 4 }
|
|
|
|
|
|
stop = { method_id = 5 }
|
|
|
|
|
|
accept = { method_id = 6 }
|
|
|
|
|
|
acceptTimeout = { method_id = 7 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockClientBox]
|
|
|
|
|
|
type_id = 32
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockClientBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
connect = { method_id = 4 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockConnBox]
|
|
|
|
|
|
type_id = 31
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_net_plugin.so".SockConnBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
send = { method_id = 4 }
|
|
|
|
|
|
recv = { method_id = 5 }
|
|
|
|
|
|
close = { method_id = 6 }
|
|
|
|
|
|
recvTimeout = { method_id = 7 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
2025-09-17 22:49:53 +09:00
|
|
|
|
[libraries."libnyash_encoding_plugin.so"]
|
|
|
|
|
|
boxes = ["EncodingBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-encoding-plugin/libnyash_encoding_plugin.so"
|
2025-09-17 22:49:53 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_encoding_plugin.so".EncodingBox]
|
|
|
|
|
|
type_id = 53
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_encoding_plugin.so".EncodingBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
toUtf8Bytes = { method_id = 4 }
|
|
|
|
|
|
fromUtf8Bytes = { method_id = 5 }
|
|
|
|
|
|
base64Encode = { method_id = 6 }
|
|
|
|
|
|
base64Decode = { method_id = 7 }
|
|
|
|
|
|
hexEncode = { method_id = 8 }
|
|
|
|
|
|
hexDecode = { method_id = 9 }
|
2025-09-17 22:49:53 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
2025-09-26 00:27:02 +09:00
|
|
|
|
# Provider Verify — minimal required methods (dev warn by default)
|
|
|
|
|
|
[verify.required_methods]
|
|
|
|
|
|
# Note: Dynamic plugins may not be present in dev; preflight runs in warn mode.
|
|
|
|
|
|
StringBox = ["length", "concat"]
|
|
|
|
|
|
ArrayBox = ["len", "push", "get"]
|
|
|
|
|
|
MapBox = ["has", "get", "set"]
|
|
|
|
|
|
ConsoleBox = ["print"]
|
|
|
|
|
|
|
2025-09-22 06:16:20 +09:00
|
|
|
|
[libraries."libnyash_json_plugin.so"]
|
|
|
|
|
|
boxes = ["JsonDocBox", "JsonNodeBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-json-plugin/libnyash_json_plugin.so"
|
2025-09-22 06:16:20 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_json_plugin.so".JsonDocBox]
|
|
|
|
|
|
type_id = 70
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_json_plugin.so".JsonDocBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
parse = { method_id = 4 }
|
|
|
|
|
|
root = { method_id = 5 }
|
|
|
|
|
|
error = { method_id = 6 }
|
2025-09-22 06:16:20 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_json_plugin.so".JsonNodeBox]
|
|
|
|
|
|
type_id = 71
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_json_plugin.so".JsonNodeBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
kind = { method_id = 4 }
|
|
|
|
|
|
get = { method_id = 5 }
|
|
|
|
|
|
size = { method_id = 6 }
|
|
|
|
|
|
at = { method_id = 7 }
|
|
|
|
|
|
str = { method_id = 8 }
|
|
|
|
|
|
int = { method_id = 9 }
|
|
|
|
|
|
bool = { method_id = 10 }
|
2025-09-22 06:16:20 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
2025-09-17 22:49:53 +09:00
|
|
|
|
[libraries."libnyash_toml_plugin.so"]
|
|
|
|
|
|
boxes = ["TOMLBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-toml-plugin/libnyash_toml_plugin.so"
|
2025-09-17 22:49:53 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_toml_plugin.so".TOMLBox]
|
|
|
|
|
|
type_id = 54
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_toml_plugin.so".TOMLBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
parse = { method_id = 4 }
|
|
|
|
|
|
get = { method_id = 5 }
|
|
|
|
|
|
toJson = { method_id = 6 }
|
2025-09-17 22:49:53 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
2025-09-17 22:01:29 +09:00
|
|
|
|
# Python (v2 TypeBox) plugins
|
|
|
|
|
|
[libraries."libnyash_python_plugin.so"]
|
|
|
|
|
|
boxes = ["PyRuntimeBox", "PyObjectBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-python-plugin/libnyash_python_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_plugin.so".PyRuntimeBox]
|
|
|
|
|
|
type_id = 40
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_plugin.so".PyRuntimeBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
eval = { method_id = 4 }
|
|
|
|
|
|
import = { method_id = 5 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
evalR = { method_id = 11 }
|
|
|
|
|
|
importR = { method_id = 12 }
|
|
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_plugin.so".PyObjectBox]
|
|
|
|
|
|
type_id = 41
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_plugin.so".PyObjectBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
getattr = { method_id = 4 }
|
|
|
|
|
|
call = { method_id = 5 }
|
|
|
|
|
|
str = { method_id = 6 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
callKw = { method_id = 5 }
|
|
|
|
|
|
getattrR = { method_id = 11 }
|
|
|
|
|
|
callR = { method_id = 12 }
|
|
|
|
|
|
callKwR = { method_id = 15 }
|
|
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_parser_plugin.so"]
|
|
|
|
|
|
boxes = ["PythonParserBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-python-parser-plugin/libnyash_python_parser_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_parser_plugin.so".PythonParserBox]
|
|
|
|
|
|
type_id = 60
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_parser_plugin.so".PythonParserBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
parse = { method_id = 4 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_compiler_plugin.so"]
|
|
|
|
|
|
boxes = ["PythonCompilerBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-python-compiler-plugin/libnyash_python_compiler_plugin.so"
|
2025-09-17 22:01:29 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_compiler_plugin.so".PythonCompilerBox]
|
|
|
|
|
|
type_id = 61
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_python_compiler_plugin.so".PythonCompilerBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
compile = { method_id = 4 }
|
2025-09-17 22:01:29 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
2025-09-24 05:57:08 +09:00
|
|
|
|
# StringBox Plugin (Core Box replacement)
|
|
|
|
|
|
[libraries."libnyash_string_plugin.so"]
|
|
|
|
|
|
boxes = ["StringBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-string-plugin/libnyash_string_plugin.so"
|
2025-09-24 05:57:08 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_string_plugin.so".StringBox]
|
|
|
|
|
|
type_id = 10
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_string_plugin.so".StringBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-09-24 14:13:15 +09:00
|
|
|
|
length = { method_id = 1 }
|
|
|
|
|
|
isEmpty = { method_id = 2 }
|
|
|
|
|
|
charCodeAt = { method_id = 3 }
|
|
|
|
|
|
concat = { method_id = 4 }
|
|
|
|
|
|
fromUtf8 = { method_id = 5 }
|
|
|
|
|
|
toUtf8 = { method_id = 6 }
|
|
|
|
|
|
# Note: Below methods are not implemented yet
|
|
|
|
|
|
# substring = { method_id = 8 }
|
|
|
|
|
|
# indexOf = { method_id = 10 }
|
|
|
|
|
|
# lastIndexOf = { method_id = 11 }
|
|
|
|
|
|
# replace = { method_id = 12 }
|
|
|
|
|
|
# split = { method_id = 13 }
|
|
|
|
|
|
# trim = { method_id = 14 }
|
|
|
|
|
|
# toUpper = { method_id = 15 }
|
|
|
|
|
|
# toLower = { method_id = 16 }
|
2025-09-24 05:57:08 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
# IntegerBox Plugin (Core Box replacement)
|
|
|
|
|
|
[libraries."libnyash_integer_plugin.so"]
|
|
|
|
|
|
boxes = ["IntegerBox"]
|
2025-09-24 09:30:42 +09:00
|
|
|
|
path = "plugins/nyash-integer-plugin/libnyash_integer_plugin.so"
|
2025-09-24 05:57:08 +09:00
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_integer_plugin.so".IntegerBox]
|
|
|
|
|
|
type_id = 12
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_integer_plugin.so".IntegerBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
|
|
|
|
|
get = { method_id = 1 }
|
|
|
|
|
|
set = { method_id = 2 }
|
2025-09-25 10:23:14 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
2025-11-05 18:57:03 +09:00
|
|
|
|
|
2025-11-08 15:49:25 +09:00
|
|
|
|
# ArrayBox Plugin (Core Box)
|
|
|
|
|
|
[libraries."libnyash_array_plugin.so"]
|
|
|
|
|
|
boxes = ["ArrayBox"]
|
|
|
|
|
|
path = "target/release/libnyash_array_plugin.so"
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_array_plugin.so".ArrayBox]
|
|
|
|
|
|
type_id = 5
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_array_plugin.so".ArrayBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-11-05 18:57:03 +09:00
|
|
|
|
push = { method_id = 4 }
|
|
|
|
|
|
get = { method_id = 5 }
|
|
|
|
|
|
set = { method_id = 6 }
|
|
|
|
|
|
size = { method_id = 7 }
|
|
|
|
|
|
length = { method_id = 7 }
|
|
|
|
|
|
len = { method_id = 7 }
|
2025-11-08 15:49:25 +09:00
|
|
|
|
fini = { method_id = 4294967295 }
|
2025-11-05 18:57:03 +09:00
|
|
|
|
|
2025-11-08 15:49:25 +09:00
|
|
|
|
# MapBox Plugin (Core Box)
|
|
|
|
|
|
[libraries."libnyash_map_plugin.so"]
|
|
|
|
|
|
boxes = ["MapBox"]
|
|
|
|
|
|
path = "target/release/libnyash_map_plugin.so"
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_map_plugin.so".MapBox]
|
|
|
|
|
|
type_id = 6
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_map_plugin.so".MapBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
2025-11-05 18:57:03 +09:00
|
|
|
|
set = { method_id = 4 }
|
|
|
|
|
|
get = { method_id = 5 }
|
2025-11-08 15:49:25 +09:00
|
|
|
|
has = { method_id = 6 }
|
|
|
|
|
|
size = { method_id = 7 }
|
|
|
|
|
|
length = { method_id = 7 }
|
|
|
|
|
|
len = { method_id = 7 }
|
|
|
|
|
|
fini = { method_id = 4294967295 }
|
|
|
|
|
|
|
|
|
|
|
|
# ConsoleBox Plugin (Core Box)
|
|
|
|
|
|
[libraries."libnyash_console_plugin.so"]
|
|
|
|
|
|
boxes = ["ConsoleBox"]
|
|
|
|
|
|
path = "target/release/libnyash_console_plugin.so"
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_console_plugin.so".ConsoleBox]
|
|
|
|
|
|
type_id = 7
|
|
|
|
|
|
abi_version = 1
|
|
|
|
|
|
singleton = false
|
|
|
|
|
|
|
|
|
|
|
|
[libraries."libnyash_console_plugin.so".ConsoleBox.methods]
|
|
|
|
|
|
birth = { method_id = 0 }
|
|
|
|
|
|
log = { method_id = 4 }
|
|
|
|
|
|
print = { method_id = 4 }
|
|
|
|
|
|
fini = { method_id = 4294967295 }
|
2025-11-07 19:32:44 +09:00
|
|
|
|
"tools.hako_check.analysis_consumer" = "tools/hako_check/analysis_consumer.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_include_forbidden" = "tools/hako_check/rules/rule_include_forbidden.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_using_quoted" = "tools/hako_check/rules/rule_using_quoted.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_static_top_assign" = "tools/hako_check/rules/rule_static_top_assign.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_global_assign" = "tools/hako_check/rules/rule_global_assign.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_dead_methods" = "tools/hako_check/rules/rule_dead_methods.hako"
|
|
|
|
|
|
"tools.hako_check.rules.rule_jsonfrag_usage" = "tools/hako_check/rules/rule_jsonfrag_usage.hako"
|
|
|
|
|
|
"tools.hako_check.cli" = "tools/hako_check/cli.hako"
|
|
|
|
|
|
"tools.hako_check.render.graphviz" = "tools/hako_check/render/graphviz.hako"
|
|
|
|
|
|
"tools.hako_parser.tokenizer" = "tools/hako_parser/tokenizer.hako"
|
|
|
|
|
|
"tools.hako_parser.parser_core" = "tools/hako_parser/parser_core.hako"
|
|
|
|
|
|
"tools.hako_parser.ast_emit" = "tools/hako_parser/ast_emit.hako"
|
|
|
|
|
|
"tools.hako_parser.cli" = "tools/hako_parser/cli.hako"
|