Translations update from Boost-Weblate#1
Conversation
Currently translated at 100.0% (28 of 28 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Debuggability (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-debuggability-adoc/zh_Hans/
Currently translated at 6.5% (28 of 430 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Flat Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-flat-map-adoc/zh_Hans/
Currently translated at 100.0% (31 of 31 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Hash Equality (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-hash-equality-adoc/zh_Hans/
Currently translated at 100.0% (2 of 2 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Concurrent Flat Map Fwd (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-concurrent-flat-map-fwd-adoc/zh_Hans/
Currently translated at 55.5% (239 of 430 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Flat Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-flat-map-adoc/zh_Hans/
Currently translated at 100.0% (12 of 12 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Concurrent Flat Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-concurrent-flat-map-adoc/zh_Hans/
Currently translated at 100.0% (12 of 12 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Concurrent Node Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-concurrent-node-map-adoc/zh_Hans/
Currently translated at 100.0% (2 of 2 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Unordered Node Set Fwd (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-unordered-node-set-fwd-adoc/zh_Hans/
Currently translated at 58.3% (7 of 12 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Unordered Node Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-unordered-node-set-adoc/zh_Hans/
Currently translated at 100.0% (387 of 387 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Flat Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-flat-map-adoc/zh_Hans/
Currently translated at 100.0% (344 of 344 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Flat Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-flat-set-adoc/zh_Hans/
There was a problem hiding this comment.
Actionable comments posted: 5
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@doc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adoc`:
- Around line 108-113: The xref targets for the concurrent_flat_map bulk-visit
overloads are inconsistent and use `xref:concurrent_flat_map_bulk_visit[...]`
which can break same-page anchor resolution; update the three occurrences (the
two `visit` overloads and the `cvisit` overload) to use
`xref:`#concurrent_flat_map_bulk_visit`[...]` so they match the local anchor
naming convention (e.g., replace `xref:concurrent_flat_map_bulk_visit[visit]`
and `xref:concurrent_flat_map_bulk_visit[cvisit]` with
`xref:`#concurrent_flat_map_bulk_visit`[visit]` and
`xref:`#concurrent_flat_map_bulk_visit`[cvisit]`).
- Line 1240:
修正第1240行中被损坏的中文表述:把碎裂的短语(例如“成员类别名义时...会才参与重决议析”)替换为通顺的描述,确保使用正确的符号名称
Hash::is_transparent、Pred::is_transparent 和 模板签名 template<class K, class...
Args>,例如将句子改为“仅当 Hash::is_transparent 和 Pred::is_transparent
均为有效的成员类型名时,template<class K, class... Args> 重载才会参与重载决议。标准库假设 Hash 可同时被 K 和 Key
调用,且 Pred 为透明,从而支持异构查找以避免实例化 Key 类型的开销。”以恢复可读性和专业性。
- Around line 71-75: The constructor signature for concurrent_flat_map's
initializer-list overload is missing a comma after the defaulted parameter
`size_type n = _implementation-defined_`; update the declaration in the
concurrent_flat_map initializer_list constructor (the xref starting with
concurrent_flat_map(std::initializer_list<value_type> il, size_type n =
_implementation-defined_) ) to insert a comma between the `n` parameter and the
next parameter `const hasher& hf` so the parameter list reads "... size_type n =
_implementation-defined_, const hasher& hf = hasher(), const key_equal& eql =
key_equal(), const allocator_type& a = allocator_type());".
- Line 1410: The template constraint for the overload declared as template<class
K, class F> incorrectly references ExecutionPolicy; update the constraint to
test the first template parameter K instead (e.g. use
std::is_execution_policy_v<std::remove_cvref_t<K>> being false) so this overload
is disabled when K is an execution policy and thus distinguishes it from
template<class ExecutionPolicy, class F>; locate the sentence that currently
contains std::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> and
replace ExecutionPolicy with K (keeping the remove_cvref_t and negation as
shown).
- Around line 1168-1171: The documentation shows incorrect function names: the
templates declared as insert_or_visit and insert_or_cvisit actually belong to
the insert_and_visit / insert_and_cvisit family (they take two functors F1, F2).
Update the declarations to use insert_and_visit(InputIterator, InputIterator, F1
f1, F2 f2) and insert_and_cvisit(InputIterator, InputIterator, F1 f1, F2 f2) so
the signatures match the section heading and earlier API; ensure any surrounding
references in this "insert_and_[c]visit" section also use the insert_and_* names
consistently.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: dfc6a4b9-bf07-480a-95be-75e58efd16fb
📒 Files selected for processing (10)
doc/modules/ROOT/pages/debuggability_zh_Hans.adocdoc/modules/ROOT/pages/hash_equality_zh_Hans.adocdoc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adocdoc/modules/ROOT/pages/reference/header_concurrent_flat_map_fwd_zh_Hans.adocdoc/modules/ROOT/pages/reference/header_concurrent_flat_map_zh_Hans.adocdoc/modules/ROOT/pages/reference/header_concurrent_node_map_zh_Hans.adocdoc/modules/ROOT/pages/reference/header_unordered_node_set_fwd_zh_Hans.adocdoc/modules/ROOT/pages/reference/header_unordered_node_set_zh_Hans.adocdoc/modules/ROOT/pages/reference/unordered_flat_map_zh_Hans.adocdoc/modules/ROOT/pages/reference/unordered_flat_set_zh_Hans.adoc
✅ Files skipped from review due to trivial changes (7)
- doc/modules/ROOT/pages/reference/header_concurrent_flat_map_fwd_zh_Hans.adoc
- doc/modules/ROOT/pages/reference/header_unordered_node_set_zh_Hans.adoc
- doc/modules/ROOT/pages/hash_equality_zh_Hans.adoc
- doc/modules/ROOT/pages/debuggability_zh_Hans.adoc
- doc/modules/ROOT/pages/reference/unordered_flat_set_zh_Hans.adoc
- doc/modules/ROOT/pages/reference/header_unordered_node_set_fwd_zh_Hans.adoc
- doc/modules/ROOT/pages/reference/header_concurrent_flat_map_zh_Hans.adoc
🚧 Files skipped from review as they are similar to previous changes (2)
- doc/modules/ROOT/pages/reference/header_concurrent_node_map_zh_Hans.adoc
- doc/modules/ROOT/pages/reference/unordered_flat_map_zh_Hans.adoc
| xref:#concurrent_flat_map_initializer_list_constructor[concurrent_flat_map](std::initializer_list<value_type> il, | ||
| size_type n = _implementation-defined_ | ||
| const hasher& hf = hasher(), | ||
| const key_equal& eql = key_equal(), | ||
| const allocator_type& a = allocator_type()); |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify this signature against the English source page and the zh_Hans page.
fd -i 'concurrent_flat_map*.adoc' doc | xargs -I{} rg -n "initializer_list<value_type> il|_implementation-defined_|const hasher& hf" {}Repository: CppDigest/unordered
Length of output: 3442
Missing comma in constructor signature breaks parameter list syntax
The initializer list constructor is missing a comma after the n parameter on line 72, causing invalid syntax. The size_type n = _implementation-defined_ declaration must be followed by a comma before the const hasher& hf parameter.
Required fix
concurrent_flat_map(std::initializer_list<value_type> il,
- size_type n = _implementation-defined_
+ size_type n = _implementation-defined_,
const hasher& hf = hasher(),
const key_equal& eql = key_equal(),
const allocator_type& a = allocator_type());📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| xref:#concurrent_flat_map_initializer_list_constructor[concurrent_flat_map](std::initializer_list<value_type> il, | |
| size_type n = _implementation-defined_ | |
| const hasher& hf = hasher(), | |
| const key_equal& eql = key_equal(), | |
| const allocator_type& a = allocator_type()); | |
| xref:`#concurrent_flat_map_initializer_list_constructor`[concurrent_flat_map](std::initializer_list<value_type> il, | |
| size_type n = _implementation-defined_, | |
| const hasher& hf = hasher(), | |
| const key_equal& eql = key_equal(), | |
| const allocator_type& a = allocator_type()); |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adoc` around
lines 71 - 75, The constructor signature for concurrent_flat_map's
initializer-list overload is missing a comma after the defaulted parameter
`size_type n = _implementation-defined_`; update the declaration in the
concurrent_flat_map initializer_list constructor (the xref starting with
concurrent_flat_map(std::initializer_list<value_type> il, size_type n =
_implementation-defined_) ) to insert a comma between the `n` parameter and the
next parameter `const hasher& hf` so the parameter list reads "... size_type n =
_implementation-defined_, const hasher& hf = hasher(), const key_equal& eql =
key_equal(), const allocator_type& a = allocator_type());".
| size_t xref:concurrent_flat_map_bulk_visit[visit](FwdIterator first, FwdIterator last, F f); | ||
| template<class FwdIterator, class F> | ||
| size_t xref:concurrent_flat_map_bulk_visit[visit](FwdIterator first, FwdIterator last, F f) const; | ||
| template<class FwdIterator, class F> | ||
| size_t xref:concurrent_flat_map_bulk_visit[cvisit](FwdIterator first, FwdIterator last, F f) const; | ||
|
|
There was a problem hiding this comment.
Inconsistent internal xref target may break anchor resolution
Line 108 and Line 408 use xref:concurrent_flat_map_bulk_visit[...] while nearby internal anchors use xref:#.... Please normalize to xref:#concurrent_flat_map_bulk_visit[...] for same-page anchor consistency.
Also applies to: 408-408
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adoc` around
lines 108 - 113, The xref targets for the concurrent_flat_map bulk-visit
overloads are inconsistent and use `xref:concurrent_flat_map_bulk_visit[...]`
which can break same-page anchor resolution; update the three occurrences (the
two `visit` overloads and the `cvisit` overload) to use
`xref:`#concurrent_flat_map_bulk_visit`[...]` so they match the local anchor
naming convention (e.g., replace `xref:concurrent_flat_map_bulk_visit[visit]`
and `xref:concurrent_flat_map_bulk_visit[cvisit]` with
`xref:`#concurrent_flat_map_bulk_visit`[visit]` and
`xref:`#concurrent_flat_map_bulk_visit`[cvisit]`).
| Throws:;; Only throws an exception if it is thrown by `hasher`, `key_equal` or `f`. | ||
| 注意;; `f` is passed a non-const reference to `x`. + | ||
| + | ||
| 仅当 `std::is++_++execution++_++policy++_++v++<++std::remove++_++cvref++_++t++<++ExecutionPolicy++>>++` 为 `false` 时, `template++<++class K, class F++>++` 重载才会参与重载决议。 + |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify whether this constraint should refer to K by comparing similar wording in related docs.
fd -i 'concurrent_flat_map*.adoc' doc | xargs -I{} rg -n "is_execution_policy_v|template<class K, class F> size_type erase_if|ExecutionPolicy" {}Repository: CppDigest/unordered
Length of output: 2508
🏁 Script executed:
sed -n '1400,1470p' doc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adocRepository: CppDigest/unordered
Length of output: 2113
Template constraint references non-existent type parameter
The constraint on the template<class K, class F> overload at line 1434 incorrectly references ExecutionPolicy, which is not a parameter of this template. The parameter exists only in the separate parallel overload. The constraint should check whether the first parameter is an execution policy to distinguish this overload from the template<class ExecutionPolicy, class F> parallel version—likely using std::is_execution_policy_v applied to K instead.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_map_zh_Hans.adoc` at line
1410, The template constraint for the overload declared as template<class K,
class F> incorrectly references ExecutionPolicy; update the constraint to test
the first template parameter K instead (e.g. use
std::is_execution_policy_v<std::remove_cvref_t<K>> being false) so this overload
is disabled when K is an execution policy and thus distinguishes it from
template<class ExecutionPolicy, class F>; locate the sentence that currently
contains std::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> and
replace ExecutionPolicy with K (keeping the remove_cvref_t and negation as
shown).
Currently translated at 100.0% (437 of 437 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-map-adoc/zh_Hans/
Currently translated at 100.0% (391 of 391 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Multimap (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-multimap-adoc/zh_Hans/
Currently translated at 100.0% (372 of 372 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Multiset (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-multiset-adoc/zh_Hans/
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@doc/modules/ROOT/pages/reference/unordered_map_zh_Hans.adoc`:
- Around line 1804-1827: The three type aliases __iter-key-type__,
__iter-mapped-type__, and __iter-to-alloc-type__ contain a typo using the token
"std;;" instead of the C++ namespace qualifier "std::"; update all occurrences
of "std;;" to "std::" within those templates (including in uses of
remove_const_t, tuple_element_t, add_const_t, pair, and tuple_element_t
references to __iter-value-type__) so the declarations compile correctly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 194583db-e76f-48e4-9841-659c4b12cc9a
📒 Files selected for processing (3)
doc/modules/ROOT/pages/reference/unordered_map_zh_Hans.adocdoc/modules/ROOT/pages/reference/unordered_multimap_zh_Hans.adocdoc/modules/ROOT/pages/reference/unordered_multiset_zh_Hans.adoc
🚧 Files skipped from review as they are similar to previous changes (1)
- doc/modules/ROOT/pages/reference/unordered_multiset_zh_Hans.adoc
| ==== __iter-key-type__ | ||
| [listings, subs="+macros,+quotes"] | ||
| ----- | ||
| template<class InputIterator> | ||
| using __iter-key-type__ = std;;remove_const_t< | ||
| std;;tuple_element_t<0, xref:#unordered_map_iter_value_type[__iter-value-type__]<InputIterator>>>; // exposition only | ||
| ----- | ||
|
|
||
| ==== __iter-mapped-type__ | ||
| [listings, subs="+macros,+quotes"] | ||
| ----- | ||
| template<class InputIterator> | ||
| using __iter-mapped-type__ = | ||
| std;;tuple_element_t<1, xref:#unordered_map_iter_value_type[__iter-value-type__]<InputIterator>>; // exposition only | ||
| ----- | ||
|
|
||
| ==== __iter-to-alloc-type__ | ||
| [listings, subs="+macros,+quotes"] | ||
| ----- | ||
| template<class InputIterator> | ||
| using __iter-to-alloc-type__ = std;;pair< | ||
| std;;add_const_t<std;;tuple_element_t<0, xref:#unordered_map_iter_value_type[__iter-value-type__]<InputIterator>>>, | ||
| std;;tuple_element_t<1, xref:#unordered_map_iter_value_type[__iter-value-type__]<InputIterator>>>; // exposition only | ||
| ----- |
There was a problem hiding this comment.
Critical syntax error: std;; should be std::
The deduction guides section contains multiple instances where the C++ namespace qualifier is incorrectly written as std;; (double semicolon) instead of std:: (double colon). This syntax error would prevent the code from compiling if used as a reference.
🔧 Proposed fix for namespace qualifiers
template<class InputIterator>
- using __iter-key-type__ = std;;remove_const_t<
- std;;tuple_element_t<0, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>; // exposition only
+ using __iter-key-type__ = std::remove_const_t<
+ std::tuple_element_t<0, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>; // exposition only template<class InputIterator>
- using __iter-to-alloc-type__ = std;;pair<
- std;;add_const_t<std;;tuple_element_t<0, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>,
- std;;tuple_element_t<1, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>; // exposition only
+ using __iter-to-alloc-type__ = std::pair<
+ std::add_const_t<std::tuple_element_t<0, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>,
+ std::tuple_element_t<1, xref:`#unordered_map_iter_value_type`[__iter-value-type__]<InputIterator>>>; // exposition only🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/unordered_map_zh_Hans.adoc` around lines
1804 - 1827, The three type aliases __iter-key-type__, __iter-mapped-type__, and
__iter-to-alloc-type__ contain a typo using the token "std;;" instead of the C++
namespace qualifier "std::"; update all occurrences of "std;;" to "std::" within
those templates (including in uses of remove_const_t, tuple_element_t,
add_const_t, pair, and tuple_element_t references to __iter-value-type__) so the
declarations compile correctly.
Currently translated at 100.0% (412 of 412 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Node Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-node-map-adoc/zh_Hans/
Currently translated at 100.0% (371 of 371 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Node Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-node-set-adoc/zh_Hans/
Currently translated at 100.0% (390 of 390 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Unordered Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-unordered-set-adoc/zh_Hans/
Currently translated at 100.0% (80 of 80 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Regular (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-regular-adoc/zh_Hans/
Currently translated at 100.0% (57 of 57 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Structures (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-structures-adoc/zh_Hans/
Currently translated at 100.0% (430 of 430 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Flat Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-flat-map-adoc/zh_Hans/
Currently translated at 100.0% (397 of 397 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Flat Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-flat-set-adoc/zh_Hans/
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (1)
doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc (1)
1217-1217: 异构查找说明存在重复短语,影响可读性。Line 1217、Line 1376、Line 1393 都出现“这支持异构查找,该机制支持异构查找”的重复表达,建议保留一次即可。
建议修复
-...且 `Pred` 为透明的。这支持异构查找,该机制支持异构查找,从而避免实例化 `Key` 类型的开销。 +...且 `Pred` 为透明的。该机制支持异构查找,从而避免实例化 `Key` 类型的开销。Also applies to: 1376-1376, 1393-1393
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc` at line 1217, The text contains a duplicated phrase ("这支持异构查找,该机制支持异构查找") in the documentation sentences that describe transparent hash/predicate overloads; update the occurrences where `Hash::is++_++transparent`, `Pred::is++_++transparent`, and the `template++<++class K++>++` overload are mentioned to remove the repetition so the sentence reads once (e.g., "这支持异构查找。") while preserving the technical terms and surrounding explanation.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc`:
- Line 1215: The documentation for the `erase` and `erase_if` functions
mistakenly says "返回;; 插入的元素数量(0 或 1)" — update the return-value description to
"擦除的元素数量(0 或 1)" for both `erase` and `erase_if` occurrences (the markup around
the text at the two instances that currently read "返回;; 插入的元素数量(0 或 1)。"), so
the description correctly reflects the number of elements removed.
- Around line 66-70: The initializer-list constructor signature for
concurrent_flat_set (xref:`#concurrent_flat_set_initializer_list_constructor`) is
missing a comma after the parameter "size_type n = _implementation-defined_",
causing an incorrect API declaration; update the declaration so each parameter
is comma-separated (insert a comma after that parameter) and ensure the same fix
is applied to the other occurrences around the concurrent_flat_set
initializer-list signature (lines noted in the comment) so the signature matches
the standard form including hasher, key_equal, and allocator parameters.
- Around line 539-544: The constructor documentation for
concurrent_flat_set(size_type n, allocator_type const& a) incorrectly refers to
a non-existent parameter `hf`; update the text to state that the container is
constructed with at least `n` buckets using the default hash function, the
default key-equality predicate, and allocator `a` (i.e., replace "使用 `hf`
作为哈希函数" with "使用默认哈希函数" and ensure the rest mentions the default equality
predicate and allocator `a`).
- Around line 331-334: Replace the misleading phrase "非可变修改" with "const 限定修改"
(reflecting the English "Const-qualified modifications") throughout the
paragraph describing concurrent guarantees; update both the single-line entry
and the subsequent bullets that reference this condition so the terminology is
consistent, and ensure any adjacent wording still reads naturally after the
substitution.
---
Nitpick comments:
In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc`:
- Line 1217: The text contains a duplicated phrase ("这支持异构查找,该机制支持异构查找") in the
documentation sentences that describe transparent hash/predicate overloads;
update the occurrences where `Hash::is++_++transparent`,
`Pred::is++_++transparent`, and the `template++<++class K++>++` overload are
mentioned to remove the repetition so the sentence reads once (e.g., "这支持异构查找。")
while preserving the technical terms and surrounding explanation.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f01baee3-b954-449f-9a15-b7e8a3c46f28
📒 Files selected for processing (1)
doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc
| xref:#concurrent_flat_set_initializer_list_constructor[concurrent_flat_set](std::initializer_list<value_type> il, | ||
| size_type n = _implementation-defined_ | ||
| const hasher& hf = hasher(), | ||
| const key_equal& eql = key_equal(), | ||
| const allocator_type& a = allocator_type()); |
There was a problem hiding this comment.
初始化列表构造函数签名缺少逗号,导致 API 声明不正确。
Line 67 和 Line 523 后缺少参数分隔逗号(size_type n = _implementation-defined_ 后),当前展示的声明与标准签名不一致。
建议修复
- xref:`#concurrent_flat_set_initializer_list_constructor`[concurrent_flat_set](std::initializer_list<value_type> il,
- size_type n = _implementation-defined_
+ xref:`#concurrent_flat_set_initializer_list_constructor`[concurrent_flat_set](std::initializer_list<value_type> il,
+ size_type n = _implementation-defined_,
const hasher& hf = hasher(),-concurrent_flat_set(std::initializer_list<value_type> il,
- size_type n = _implementation-defined_
+concurrent_flat_set(std::initializer_list<value_type> il,
+ size_type n = _implementation-defined_,
const hasher& hf = hasher(),Also applies to: 522-526
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc` around
lines 66 - 70, The initializer-list constructor signature for
concurrent_flat_set (xref:`#concurrent_flat_set_initializer_list_constructor`) is
missing a comma after the parameter "size_type n = _implementation-defined_",
causing an incorrect API declaration; update the declaration so each parameter
is comma-separated (insert a comma after that parameter) and ensure the same fix
is applied to the other occurrences around the concurrent_flat_set
initializer-list signature (lines noted in the comment) so the signature matches
the standard form including hasher, key_equal, and allocator parameters.
| * 对元素的非可变修改。 | ||
| * 对元素的可变修改: | ||
| ** 在容器接受两个访问函数的操作中,此条件始终适用于第一个访问函数。 | ||
| ** 在名称不包含 `cvisit` 的非常量容器函数中,此条件适用于最后一个(或唯一一个)访问函数。 |
There was a problem hiding this comment.
并发保证条目“非可变修改”表述不准确,建议改为“const 限定修改”。
这里对应英文的 “Const-qualified modifications”,当前“非可变修改”容易被理解成“不能修改”,语义偏差较大。
建议修复
-* 对元素的非可变修改。
+* 对元素的 `const` 限定修改。📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| * 对元素的非可变修改。 | |
| * 对元素的可变修改: | |
| ** 在容器接受两个访问函数的操作中,此条件始终适用于第一个访问函数。 | |
| ** 在名称不包含 `cvisit` 的非常量容器函数中,此条件适用于最后一个(或唯一一个)访问函数。 | |
| * 对元素的 `const` 限定修改。 | |
| * 对元素的可变修改: | |
| ** 在容器接受两个访问函数的操作中,此条件始终适用于第一个访问函数。 | |
| ** 在名称不包含 `cvisit` 的非常量容器函数中,此条件适用于最后一个(或唯一一个)访问函数。 |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc` around
lines 331 - 334, Replace the misleading phrase "非可变修改" with "const 限定修改"
(reflecting the English "Const-qualified modifications") throughout the
paragraph describing concurrent guarantees; update both the single-line entry
and the subsequent bullets that reference this condition so the terminology is
consistent, and ensure any adjacent wording still reads naturally after the
substitution.
| concurrent_flat_set(size_type n, allocator_type const& a); | ||
|
|
||
| ``` | ||
|
|
||
| 构造一个至少包含 `n` 个桶的空容器,使用 `hf` 作为哈希函数、默认的键相等性谓词以及 `a` 作为分配器。 | ||
|
|
There was a problem hiding this comment.
构造函数说明引用了不存在的参数 hf。
Line 543 描述“使用 hf 作为哈希函数”,但该重载签名只有 (size_type n, allocator_type const& a),这里应描述为“使用默认哈希函数”。
建议修复
-构造一个至少包含 `n` 个桶的空容器,使用 `hf` 作为哈希函数、默认的键相等性谓词以及 `a` 作为分配器。
+构造一个至少包含 `n` 个桶的空容器,使用默认哈希函数、默认的键相等性谓词以及 `a` 作为分配器。🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@doc/modules/ROOT/pages/reference/concurrent_flat_set_zh_Hans.adoc` around
lines 539 - 544, The constructor documentation for concurrent_flat_set(size_type
n, allocator_type const& a) incorrectly refers to a non-existent parameter `hf`;
update the text to state that the container is constructed with at least `n`
buckets using the default hash function, the default key-equality predicate, and
allocator `a` (i.e., replace "使用 `hf` 作为哈希函数" with "使用默认哈希函数" and ensure the
rest mentions the default equality predicate and allocator `a`).
Currently translated at 100.0% (464 of 464 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Node Map (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-node-map-adoc/zh_Hans/
Currently translated at 100.0% (10 of 10 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Hash Traits (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-hash-traits-adoc/zh_Hans/
Currently translated at 1.6% (7 of 431 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Node Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-node-set-adoc/zh_Hans/
Currently translated at 100.0% (431 of 431 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Concurrent Node Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-concurrent-node-set-adoc/zh_Hans/
Currently translated at 100.0% (12 of 12 strings) Translation: Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Pages / Reference / Header Unordered Node Set (adoc) Translate-URL: https://boost-weblate.cloud/projects/boost-unordered-documentation-zh_Hans/doc-modules-root-pages-reference-header-unordered-node-set-adoc/zh_Hans/
Translations update from Boost-Weblate for Boost Unordered Translation (zh_Hans)/Doc / Modules / Root / Nav (adoc).
Current translation status:
Summary by CodeRabbit