pub type CardNumResolver = Arc<dyn Fn(&str) -> Vec<u64> + Send + Sync>;Expand description
v1.4.105 D12 (Phase 2): card_num → acc_ids 解析器.
opend 启动时注入 closure, 捕获 bridge.caches.trd_cache Arc, 调
find_acc_ids_by_card_num(input) -> Vec<u64>. REST trade handler 在 dispatch
前用此解析 user 传的 card_num 字段(4 位末尾 / 16 位完整)→ acc_id, 写
进 c2s.header.acc_id. 和 AdminStatusProvider 同 pattern —— 避免 futu-rest
反向依赖 futu-cache / futu-gateway.
行为契约 (与 TrdCache::find_acc_ids_by_card_num 等价):
- input 必须 4 位 / 16 位纯数字 (caller 应已 validate, 此处不 validate)
- 0 match → empty Vec (caller 决定 reject)
- 多 match → 多 acc_id Vec (caller 决定 reject ambiguous)
- 1 match → 单 acc_id Vec
Aliased Type§
pub struct CardNumResolver { /* private fields */ }