bindEnv method

void bindEnv(
  1. ClassSwitchEnv env
)

在 TCICController 初始化期绑定环境查询 adapter。

若已绑定到同一实例,则幂等。若试图换绑到不同实例(除非显式 unbindEnv 后再 bind),将触发 assert —— 这通常意味着 Controller 重建时漏调 unbindEnv,会让单例残留旧 Controller 的引用。

Implementation

void bindEnv(ClassSwitchEnv env) {
  assert(
    _env == null || identical(_env, env),
    'ClassSwitcher.bindEnv: env already bound to a different instance. '
    'Call unbindEnv() before rebinding (likely a TCICController rebuild '
    'forgot to clean up).',
  );
  _env = env;
}