// ===== node_registry:多节点账本注册表(blueprint: moonactor A9 件移植)=====
// 职责:node 名→NodeAccount 注册/按名取——单连接单账的上层组装件。
// 真源对位:net_kernel/sys_dist ets 表(node→connection);get_conn(Node) 按名取。

///|
/// 节点注册表(多节点多账组装)
pub struct NodeRegistry {
  priv nodes : Array[String] // 节点名册(注册序)
  priv accounts : Array[NodeAccount] // 与 nodes 同位对齐
}

///|
pub fn NodeRegistry::new() -> NodeRegistry {
  { nodes: [], accounts: [], }
}

///|
/// 注册节点账(重名=幂等跳过——sys_dist ets insert 覆盖语义对位);
/// 返回该节点账(新或既有)
pub fn NodeRegistry::register(
  self : NodeRegistry,
  node : String,
) -> NodeAccount {
  for i in 0.. NodeAccount? {
  for i in 0.. Int32 {
  self.nodes.length()
}

///|
/// 全账清(节点全下线面——逐账 on_conn_lost;遍历序=注册序)
pub fn NodeRegistry::on_all_lost(
  self : NodeRegistry,
  events : &NodeEvents,
) -> Unit {
  for i in 0..