msgid ""
msgstr ""
"Project-Id-Version: English (Boost Unordered Translation (zh_Hans))\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-07 03:31+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: English <https://insights.cppalliance.org/weblate/projects/"
"boost-unordered-documentation-zh_Hans/doc-modules-root-pages-debuggability-"
"adoc/en/>\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 2026.5\n"

#: :2
#, read-only, safe-html, strict-same
msgid ":idprefix: debuggability_"
msgstr ":idprefix: debuggability_"

#: :4
#, read-only, safe-html, strict-same
msgid "= Debuggability"
msgstr "= Debuggability"

#: :6
#, read-only, safe-html, strict-same
msgid "Visual Studio Natvis"
msgstr "Visual Studio Natvis"

#: :8
#, read-only, safe-html, strict-same
msgid ""
"All containers and iterators have custom visualizations in the Natvis "
"framework."
msgstr ""
"All containers and iterators have custom visualizations in the Natvis "
"framework."

#: :10
#, read-only, safe-html, strict-same
msgctxt ":10"
msgid "Using in your project"
msgstr "Using in your project"

#: :12
#, read-only, safe-html, strict-same
msgid ""
"To visualize Boost.Unordered containers in the Natvis framework in your "
"project, simply add the file link:https://github.com/boostorg/unordered/blob/"
"develop/extra/boost_unordered.natvis[/extra/boost_unordered.natvis] to your "
"Visual Studio project as an \"Existing Item\"."
msgstr ""
"To visualize Boost.Unordered containers in the Natvis framework in your "
"project, simply add the file link:https://github.com/boostorg/unordered/blob/"
"develop/extra/boost_unordered.natvis[/extra/boost_unordered.natvis] to your "
"Visual Studio project as an \"Existing Item\"."

#: :14
#, read-only, safe-html, strict-same
msgctxt ":14"
msgid "Visualization structure"
msgstr "Visualization structure"

#: :16
#, read-only, safe-html, strict-same
msgid ""
"The visualizations mirror those for the standard unordered containers. A "
"container has a maximum of 100 elements displayed at once. Each set element "
"has its item name listed as `[i]`, where `i` is the index in the display, "
"starting at `0`. Each map element has its item name listed as `[\\{key-"
"display}]` by default. For example, if the first element is the pair `"
"(\"abc\", 1)`, the item name will be `[\"abc\"]`. This behaviour can be "
"overridden by using the view \"ShowElementsByIndex\", which switches the map "
"display behaviour to name the elements by index. This same view name is used "
"in the standard unordered containers."
msgstr ""
"The visualizations mirror those for the standard unordered containers. A "
"container has a maximum of 100 elements displayed at once. Each set element "
"has its item name listed as `[i]`, where `i` is the index in the display, "
"starting at `0`. Each map element has its item name listed as `[\\{key-"
"display}]` by default. For example, if the first element is the pair `"
"(\"abc\", 1)`, the item name will be `[\"abc\"]`. This behaviour can be "
"overridden by using the view \"ShowElementsByIndex\", which switches the map "
"display behaviour to name the elements by index. This same view name is used "
"in the standard unordered containers."

#: :18
#, read-only, safe-html, strict-same
msgid ""
"By default, the closed-addressing containers will show the `[hash_function]` "
"and `[key_eq]`, the `[spare_hash_function]` and `[spare_key_eq]` if "
"applicable, the `[allocator]`, and the elements. Using the view \"detailed\" "
"adds the `[bucket_count]` and `[max_load_factor]`. Conversely, using the "
"view \"simple\" shows only the elements, with no other items present."
msgstr ""
"By default, the closed-addressing containers will show the `[hash_function]` "
"and `[key_eq]`, the `[spare_hash_function]` and `[spare_key_eq]` if "
"applicable, the `[allocator]`, and the elements. Using the view \"detailed\" "
"adds the `[bucket_count]` and `[max_load_factor]`. Conversely, using the "
"view \"simple\" shows only the elements, with no other items present."

#: :20
#, read-only, safe-html, strict-same
msgid ""
"By default, the open-addressing containers will show the `[hash_function]`, "
"`[key_eq]`, `[allocator]`, and the elements. Using the view \"simple\" shows "
"only the elements, with no other items present. Both the SIMD and the non-"
"SIMD implementations are viewable through the Natvis framework."
msgstr ""
"By default, the open-addressing containers will show the `[hash_function]`, "
"`[key_eq]`, `[allocator]`, and the elements. Using the view \"simple\" shows "
"only the elements, with no other items present. Both the SIMD and the non-"
"SIMD implementations are viewable through the Natvis framework."

#: :22
#, read-only, safe-html, strict-same
msgid ""
"Iterators are displayed similarly to their standard counterparts. An "
"iterator is displayed as though it were the element that it points to. An "
"end iterator is simply displayed as `{ end iterator }`."
msgstr ""
"Iterators are displayed similarly to their standard counterparts. An "
"iterator is displayed as though it were the element that it points to. An "
"end iterator is simply displayed as `{ end iterator }`."

#: :24
#, read-only, safe-html, strict-same
msgctxt ":24"
msgid "Fancy pointers"
msgstr "Fancy pointers"

#: :26
#, read-only, safe-html, strict-same
msgid ""
"The container visualizations also work if you are using fancy pointers in "
"your allocator, such as `boost::interprocess::offset_ptr`. While this is "
"rare, Boost.Unordered has natvis customization points to support any type of "
"fancy pointer. `boost::interprocess::offset_ptr` has support already defined "
"in the Boost.Interprocess library, and you can add support to your own type "
"by following the instructions contained in a comment near the end of the "
"file link:https://github.com/boostorg/unordered/blob/develop/extra/"
"boost_unordered.natvis[/extra/boost_unordered.natvis]."
msgstr ""
"The container visualizations also work if you are using fancy pointers in "
"your allocator, such as `boost::interprocess::offset_ptr`. While this is "
"rare, Boost.Unordered has natvis customization points to support any type of "
"fancy pointer. `boost::interprocess::offset_ptr` has support already defined "
"in the Boost.Interprocess library, and you can add support to your own type "
"by following the instructions contained in a comment near the end of the "
"file link:https://github.com/boostorg/unordered/blob/develop/extra/"
"boost_unordered.natvis[/extra/boost_unordered.natvis]."

#: :28
#, read-only, safe-html, strict-same
msgid "GDB Pretty-Printers"
msgstr "GDB Pretty-Printers"

#: :30
#, read-only, safe-html, strict-same
msgid "All containers and iterators have a custom GDB pretty-printer."
msgstr "All containers and iterators have a custom GDB pretty-printer."

#: :32
#, read-only, safe-html, strict-same
msgctxt ":32"
msgid "Using in your project"
msgstr "Using in your project"

#: :34
#, read-only, safe-html, strict-same
msgid ""
"Always, when using pretty-printers, you must enable pretty-printing like "
"below. This is typically a one-time setup."
msgstr ""
"Always, when using pretty-printers, you must enable pretty-printing like "
"below. This is typically a one-time setup."

#: :36
#, read-only, safe-html, strict-same
msgid "```plaintext (gdb) set print pretty on ```"
msgstr "```plaintext (gdb) set print pretty on ```"

#: :40
#, read-only, safe-html, strict-same
msgid ""
"By default, if you compile into an ELF binary format, your binary will "
"contain the Boost.Unordered pretty-printers. To use the embedded pretty-"
"printers, ensure you allow auto-loading like below. This must be done every "
"time you load GDB, or add it to a \".gdbinit\" file."
msgstr ""
"By default, if you compile into an ELF binary format, your binary will "
"contain the Boost.Unordered pretty-printers. To use the embedded pretty-"
"printers, ensure you allow auto-loading like below. This must be done every "
"time you load GDB, or add it to a \".gdbinit\" file."

#: :42
#, read-only, safe-html, strict-same
msgid "```plaintext (gdb) add-auto-load-safe-path [/path/to/executable] ```"
msgstr "```plaintext (gdb) add-auto-load-safe-path [/path/to/executable] ```"

#: :46
#, read-only, safe-html, strict-same
msgid ""
"You can choose to compile your binary _without_ embedding the pretty-"
"printers by defining `BOOST_ALL_NO_EMBEDDED_GDB_SCRIPTS`, which disables the "
"embedded GDB pretty-printers for all Boost libraries that have this feature."
msgstr ""
"You can choose to compile your binary _without_ embedding the pretty-"
"printers by defining `BOOST_ALL_NO_EMBEDDED_GDB_SCRIPTS`, which disables the "
"embedded GDB pretty-printers for all Boost libraries that have this feature."

#: :48
#, read-only, safe-html, strict-same
msgid ""
"You can load the pretty-printers externally from the non-embedded Python "
"script. Add the script, link:https://github.com/boostorg/unordered/blob/"
"develop/extra/boost_unordered_printers.py[/extra/"
"boost_unordered_printers.py], using the `source` command as shown below."
msgstr ""
"You can load the pretty-printers externally from the non-embedded Python "
"script. Add the script, link:https://github.com/boostorg/unordered/blob/"
"develop/extra/boost_unordered_printers.py[/extra/"
"boost_unordered_printers.py], using the `source` command as shown below."

#: :50
#, read-only, safe-html, strict-same
msgid ""
"```plaintext (gdb) source [/path/to/boost]/libs/unordered/extra/"
"boost_unordered_printers.py ```"
msgstr ""
"```plaintext (gdb) source [/path/to/boost]/libs/unordered/extra/"
"boost_unordered_printers.py ```"

#: :54
#, read-only, safe-html, strict-same
msgctxt ":54"
msgid "Visualization structure"
msgstr "Visualization structure"

#: :56
#, read-only, safe-html, strict-same
msgid ""
"The visualizations mirror the standard unordered containers. The map "
"containers display an association from key to mapped value. The set "
"containers display an association from index to value. An iterator is either "
"displayed with its item, or as an end iterator. Here is what may be shown "
"for an example `boost::unordered_map`, an example `boost::unordered_set`, "
"and their respective begin and end iterators."
msgstr ""
"The visualizations mirror the standard unordered containers. The map "
"containers display an association from key to mapped value. The set "
"containers display an association from index to value. An iterator is either "
"displayed with its item, or as an end iterator. Here is what may be shown "
"for an example `boost::unordered_map`, an example `boost::unordered_set`, "
"and their respective begin and end iterators."

#: :58
#, read-only, safe-html, strict-same
msgid ""
"```plaintext (gdb) print example_unordered_map $1 = boost::unordered_map "
"with 3 elements = {[\"C\"] = \"c\", [\"B\"] = \"b\", [\"A\"] = \"a\"} (gdb) "
"print example_unordered_map_begin $2 = iterator = { {first = \"C\", second = "
"\"c\"} } (gdb) print example_unordered_map_end $3 = iterator = { end "
"iterator } (gdb) print example_unordered_set $4 = boost::unordered_set with "
"3 elements = {[0] = \"c\", [1] = \"b\", [2] = \"a\"} (gdb) print "
"example_unordered_set_begin $5 = iterator = { \"c\" } (gdb) print "
"example_unordered_set_end $6 = iterator = { end iterator } ```"
msgstr ""
"```plaintext (gdb) print example_unordered_map $1 = boost::unordered_map "
"with 3 elements = {[\"C\"] = \"c\", [\"B\"] = \"b\", [\"A\"] = \"a\"} (gdb) "
"print example_unordered_map_begin $2 = iterator = { {first = \"C\", second = "
"\"c\"} } (gdb) print example_unordered_map_end $3 = iterator = { end "
"iterator } (gdb) print example_unordered_set $4 = boost::unordered_set with "
"3 elements = {[0] = \"c\", [1] = \"b\", [2] = \"a\"} (gdb) print "
"example_unordered_set_begin $5 = iterator = { \"c\" } (gdb) print "
"example_unordered_set_end $6 = iterator = { end iterator } ```"

#: :73
#, read-only, safe-html, strict-same
msgid ""
"The other containers are identical other than replacing \"`boost::unordered_"
"{map|set}`\" with the appropriate template name when displaying the "
"container itself. Note that each sub-element (i.e. the key, the mapped "
"value, or the value) is displayed based on its own printing settings which "
"may include its own pretty-printer."
msgstr ""
"The other containers are identical other than replacing \"`boost::unordered_"
"{map|set}`\" with the appropriate template name when displaying the "
"container itself. Note that each sub-element (i.e. the key, the mapped "
"value, or the value) is displayed based on its own printing settings which "
"may include its own pretty-printer."

#: :75
#, read-only, safe-html, strict-same
msgid ""
"Both the SIMD and the non-SIMD implementations are viewable through the GDB "
"pretty-printers."
msgstr ""
"Both the SIMD and the non-SIMD implementations are viewable through the GDB "
"pretty-printers."

#: :77
#, read-only, safe-html, strict-same
msgid ""
"For open-addressing containers where "
"xref:hash_quality.adoc#hash_quality_container_statistics[container "
"statistics] are enabled, you can obtain these statistics by calling "
"`get_stats()` on the container, from within GDB. This is overridden in GDB "
"as an link:https://sourceware.org/gdb/current/onlinedocs/gdb.html/Xmethod-"
"API.html[xmethod], so it will not invoke any C++ synchronization code. See "
"the following printout as an example for the expected format."
msgstr ""
"For open-addressing containers where "
"xref:hash_quality.adoc#hash_quality_container_statistics[container "
"statistics] are enabled, you can obtain these statistics by calling "
"`get_stats()` on the container, from within GDB. This is overridden in GDB "
"as an link:https://sourceware.org/gdb/current/onlinedocs/gdb.html/Xmethod-"
"API.html[xmethod], so it will not invoke any C++ synchronization code. See "
"the following printout as an example for the expected format."

#: :79
#, read-only, safe-html, strict-same
msgid ""
"```plaintext (gdb) print example_flat_map.get_stats() $1 = [stats] = "
"{[insertion] = {[count] = 5, [probe_length] = {avg = 1.0, var = 0.0, dev = "
"0.0}}, [successful_lookup] = {[count] = 0, [probe_length] = {avg = 0.0, var "
"= 0.0, dev = 0.0}, [num_comparisons] = {avg = 0.0, var = 0.0, dev = 0.0}}, "
"[unsuccessful_lookup] = {[count] = 5, [probe_length] = {avg = 1.0, var = "
"0.0, dev = 0.0}, [num_comparisons] = {avg = 0.0, var = 0.0, dev = 0.0}}} ```"
msgstr ""
"```plaintext (gdb) print example_flat_map.get_stats() $1 = [stats] = "
"{[insertion] = {[count] = 5, [probe_length] = {avg = 1.0, var = 0.0, dev = "
"0.0}}, [successful_lookup] = {[count] = 0, [probe_length] = {avg = 0.0, var "
"= 0.0, dev = 0.0}, [num_comparisons] = {avg = 0.0, var = 0.0, dev = 0.0}}, "
"[unsuccessful_lookup] = {[count] = 5, [probe_length] = {avg = 1.0, var = "
"0.0, dev = 0.0}, [num_comparisons] = {avg = 0.0, var = 0.0, dev = 0.0}}} ```"

#: :88
#, read-only, safe-html, strict-same
msgctxt ":88"
msgid "Fancy pointers"
msgstr "Fancy pointers"

#: :90
#, read-only, safe-html, strict-same
msgid ""
"The pretty-printers also work if you are using fancy pointers in your "
"allocator, such as `boost::interprocess::offset_ptr`. While this is rare, "
"Boost.Unordered has GDB pretty-printer customization points to support any "
"type of fancy pointer. `boost::interprocess::offset_ptr` has support already "
"defined in the Boost.Interprocess library, and you can add support to your "
"own type by following the instructions contained in a comment near the end "
"of the file link:https://github.com/boostorg/unordered/blob/develop/extra/"
"boost_unordered_printers.py[/extra/boost_unordered_printers.py]."
msgstr ""
"The pretty-printers also work if you are using fancy pointers in your "
"allocator, such as `boost::interprocess::offset_ptr`. While this is rare, "
"Boost.Unordered has GDB pretty-printer customization points to support any "
"type of fancy pointer. `boost::interprocess::offset_ptr` has support already "
"defined in the Boost.Interprocess library, and you can add support to your "
"own type by following the instructions contained in a comment near the end "
"of the file link:https://github.com/boostorg/unordered/blob/develop/extra/"
"boost_unordered_printers.py[/extra/boost_unordered_printers.py]."
