跳转至

ev-mold-structured-bindings-equal-range-003

字段 值
项目 rui314/mold
固定 commit 27162691b71a
路径 src/input-files.cc
行段 L1401-L1406
特性 结构化绑定
许可证 MIT
代码来源 项目源码
级别 manual
审核 zyuhao7 @ 2026-10-25
测试代码 否
发现方式 tree-sitter

用法

用结构化绑定接收 equal_range 返回的迭代器区间

为什么典型

equal_range 返回 pair;绑定名 begin/end 让后续区间计算与返回语句保持可读。

摘录

  auto [begin, end] = std::equal_range(sorted_syms.begin(), sorted_syms.end(),
                                       sym, [&](Symbol<E> *a, Symbol<E> *b) {
    return a->esym().st_value < b->esym().st_value;
  });

  return {&*begin, (size_t)(end - begin)};

备注

生产路径;两个绑定都参与后续区间长度计算。

查看固定 commit 源码 · 返回证据索引