From 24384c20227608b9a2cf54297b17457b2af560e0 Mon Sep 17 00:00:00 2001 From: rozmansi Date: Wed, 8 Nov 2023 17:48:56 +0000 Subject: [PATCH] deploy: 9d50a878dca6bf3af2a2bf7c1be03913ef2e5ce6 --- _unit_tests_2compat_8hpp_source.html | 2 +- annotated.html | 2 +- base64_8hpp_source.html | 6 +- chrono_8hpp_source.html | 2 +- classes.html | 2 +- classstdex_1_1base64__dec-members.html | 2 +- classstdex_1_1base64__dec.html | 2 +- classstdex_1_1base64__enc-members.html | 2 +- classstdex_1_1base64__enc.html | 2 +- classstdex_1_1base64__reader-members.html | 2 +- classstdex_1_1base64__reader.html | 2 +- classstdex_1_1base64__writer-members.html | 2 +- classstdex_1_1base64__writer.html | 2 +- classstdex_1_1basic__hash-members.html | 2 +- classstdex_1_1basic__hash.html | 2 +- classstdex_1_1block__hash-members.html | 2 +- classstdex_1_1block__hash.html | 2 +- classstdex_1_1charset__encoder-members.html | 2 +- classstdex_1_1charset__encoder.html | 2 +- classstdex_1_1crc32__hash-members.html | 2 +- classstdex_1_1crc32__hash.html | 2 +- classstdex_1_1global__progress-members.html | 2 +- classstdex_1_1global__progress.html | 2 +- classstdex_1_1hex__dec-members.html | 2 +- classstdex_1_1hex__dec.html | 2 +- classstdex_1_1hex__enc-members.html | 2 +- classstdex_1_1hex__enc.html | 2 +- classstdex_1_1idrec_1_1record-members.html | 2 +- classstdex_1_1idrec_1_1record.html | 2 +- classstdex_1_1lazy__progress-members.html | 2 +- classstdex_1_1lazy__progress.html | 2 +- classstdex_1_1md5__hash-members.html | 2 +- classstdex_1_1md5__hash.html | 2 +- ...dex_1_1parser_1_1basic__angle-members.html | 2 +- classstdex_1_1parser_1_1basic__angle.html | 2 +- ...x_1_1parser_1_1basic__any__cu-members.html | 2 +- classstdex_1_1parser_1_1basic__any__cu.html | 2 +- ...stdex_1_1parser_1_1basic__bol-members.html | 2 +- classstdex_1_1parser_1_1basic__bol.html | 2 +- ...ex_1_1parser_1_1basic__branch-members.html | 2 +- classstdex_1_1parser_1_1basic__branch.html | 2 +- ...r_1_1basic__chemical__formula-members.html | 2 +- ...1_1parser_1_1basic__chemical__formula.html | 2 +- ...1_1basic__creditor__reference-members.html | 2 +- ...1parser_1_1basic__creditor__reference.html | 2 +- ...sstdex_1_1parser_1_1basic__cu-members.html | 2 +- classstdex_1_1parser_1_1basic__cu.html | 2 +- ...x_1_1parser_1_1basic__cu__set-members.html | 2 +- classstdex_1_1parser_1_1basic__cu__set.html | 2 +- ...tdex_1_1parser_1_1basic__date-members.html | 2 +- classstdex_1_1parser_1_1basic__date.html | 2 +- ...r_1_1basic__dns__domain__char-members.html | 2 +- ...1_1parser_1_1basic__dns__domain__char.html | 2 +- ...1_1parser_1_1basic__dns__name-members.html | 2 +- classstdex_1_1parser_1_1basic__dns__name.html | 2 +- ...rser_1_1basic__email__address-members.html | 2 +- ...ex_1_1parser_1_1basic__email__address.html | 2 +- ..._1_1parser_1_1basic__emoticon-members.html | 2 +- classstdex_1_1parser_1_1basic__emoticon.html | 2 +- ...stdex_1_1parser_1_1basic__eol-members.html | 2 +- classstdex_1_1parser_1_1basic__eol.html | 2 +- ..._1_1parser_1_1basic__fraction-members.html | 2 +- classstdex_1_1parser_1_1basic__fraction.html | 2 +- ...tdex_1_1parser_1_1basic__iban-members.html | 2 +- classstdex_1_1parser_1_1basic__iban.html | 2 +- ...x_1_1parser_1_1basic__integer-members.html | 2 +- classstdex_1_1parser_1_1basic__integer.html | 2 +- ...1_1parser_1_1basic__integer10-members.html | 2 +- classstdex_1_1parser_1_1basic__integer10.html | 2 +- ...1parser_1_1basic__integer10ts-members.html | 2 +- ...stdex_1_1parser_1_1basic__integer10ts.html | 2 +- ...1_1parser_1_1basic__integer16-members.html | 2 +- classstdex_1_1parser_1_1basic__integer16.html | 2 +- ...arser_1_1basic__ipv4__address-members.html | 2 +- ...dex_1_1parser_1_1basic__ipv4__address.html | 2 +- ...arser_1_1basic__ipv6__address-members.html | 2 +- ...dex_1_1parser_1_1basic__ipv6__address.html | 2 +- ...1basic__ipv6__scope__id__char-members.html | 2 +- ...arser_1_1basic__ipv6__scope__id__char.html | 2 +- ..._1parser_1_1basic__iterations-members.html | 2 +- ...sstdex_1_1parser_1_1basic__iterations.html | 2 +- ...parser_1_1basic__json__string-members.html | 2 +- ...tdex_1_1parser_1_1basic__json__string.html | 2 +- ...rser_1_1basic__mixed__numeral-members.html | 2 +- ...ex_1_1parser_1_1basic__mixed__numeral.html | 2 +- ...r_1_1basic__monetary__numeral-members.html | 2 +- ...1_1parser_1_1basic__monetary__numeral.html | 2 +- ...tdex_1_1parser_1_1basic__noop-members.html | 2 +- classstdex_1_1parser_1_1basic__noop.html | 2 +- ...ex_1_1parser_1_1basic__parser-members.html | 2 +- classstdex_1_1parser_1_1basic__parser.html | 2 +- ...1parser_1_1basic__permutation-members.html | 2 +- ...stdex_1_1parser_1_1basic__permutation.html | 2 +- ...arser_1_1basic__phone__number-members.html | 2 +- ...dex_1_1parser_1_1basic__phone__number.html | 2 +- ...1_1parser_1_1basic__punct__cu-members.html | 2 +- classstdex_1_1parser_1_1basic__punct__cu.html | 2 +- ...rser_1_1basic__roman__numeral-members.html | 2 +- ...ex_1_1parser_1_1basic__roman__numeral.html | 2 +- ...1_1basic__scientific__numeral-members.html | 2 +- ...1parser_1_1basic__scientific__numeral.html | 2 +- ...dex_1_1parser_1_1basic__score-members.html | 2 +- classstdex_1_1parser_1_1basic__score.html | 2 +- ..._1_1parser_1_1basic__sequence-members.html | 2 +- classstdex_1_1parser_1_1basic__sequence.html | 2 +- ...stdex_1_1parser_1_1basic__set-members.html | 2 +- classstdex_1_1parser_1_1basic__set.html | 2 +- ...arser_1_1basic__si__reference-members.html | 2 +- ...dex_1_1parser_1_1basic__si__reference.html | 2 +- ...sic__si__reference__delimiter-members.html | 2 +- ...er_1_1basic__si__reference__delimiter.html | 2 +- ...1_1basic__si__reference__part-members.html | 2 +- ...1parser_1_1basic__si__reference__part.html | 2 +- ...ser_1_1basic__signed__numeral-members.html | 2 +- ...x_1_1parser_1_1basic__signed__numeral.html | 2 +- ...1_1parser_1_1basic__space__cu-members.html | 2 +- classstdex_1_1parser_1_1basic__space__cu.html | 2 +- ..._1basic__space__or__punct__cu-members.html | 2 +- ...parser_1_1basic__space__or__punct__cu.html | 2 +- ...ex_1_1parser_1_1basic__string-members.html | 2 +- classstdex_1_1parser_1_1basic__string.html | 2 +- ...rser_1_1basic__string__branch-members.html | 2 +- ...ex_1_1parser_1_1basic__string__branch.html | 2 +- ...tdex_1_1parser_1_1basic__time-members.html | 2 +- classstdex_1_1parser_1_1basic__time.html | 2 +- ...stdex_1_1parser_1_1basic__url-members.html | 2 +- classstdex_1_1parser_1_1basic__url.html | 2 +- ...1_1basic__url__password__char-members.html | 2 +- ...1parser_1_1basic__url__password__char.html | 2 +- ...1_1parser_1_1basic__url__path-members.html | 2 +- classstdex_1_1parser_1_1basic__url__path.html | 2 +- ...ser_1_1basic__url__path__char-members.html | 2 +- ...x_1_1parser_1_1basic__url__path__char.html | 2 +- ...1_1basic__url__username__char-members.html | 2 +- ...1parser_1_1basic__url__username__char.html | 2 +- ...tdex_1_1parser_1_1http__agent-members.html | 2 +- classstdex_1_1parser_1_1http__agent.html | 2 +- ..._1_1parser_1_1http__any__type-members.html | 2 +- classstdex_1_1parser_1_1http__any__type.html | 2 +- ...x_1_1parser_1_1http__asterisk-members.html | 2 +- classstdex_1_1parser_1_1http__asterisk.html | 2 +- ...dex_1_1parser_1_1http__cookie-members.html | 2 +- classstdex_1_1parser_1_1http__cookie.html | 2 +- ...er_1_1http__cookie__parameter-members.html | 2 +- ..._1_1parser_1_1http__cookie__parameter.html | 2 +- ...dex_1_1parser_1_1http__header-members.html | 2 +- classstdex_1_1parser_1_1http__header.html | 2 +- ...x_1_1parser_1_1http__language-members.html | 2 +- classstdex_1_1parser_1_1http__language.html | 2 +- ..._1parser_1_1http__line__break-members.html | 2 +- ...sstdex_1_1parser_1_1http__line__break.html | 2 +- ...1parser_1_1http__media__range-members.html | 2 +- ...stdex_1_1parser_1_1http__media__range.html | 2 +- ..._1parser_1_1http__media__type-members.html | 2 +- ...sstdex_1_1parser_1_1http__media__type.html | 2 +- ..._1_1parser_1_1http__parameter-members.html | 2 +- classstdex_1_1parser_1_1http__parameter.html | 2 +- ...x_1_1parser_1_1http__protocol-members.html | 2 +- classstdex_1_1parser_1_1http__protocol.html | 2 +- ...arser_1_1http__quoted__string-members.html | 2 +- ...dex_1_1parser_1_1http__quoted__string.html | 2 +- ...ex_1_1parser_1_1http__request-members.html | 2 +- classstdex_1_1parser_1_1http__request.html | 2 +- ...tdex_1_1parser_1_1http__space-members.html | 2 +- classstdex_1_1parser_1_1http__space.html | 2 +- ...1_1parser_1_1http__text__char-members.html | 2 +- classstdex_1_1parser_1_1http__text__char.html | 2 +- ...tdex_1_1parser_1_1http__token-members.html | 2 +- classstdex_1_1parser_1_1http__token.html | 2 +- ...sstdex_1_1parser_1_1http__url-members.html | 2 +- classstdex_1_1parser_1_1http__url.html | 2 +- ...arser_1_1http__url__parameter-members.html | 2 +- ...dex_1_1parser_1_1http__url__parameter.html | 2 +- ..._1_1parser_1_1http__url__path-members.html | 2 +- classstdex_1_1parser_1_1http__url__path.html | 2 +- ...r_1_1http__url__path__segment-members.html | 2 +- ...1_1parser_1_1http__url__path__segment.html | 2 +- ..._1_1parser_1_1http__url__port-members.html | 2 +- classstdex_1_1parser_1_1http__url__port.html | 2 +- ..._1parser_1_1http__url__server-members.html | 2 +- ...sstdex_1_1parser_1_1http__url__server.html | 2 +- ...tdex_1_1parser_1_1http__value-members.html | 2 +- classstdex_1_1parser_1_1http__value.html | 2 +- ...er_1_1http__value__collection-members.html | 2 +- ..._1_1parser_1_1http__value__collection.html | 2 +- ...dex_1_1parser_1_1http__weight-members.html | 2 +- classstdex_1_1parser_1_1http__weight.html | 2 +- ...rser_1_1http__weighted__value-members.html | 2 +- ...ex_1_1parser_1_1http__weighted__value.html | 2 +- ...1parser_1_1parser__collection-members.html | 2 +- ...stdex_1_1parser_1_1parser__collection.html | 2 +- ...ex_1_1parser_1_1sgml__any__cp-members.html | 2 +- classstdex_1_1parser_1_1sgml__any__cp.html | 2 +- classstdex_1_1parser_1_1sgml__cp-members.html | 2 +- classstdex_1_1parser_1_1sgml__cp.html | 2 +- ...ex_1_1parser_1_1sgml__cp__set-members.html | 2 +- classstdex_1_1parser_1_1sgml__cp__set.html | 2 +- ...er_1_1sgml__dns__domain__char-members.html | 2 +- ..._1_1parser_1_1sgml__dns__domain__char.html | 2 +- ..._1sgml__ipv6__scope__id__char-members.html | 2 +- ...parser_1_1sgml__ipv6__scope__id__char.html | 2 +- ..._1_1parser_1_1sgml__punct__cp-members.html | 2 +- classstdex_1_1parser_1_1sgml__punct__cp.html | 2 +- ..._1_1parser_1_1sgml__space__cp-members.html | 2 +- classstdex_1_1parser_1_1sgml__space__cp.html | 2 +- ...1_1sgml__space__or__punct__cp-members.html | 2 +- ...1parser_1_1sgml__space__or__punct__cp.html | 2 +- ...dex_1_1parser_1_1sgml__string-members.html | 2 +- classstdex_1_1parser_1_1sgml__string.html | 2 +- ..._1_1sgml__url__password__char-members.html | 2 +- ..._1parser_1_1sgml__url__password__char.html | 2 +- ...rser_1_1sgml__url__path__char-members.html | 2 +- ...ex_1_1parser_1_1sgml__url__path__char.html | 2 +- ..._1_1sgml__url__username__char-members.html | 2 +- ..._1parser_1_1sgml__url__username__char.html | 2 +- classstdex_1_1progress-members.html | 2 +- classstdex_1_1progress.html | 2 +- classstdex_1_1progress__switcher-members.html | 2 +- classstdex_1_1progress__switcher.html | 2 +- classstdex_1_1ring-members.html | 2 +- classstdex_1_1ring.html | 2 +- classstdex_1_1sha1__hash-members.html | 2 +- classstdex_1_1sha1__hash.html | 2 +- ...ex_1_1stream_1_1async__reader-members.html | 2 +- classstdex_1_1stream_1_1async__reader.html | 2 +- ...ex_1_1stream_1_1async__writer-members.html | 2 +- classstdex_1_1stream_1_1async__writer.html | 2 +- classstdex_1_1stream_1_1basic-members.html | 2 +- classstdex_1_1stream_1_1basic.html | 2 +- ...tdex_1_1stream_1_1basic__file-members.html | 2 +- classstdex_1_1stream_1_1basic__file.html | 2 +- ...stdex_1_1stream_1_1basic__sys-members.html | 2 +- classstdex_1_1stream_1_1basic__sys.html | 2 +- classstdex_1_1stream_1_1buffer-members.html | 2 +- classstdex_1_1stream_1_1buffer.html | 2 +- ...ex_1_1stream_1_1buffered__sys-members.html | 2 +- classstdex_1_1stream_1_1buffered__sys.html | 2 +- classstdex_1_1stream_1_1cache-members.html | 2 +- classstdex_1_1stream_1_1cache.html | 2 +- ...dex_1_1stream_1_1cached__file-members.html | 2 +- classstdex_1_1stream_1_1cached__file.html | 2 +- ...sstdex_1_1stream_1_1converter-members.html | 2 +- classstdex_1_1stream_1_1converter.html | 2 +- ...stdex_1_1stream_1_1diag__file-members.html | 2 +- classstdex_1_1stream_1_1diag__file.html | 2 +- classstdex_1_1stream_1_1fifo-members.html | 2 +- classstdex_1_1stream_1_1fifo.html | 2 +- classstdex_1_1stream_1_1file-members.html | 2 +- classstdex_1_1stream_1_1file.html | 2 +- ...dex_1_1stream_1_1file__window-members.html | 2 +- classstdex_1_1stream_1_1file__window.html | 2 +- classstdex_1_1stream_1_1limiter-members.html | 2 +- classstdex_1_1stream_1_1limiter.html | 2 +- ...dex_1_1stream_1_1memory__file-members.html | 2 +- classstdex_1_1stream_1_1memory__file.html | 2 +- ...stdex_1_1stream_1_1replicator-members.html | 2 +- classstdex_1_1stream_1_1replicator.html | 2 +- ...tream_1_1replicator_1_1worker-members.html | 2 +- ...dex_1_1stream_1_1replicator_1_1worker.html | 2 +- classstdex_1_1stream_1_1socket-members.html | 2 +- classstdex_1_1stream_1_1socket.html | 2 +- classstdex_1_1stream_1_1window-members.html | 2 +- classstdex_1_1stream_1_1window.html | 2 +- classstdex_1_1stream__hasher-members.html | 2 +- classstdex_1_1stream__hasher.html | 2 +- classstdex_1_1sys__object-members.html | 2 +- classstdex_1_1sys__object.html | 2 +- classstdex_1_1user__cancelled-members.html | 2 +- classstdex_1_1user__cancelled.html | 2 +- classstdex_1_1vector__queue-members.html | 2 +- classstdex_1_1vector__queue.html | 2 +- classstdex_1_1watchdog-members.html | 2 +- classstdex_1_1watchdog.html | 2 +- dir_4be4f7b278e009bf0f1906cf31fb73bd.html | 2 +- dir_d44c64559bbebec7f509842c48db8b23.html | 2 +- dir_fca3c47b2ea228727bd6729832f89576.html | 2 +- endian_8hpp_source.html | 2 +- exception_8hpp_source.html | 2 +- files.html | 2 +- functions.html | 2 +- functions_b.html | 2 +- functions_c.html | 2 +- functions_d.html | 2 +- functions_e.html | 2 +- functions_f.html | 2 +- functions_func.html | 2 +- functions_func_b.html | 2 +- functions_func_c.html | 2 +- functions_func_d.html | 2 +- functions_func_e.html | 2 +- functions_func_f.html | 2 +- functions_func_g.html | 2 +- functions_func_h.html | 2 +- functions_func_i.html | 2 +- functions_func_l.html | 2 +- functions_func_m.html | 2 +- functions_func_n.html | 2 +- functions_func_o.html | 2 +- functions_func_p.html | 2 +- functions_func_q.html | 2 +- functions_func_r.html | 2 +- functions_func_s.html | 2 +- functions_func_t.html | 2 +- functions_func_u.html | 2 +- functions_func_v.html | 2 +- functions_func_w.html | 2 +- functions_func_~.html | 2 +- functions_g.html | 2 +- functions_h.html | 2 +- functions_i.html | 2 +- functions_l.html | 2 +- functions_m.html | 2 +- functions_n.html | 2 +- functions_o.html | 2 +- functions_p.html | 2 +- functions_q.html | 2 +- functions_r.html | 2 +- functions_rela.html | 2 +- functions_s.html | 2 +- functions_t.html | 2 +- functions_type.html | 2 +- functions_u.html | 2 +- functions_v.html | 2 +- functions_vars.html | 2 +- functions_w.html | 2 +- functions_~.html | 2 +- hash_8cpp_source.html | 2 +- hash_8hpp_source.html | 2 +- hex_8hpp_source.html | 2 +- hierarchy.html | 2 +- idrec_8hpp_source.html | 2 +- include_2stdex_2compat_8hpp_source.html | 2 +- index.html | 2 +- interval_8hpp_source.html | 2 +- mapping_8hpp_source.html | 2 +- math_8cpp_source.html | 2 +- math_8hpp_source.html | 2 +- memory_8hpp_source.html | 2 +- parser_8cpp_source.html | 2 +- parser_8hpp_source.html | 2 +- pch_8hpp_source.html | 2 +- progress_8hpp_source.html | 2 +- ring_8cpp_source.html | 2 +- ring_8hpp_source.html | 2 +- sgml_8cpp_source.html | 2 +- sgml_8hpp_source.html | 2 +- sgml__unicode_8hpp_source.html | 6 +- stream_8cpp_source.html | 2 +- stream_8hpp_source.html | 2 +- string_8hpp_source.html | 2216 ++++++++--------- ...stdex_1_1chrono_1_1aosn__date-members.html | 2 +- structstdex_1_1chrono_1_1aosn__date.html | 2 +- ..._1_1chrono_1_1aosn__timestamp-members.html | 2 +- structstdex_1_1chrono_1_1aosn__timestamp.html | 2 +- ...stdex_1_1free__locale__delete-members.html | 2 +- structstdex_1_1free__locale__delete.html | 2 +- structstdex_1_1interval-members.html | 2 +- structstdex_1_1interval.html | 2 +- structstdex_1_1mapping-members.html | 2 +- structstdex_1_1mapping.html | 2 +- structstdex_1_1no__delete-members.html | 2 +- structstdex_1_1no__delete.html | 2 +- ..._1_1no__delete_3_01_t_0f_0e_4-members.html | 2 +- structstdex_1_1no__delete_3_01_t_0f_0e_4.html | 2 +- ...1parser_1_1http__factor__more-members.html | 2 +- ...stdex_1_1parser_1_1http__factor__more.html | 2 +- ...stream_1_1buffer_1_1buffer__t-members.html | 2 +- ...tdex_1_1stream_1_1buffer_1_1buffer__t.html | 2 +- ..._1_1stream_1_1fifo_1_1node__t-members.html | 2 +- structstdex_1_1stream_1_1fifo_1_1node__t.html | 2 +- structstdex_1_1sys__info__t-members.html | 2 +- structstdex_1_1sys__info__t.html | 2 +- sys__info_8hpp_source.html | 4 +- system_8hpp_source.html | 2 +- unicode_8cpp_source.html | 2 +- unicode_8hpp_source.html | 2 +- unionstdex_1_1md2__t-members.html | 2 +- unionstdex_1_1md2__t.html | 2 +- unionstdex_1_1sha256__t-members.html | 2 +- unionstdex_1_1sha256__t.html | 2 +- unionstdex_1_1sha__t-members.html | 2 +- unionstdex_1_1sha__t.html | 2 +- uuid_8hpp_source.html | 2 +- vector__queue_8hpp_source.html | 2 +- watchdog_8cpp_source.html | 2 +- watchdog_8hpp_source.html | 2 +- windows_8h_source.html | 2 +- 387 files changed, 1498 insertions(+), 1500 deletions(-) diff --git a/_unit_tests_2compat_8hpp_source.html b/_unit_tests_2compat_8hpp_source.html index 66b4b0bb1..e2c843d74 100644 --- a/_unit_tests_2compat_8hpp_source.html +++ b/_unit_tests_2compat_8hpp_source.html @@ -170,7 +170,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/annotated.html b/annotated.html index 2eaa02667..ce2e2977d 100644 --- a/annotated.html +++ b/annotated.html @@ -236,7 +236,7 @@ $(function() { diff --git a/base64_8hpp_source.html b/base64_8hpp_source.html index 7ea5602d7..e2c0ff0fa 100644 --- a/base64_8hpp_source.html +++ b/base64_8hpp_source.html @@ -98,14 +98,14 @@ $(document).ready(function() { init_codefold(0); });
14
15namespace stdex
16{
-
18 const char base64_enc_lookup[64] = {
+
18 inline const char base64_enc_lookup[64] = {
19 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',
20 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f',
21 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
22 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'
23 };
24
-
25 const uint8_t base64_dec_lookup[256] = {
+
25 inline const uint8_t base64_dec_lookup[256] = {
26 /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
27 /* 0 */ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
28 /* 1 */ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
@@ -542,7 +542,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/chrono_8hpp_source.html b/chrono_8hpp_source.html index d01392237..3de6a8da8 100644 --- a/chrono_8hpp_source.html +++ b/chrono_8hpp_source.html @@ -466,7 +466,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/classes.html b/classes.html index c26d27161..cc19b64d4 100644 --- a/classes.html +++ b/classes.html @@ -130,7 +130,7 @@ $(function() { diff --git a/classstdex_1_1base64__dec-members.html b/classstdex_1_1base64__dec-members.html index 0468ac7cf..56fb231be 100644 --- a/classstdex_1_1base64__dec-members.html +++ b/classstdex_1_1base64__dec-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1base64__dec.html b/classstdex_1_1base64__dec.html index 1a7407a35..0878a7a38 100644 --- a/classstdex_1_1base64__dec.html +++ b/classstdex_1_1base64__dec.html @@ -239,7 +239,7 @@ template<class _Ty , class _Ax , class _Tchr > diff --git a/classstdex_1_1base64__enc-members.html b/classstdex_1_1base64__enc-members.html index fda23de97..aead1cabd 100644 --- a/classstdex_1_1base64__enc-members.html +++ b/classstdex_1_1base64__enc-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1base64__enc.html b/classstdex_1_1base64__enc.html index 5f0cae5a3..98440578e 100644 --- a/classstdex_1_1base64__enc.html +++ b/classstdex_1_1base64__enc.html @@ -244,7 +244,7 @@ template<class _Elem , class _Traits , class _Ax > diff --git a/classstdex_1_1base64__reader-members.html b/classstdex_1_1base64__reader-members.html index ef10c1b7c..73940d027 100644 --- a/classstdex_1_1base64__reader-members.html +++ b/classstdex_1_1base64__reader-members.html @@ -162,7 +162,7 @@ $(function() { diff --git a/classstdex_1_1base64__reader.html b/classstdex_1_1base64__reader.html index add2ef773..1ffbe4415 100644 --- a/classstdex_1_1base64__reader.html +++ b/classstdex_1_1base64__reader.html @@ -443,7 +443,7 @@ size_t m_num diff --git a/classstdex_1_1base64__writer-members.html b/classstdex_1_1base64__writer-members.html index a4d8a8774..e6576b2c4 100644 --- a/classstdex_1_1base64__writer-members.html +++ b/classstdex_1_1base64__writer-members.html @@ -164,7 +164,7 @@ $(function() { diff --git a/classstdex_1_1base64__writer.html b/classstdex_1_1base64__writer.html index f0582268d..77c8c998c 100644 --- a/classstdex_1_1base64__writer.html +++ b/classstdex_1_1base64__writer.html @@ -450,7 +450,7 @@ size_t m_num diff --git a/classstdex_1_1basic__hash-members.html b/classstdex_1_1basic__hash-members.html index 95c1a6889..a0284ece6 100644 --- a/classstdex_1_1basic__hash-members.html +++ b/classstdex_1_1basic__hash-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1basic__hash.html b/classstdex_1_1basic__hash.html index 8a4a16d68..cc01abade 100644 --- a/classstdex_1_1basic__hash.html +++ b/classstdex_1_1basic__hash.html @@ -255,7 +255,7 @@ template<class T > diff --git a/classstdex_1_1block__hash-members.html b/classstdex_1_1block__hash-members.html index 207a5a986..94f97b7ee 100644 --- a/classstdex_1_1block__hash-members.html +++ b/classstdex_1_1block__hash-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1block__hash.html b/classstdex_1_1block__hash.html index 1cc8a6b9d..5b2e00cf0 100644 --- a/classstdex_1_1block__hash.html +++ b/classstdex_1_1block__hash.html @@ -245,7 +245,7 @@ template<class T > diff --git a/classstdex_1_1charset__encoder-members.html b/classstdex_1_1charset__encoder-members.html index e7de8950a..372310356 100644 --- a/classstdex_1_1charset__encoder-members.html +++ b/classstdex_1_1charset__encoder-members.html @@ -102,7 +102,7 @@ $(function() { diff --git a/classstdex_1_1charset__encoder.html b/classstdex_1_1charset__encoder.html index c77f0bfd4..8fd64e743 100644 --- a/classstdex_1_1charset__encoder.html +++ b/classstdex_1_1charset__encoder.html @@ -607,7 +607,7 @@ template<class _Traits_to = std::char_traits<T_to>, class _Alloc_to = diff --git a/classstdex_1_1crc32__hash-members.html b/classstdex_1_1crc32__hash-members.html index 0e7512e7d..77c551e5e 100644 --- a/classstdex_1_1crc32__hash-members.html +++ b/classstdex_1_1crc32__hash-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1crc32__hash.html b/classstdex_1_1crc32__hash.html index b797ed7b3..1d1345f88 100644 --- a/classstdex_1_1crc32__hash.html +++ b/classstdex_1_1crc32__hash.html @@ -245,7 +245,7 @@ crc32_t m_value diff --git a/classstdex_1_1global__progress-members.html b/classstdex_1_1global__progress-members.html index e6f3042ba..cbc9cf398 100644 --- a/classstdex_1_1global__progress-members.html +++ b/classstdex_1_1global__progress-members.html @@ -97,7 +97,7 @@ $(function() { diff --git a/classstdex_1_1global__progress.html b/classstdex_1_1global__progress.html index 2cb090ee7..ceebb0188 100644 --- a/classstdex_1_1global__progress.html +++ b/classstdex_1_1global__progress.html @@ -547,7 +547,7 @@ template<class T > diff --git a/classstdex_1_1hex__dec-members.html b/classstdex_1_1hex__dec-members.html index ce29138dd..e632f0ae6 100644 --- a/classstdex_1_1hex__dec-members.html +++ b/classstdex_1_1hex__dec-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/classstdex_1_1hex__dec.html b/classstdex_1_1hex__dec.html index 849377102..a0b2e06c0 100644 --- a/classstdex_1_1hex__dec.html +++ b/classstdex_1_1hex__dec.html @@ -221,7 +221,7 @@ template<class _Ty , class _Ax , class _Tchr > diff --git a/classstdex_1_1hex__enc-members.html b/classstdex_1_1hex__enc-members.html index de6ca6490..464ca7b98 100644 --- a/classstdex_1_1hex__enc-members.html +++ b/classstdex_1_1hex__enc-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/classstdex_1_1hex__enc.html b/classstdex_1_1hex__enc.html index 20ab35a0a..f2d696eac 100644 --- a/classstdex_1_1hex__enc.html +++ b/classstdex_1_1hex__enc.html @@ -198,7 +198,7 @@ template<class _Elem , class _Traits , class _Ax > diff --git a/classstdex_1_1idrec_1_1record-members.html b/classstdex_1_1idrec_1_1record-members.html index 2f0715da3..1b584f51a 100644 --- a/classstdex_1_1idrec_1_1record-members.html +++ b/classstdex_1_1idrec_1_1record-members.html @@ -100,7 +100,7 @@ $(function() { diff --git a/classstdex_1_1idrec_1_1record.html b/classstdex_1_1idrec_1_1record.html index 4434c6e8a..4b51325ca 100644 --- a/classstdex_1_1idrec_1_1record.html +++ b/classstdex_1_1idrec_1_1record.html @@ -837,7 +837,7 @@ template<class T , class T_ID , const T_ID ID, class T_SIZE , T_SIZE ALIGN> diff --git a/classstdex_1_1lazy__progress-members.html b/classstdex_1_1lazy__progress-members.html index 1a55efb5e..7af8c876f 100644 --- a/classstdex_1_1lazy__progress-members.html +++ b/classstdex_1_1lazy__progress-members.html @@ -95,7 +95,7 @@ $(function() { diff --git a/classstdex_1_1lazy__progress.html b/classstdex_1_1lazy__progress.html index d0a4f2cad..4d3b547de 100644 --- a/classstdex_1_1lazy__progress.html +++ b/classstdex_1_1lazy__progress.html @@ -279,7 +279,7 @@ template<class T > diff --git a/classstdex_1_1md5__hash-members.html b/classstdex_1_1md5__hash-members.html index e4eb3f316..add301e17 100644 --- a/classstdex_1_1md5__hash-members.html +++ b/classstdex_1_1md5__hash-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1md5__hash.html b/classstdex_1_1md5__hash.html index 148a04d34..bcc9df184 100644 --- a/classstdex_1_1md5__hash.html +++ b/classstdex_1_1md5__hash.html @@ -259,7 +259,7 @@ uint32_t m_temp [16] diff --git a/classstdex_1_1parser_1_1basic__angle-members.html b/classstdex_1_1parser_1_1basic__angle-members.html index 7d35a54c5..50ff03629 100644 --- a/classstdex_1_1parser_1_1basic__angle-members.html +++ b/classstdex_1_1parser_1_1basic__angle-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__angle.html b/classstdex_1_1parser_1_1basic__angle.html index e48fe4170..874aa1572 100644 --- a/classstdex_1_1parser_1_1basic__angle.html +++ b/classstdex_1_1parser_1_1basic__angle.html @@ -244,7 +244,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__any__cu-members.html b/classstdex_1_1parser_1_1basic__any__cu-members.html index fc4a66eb8..c631f2142 100644 --- a/classstdex_1_1parser_1_1basic__any__cu-members.html +++ b/classstdex_1_1parser_1_1basic__any__cu-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__any__cu.html b/classstdex_1_1parser_1_1basic__any__cu.html index 05224f1ff..0cdeac181 100644 --- a/classstdex_1_1parser_1_1basic__any__cu.html +++ b/classstdex_1_1parser_1_1basic__any__cu.html @@ -191,7 +191,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__bol-members.html b/classstdex_1_1parser_1_1basic__bol-members.html index 9b17f985e..1a25e275e 100644 --- a/classstdex_1_1parser_1_1basic__bol-members.html +++ b/classstdex_1_1parser_1_1basic__bol-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__bol.html b/classstdex_1_1parser_1_1basic__bol.html index e0269f0e8..89180478f 100644 --- a/classstdex_1_1parser_1_1basic__bol.html +++ b/classstdex_1_1parser_1_1basic__bol.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__branch-members.html b/classstdex_1_1parser_1_1basic__branch-members.html index 22bf3e634..0fc78f811 100644 --- a/classstdex_1_1parser_1_1basic__branch-members.html +++ b/classstdex_1_1parser_1_1basic__branch-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__branch.html b/classstdex_1_1parser_1_1basic__branch.html index 16de398c6..a2570207c 100644 --- a/classstdex_1_1parser_1_1basic__branch.html +++ b/classstdex_1_1parser_1_1basic__branch.html @@ -253,7 +253,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__chemical__formula-members.html b/classstdex_1_1parser_1_1basic__chemical__formula-members.html index 20f46e2f5..c4d8466ee 100644 --- a/classstdex_1_1parser_1_1basic__chemical__formula-members.html +++ b/classstdex_1_1parser_1_1basic__chemical__formula-members.html @@ -97,7 +97,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__chemical__formula.html b/classstdex_1_1parser_1_1basic__chemical__formula.html index 895eeac6a..da2ba2079 100644 --- a/classstdex_1_1parser_1_1basic__chemical__formula.html +++ b/classstdex_1_1parser_1_1basic__chemical__formula.html @@ -239,7 +239,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__creditor__reference-members.html b/classstdex_1_1parser_1_1basic__creditor__reference-members.html index 5786a81aa..4974601ad 100644 --- a/classstdex_1_1parser_1_1basic__creditor__reference-members.html +++ b/classstdex_1_1parser_1_1basic__creditor__reference-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__creditor__reference.html b/classstdex_1_1parser_1_1basic__creditor__reference.html index a57bb706a..d431aba7f 100644 --- a/classstdex_1_1parser_1_1basic__creditor__reference.html +++ b/classstdex_1_1parser_1_1basic__creditor__reference.html @@ -240,7 +240,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__cu-members.html b/classstdex_1_1parser_1_1basic__cu-members.html index 78bba52f6..f7f18af7a 100644 --- a/classstdex_1_1parser_1_1basic__cu-members.html +++ b/classstdex_1_1parser_1_1basic__cu-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__cu.html b/classstdex_1_1parser_1_1basic__cu.html index a02a9565a..edaca134d 100644 --- a/classstdex_1_1parser_1_1basic__cu.html +++ b/classstdex_1_1parser_1_1basic__cu.html @@ -201,7 +201,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__cu__set-members.html b/classstdex_1_1parser_1_1basic__cu__set-members.html index 9973d221b..fd7b1f3c6 100644 --- a/classstdex_1_1parser_1_1basic__cu__set-members.html +++ b/classstdex_1_1parser_1_1basic__cu__set-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__cu__set.html b/classstdex_1_1parser_1_1basic__cu__set.html index 2e115adbf..27443f2d1 100644 --- a/classstdex_1_1parser_1_1basic__cu__set.html +++ b/classstdex_1_1parser_1_1basic__cu__set.html @@ -210,7 +210,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__date-members.html b/classstdex_1_1parser_1_1basic__date-members.html index 2d2e32131..a5577d680 100644 --- a/classstdex_1_1parser_1_1basic__date-members.html +++ b/classstdex_1_1parser_1_1basic__date-members.html @@ -100,7 +100,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__date.html b/classstdex_1_1parser_1_1basic__date.html index f5e87f15c..9e870ef7a 100644 --- a/classstdex_1_1parser_1_1basic__date.html +++ b/classstdex_1_1parser_1_1basic__date.html @@ -252,7 +252,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__dns__domain__char-members.html b/classstdex_1_1parser_1_1basic__dns__domain__char-members.html index 02daa1838..968063894 100644 --- a/classstdex_1_1parser_1_1basic__dns__domain__char-members.html +++ b/classstdex_1_1parser_1_1basic__dns__domain__char-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__dns__domain__char.html b/classstdex_1_1parser_1_1basic__dns__domain__char.html index 770b5d962..d52fd0405 100644 --- a/classstdex_1_1parser_1_1basic__dns__domain__char.html +++ b/classstdex_1_1parser_1_1basic__dns__domain__char.html @@ -203,7 +203,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__dns__name-members.html b/classstdex_1_1parser_1_1basic__dns__name-members.html index 6792f98bb..5aff60fe3 100644 --- a/classstdex_1_1parser_1_1basic__dns__name-members.html +++ b/classstdex_1_1parser_1_1basic__dns__name-members.html @@ -95,7 +95,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__dns__name.html b/classstdex_1_1parser_1_1basic__dns__name.html index 8f74e57e8..95cdd53ef 100644 --- a/classstdex_1_1parser_1_1basic__dns__name.html +++ b/classstdex_1_1parser_1_1basic__dns__name.html @@ -205,7 +205,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__email__address-members.html b/classstdex_1_1parser_1_1basic__email__address-members.html index a6548777f..983602b46 100644 --- a/classstdex_1_1parser_1_1basic__email__address-members.html +++ b/classstdex_1_1parser_1_1basic__email__address-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__email__address.html b/classstdex_1_1parser_1_1basic__email__address.html index 628be5452..008a8257c 100644 --- a/classstdex_1_1parser_1_1basic__email__address.html +++ b/classstdex_1_1parser_1_1basic__email__address.html @@ -245,7 +245,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__emoticon-members.html b/classstdex_1_1parser_1_1basic__emoticon-members.html index b8ad9e91c..a756cf841 100644 --- a/classstdex_1_1parser_1_1basic__emoticon-members.html +++ b/classstdex_1_1parser_1_1basic__emoticon-members.html @@ -97,7 +97,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__emoticon.html b/classstdex_1_1parser_1_1basic__emoticon.html index c33785015..39114d22a 100644 --- a/classstdex_1_1parser_1_1basic__emoticon.html +++ b/classstdex_1_1parser_1_1basic__emoticon.html @@ -243,7 +243,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__eol-members.html b/classstdex_1_1parser_1_1basic__eol-members.html index 34dc9803c..40e1bfcf4 100644 --- a/classstdex_1_1parser_1_1basic__eol-members.html +++ b/classstdex_1_1parser_1_1basic__eol-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__eol.html b/classstdex_1_1parser_1_1basic__eol.html index 3bf6014fd..7bfacb914 100644 --- a/classstdex_1_1parser_1_1basic__eol.html +++ b/classstdex_1_1parser_1_1basic__eol.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__fraction-members.html b/classstdex_1_1parser_1_1basic__fraction-members.html index da4c7b1dd..6f762436d 100644 --- a/classstdex_1_1parser_1_1basic__fraction-members.html +++ b/classstdex_1_1parser_1_1basic__fraction-members.html @@ -95,7 +95,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__fraction.html b/classstdex_1_1parser_1_1basic__fraction.html index 54590e2d4..bfd53cf73 100644 --- a/classstdex_1_1parser_1_1basic__fraction.html +++ b/classstdex_1_1parser_1_1basic__fraction.html @@ -232,7 +232,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__iban-members.html b/classstdex_1_1parser_1_1basic__iban-members.html index 2f6abbcc6..65a4397dc 100644 --- a/classstdex_1_1parser_1_1basic__iban-members.html +++ b/classstdex_1_1parser_1_1basic__iban-members.html @@ -97,7 +97,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__iban.html b/classstdex_1_1parser_1_1basic__iban.html index 9aa64d0aa..bcf568572 100644 --- a/classstdex_1_1parser_1_1basic__iban.html +++ b/classstdex_1_1parser_1_1basic__iban.html @@ -244,7 +244,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__integer-members.html b/classstdex_1_1parser_1_1basic__integer-members.html index 3f7450fbb..c31f335ae 100644 --- a/classstdex_1_1parser_1_1basic__integer-members.html +++ b/classstdex_1_1parser_1_1basic__integer-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__integer.html b/classstdex_1_1parser_1_1basic__integer.html index cb31c4c24..e96cf1765 100644 --- a/classstdex_1_1parser_1_1basic__integer.html +++ b/classstdex_1_1parser_1_1basic__integer.html @@ -180,7 +180,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__integer10-members.html b/classstdex_1_1parser_1_1basic__integer10-members.html index 5c6a9ed37..f2194217f 100644 --- a/classstdex_1_1parser_1_1basic__integer10-members.html +++ b/classstdex_1_1parser_1_1basic__integer10-members.html @@ -104,7 +104,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__integer10.html b/classstdex_1_1parser_1_1basic__integer10.html index a566ec237..f6d522bc0 100644 --- a/classstdex_1_1parser_1_1basic__integer10.html +++ b/classstdex_1_1parser_1_1basic__integer10.html @@ -234,7 +234,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__integer10ts-members.html b/classstdex_1_1parser_1_1basic__integer10ts-members.html index 807460898..ca172464d 100644 --- a/classstdex_1_1parser_1_1basic__integer10ts-members.html +++ b/classstdex_1_1parser_1_1basic__integer10ts-members.html @@ -98,7 +98,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__integer10ts.html b/classstdex_1_1parser_1_1basic__integer10ts.html index faa3f60db..53cc0b9ae 100644 --- a/classstdex_1_1parser_1_1basic__integer10ts.html +++ b/classstdex_1_1parser_1_1basic__integer10ts.html @@ -248,7 +248,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__integer16-members.html b/classstdex_1_1parser_1_1basic__integer16-members.html index 610ffc187..b6d612acf 100644 --- a/classstdex_1_1parser_1_1basic__integer16-members.html +++ b/classstdex_1_1parser_1_1basic__integer16-members.html @@ -110,7 +110,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__integer16.html b/classstdex_1_1parser_1_1basic__integer16.html index 7bbf7b233..cc6b4580c 100644 --- a/classstdex_1_1parser_1_1basic__integer16.html +++ b/classstdex_1_1parser_1_1basic__integer16.html @@ -252,7 +252,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__ipv4__address-members.html b/classstdex_1_1parser_1_1basic__ipv4__address-members.html index 95e6e68ae..4a3c6c74d 100644 --- a/classstdex_1_1parser_1_1basic__ipv4__address-members.html +++ b/classstdex_1_1parser_1_1basic__ipv4__address-members.html @@ -105,7 +105,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__ipv4__address.html b/classstdex_1_1parser_1_1basic__ipv4__address.html index ff53bf250..1f13fb2f2 100644 --- a/classstdex_1_1parser_1_1basic__ipv4__address.html +++ b/classstdex_1_1parser_1_1basic__ipv4__address.html @@ -265,7 +265,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__ipv6__address-members.html b/classstdex_1_1parser_1_1basic__ipv6__address-members.html index f9a237785..91b337b85 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__address-members.html +++ b/classstdex_1_1parser_1_1basic__ipv6__address-members.html @@ -113,7 +113,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__ipv6__address.html b/classstdex_1_1parser_1_1basic__ipv6__address.html index 02fdd0d7d..2a86ecc47 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__address.html +++ b/classstdex_1_1parser_1_1basic__ipv6__address.html @@ -290,7 +290,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__ipv6__scope__id__char-members.html b/classstdex_1_1parser_1_1basic__ipv6__scope__id__char-members.html index 4d6860c72..fe1e7f217 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__scope__id__char-members.html +++ b/classstdex_1_1parser_1_1basic__ipv6__scope__id__char-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html b/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html index 23bc5f053..9f7570059 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html +++ b/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html @@ -191,7 +191,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__iterations-members.html b/classstdex_1_1parser_1_1basic__iterations-members.html index ea36ed2e5..9752d66ca 100644 --- a/classstdex_1_1parser_1_1basic__iterations-members.html +++ b/classstdex_1_1parser_1_1basic__iterations-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__iterations.html b/classstdex_1_1parser_1_1basic__iterations.html index 3223d018e..7161921f3 100644 --- a/classstdex_1_1parser_1_1basic__iterations.html +++ b/classstdex_1_1parser_1_1basic__iterations.html @@ -211,7 +211,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__json__string-members.html b/classstdex_1_1parser_1_1basic__json__string-members.html index c6a11e5f3..a447a2133 100644 --- a/classstdex_1_1parser_1_1basic__json__string-members.html +++ b/classstdex_1_1parser_1_1basic__json__string-members.html @@ -104,7 +104,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__json__string.html b/classstdex_1_1parser_1_1basic__json__string.html index a5771b6f0..b05081212 100644 --- a/classstdex_1_1parser_1_1basic__json__string.html +++ b/classstdex_1_1parser_1_1basic__json__string.html @@ -260,7 +260,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__mixed__numeral-members.html b/classstdex_1_1parser_1_1basic__mixed__numeral-members.html index 3e02d7fa5..62e0daf54 100644 --- a/classstdex_1_1parser_1_1basic__mixed__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__mixed__numeral-members.html @@ -98,7 +98,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__mixed__numeral.html b/classstdex_1_1parser_1_1basic__mixed__numeral.html index f2df74a1d..ba8017c70 100644 --- a/classstdex_1_1parser_1_1basic__mixed__numeral.html +++ b/classstdex_1_1parser_1_1basic__mixed__numeral.html @@ -247,7 +247,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__monetary__numeral-members.html b/classstdex_1_1parser_1_1basic__monetary__numeral-members.html index 5221c285d..7ca2a7dba 100644 --- a/classstdex_1_1parser_1_1basic__monetary__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__monetary__numeral-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__monetary__numeral.html b/classstdex_1_1parser_1_1basic__monetary__numeral.html index 89ed1fad1..ca6c7fb78 100644 --- a/classstdex_1_1parser_1_1basic__monetary__numeral.html +++ b/classstdex_1_1parser_1_1basic__monetary__numeral.html @@ -251,7 +251,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__noop-members.html b/classstdex_1_1parser_1_1basic__noop-members.html index ba04154a3..280d404a1 100644 --- a/classstdex_1_1parser_1_1basic__noop-members.html +++ b/classstdex_1_1parser_1_1basic__noop-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__noop.html b/classstdex_1_1parser_1_1basic__noop.html index 1156dd754..a30caf881 100644 --- a/classstdex_1_1parser_1_1basic__noop.html +++ b/classstdex_1_1parser_1_1basic__noop.html @@ -188,7 +188,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__parser-members.html b/classstdex_1_1parser_1_1basic__parser-members.html index 19c2191bd..d3cf94a8a 100644 --- a/classstdex_1_1parser_1_1basic__parser-members.html +++ b/classstdex_1_1parser_1_1basic__parser-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__parser.html b/classstdex_1_1parser_1_1basic__parser.html index 6a9a9ae1b..82628e61b 100644 --- a/classstdex_1_1parser_1_1basic__parser.html +++ b/classstdex_1_1parser_1_1basic__parser.html @@ -188,7 +188,7 @@ class stdex::parser::basic_parser< T >

Base template for all parse

diff --git a/classstdex_1_1parser_1_1basic__permutation-members.html b/classstdex_1_1parser_1_1basic__permutation-members.html index 18fd2a184..8bff076f5 100644 --- a/classstdex_1_1parser_1_1basic__permutation-members.html +++ b/classstdex_1_1parser_1_1basic__permutation-members.html @@ -98,7 +98,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__permutation.html b/classstdex_1_1parser_1_1basic__permutation.html index d2e4fe0a5..1c836d58f 100644 --- a/classstdex_1_1parser_1_1basic__permutation.html +++ b/classstdex_1_1parser_1_1basic__permutation.html @@ -216,7 +216,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__phone__number-members.html b/classstdex_1_1parser_1_1basic__phone__number-members.html index b9a46440a..49e4d7b55 100644 --- a/classstdex_1_1parser_1_1basic__phone__number-members.html +++ b/classstdex_1_1parser_1_1basic__phone__number-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__phone__number.html b/classstdex_1_1parser_1_1basic__phone__number.html index 9e83c292c..389fd81d6 100644 --- a/classstdex_1_1parser_1_1basic__phone__number.html +++ b/classstdex_1_1parser_1_1basic__phone__number.html @@ -246,7 +246,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__punct__cu-members.html b/classstdex_1_1parser_1_1basic__punct__cu-members.html index 6d6386859..6f8c945df 100644 --- a/classstdex_1_1parser_1_1basic__punct__cu-members.html +++ b/classstdex_1_1parser_1_1basic__punct__cu-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__punct__cu.html b/classstdex_1_1parser_1_1basic__punct__cu.html index 8bbb9c759..34e2498e7 100644 --- a/classstdex_1_1parser_1_1basic__punct__cu.html +++ b/classstdex_1_1parser_1_1basic__punct__cu.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__roman__numeral-members.html b/classstdex_1_1parser_1_1basic__roman__numeral-members.html index 96a40320d..9230f44b6 100644 --- a/classstdex_1_1parser_1_1basic__roman__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__roman__numeral-members.html @@ -103,7 +103,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__roman__numeral.html b/classstdex_1_1parser_1_1basic__roman__numeral.html index 8f97a9179..114f331c5 100644 --- a/classstdex_1_1parser_1_1basic__roman__numeral.html +++ b/classstdex_1_1parser_1_1basic__roman__numeral.html @@ -231,7 +231,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__scientific__numeral-members.html b/classstdex_1_1parser_1_1basic__scientific__numeral-members.html index 3e826d3d8..53c07574f 100644 --- a/classstdex_1_1parser_1_1basic__scientific__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__scientific__numeral-members.html @@ -103,7 +103,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__scientific__numeral.html b/classstdex_1_1parser_1_1basic__scientific__numeral.html index 989c58901..4bde443ce 100644 --- a/classstdex_1_1parser_1_1basic__scientific__numeral.html +++ b/classstdex_1_1parser_1_1basic__scientific__numeral.html @@ -267,7 +267,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__score-members.html b/classstdex_1_1parser_1_1basic__score-members.html index 99a931f83..6e0055dc3 100644 --- a/classstdex_1_1parser_1_1basic__score-members.html +++ b/classstdex_1_1parser_1_1basic__score-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__score.html b/classstdex_1_1parser_1_1basic__score.html index d9464515e..603580830 100644 --- a/classstdex_1_1parser_1_1basic__score.html +++ b/classstdex_1_1parser_1_1basic__score.html @@ -236,7 +236,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__sequence-members.html b/classstdex_1_1parser_1_1basic__sequence-members.html index 4ef1c9bfc..c5173029a 100644 --- a/classstdex_1_1parser_1_1basic__sequence-members.html +++ b/classstdex_1_1parser_1_1basic__sequence-members.html @@ -97,7 +97,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__sequence.html b/classstdex_1_1parser_1_1basic__sequence.html index 837c22f3f..09db22168 100644 --- a/classstdex_1_1parser_1_1basic__sequence.html +++ b/classstdex_1_1parser_1_1basic__sequence.html @@ -209,7 +209,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__set-members.html b/classstdex_1_1parser_1_1basic__set-members.html index ac159fffa..986a2e47f 100644 --- a/classstdex_1_1parser_1_1basic__set-members.html +++ b/classstdex_1_1parser_1_1basic__set-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__set.html b/classstdex_1_1parser_1_1basic__set.html index 786e1a9e4..e4479784e 100644 --- a/classstdex_1_1parser_1_1basic__set.html +++ b/classstdex_1_1parser_1_1basic__set.html @@ -223,7 +223,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__si__reference-members.html b/classstdex_1_1parser_1_1basic__si__reference-members.html index 44432f589..625229ae7 100644 --- a/classstdex_1_1parser_1_1basic__si__reference-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference-members.html @@ -102,7 +102,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__si__reference.html b/classstdex_1_1parser_1_1basic__si__reference.html index 1f1661119..c0783f498 100644 --- a/classstdex_1_1parser_1_1basic__si__reference.html +++ b/classstdex_1_1parser_1_1basic__si__reference.html @@ -265,7 +265,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html b/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html index 1e38e96c8..c5c8bd2c3 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__si__reference__delimiter.html b/classstdex_1_1parser_1_1basic__si__reference__delimiter.html index d98d278d8..4981868be 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__delimiter.html +++ b/classstdex_1_1parser_1_1basic__si__reference__delimiter.html @@ -192,7 +192,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__si__reference__part-members.html b/classstdex_1_1parser_1_1basic__si__reference__part-members.html index 2b4fa2507..74906c4b6 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__part-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference__part-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__si__reference__part.html b/classstdex_1_1parser_1_1basic__si__reference__part.html index 6e4157239..96778a531 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__part.html +++ b/classstdex_1_1parser_1_1basic__si__reference__part.html @@ -192,7 +192,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__signed__numeral-members.html b/classstdex_1_1parser_1_1basic__signed__numeral-members.html index fd343ab92..7888d3736 100644 --- a/classstdex_1_1parser_1_1basic__signed__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__signed__numeral-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__signed__numeral.html b/classstdex_1_1parser_1_1basic__signed__numeral.html index c54144a46..c4565d892 100644 --- a/classstdex_1_1parser_1_1basic__signed__numeral.html +++ b/classstdex_1_1parser_1_1basic__signed__numeral.html @@ -239,7 +239,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__space__cu-members.html b/classstdex_1_1parser_1_1basic__space__cu-members.html index 1d284350c..b86a3d260 100644 --- a/classstdex_1_1parser_1_1basic__space__cu-members.html +++ b/classstdex_1_1parser_1_1basic__space__cu-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__space__cu.html b/classstdex_1_1parser_1_1basic__space__cu.html index 6b73fe8f2..67dafb445 100644 --- a/classstdex_1_1parser_1_1basic__space__cu.html +++ b/classstdex_1_1parser_1_1basic__space__cu.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__space__or__punct__cu-members.html b/classstdex_1_1parser_1_1basic__space__or__punct__cu-members.html index 137b82726..8363045ab 100644 --- a/classstdex_1_1parser_1_1basic__space__or__punct__cu-members.html +++ b/classstdex_1_1parser_1_1basic__space__or__punct__cu-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__space__or__punct__cu.html b/classstdex_1_1parser_1_1basic__space__or__punct__cu.html index 678e43dac..015e8fdbf 100644 --- a/classstdex_1_1parser_1_1basic__space__or__punct__cu.html +++ b/classstdex_1_1parser_1_1basic__space__or__punct__cu.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__string-members.html b/classstdex_1_1parser_1_1basic__string-members.html index d539fa16f..16a7a3401 100644 --- a/classstdex_1_1parser_1_1basic__string-members.html +++ b/classstdex_1_1parser_1_1basic__string-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__string.html b/classstdex_1_1parser_1_1basic__string.html index c449b085d..c140c21cb 100644 --- a/classstdex_1_1parser_1_1basic__string.html +++ b/classstdex_1_1parser_1_1basic__string.html @@ -198,7 +198,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__string__branch-members.html b/classstdex_1_1parser_1_1basic__string__branch-members.html index c55a43f41..ed042561c 100644 --- a/classstdex_1_1parser_1_1basic__string__branch-members.html +++ b/classstdex_1_1parser_1_1basic__string__branch-members.html @@ -104,7 +104,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__string__branch.html b/classstdex_1_1parser_1_1basic__string__branch.html index 94c107fc0..6a5e9c2df 100644 --- a/classstdex_1_1parser_1_1basic__string__branch.html +++ b/classstdex_1_1parser_1_1basic__string__branch.html @@ -185,7 +185,7 @@ class stdex::parser::basic_string_branch< T, T_parser >

Test for a

diff --git a/classstdex_1_1parser_1_1basic__time-members.html b/classstdex_1_1parser_1_1basic__time-members.html index 85db02d17..dc336382f 100644 --- a/classstdex_1_1parser_1_1basic__time-members.html +++ b/classstdex_1_1parser_1_1basic__time-members.html @@ -98,7 +98,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__time.html b/classstdex_1_1parser_1_1basic__time.html index ae594bcc5..db7057da2 100644 --- a/classstdex_1_1parser_1_1basic__time.html +++ b/classstdex_1_1parser_1_1basic__time.html @@ -242,7 +242,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__url-members.html b/classstdex_1_1parser_1_1basic__url-members.html index b7d32c805..f466418ba 100644 --- a/classstdex_1_1parser_1_1basic__url-members.html +++ b/classstdex_1_1parser_1_1basic__url-members.html @@ -108,7 +108,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__url.html b/classstdex_1_1parser_1_1basic__url.html index f91f0762f..6104b5177 100644 --- a/classstdex_1_1parser_1_1basic__url.html +++ b/classstdex_1_1parser_1_1basic__url.html @@ -272,7 +272,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__url__password__char-members.html b/classstdex_1_1parser_1_1basic__url__password__char-members.html index 69f5092af..1dd02640f 100644 --- a/classstdex_1_1parser_1_1basic__url__password__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__password__char-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__url__password__char.html b/classstdex_1_1parser_1_1basic__url__password__char.html index b056b71c4..187fa4bd5 100644 --- a/classstdex_1_1parser_1_1basic__url__password__char.html +++ b/classstdex_1_1parser_1_1basic__url__password__char.html @@ -191,7 +191,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__url__path-members.html b/classstdex_1_1parser_1_1basic__url__path-members.html index 975787922..bfff356da 100644 --- a/classstdex_1_1parser_1_1basic__url__path-members.html +++ b/classstdex_1_1parser_1_1basic__url__path-members.html @@ -98,7 +98,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__url__path.html b/classstdex_1_1parser_1_1basic__url__path.html index 9afbbd92e..c4d7639ea 100644 --- a/classstdex_1_1parser_1_1basic__url__path.html +++ b/classstdex_1_1parser_1_1basic__url__path.html @@ -242,7 +242,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__url__path__char-members.html b/classstdex_1_1parser_1_1basic__url__path__char-members.html index 05ccbb011..9bb098348 100644 --- a/classstdex_1_1parser_1_1basic__url__path__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__path__char-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__url__path__char.html b/classstdex_1_1parser_1_1basic__url__path__char.html index 303936b99..2338d6a7b 100644 --- a/classstdex_1_1parser_1_1basic__url__path__char.html +++ b/classstdex_1_1parser_1_1basic__url__path__char.html @@ -191,7 +191,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1basic__url__username__char-members.html b/classstdex_1_1parser_1_1basic__url__username__char-members.html index 3614706fa..982e2ae52 100644 --- a/classstdex_1_1parser_1_1basic__url__username__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__username__char-members.html @@ -92,7 +92,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1basic__url__username__char.html b/classstdex_1_1parser_1_1basic__url__username__char.html index df4f0cd1e..581ea272f 100644 --- a/classstdex_1_1parser_1_1basic__url__username__char.html +++ b/classstdex_1_1parser_1_1basic__url__username__char.html @@ -191,7 +191,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1http__agent-members.html b/classstdex_1_1parser_1_1http__agent-members.html index ffc5a2690..ea259a6e0 100644 --- a/classstdex_1_1parser_1_1http__agent-members.html +++ b/classstdex_1_1parser_1_1http__agent-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__agent.html b/classstdex_1_1parser_1_1http__agent.html index 9daef6d11..d1aafa4a3 100644 --- a/classstdex_1_1parser_1_1http__agent.html +++ b/classstdex_1_1parser_1_1http__agent.html @@ -220,7 +220,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__any__type-members.html b/classstdex_1_1parser_1_1http__any__type-members.html index 27c8bbf1d..dc54cf5fa 100644 --- a/classstdex_1_1parser_1_1http__any__type-members.html +++ b/classstdex_1_1parser_1_1http__any__type-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__any__type.html b/classstdex_1_1parser_1_1http__any__type.html index 5fca3df46..f0df2684d 100644 --- a/classstdex_1_1parser_1_1http__any__type.html +++ b/classstdex_1_1parser_1_1http__any__type.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__asterisk-members.html b/classstdex_1_1parser_1_1http__asterisk-members.html index a039b667e..7a92be3d0 100644 --- a/classstdex_1_1parser_1_1http__asterisk-members.html +++ b/classstdex_1_1parser_1_1http__asterisk-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__asterisk.html b/classstdex_1_1parser_1_1http__asterisk.html index 2532a7fe2..beae10b4d 100644 --- a/classstdex_1_1parser_1_1http__asterisk.html +++ b/classstdex_1_1parser_1_1http__asterisk.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__cookie-members.html b/classstdex_1_1parser_1_1http__cookie-members.html index 1d0544929..fe4290c57 100644 --- a/classstdex_1_1parser_1_1http__cookie-members.html +++ b/classstdex_1_1parser_1_1http__cookie-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__cookie.html b/classstdex_1_1parser_1_1http__cookie.html index 98609a733..ac6b2d225 100644 --- a/classstdex_1_1parser_1_1http__cookie.html +++ b/classstdex_1_1parser_1_1http__cookie.html @@ -230,7 +230,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__cookie__parameter-members.html b/classstdex_1_1parser_1_1http__cookie__parameter-members.html index a949d6ff1..8ac9d440f 100644 --- a/classstdex_1_1parser_1_1http__cookie__parameter-members.html +++ b/classstdex_1_1parser_1_1http__cookie__parameter-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__cookie__parameter.html b/classstdex_1_1parser_1_1http__cookie__parameter.html index 381c8c569..6485f5a9b 100644 --- a/classstdex_1_1parser_1_1http__cookie__parameter.html +++ b/classstdex_1_1parser_1_1http__cookie__parameter.html @@ -224,7 +224,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__header-members.html b/classstdex_1_1parser_1_1http__header-members.html index ed7ca6ace..aba9491e7 100644 --- a/classstdex_1_1parser_1_1http__header-members.html +++ b/classstdex_1_1parser_1_1http__header-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__header.html b/classstdex_1_1parser_1_1http__header.html index 82a681798..2206188ae 100644 --- a/classstdex_1_1parser_1_1http__header.html +++ b/classstdex_1_1parser_1_1http__header.html @@ -224,7 +224,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__language-members.html b/classstdex_1_1parser_1_1http__language-members.html index 9369a0d51..7dac7a1e5 100644 --- a/classstdex_1_1parser_1_1http__language-members.html +++ b/classstdex_1_1parser_1_1http__language-members.html @@ -87,7 +87,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__language.html b/classstdex_1_1parser_1_1http__language.html index bd30871f4..387100123 100644 --- a/classstdex_1_1parser_1_1http__language.html +++ b/classstdex_1_1parser_1_1http__language.html @@ -217,7 +217,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__line__break-members.html b/classstdex_1_1parser_1_1http__line__break-members.html index 26b7a53a5..8535eea0c 100644 --- a/classstdex_1_1parser_1_1http__line__break-members.html +++ b/classstdex_1_1parser_1_1http__line__break-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__line__break.html b/classstdex_1_1parser_1_1http__line__break.html index ebb166df3..670053194 100644 --- a/classstdex_1_1parser_1_1http__line__break.html +++ b/classstdex_1_1parser_1_1http__line__break.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__media__range-members.html b/classstdex_1_1parser_1_1http__media__range-members.html index 8c249cd6b..2810c13ea 100644 --- a/classstdex_1_1parser_1_1http__media__range-members.html +++ b/classstdex_1_1parser_1_1http__media__range-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__media__range.html b/classstdex_1_1parser_1_1http__media__range.html index 7cb179b18..733f3c8ee 100644 --- a/classstdex_1_1parser_1_1http__media__range.html +++ b/classstdex_1_1parser_1_1http__media__range.html @@ -225,7 +225,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__media__type-members.html b/classstdex_1_1parser_1_1http__media__type-members.html index 4c886487f..d39ea5d25 100644 --- a/classstdex_1_1parser_1_1http__media__type-members.html +++ b/classstdex_1_1parser_1_1http__media__type-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__media__type.html b/classstdex_1_1parser_1_1http__media__type.html index c17824bea..d3a3c978d 100644 --- a/classstdex_1_1parser_1_1http__media__type.html +++ b/classstdex_1_1parser_1_1http__media__type.html @@ -229,7 +229,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__parameter-members.html b/classstdex_1_1parser_1_1http__parameter-members.html index e9b39846e..6a3e27139 100644 --- a/classstdex_1_1parser_1_1http__parameter-members.html +++ b/classstdex_1_1parser_1_1http__parameter-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__parameter.html b/classstdex_1_1parser_1_1http__parameter.html index 3e8a552b2..b1a74c415 100644 --- a/classstdex_1_1parser_1_1http__parameter.html +++ b/classstdex_1_1parser_1_1http__parameter.html @@ -226,7 +226,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__protocol-members.html b/classstdex_1_1parser_1_1http__protocol-members.html index caff02850..666b29c44 100644 --- a/classstdex_1_1parser_1_1http__protocol-members.html +++ b/classstdex_1_1parser_1_1http__protocol-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__protocol.html b/classstdex_1_1parser_1_1http__protocol.html index 2228400f5..82ba76312 100644 --- a/classstdex_1_1parser_1_1http__protocol.html +++ b/classstdex_1_1parser_1_1http__protocol.html @@ -230,7 +230,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__quoted__string-members.html b/classstdex_1_1parser_1_1http__quoted__string-members.html index 62234b29b..0504adbf8 100644 --- a/classstdex_1_1parser_1_1http__quoted__string-members.html +++ b/classstdex_1_1parser_1_1http__quoted__string-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__quoted__string.html b/classstdex_1_1parser_1_1http__quoted__string.html index 80460bca6..7be727034 100644 --- a/classstdex_1_1parser_1_1http__quoted__string.html +++ b/classstdex_1_1parser_1_1http__quoted__string.html @@ -222,7 +222,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__request-members.html b/classstdex_1_1parser_1_1http__request-members.html index 76e0cc3ad..3371ff2fd 100644 --- a/classstdex_1_1parser_1_1http__request-members.html +++ b/classstdex_1_1parser_1_1http__request-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__request.html b/classstdex_1_1parser_1_1http__request.html index a3772d464..25374bed3 100644 --- a/classstdex_1_1parser_1_1http__request.html +++ b/classstdex_1_1parser_1_1http__request.html @@ -230,7 +230,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__space-members.html b/classstdex_1_1parser_1_1http__space-members.html index 89a21a04e..1515404f2 100644 --- a/classstdex_1_1parser_1_1http__space-members.html +++ b/classstdex_1_1parser_1_1http__space-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__space.html b/classstdex_1_1parser_1_1http__space.html index f2d95463b..558af4884 100644 --- a/classstdex_1_1parser_1_1http__space.html +++ b/classstdex_1_1parser_1_1http__space.html @@ -191,7 +191,7 @@ Additional Inherited Members diff --git a/classstdex_1_1parser_1_1http__text__char-members.html b/classstdex_1_1parser_1_1http__text__char-members.html index 7fdb88b34..d91c102e0 100644 --- a/classstdex_1_1parser_1_1http__text__char-members.html +++ b/classstdex_1_1parser_1_1http__text__char-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__text__char.html b/classstdex_1_1parser_1_1http__text__char.html index e4bbc0420..f73a3f21b 100644 --- a/classstdex_1_1parser_1_1http__text__char.html +++ b/classstdex_1_1parser_1_1http__text__char.html @@ -191,7 +191,7 @@ Additional Inherited Members diff --git a/classstdex_1_1parser_1_1http__token-members.html b/classstdex_1_1parser_1_1http__token-members.html index 8a50e212f..3a44f5a9d 100644 --- a/classstdex_1_1parser_1_1http__token-members.html +++ b/classstdex_1_1parser_1_1http__token-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__token.html b/classstdex_1_1parser_1_1http__token.html index 9873d405d..0b3f576e0 100644 --- a/classstdex_1_1parser_1_1http__token.html +++ b/classstdex_1_1parser_1_1http__token.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url-members.html b/classstdex_1_1parser_1_1http__url-members.html index 0b161eca6..c7e737bee 100644 --- a/classstdex_1_1parser_1_1http__url-members.html +++ b/classstdex_1_1parser_1_1http__url-members.html @@ -91,7 +91,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url.html b/classstdex_1_1parser_1_1http__url.html index 0d7db3a6e..e4253909c 100644 --- a/classstdex_1_1parser_1_1http__url.html +++ b/classstdex_1_1parser_1_1http__url.html @@ -229,7 +229,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url__parameter-members.html b/classstdex_1_1parser_1_1http__url__parameter-members.html index 2dcef7330..4979cf806 100644 --- a/classstdex_1_1parser_1_1http__url__parameter-members.html +++ b/classstdex_1_1parser_1_1http__url__parameter-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url__parameter.html b/classstdex_1_1parser_1_1http__url__parameter.html index 728a39c6d..b995feaad 100644 --- a/classstdex_1_1parser_1_1http__url__parameter.html +++ b/classstdex_1_1parser_1_1http__url__parameter.html @@ -220,7 +220,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url__path-members.html b/classstdex_1_1parser_1_1http__url__path-members.html index 8c7df5ebd..3f19aadcd 100644 --- a/classstdex_1_1parser_1_1http__url__path-members.html +++ b/classstdex_1_1parser_1_1http__url__path-members.html @@ -87,7 +87,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url__path.html b/classstdex_1_1parser_1_1http__url__path.html index d7145aa14..6198f47d2 100644 --- a/classstdex_1_1parser_1_1http__url__path.html +++ b/classstdex_1_1parser_1_1http__url__path.html @@ -218,7 +218,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url__path__segment-members.html b/classstdex_1_1parser_1_1http__url__path__segment-members.html index 24b3f19bd..78201915d 100644 --- a/classstdex_1_1parser_1_1http__url__path__segment-members.html +++ b/classstdex_1_1parser_1_1http__url__path__segment-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url__path__segment.html b/classstdex_1_1parser_1_1http__url__path__segment.html index 57172ec6c..5cf8e421b 100644 --- a/classstdex_1_1parser_1_1http__url__path__segment.html +++ b/classstdex_1_1parser_1_1http__url__path__segment.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url__port-members.html b/classstdex_1_1parser_1_1http__url__port-members.html index 37599a9d6..6bd5927d8 100644 --- a/classstdex_1_1parser_1_1http__url__port-members.html +++ b/classstdex_1_1parser_1_1http__url__port-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url__port.html b/classstdex_1_1parser_1_1http__url__port.html index fd98d9637..2ffd7ae8c 100644 --- a/classstdex_1_1parser_1_1http__url__port.html +++ b/classstdex_1_1parser_1_1http__url__port.html @@ -220,7 +220,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__url__server-members.html b/classstdex_1_1parser_1_1http__url__server-members.html index bfa7ac950..1fe1e0816 100644 --- a/classstdex_1_1parser_1_1http__url__server-members.html +++ b/classstdex_1_1parser_1_1http__url__server-members.html @@ -85,7 +85,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__url__server.html b/classstdex_1_1parser_1_1http__url__server.html index 6125886ca..190d533c1 100644 --- a/classstdex_1_1parser_1_1http__url__server.html +++ b/classstdex_1_1parser_1_1http__url__server.html @@ -184,7 +184,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__value-members.html b/classstdex_1_1parser_1_1http__value-members.html index f18560bcd..663eb8984 100644 --- a/classstdex_1_1parser_1_1http__value-members.html +++ b/classstdex_1_1parser_1_1http__value-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__value.html b/classstdex_1_1parser_1_1http__value.html index c3cf76dc8..2b83615bf 100644 --- a/classstdex_1_1parser_1_1http__value.html +++ b/classstdex_1_1parser_1_1http__value.html @@ -222,7 +222,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__value__collection-members.html b/classstdex_1_1parser_1_1http__value__collection-members.html index 2b3bbec40..a3e24bca7 100644 --- a/classstdex_1_1parser_1_1http__value__collection-members.html +++ b/classstdex_1_1parser_1_1http__value__collection-members.html @@ -84,7 +84,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__value__collection.html b/classstdex_1_1parser_1_1http__value__collection.html index 10fbe109c..db3f76376 100644 --- a/classstdex_1_1parser_1_1http__value__collection.html +++ b/classstdex_1_1parser_1_1http__value__collection.html @@ -107,7 +107,7 @@ class stdex::parser::http_value_collection< _Key, T >

Collection o

diff --git a/classstdex_1_1parser_1_1http__weight-members.html b/classstdex_1_1parser_1_1http__weight-members.html index c847523a5..ebd5050d9 100644 --- a/classstdex_1_1parser_1_1http__weight-members.html +++ b/classstdex_1_1parser_1_1http__weight-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__weight.html b/classstdex_1_1parser_1_1http__weight.html index 604c9535a..ddbb0c844 100644 --- a/classstdex_1_1parser_1_1http__weight.html +++ b/classstdex_1_1parser_1_1http__weight.html @@ -221,7 +221,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1http__weighted__value-members.html b/classstdex_1_1parser_1_1http__weighted__value-members.html index bf38aba61..0d0edf712 100644 --- a/classstdex_1_1parser_1_1http__weighted__value-members.html +++ b/classstdex_1_1parser_1_1http__weighted__value-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1http__weighted__value.html b/classstdex_1_1parser_1_1http__weighted__value.html index 869e98271..68fd3f794 100644 --- a/classstdex_1_1parser_1_1http__weighted__value.html +++ b/classstdex_1_1parser_1_1http__weighted__value.html @@ -231,7 +231,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1parser__collection-members.html b/classstdex_1_1parser_1_1parser__collection-members.html index d32eb36da..2b19221e1 100644 --- a/classstdex_1_1parser_1_1parser__collection-members.html +++ b/classstdex_1_1parser_1_1parser__collection-members.html @@ -95,7 +95,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1parser__collection.html b/classstdex_1_1parser_1_1parser__collection.html index d9671a8c5..fed499e62 100644 --- a/classstdex_1_1parser_1_1parser__collection.html +++ b/classstdex_1_1parser_1_1parser__collection.html @@ -189,7 +189,7 @@ template<clas diff --git a/classstdex_1_1parser_1_1sgml__any__cp-members.html b/classstdex_1_1parser_1_1sgml__any__cp-members.html index 522788ebc..72ed45e34 100644 --- a/classstdex_1_1parser_1_1sgml__any__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__any__cp-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__any__cp.html b/classstdex_1_1parser_1_1sgml__any__cp.html index d446218fd..4ad4652fb 100644 --- a/classstdex_1_1parser_1_1sgml__any__cp.html +++ b/classstdex_1_1parser_1_1sgml__any__cp.html @@ -196,7 +196,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__cp-members.html b/classstdex_1_1parser_1_1sgml__cp-members.html index c2ea11a90..8aed7d8e7 100644 --- a/classstdex_1_1parser_1_1sgml__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__cp-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__cp.html b/classstdex_1_1parser_1_1sgml__cp.html index 484de76ab..160511752 100644 --- a/classstdex_1_1parser_1_1sgml__cp.html +++ b/classstdex_1_1parser_1_1sgml__cp.html @@ -197,7 +197,7 @@ Additional Inherited Members diff --git a/classstdex_1_1parser_1_1sgml__cp__set-members.html b/classstdex_1_1parser_1_1sgml__cp__set-members.html index b1c5316fa..5aab2bf3b 100644 --- a/classstdex_1_1parser_1_1sgml__cp__set-members.html +++ b/classstdex_1_1parser_1_1sgml__cp__set-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__cp__set.html b/classstdex_1_1parser_1_1sgml__cp__set.html index d8ea443d3..a9fe15565 100644 --- a/classstdex_1_1parser_1_1sgml__cp__set.html +++ b/classstdex_1_1parser_1_1sgml__cp__set.html @@ -210,7 +210,7 @@ Additional Inherited Members diff --git a/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html b/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html index 75ebacac2..4e8853673 100644 --- a/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html +++ b/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__dns__domain__char.html b/classstdex_1_1parser_1_1sgml__dns__domain__char.html index 4691e19b0..346a93700 100644 --- a/classstdex_1_1parser_1_1sgml__dns__domain__char.html +++ b/classstdex_1_1parser_1_1sgml__dns__domain__char.html @@ -205,7 +205,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char-members.html b/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char-members.html index 661c32436..95421e06b 100644 --- a/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char-members.html +++ b/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html b/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html index dfb5bad21..86ecd559b 100644 --- a/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html +++ b/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html @@ -187,7 +187,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__punct__cp-members.html b/classstdex_1_1parser_1_1sgml__punct__cp-members.html index 3473a61d4..79f664ce0 100644 --- a/classstdex_1_1parser_1_1sgml__punct__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__punct__cp-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__punct__cp.html b/classstdex_1_1parser_1_1sgml__punct__cp.html index 86c86a427..a37aebd86 100644 --- a/classstdex_1_1parser_1_1sgml__punct__cp.html +++ b/classstdex_1_1parser_1_1sgml__punct__cp.html @@ -200,7 +200,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__space__cp-members.html b/classstdex_1_1parser_1_1sgml__space__cp-members.html index 3f4c0d7b0..1fc97a14f 100644 --- a/classstdex_1_1parser_1_1sgml__space__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__space__cp-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__space__cp.html b/classstdex_1_1parser_1_1sgml__space__cp.html index 81cbb50c1..456c1b0f9 100644 --- a/classstdex_1_1parser_1_1sgml__space__cp.html +++ b/classstdex_1_1parser_1_1sgml__space__cp.html @@ -200,7 +200,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__space__or__punct__cp-members.html b/classstdex_1_1parser_1_1sgml__space__or__punct__cp-members.html index 940971eab..ec23eddd6 100644 --- a/classstdex_1_1parser_1_1sgml__space__or__punct__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__space__or__punct__cp-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html b/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html index 607033088..4c26acee2 100644 --- a/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html +++ b/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html @@ -200,7 +200,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__string-members.html b/classstdex_1_1parser_1_1sgml__string-members.html index 86b26fe71..336b71792 100644 --- a/classstdex_1_1parser_1_1sgml__string-members.html +++ b/classstdex_1_1parser_1_1sgml__string-members.html @@ -87,7 +87,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__string.html b/classstdex_1_1parser_1_1sgml__string.html index 4c034a606..08aac7270 100644 --- a/classstdex_1_1parser_1_1sgml__string.html +++ b/classstdex_1_1parser_1_1sgml__string.html @@ -194,7 +194,7 @@ Additional Inherited Members diff --git a/classstdex_1_1parser_1_1sgml__url__password__char-members.html b/classstdex_1_1parser_1_1sgml__url__password__char-members.html index 80122d299..c36214e5c 100644 --- a/classstdex_1_1parser_1_1sgml__url__password__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__password__char-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__url__password__char.html b/classstdex_1_1parser_1_1sgml__url__password__char.html index 0f491d75f..297ac11a1 100644 --- a/classstdex_1_1parser_1_1sgml__url__password__char.html +++ b/classstdex_1_1parser_1_1sgml__url__password__char.html @@ -196,7 +196,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__url__path__char-members.html b/classstdex_1_1parser_1_1sgml__url__path__char-members.html index f952b472b..d96eedbc5 100644 --- a/classstdex_1_1parser_1_1sgml__url__path__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__path__char-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__url__path__char.html b/classstdex_1_1parser_1_1sgml__url__path__char.html index 5e384db53..b5da5606e 100644 --- a/classstdex_1_1parser_1_1sgml__url__path__char.html +++ b/classstdex_1_1parser_1_1sgml__url__path__char.html @@ -196,7 +196,7 @@ std::locale m_locale diff --git a/classstdex_1_1parser_1_1sgml__url__username__char-members.html b/classstdex_1_1parser_1_1sgml__url__username__char-members.html index dab628779..fc2ddd817 100644 --- a/classstdex_1_1parser_1_1sgml__url__username__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__username__char-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1parser_1_1sgml__url__username__char.html b/classstdex_1_1parser_1_1sgml__url__username__char.html index 238c00f9f..227080bd8 100644 --- a/classstdex_1_1parser_1_1sgml__url__username__char.html +++ b/classstdex_1_1parser_1_1sgml__url__username__char.html @@ -196,7 +196,7 @@ std::locale m_locale diff --git a/classstdex_1_1progress-members.html b/classstdex_1_1progress-members.html index 5512287c1..ce1961877 100644 --- a/classstdex_1_1progress-members.html +++ b/classstdex_1_1progress-members.html @@ -88,7 +88,7 @@ $(function() { diff --git a/classstdex_1_1progress.html b/classstdex_1_1progress.html index 7c5f73352..f0b6506a9 100644 --- a/classstdex_1_1progress.html +++ b/classstdex_1_1progress.html @@ -319,7 +319,7 @@ template<class T > diff --git a/classstdex_1_1progress__switcher-members.html b/classstdex_1_1progress__switcher-members.html index 6fcccbb30..725770ff5 100644 --- a/classstdex_1_1progress__switcher-members.html +++ b/classstdex_1_1progress__switcher-members.html @@ -100,7 +100,7 @@ $(function() { diff --git a/classstdex_1_1progress__switcher.html b/classstdex_1_1progress__switcher.html index 3eaf09cda..53f05f7c5 100644 --- a/classstdex_1_1progress__switcher.html +++ b/classstdex_1_1progress__switcher.html @@ -163,7 +163,7 @@ class stdex::progress_switcher< T >

Progress indicator switcher. <

diff --git a/classstdex_1_1ring-members.html b/classstdex_1_1ring-members.html index c85e5cb0d..9f4729bd1 100644 --- a/classstdex_1_1ring-members.html +++ b/classstdex_1_1ring-members.html @@ -100,7 +100,7 @@ $(function() { diff --git a/classstdex_1_1ring.html b/classstdex_1_1ring.html index 4a13b0ca2..44992dbf5 100644 --- a/classstdex_1_1ring.html +++ b/classstdex_1_1ring.html @@ -296,7 +296,7 @@ template<class T , size_t CAPACITY> diff --git a/classstdex_1_1sha1__hash-members.html b/classstdex_1_1sha1__hash-members.html index 0d59600db..421838abb 100644 --- a/classstdex_1_1sha1__hash-members.html +++ b/classstdex_1_1sha1__hash-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1sha1__hash.html b/classstdex_1_1sha1__hash.html index 27592f1b4..4d417c0ca 100644 --- a/classstdex_1_1sha1__hash.html +++ b/classstdex_1_1sha1__hash.html @@ -259,7 +259,7 @@ uint32_t m_temp [16] diff --git a/classstdex_1_1stream_1_1async__reader-members.html b/classstdex_1_1stream_1_1async__reader-members.html index 94129c7cb..bec86f350 100644 --- a/classstdex_1_1stream_1_1async__reader-members.html +++ b/classstdex_1_1stream_1_1async__reader-members.html @@ -155,7 +155,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1async__reader.html b/classstdex_1_1stream_1_1async__reader.html index 1096d72eb..0c32ae905 100644 --- a/classstdex_1_1stream_1_1async__reader.html +++ b/classstdex_1_1stream_1_1async__reader.html @@ -414,7 +414,7 @@ template<size_t CAPACITY = default_async_limit> diff --git a/classstdex_1_1stream_1_1async__writer-members.html b/classstdex_1_1stream_1_1async__writer-members.html index 4e728d37d..77c2debc8 100644 --- a/classstdex_1_1stream_1_1async__writer-members.html +++ b/classstdex_1_1stream_1_1async__writer-members.html @@ -155,7 +155,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1async__writer.html b/classstdex_1_1stream_1_1async__writer.html index 461aac58b..24c9bc273 100644 --- a/classstdex_1_1stream_1_1async__writer.html +++ b/classstdex_1_1stream_1_1async__writer.html @@ -445,7 +445,7 @@ template<size_t CAPACITY = default_async_limit> diff --git a/classstdex_1_1stream_1_1basic-members.html b/classstdex_1_1stream_1_1basic-members.html index 7fd479530..69262a5d0 100644 --- a/classstdex_1_1stream_1_1basic-members.html +++ b/classstdex_1_1stream_1_1basic-members.html @@ -148,7 +148,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1basic.html b/classstdex_1_1stream_1_1basic.html index cd55c240c..980fc33db 100644 --- a/classstdex_1_1stream_1_1basic.html +++ b/classstdex_1_1stream_1_1basic.html @@ -1400,7 +1400,7 @@ template<class T > diff --git a/classstdex_1_1stream_1_1basic__file-members.html b/classstdex_1_1stream_1_1basic__file-members.html index dd2ca1eac..1b08548ca 100644 --- a/classstdex_1_1stream_1_1basic__file-members.html +++ b/classstdex_1_1stream_1_1basic__file-members.html @@ -164,7 +164,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1basic__file.html b/classstdex_1_1stream_1_1basic__file.html index db75560e6..4a4fe8706 100644 --- a/classstdex_1_1stream_1_1basic__file.html +++ b/classstdex_1_1stream_1_1basic__file.html @@ -961,7 +961,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1basic__sys-members.html b/classstdex_1_1stream_1_1basic__sys-members.html index 8522977a4..fca671354 100644 --- a/classstdex_1_1stream_1_1basic__sys-members.html +++ b/classstdex_1_1stream_1_1basic__sys-members.html @@ -160,7 +160,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1basic__sys.html b/classstdex_1_1stream_1_1basic__sys.html index 30caf3a5b..41c683c3a 100644 --- a/classstdex_1_1stream_1_1basic__sys.html +++ b/classstdex_1_1stream_1_1basic__sys.html @@ -527,7 +527,7 @@ sys_handle m_h diff --git a/classstdex_1_1stream_1_1buffer-members.html b/classstdex_1_1stream_1_1buffer-members.html index d2fd47786..4acdbb62d 100644 --- a/classstdex_1_1stream_1_1buffer-members.html +++ b/classstdex_1_1stream_1_1buffer-members.html @@ -155,7 +155,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1buffer.html b/classstdex_1_1stream_1_1buffer.html index 85a3e4703..7952b2940 100644 --- a/classstdex_1_1stream_1_1buffer.html +++ b/classstdex_1_1stream_1_1buffer.html @@ -489,7 +489,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1buffered__sys-members.html b/classstdex_1_1stream_1_1buffered__sys-members.html index 33ca3a5fa..7f33a6544 100644 --- a/classstdex_1_1stream_1_1buffered__sys-members.html +++ b/classstdex_1_1stream_1_1buffered__sys-members.html @@ -157,7 +157,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1buffered__sys.html b/classstdex_1_1stream_1_1buffered__sys.html index e52b7b703..5c51e6952 100644 --- a/classstdex_1_1stream_1_1buffered__sys.html +++ b/classstdex_1_1stream_1_1buffered__sys.html @@ -365,7 +365,7 @@ void flush_write () diff --git a/classstdex_1_1stream_1_1cache-members.html b/classstdex_1_1stream_1_1cache-members.html index 61d562c0b..90856ee24 100644 --- a/classstdex_1_1stream_1_1cache-members.html +++ b/classstdex_1_1stream_1_1cache-members.html @@ -166,7 +166,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1cache.html b/classstdex_1_1stream_1_1cache.html index 6ae8685b2..a7045bad1 100644 --- a/classstdex_1_1stream_1_1cache.html +++ b/classstdex_1_1stream_1_1cache.html @@ -925,7 +925,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1cached__file-members.html b/classstdex_1_1stream_1_1cached__file-members.html index c8ab107b1..b2b8a240a 100644 --- a/classstdex_1_1stream_1_1cached__file-members.html +++ b/classstdex_1_1stream_1_1cached__file-members.html @@ -173,7 +173,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1cached__file.html b/classstdex_1_1stream_1_1cached__file.html index 518f9248b..6f59e12be 100644 --- a/classstdex_1_1stream_1_1cached__file.html +++ b/classstdex_1_1stream_1_1cached__file.html @@ -600,7 +600,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1converter-members.html b/classstdex_1_1stream_1_1converter-members.html index ab4ec5937..ab0132ee2 100644 --- a/classstdex_1_1stream_1_1converter-members.html +++ b/classstdex_1_1stream_1_1converter-members.html @@ -150,7 +150,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1converter.html b/classstdex_1_1stream_1_1converter.html index a600bb658..267abaf5b 100644 --- a/classstdex_1_1stream_1_1converter.html +++ b/classstdex_1_1stream_1_1converter.html @@ -507,7 +507,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1diag__file-members.html b/classstdex_1_1stream_1_1diag__file-members.html index b8e8adcd3..44366488d 100644 --- a/classstdex_1_1stream_1_1diag__file-members.html +++ b/classstdex_1_1stream_1_1diag__file-members.html @@ -167,7 +167,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1diag__file.html b/classstdex_1_1stream_1_1diag__file.html index 8cf8b49b3..b634af43e 100644 --- a/classstdex_1_1stream_1_1diag__file.html +++ b/classstdex_1_1stream_1_1diag__file.html @@ -754,7 +754,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1fifo-members.html b/classstdex_1_1stream_1_1fifo-members.html index f94c1b26e..768b4330f 100644 --- a/classstdex_1_1stream_1_1fifo-members.html +++ b/classstdex_1_1stream_1_1fifo-members.html @@ -155,7 +155,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1fifo.html b/classstdex_1_1stream_1_1fifo.html index 1a1d791aa..0c1e5b620 100644 --- a/classstdex_1_1stream_1_1fifo.html +++ b/classstdex_1_1stream_1_1fifo.html @@ -479,7 +479,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1file-members.html b/classstdex_1_1stream_1_1file-members.html index 9fdef1f90..0e0e7034d 100644 --- a/classstdex_1_1stream_1_1file-members.html +++ b/classstdex_1_1stream_1_1file-members.html @@ -189,7 +189,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1file.html b/classstdex_1_1stream_1_1file.html index 45dff91b8..1dcb55ba8 100644 --- a/classstdex_1_1stream_1_1file.html +++ b/classstdex_1_1stream_1_1file.html @@ -1161,7 +1161,7 @@ sys_handle m_h diff --git a/classstdex_1_1stream_1_1file__window-members.html b/classstdex_1_1stream_1_1file__window-members.html index 1817653b9..f8972db7c 100644 --- a/classstdex_1_1stream_1_1file__window-members.html +++ b/classstdex_1_1stream_1_1file__window-members.html @@ -168,7 +168,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1file__window.html b/classstdex_1_1stream_1_1file__window.html index a8de94e5c..76579ee44 100644 --- a/classstdex_1_1stream_1_1file__window.html +++ b/classstdex_1_1stream_1_1file__window.html @@ -787,7 +787,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1limiter-members.html b/classstdex_1_1stream_1_1limiter-members.html index bc572be70..b3d506e7a 100644 --- a/classstdex_1_1stream_1_1limiter-members.html +++ b/classstdex_1_1stream_1_1limiter-members.html @@ -153,7 +153,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1limiter.html b/classstdex_1_1stream_1_1limiter.html index acf946409..9fe0e4052 100644 --- a/classstdex_1_1stream_1_1limiter.html +++ b/classstdex_1_1stream_1_1limiter.html @@ -456,7 +456,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1memory__file-members.html b/classstdex_1_1stream_1_1memory__file-members.html index 19cb16973..331fa6061 100644 --- a/classstdex_1_1stream_1_1memory__file-members.html +++ b/classstdex_1_1stream_1_1memory__file-members.html @@ -208,7 +208,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1memory__file.html b/classstdex_1_1stream_1_1memory__file.html index 1baa9d328..8b57bd822 100644 --- a/classstdex_1_1stream_1_1memory__file.html +++ b/classstdex_1_1stream_1_1memory__file.html @@ -1690,7 +1690,7 @@ template<class T > diff --git a/classstdex_1_1stream_1_1replicator-members.html b/classstdex_1_1stream_1_1replicator-members.html index 79cf5c331..8cc23fa61 100644 --- a/classstdex_1_1stream_1_1replicator-members.html +++ b/classstdex_1_1stream_1_1replicator-members.html @@ -153,7 +153,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1replicator.html b/classstdex_1_1stream_1_1replicator.html index e1dc9c55b..d459611c6 100644 --- a/classstdex_1_1stream_1_1replicator.html +++ b/classstdex_1_1stream_1_1replicator.html @@ -462,7 +462,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1replicator_1_1worker-members.html b/classstdex_1_1stream_1_1replicator_1_1worker-members.html index 7bdbe1a04..d6423b309 100644 --- a/classstdex_1_1stream_1_1replicator_1_1worker-members.html +++ b/classstdex_1_1stream_1_1replicator_1_1worker-members.html @@ -93,7 +93,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1replicator_1_1worker.html b/classstdex_1_1stream_1_1replicator_1_1worker.html index df6bbeecf..92f071106 100644 --- a/classstdex_1_1stream_1_1replicator_1_1worker.html +++ b/classstdex_1_1stream_1_1replicator_1_1worker.html @@ -149,7 +149,7 @@ void process_op () diff --git a/classstdex_1_1stream_1_1socket-members.html b/classstdex_1_1stream_1_1socket-members.html index 9e8272e4c..44504daae 100644 --- a/classstdex_1_1stream_1_1socket-members.html +++ b/classstdex_1_1stream_1_1socket-members.html @@ -156,7 +156,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1socket.html b/classstdex_1_1stream_1_1socket.html index c4524c711..1ccbdcb13 100644 --- a/classstdex_1_1stream_1_1socket.html +++ b/classstdex_1_1stream_1_1socket.html @@ -533,7 +533,7 @@ state_t m_state diff --git a/classstdex_1_1stream_1_1window-members.html b/classstdex_1_1stream_1_1window-members.html index 3872d7b04..457cbcf4d 100644 --- a/classstdex_1_1stream_1_1window-members.html +++ b/classstdex_1_1stream_1_1window-members.html @@ -156,7 +156,7 @@ $(function() { diff --git a/classstdex_1_1stream_1_1window.html b/classstdex_1_1stream_1_1window.html index 1368baec1..2a6820f13 100644 --- a/classstdex_1_1stream_1_1window.html +++ b/classstdex_1_1stream_1_1window.html @@ -465,7 +465,7 @@ state_t m_state diff --git a/classstdex_1_1stream__hasher-members.html b/classstdex_1_1stream__hasher-members.html index 20e85827a..fba5fd8f8 100644 --- a/classstdex_1_1stream__hasher-members.html +++ b/classstdex_1_1stream__hasher-members.html @@ -152,7 +152,7 @@ $(function() { diff --git a/classstdex_1_1stream__hasher.html b/classstdex_1_1stream__hasher.html index 799cdbfd7..fd826da46 100644 --- a/classstdex_1_1stream__hasher.html +++ b/classstdex_1_1stream__hasher.html @@ -448,7 +448,7 @@ template<class T > diff --git a/classstdex_1_1sys__object-members.html b/classstdex_1_1sys__object-members.html index 25d75ec80..cb8763774 100644 --- a/classstdex_1_1sys__object-members.html +++ b/classstdex_1_1sys__object-members.html @@ -95,7 +95,7 @@ $(function() { diff --git a/classstdex_1_1sys__object.html b/classstdex_1_1sys__object.html index 530772e07..0aa9da166 100644 --- a/classstdex_1_1sys__object.html +++ b/classstdex_1_1sys__object.html @@ -182,7 +182,7 @@ sys_handle m_h diff --git a/classstdex_1_1user__cancelled-members.html b/classstdex_1_1user__cancelled-members.html index 6a01a9113..8a0b6a037 100644 --- a/classstdex_1_1user__cancelled-members.html +++ b/classstdex_1_1user__cancelled-members.html @@ -84,7 +84,7 @@ $(function() { diff --git a/classstdex_1_1user__cancelled.html b/classstdex_1_1user__cancelled.html index cccb0e6a2..54d40f06d 100644 --- a/classstdex_1_1user__cancelled.html +++ b/classstdex_1_1user__cancelled.html @@ -141,7 +141,7 @@ Public Member Functions diff --git a/classstdex_1_1vector__queue-members.html b/classstdex_1_1vector__queue-members.html index 2f6835c21..1a257d92a 100644 --- a/classstdex_1_1vector__queue-members.html +++ b/classstdex_1_1vector__queue-members.html @@ -122,7 +122,7 @@ $(function() { diff --git a/classstdex_1_1vector__queue.html b/classstdex_1_1vector__queue.html index e60dce9e5..eeb27ce30 100644 --- a/classstdex_1_1vector__queue.html +++ b/classstdex_1_1vector__queue.html @@ -795,7 +795,7 @@ template<class T > diff --git a/classstdex_1_1watchdog-members.html b/classstdex_1_1watchdog-members.html index 2229d33ad..1afc40ae6 100644 --- a/classstdex_1_1watchdog-members.html +++ b/classstdex_1_1watchdog-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/classstdex_1_1watchdog.html b/classstdex_1_1watchdog.html index 2069e46e5..0d9163f75 100644 --- a/classstdex_1_1watchdog.html +++ b/classstdex_1_1watchdog.html @@ -223,7 +223,7 @@ template<class _Clock , class _Duration = typename _Clock::duration> diff --git a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html index 1d771be72..cdabeca31 100644 --- a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html +++ b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html @@ -104,7 +104,7 @@ Files diff --git a/dir_d44c64559bbebec7f509842c48db8b23.html b/dir_d44c64559bbebec7f509842c48db8b23.html index 5fa593edc..139205c77 100644 --- a/dir_d44c64559bbebec7f509842c48db8b23.html +++ b/dir_d44c64559bbebec7f509842c48db8b23.html @@ -86,7 +86,7 @@ Directories diff --git a/dir_fca3c47b2ea228727bd6729832f89576.html b/dir_fca3c47b2ea228727bd6729832f89576.html index 47e624aad..bd86bd76a 100644 --- a/dir_fca3c47b2ea228727bd6729832f89576.html +++ b/dir_fca3c47b2ea228727bd6729832f89576.html @@ -136,7 +136,7 @@ Files diff --git a/endian_8hpp_source.html b/endian_8hpp_source.html index 0a643f19f..06512847f 100644 --- a/endian_8hpp_source.html +++ b/endian_8hpp_source.html @@ -225,7 +225,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/exception_8hpp_source.html b/exception_8hpp_source.html index bd081dbad..92115bbef 100644 --- a/exception_8hpp_source.html +++ b/exception_8hpp_source.html @@ -107,7 +107,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/files.html b/files.html index 703ef619a..a36042678 100644 --- a/files.html +++ b/files.html @@ -119,7 +119,7 @@ $(function() { diff --git a/functions.html b/functions.html index 6491c15b5..30ef4e078 100644 --- a/functions.html +++ b/functions.html @@ -85,7 +85,7 @@ $(function() { diff --git a/functions_b.html b/functions_b.html index 42be350b4..d87141626 100644 --- a/functions_b.html +++ b/functions_b.html @@ -82,7 +82,7 @@ $(function() { diff --git a/functions_c.html b/functions_c.html index 43202fcec..643af10cc 100644 --- a/functions_c.html +++ b/functions_c.html @@ -92,7 +92,7 @@ $(function() { diff --git a/functions_d.html b/functions_d.html index 56c4f808b..804d4fba8 100644 --- a/functions_d.html +++ b/functions_d.html @@ -87,7 +87,7 @@ $(function() { diff --git a/functions_e.html b/functions_e.html index 9a9cf0235..b71d18d2f 100644 --- a/functions_e.html +++ b/functions_e.html @@ -87,7 +87,7 @@ $(function() { diff --git a/functions_f.html b/functions_f.html index cc615df73..fec233624 100644 --- a/functions_f.html +++ b/functions_f.html @@ -87,7 +87,7 @@ $(function() { diff --git a/functions_func.html b/functions_func.html index b0e20d618..290f2d361 100644 --- a/functions_func.html +++ b/functions_func.html @@ -82,7 +82,7 @@ $(function() { diff --git a/functions_func_b.html b/functions_func_b.html index 914d417bf..7997ef7d2 100644 --- a/functions_func_b.html +++ b/functions_func_b.html @@ -80,7 +80,7 @@ $(function() { diff --git a/functions_func_c.html b/functions_func_c.html index 89312b42b..57da37af1 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -85,7 +85,7 @@ $(function() { diff --git a/functions_func_d.html b/functions_func_d.html index 2a0a22894..d6696c6ee 100644 --- a/functions_func_d.html +++ b/functions_func_d.html @@ -84,7 +84,7 @@ $(function() { diff --git a/functions_func_e.html b/functions_func_e.html index 064f6785f..8d57c0853 100644 --- a/functions_func_e.html +++ b/functions_func_e.html @@ -81,7 +81,7 @@ $(function() { diff --git a/functions_func_f.html b/functions_func_f.html index 2dc164603..8dfaee994 100644 --- a/functions_func_f.html +++ b/functions_func_f.html @@ -86,7 +86,7 @@ $(function() { diff --git a/functions_func_g.html b/functions_func_g.html index 03eee9c37..1fe5299e7 100644 --- a/functions_func_g.html +++ b/functions_func_g.html @@ -79,7 +79,7 @@ $(function() { diff --git a/functions_func_h.html b/functions_func_h.html index fb3724870..fd69ad497 100644 --- a/functions_func_h.html +++ b/functions_func_h.html @@ -81,7 +81,7 @@ $(function() { diff --git a/functions_func_i.html b/functions_func_i.html index 36441aaf4..786cbe278 100644 --- a/functions_func_i.html +++ b/functions_func_i.html @@ -80,7 +80,7 @@ $(function() { diff --git a/functions_func_l.html b/functions_func_l.html index 980edf3cf..a5b844809 100644 --- a/functions_func_l.html +++ b/functions_func_l.html @@ -80,7 +80,7 @@ $(function() { diff --git a/functions_func_m.html b/functions_func_m.html index a9c8e4e06..2e4d4a45d 100644 --- a/functions_func_m.html +++ b/functions_func_m.html @@ -80,7 +80,7 @@ $(function() { diff --git a/functions_func_n.html b/functions_func_n.html index 4f1b7ae16..ccc547023 100644 --- a/functions_func_n.html +++ b/functions_func_n.html @@ -78,7 +78,7 @@ $(function() { diff --git a/functions_func_o.html b/functions_func_o.html index dd846ecb9..222a5a5f1 100644 --- a/functions_func_o.html +++ b/functions_func_o.html @@ -90,7 +90,7 @@ $(function() { diff --git a/functions_func_p.html b/functions_func_p.html index 02df648dc..60427cace 100644 --- a/functions_func_p.html +++ b/functions_func_p.html @@ -83,7 +83,7 @@ $(function() { diff --git a/functions_func_q.html b/functions_func_q.html index 683127279..ee0fa4106 100644 --- a/functions_func_q.html +++ b/functions_func_q.html @@ -78,7 +78,7 @@ $(function() { diff --git a/functions_func_r.html b/functions_func_r.html index abd78bf79..f6afbe8b9 100644 --- a/functions_func_r.html +++ b/functions_func_r.html @@ -91,7 +91,7 @@ $(function() { diff --git a/functions_func_s.html b/functions_func_s.html index f528eca1b..d7e1cb595 100644 --- a/functions_func_s.html +++ b/functions_func_s.html @@ -98,7 +98,7 @@ $(function() { diff --git a/functions_func_t.html b/functions_func_t.html index 0f6c4b984..86109e1b6 100644 --- a/functions_func_t.html +++ b/functions_func_t.html @@ -83,7 +83,7 @@ $(function() { diff --git a/functions_func_u.html b/functions_func_u.html index 1d8ea3ff0..dffd3a68e 100644 --- a/functions_func_u.html +++ b/functions_func_u.html @@ -79,7 +79,7 @@ $(function() { diff --git a/functions_func_v.html b/functions_func_v.html index a4242dcc9..40488cdaf 100644 --- a/functions_func_v.html +++ b/functions_func_v.html @@ -78,7 +78,7 @@ $(function() { diff --git a/functions_func_w.html b/functions_func_w.html index 6edd34f2b..55776a2c4 100644 --- a/functions_func_w.html +++ b/functions_func_w.html @@ -87,7 +87,7 @@ $(function() { diff --git a/functions_func_~.html b/functions_func_~.html index c0622ddff..57c5e9683 100644 --- a/functions_func_~.html +++ b/functions_func_~.html @@ -79,7 +79,7 @@ $(function() { diff --git a/functions_g.html b/functions_g.html index ebb733b59..046c9af4f 100644 --- a/functions_g.html +++ b/functions_g.html @@ -79,7 +79,7 @@ $(function() { diff --git a/functions_h.html b/functions_h.html index ca22f411d..f0eca78b6 100644 --- a/functions_h.html +++ b/functions_h.html @@ -82,7 +82,7 @@ $(function() { diff --git a/functions_i.html b/functions_i.html index 6af06a91f..a0047adf0 100644 --- a/functions_i.html +++ b/functions_i.html @@ -83,7 +83,7 @@ $(function() { diff --git a/functions_l.html b/functions_l.html index 46d1d7058..f4300fd8d 100644 --- a/functions_l.html +++ b/functions_l.html @@ -81,7 +81,7 @@ $(function() { diff --git a/functions_m.html b/functions_m.html index 58ef2cd76..4eafb1f62 100644 --- a/functions_m.html +++ b/functions_m.html @@ -105,7 +105,7 @@ $(function() { diff --git a/functions_n.html b/functions_n.html index 013df5c33..4260e85da 100644 --- a/functions_n.html +++ b/functions_n.html @@ -85,7 +85,7 @@ $(function() { diff --git a/functions_o.html b/functions_o.html index fcce1fef9..fd5ae5032 100644 --- a/functions_o.html +++ b/functions_o.html @@ -94,7 +94,7 @@ $(function() { diff --git a/functions_p.html b/functions_p.html index acf485b9b..47780a513 100644 --- a/functions_p.html +++ b/functions_p.html @@ -90,7 +90,7 @@ $(function() { diff --git a/functions_q.html b/functions_q.html index 39ff448fc..2b3b72672 100644 --- a/functions_q.html +++ b/functions_q.html @@ -78,7 +78,7 @@ $(function() { diff --git a/functions_r.html b/functions_r.html index 4b6f61281..31235f3fd 100644 --- a/functions_r.html +++ b/functions_r.html @@ -94,7 +94,7 @@ $(function() { diff --git a/functions_rela.html b/functions_rela.html index 94714b7bb..773b41bd1 100644 --- a/functions_rela.html +++ b/functions_rela.html @@ -77,7 +77,7 @@ $(function() { diff --git a/functions_s.html b/functions_s.html index 36c8577f5..3bc3cc787 100644 --- a/functions_s.html +++ b/functions_s.html @@ -104,7 +104,7 @@ $(function() { diff --git a/functions_t.html b/functions_t.html index 3580cf69f..cb74da3f2 100644 --- a/functions_t.html +++ b/functions_t.html @@ -84,7 +84,7 @@ $(function() { diff --git a/functions_type.html b/functions_type.html index 2053f229d..7fc94f376 100644 --- a/functions_type.html +++ b/functions_type.html @@ -81,7 +81,7 @@ $(function() { diff --git a/functions_u.html b/functions_u.html index c60a36d48..3bf47d0cb 100644 --- a/functions_u.html +++ b/functions_u.html @@ -79,7 +79,7 @@ $(function() { diff --git a/functions_v.html b/functions_v.html index 3e8a6c9ac..228605fe1 100644 --- a/functions_v.html +++ b/functions_v.html @@ -81,7 +81,7 @@ $(function() { diff --git a/functions_vars.html b/functions_vars.html index 112b3edfd..231154ff4 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -225,7 +225,7 @@ $(function() { diff --git a/functions_w.html b/functions_w.html index de7326d9f..0e7ad72ba 100644 --- a/functions_w.html +++ b/functions_w.html @@ -89,7 +89,7 @@ $(function() { diff --git a/functions_~.html b/functions_~.html index f685f660f..497b43478 100644 --- a/functions_~.html +++ b/functions_~.html @@ -79,7 +79,7 @@ $(function() { diff --git a/hash_8cpp_source.html b/hash_8cpp_source.html index e66ea5109..8dbb233e0 100644 --- a/hash_8cpp_source.html +++ b/hash_8cpp_source.html @@ -164,7 +164,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/hash_8hpp_source.html b/hash_8hpp_source.html index 4568c8d68..96570ac94 100644 --- a/hash_8hpp_source.html +++ b/hash_8hpp_source.html @@ -743,7 +743,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/hex_8hpp_source.html b/hex_8hpp_source.html index 4aaf01eaf..2747e3aed 100644 --- a/hex_8hpp_source.html +++ b/hex_8hpp_source.html @@ -231,7 +231,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/hierarchy.html b/hierarchy.html index f282c6df0..076fd7684 100644 --- a/hierarchy.html +++ b/hierarchy.html @@ -256,7 +256,7 @@ $(function() { diff --git a/idrec_8hpp_source.html b/idrec_8hpp_source.html index 4424f6129..77eca6eb0 100644 --- a/idrec_8hpp_source.html +++ b/idrec_8hpp_source.html @@ -471,7 +471,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/include_2stdex_2compat_8hpp_source.html b/include_2stdex_2compat_8hpp_source.html index 873fa55cf..16bd32e45 100644 --- a/include_2stdex_2compat_8hpp_source.html +++ b/include_2stdex_2compat_8hpp_source.html @@ -307,7 +307,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/index.html b/index.html index de5a7db79..7d861fc29 100644 --- a/index.html +++ b/index.html @@ -78,7 +78,7 @@ $(function() { diff --git a/interval_8hpp_source.html b/interval_8hpp_source.html index 176296e22..f2b2bd41f 100644 --- a/interval_8hpp_source.html +++ b/interval_8hpp_source.html @@ -231,7 +231,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/mapping_8hpp_source.html b/mapping_8hpp_source.html index fd00f4f11..593346da9 100644 --- a/mapping_8hpp_source.html +++ b/mapping_8hpp_source.html @@ -124,7 +124,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/math_8cpp_source.html b/math_8cpp_source.html index 3bb4d625b..b7a17747a 100644 --- a/math_8cpp_source.html +++ b/math_8cpp_source.html @@ -129,7 +129,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/math_8hpp_source.html b/math_8hpp_source.html index 6e05dbbc4..2ae4cc592 100644 --- a/math_8hpp_source.html +++ b/math_8hpp_source.html @@ -147,7 +147,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/memory_8hpp_source.html b/memory_8hpp_source.html index e44be963f..8fd9eba1c 100644 --- a/memory_8hpp_source.html +++ b/memory_8hpp_source.html @@ -129,7 +129,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/parser_8cpp_source.html b/parser_8cpp_source.html index 57be8f58d..db5d1233a 100644 --- a/parser_8cpp_source.html +++ b/parser_8cpp_source.html @@ -597,7 +597,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/parser_8hpp_source.html b/parser_8hpp_source.html index 62ae1f1ab..c7b3df930 100644 --- a/parser_8hpp_source.html +++ b/parser_8hpp_source.html @@ -7604,7 +7604,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/pch_8hpp_source.html b/pch_8hpp_source.html index 88d2cf401..76596db3a 100644 --- a/pch_8hpp_source.html +++ b/pch_8hpp_source.html @@ -118,7 +118,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/progress_8hpp_source.html b/progress_8hpp_source.html index ab593d49d..2e327ac4e 100644 --- a/progress_8hpp_source.html +++ b/progress_8hpp_source.html @@ -331,7 +331,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/ring_8cpp_source.html b/ring_8cpp_source.html index 6f09743f4..77866c854 100644 --- a/ring_8cpp_source.html +++ b/ring_8cpp_source.html @@ -144,7 +144,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/ring_8hpp_source.html b/ring_8hpp_source.html index d5ee2e69e..a56fd1dd4 100644 --- a/ring_8hpp_source.html +++ b/ring_8hpp_source.html @@ -223,7 +223,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/sgml_8cpp_source.html b/sgml_8cpp_source.html index 079a1598e..da30280c4 100644 --- a/sgml_8cpp_source.html +++ b/sgml_8cpp_source.html @@ -153,7 +153,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/sgml_8hpp_source.html b/sgml_8hpp_source.html index 5632301c7..762d6fb7d 100644 --- a/sgml_8hpp_source.html +++ b/sgml_8hpp_source.html @@ -773,7 +773,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/sgml__unicode_8hpp_source.html b/sgml__unicode_8hpp_source.html index b89924c74..36ade7e69 100644 --- a/sgml__unicode_8hpp_source.html +++ b/sgml__unicode_8hpp_source.html @@ -96,7 +96,7 @@ $(document).ready(function() { init_codefold(0); });
13 wchar_t unicode[3];
14 };
15
-
16 const sgml_unicode_pair sgml_unicode[] = {
+
16 inline const sgml_unicode_pair sgml_unicode[] = {
17 { "AElig", L"\u00c6" },
18 { "Aacgr", L"\u0386" },
19 { "Aacute", L"\u00c1" },
@@ -1634,7 +1634,7 @@ $(document).ready(function() { init_codefold(0); });
1551 { "zwnj", L"\u200c" },
1552 };
1553
-
1554 const size_t unicode_sgml[] = {
+
1554 inline const size_t unicode_sgml[] = {
1555 0x5b6,
1556 0x48d,
1557 0x30d,
@@ -3175,7 +3175,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/stream_8cpp_source.html b/stream_8cpp_source.html index d22919ca8..a5d23b446 100644 --- a/stream_8cpp_source.html +++ b/stream_8cpp_source.html @@ -257,7 +257,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/stream_8hpp_source.html b/stream_8hpp_source.html index b41423744..cb843fcb4 100644 --- a/stream_8hpp_source.html +++ b/stream_8hpp_source.html @@ -4225,7 +4225,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/string_8hpp_source.html b/string_8hpp_source.html index 1203dff1d..343be8bd1 100644 --- a/string_8hpp_source.html +++ b/string_8hpp_source.html @@ -97,1125 +97,1123 @@ $(document).ready(function() { init_codefold(0); });
13#include <stdint.h>
14#include <stdio.h>
15#include <time.h>
-
16#if defined(_WIN32)
-
17#include "windows.h"
-
18#elif defined(__APPLE__)
-
19#include <xlocale.h>
-
20#endif
-
21#include <algorithm>
-
22#include <climits>
-
23#include <locale>
-
24#include <memory>
-
25#include <stdexcept>
-
26
-
27namespace stdex
-
28{
-
29#ifdef _WIN32
-
30 using locale_t = _locale_t;
-
31
-
32 inline locale_t create_locale(_In_ int category, _In_z_ const char* locale) { return _create_locale(category, locale); }
-
33 inline locale_t create_locale(_In_ int category, _In_z_ const wchar_t* locale) { return _wcreate_locale(category, locale); }
-
34 inline void free_locale(_In_opt_ locale_t locale) { _free_locale(locale); }
-
35#else
-
36 using locale_t = ::locale_t;
-
37
-
38 inline locale_t create_locale(_In_ int category, _In_z_ const char* locale)
-
39 {
-
40 int mask = 0;
-
41 switch (category) {
-
42 case LC_ALL : mask = LC_ALL_MASK ; break;
-
43 case LC_COLLATE : mask = LC_COLLATE_MASK ; break;
-
44 case LC_CTYPE : mask = LC_CTYPE_MASK ; break;
-
45 case LC_MESSAGES: mask = LC_MESSAGES_MASK; break;
-
46 case LC_MONETARY: mask = LC_MONETARY_MASK; break;
-
47 case LC_NUMERIC : mask = LC_NUMERIC_MASK ; break;
-
48 case LC_TIME : mask = LC_TIME_MASK ; break;
-
49 }
-
50 return newlocale(mask, locale, LC_GLOBAL_LOCALE);
-
51 }
-
52
-
53 inline void free_locale(_In_opt_ locale_t locale) { freelocale(locale); }
-
54#endif
-
55
-
- -
60 {
-
-
64 void operator()(_In_ locale_t locale) const
-
65 {
-
66 free_locale(locale);
-
67 }
+
16#if defined(__APPLE__)
+
17#include <xlocale.h>
+
18#endif
+
19#include <algorithm>
+
20#include <climits>
+
21#include <locale>
+
22#include <memory>
+
23#include <stdexcept>
+
24
+
25namespace stdex
+
26{
+
27#ifdef _WIN32
+
28 using locale_t = _locale_t;
+
29
+
30 inline locale_t create_locale(_In_ int category, _In_z_ const char* locale) { return _create_locale(category, locale); }
+
31 inline locale_t create_locale(_In_ int category, _In_z_ const wchar_t* locale) { return _wcreate_locale(category, locale); }
+
32 inline void free_locale(_In_opt_ locale_t locale) { _free_locale(locale); }
+
33#else
+
34 using locale_t = ::locale_t;
+
35
+
36 inline locale_t create_locale(_In_ int category, _In_z_ const char* locale)
+
37 {
+
38 int mask = 0;
+
39 switch (category) {
+
40 case LC_ALL : mask = LC_ALL_MASK ; break;
+
41 case LC_COLLATE : mask = LC_COLLATE_MASK ; break;
+
42 case LC_CTYPE : mask = LC_CTYPE_MASK ; break;
+
43 case LC_MESSAGES: mask = LC_MESSAGES_MASK; break;
+
44 case LC_MONETARY: mask = LC_MONETARY_MASK; break;
+
45 case LC_NUMERIC : mask = LC_NUMERIC_MASK ; break;
+
46 case LC_TIME : mask = LC_TIME_MASK ; break;
+
47 }
+
48 return newlocale(mask, locale, LC_GLOBAL_LOCALE);
+
49 }
+
50
+
51 inline void free_locale(_In_opt_ locale_t locale) { freelocale(locale); }
+
52#endif
+
53
+
+ +
58 {
+
+
62 void operator()(_In_ locale_t locale) const
+
63 {
+
64 free_locale(locale);
+
65 }
-
68 };
+
66 };
-
69
-
73#if defined(_WIN32)
-
74 using locale = std::unique_ptr<__crt_locale_pointers, free_locale_delete>;
-
75#elif defined(__APPLE__)
-
76 using locale = std::unique_ptr<struct _xlocale, free_locale_delete>;
-
77#else
-
78 using locale = std::unique_ptr<struct __locale_struct, free_locale_delete>;
-
79#endif
-
80
-
84 const locale locale_C(create_locale(LC_ALL, "C"));
-
85
-
89#ifdef _WIN32
-
90 typedef wchar_t utf16_t;
-
91#else
-
92 typedef char16_t utf16_t;
-
93#endif
-
94
-
100 inline bool is_high_surrogate(_In_ utf16_t chr)
-
101 {
-
102 return 0xd800 < chr && chr < 0xdc00;
-
103 }
-
104
-
110 inline bool is_low_surrogate(_In_ utf16_t chr)
-
111 {
-
112 return 0xdc00 < chr && chr < 0xe000;
-
113 }
-
114
-
120 inline bool is_surrogate_pair(_In_reads_(2) const utf16_t* str)
-
121 {
-
122 return is_high_surrogate(str[0]) && is_low_surrogate(str[1]);
-
123 }
-
124
-
130 inline char32_t surrogate_pair_to_ucs4(_In_reads_(2) const utf16_t* str)
-
131 {
-
132 _Assume_(is_surrogate_pair(str));
-
133 return
-
134 ((char32_t)(str[0] - 0xd800) << 10) +
-
135 (char32_t)(str[1] - 0xdc00) +
-
136 0x10000;
-
137 }
-
138
-
144 inline void ucs4_to_surrogate_pair(_Out_writes_(2) utf16_t* str, _In_ char32_t chr)
-
145 {
-
146 _Assume_(chr >= 0x10000);
-
147 chr -= 0x10000;
-
148 str[0] = 0xd800 + (char32_t)((chr >> 10) & 0x3ff);
-
149 str[1] = 0xdc00 + (char32_t)(chr & 0x3ff);
-
150 }
-
151
-
157 inline bool iscombining(_In_ char32_t chr)
-
158 {
-
159 return
-
160 (0x0300 <= chr && chr < 0x0370) ||
-
161 (0x1dc0 <= chr && chr < 0x1e00) ||
-
162 (0x20d0 <= chr && chr < 0x2100) ||
-
163 (0xfe20 <= chr && chr < 0xfe30);
-
164 }
-
165
-
171 template <class T>
-
172 inline size_t islbreak(_In_ T chr)
-
173 {
-
174 return chr == '\n' || chr == '\r';
-
175 }
-
176
-
183 template <class T>
-
184 inline size_t islbreak(_In_reads_or_z_opt_(count) const T* chr, _In_ size_t count)
-
185 {
-
186 _Assume_(chr || !count);
-
187 if (count >= 2 && ((chr[0] == '\r' && chr[1] == '\n') || (chr[0] == '\n' && chr[1] == '\r')))
-
188 return 2;
-
189 if (count > 1 && (chr[0] == '\n' || chr[0] == '\r'))
-
190 return 1;
-
191 return 0;
-
192 }
-
193
-
200 inline size_t glyphlen(_In_reads_or_z_opt_(count) const wchar_t* glyph, _In_ size_t count)
-
201 {
-
202 _Assume_(glyph || !count);
-
203 if (count) {
-
204#ifdef _WIN32
-
205 size_t i = count < 2 || !is_surrogate_pair(glyph) ? 1 : 2;
-
206#else
-
207 size_t i = 1;
-
208#endif
-
209 for (; i < count && iscombining(glyph[i]); ++i);
-
210 return i;
-
211 }
-
212 return 0;
-
213 }
-
214
-
222 template <class T>
-
223 inline size_t strlen(_In_z_ const T* str)
-
224 {
-
225 _Assume_(str);
-
226 size_t i;
-
227 for (i = 0; str[i]; ++i);
-
228 return i;
-
229 }
-
230
-
239 template <class T>
-
240 inline size_t strnlen(_In_reads_or_z_opt_(count) const T* str, _In_ size_t count)
-
241 {
-
242 _Assume_(str || !count);
-
243 size_t i;
-
244 for (i = 0; i < count && str[i]; ++i);
-
245 return i;
-
246 }
+
67
+
71#if defined(_WIN32)
+
72 using locale = std::unique_ptr<__crt_locale_pointers, free_locale_delete>;
+
73#elif defined(__APPLE__)
+
74 using locale = std::unique_ptr<struct _xlocale, free_locale_delete>;
+
75#else
+
76 using locale = std::unique_ptr<struct __locale_struct, free_locale_delete>;
+
77#endif
+
78
+
82 const locale locale_C(create_locale(LC_ALL, "C"));
+
83
+
87#ifdef _WIN32
+
88 typedef wchar_t utf16_t;
+
89#else
+
90 typedef char16_t utf16_t;
+
91#endif
+
92
+
98 inline bool is_high_surrogate(_In_ utf16_t chr)
+
99 {
+
100 return 0xd800 < chr && chr < 0xdc00;
+
101 }
+
102
+
108 inline bool is_low_surrogate(_In_ utf16_t chr)
+
109 {
+
110 return 0xdc00 < chr && chr < 0xe000;
+
111 }
+
112
+
118 inline bool is_surrogate_pair(_In_reads_(2) const utf16_t* str)
+
119 {
+
120 return is_high_surrogate(str[0]) && is_low_surrogate(str[1]);
+
121 }
+
122
+
128 inline char32_t surrogate_pair_to_ucs4(_In_reads_(2) const utf16_t* str)
+
129 {
+
130 _Assume_(is_surrogate_pair(str));
+
131 return
+
132 ((char32_t)(str[0] - 0xd800) << 10) +
+
133 (char32_t)(str[1] - 0xdc00) +
+
134 0x10000;
+
135 }
+
136
+
142 inline void ucs4_to_surrogate_pair(_Out_writes_(2) utf16_t* str, _In_ char32_t chr)
+
143 {
+
144 _Assume_(chr >= 0x10000);
+
145 chr -= 0x10000;
+
146 str[0] = 0xd800 + (char32_t)((chr >> 10) & 0x3ff);
+
147 str[1] = 0xdc00 + (char32_t)(chr & 0x3ff);
+
148 }
+
149
+
155 inline bool iscombining(_In_ char32_t chr)
+
156 {
+
157 return
+
158 (0x0300 <= chr && chr < 0x0370) ||
+
159 (0x1dc0 <= chr && chr < 0x1e00) ||
+
160 (0x20d0 <= chr && chr < 0x2100) ||
+
161 (0xfe20 <= chr && chr < 0xfe30);
+
162 }
+
163
+
169 template <class T>
+
170 inline size_t islbreak(_In_ T chr)
+
171 {
+
172 return chr == '\n' || chr == '\r';
+
173 }
+
174
+
181 template <class T>
+
182 inline size_t islbreak(_In_reads_or_z_opt_(count) const T* chr, _In_ size_t count)
+
183 {
+
184 _Assume_(chr || !count);
+
185 if (count >= 2 && ((chr[0] == '\r' && chr[1] == '\n') || (chr[0] == '\n' && chr[1] == '\r')))
+
186 return 2;
+
187 if (count > 1 && (chr[0] == '\n' || chr[0] == '\r'))
+
188 return 1;
+
189 return 0;
+
190 }
+
191
+
198 inline size_t glyphlen(_In_reads_or_z_opt_(count) const wchar_t* glyph, _In_ size_t count)
+
199 {
+
200 _Assume_(glyph || !count);
+
201 if (count) {
+
202#ifdef _WIN32
+
203 size_t i = count < 2 || !is_surrogate_pair(glyph) ? 1 : 2;
+
204#else
+
205 size_t i = 1;
+
206#endif
+
207 for (; i < count && iscombining(glyph[i]); ++i);
+
208 return i;
+
209 }
+
210 return 0;
+
211 }
+
212
+
220 template <class T>
+
221 inline size_t strlen(_In_z_ const T* str)
+
222 {
+
223 _Assume_(str);
+
224 size_t i;
+
225 for (i = 0; str[i]; ++i);
+
226 return i;
+
227 }
+
228
+
237 template <class T>
+
238 inline size_t strnlen(_In_reads_or_z_opt_(count) const T* str, _In_ size_t count)
+
239 {
+
240 _Assume_(str || !count);
+
241 size_t i;
+
242 for (i = 0; i < count && str[i]; ++i);
+
243 return i;
+
244 }
+
245
+
246 constexpr auto npos{ static_cast<size_t>(-1) };
247
-
248 constexpr auto npos{ static_cast<size_t>(-1) };
-
249
-
258 template <class T>
-
259 inline size_t strchr(_In_z_ const T* str, _In_ T chr)
-
260 {
-
261 _Assume_(str);
-
262 for (size_t i = 0; str[i]; ++i)
-
263 if (str[i] == chr) return i;
-
264 return npos;
-
265 }
-
266
-
276 template <class T>
-
277 inline size_t strnchr(
-
278 _In_reads_or_z_opt_(count) const T* str,
-
279 _In_ size_t count,
-
280 _In_ T chr)
-
281 {
-
282 _Assume_(str || !count);
-
283 for (size_t i = 0; i < count && str[i]; ++i)
-
284 if (str[i] == chr) return i;
-
285 return npos;
-
286 }
-
287
-
297 template <class T>
-
298 inline size_t strrnchr(
-
299 _In_reads_or_z_opt_(count) const T* str,
-
300 _In_ size_t count,
-
301 _In_ T chr)
-
302 {
-
303 _Assume_(str || !count);
-
304 size_t z = npos;
-
305 for (size_t i = 0; i < count && str[i]; ++i)
-
306 if (str[i] == chr) z = i;
-
307 return z;
-
308 }
-
309
-
319 template <class T>
-
320 inline size_t strnichr(
-
321 _In_reads_or_z_opt_(count) const T* str,
-
322 _In_ size_t count,
-
323 _In_ T chr,
-
324 _In_ const std::locale& locale)
-
325 {
-
326 _Assume_(str || !count);
-
327 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
328 chr = ctype.tolower(chr);
-
329 for (size_t i = 0; i < count && str[i]; ++i)
-
330 if (ctype.tolower(str[i]) == chr) return i;
-
331 return npos;
-
332 }
-
333
-
343 template <class T>
-
344 inline size_t strrnichr(
-
345 _In_reads_or_z_opt_(count) const T* str,
-
346 _In_ size_t count,
-
347 _In_ T chr,
-
348 _In_ const std::locale& locale)
-
349 {
-
350 _Assume_(str || !count);
-
351 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
352 chr = ctype.tolower(chr);
-
353 size_t z = npos;
-
354 for (size_t i = 0; i < count && str[i]; ++i)
-
355 if (ctype.tolower(str[i]) == chr) z = i;
-
356 return z;
-
357 }
-
358
-
367 template <class T1, class T2>
-
368 inline int strcmp(const T1* str1, const T2* str2)
-
369 {
-
370 _Assume_(str1 && str2);
-
371 T1 a; T2 b;
-
372 for (size_t i = 0; (a = str1[i]) | (b = str2[i]); ++i) {
-
373 if (a > b) return +1;
-
374 if (a < b) return -1;
-
375 }
-
376 return 0;
-
377 }
-
378
-
389 template <class T1, class T2>
-
390 inline int strncmp(
-
391 _In_reads_or_z_opt_(count1) const T1* str1, _In_ size_t count1,
-
392 _In_reads_or_z_opt_(count2) const T2* str2, _In_ size_t count2)
-
393 {
-
394 _Assume_(str1 || !count1);
-
395 _Assume_(str2 || !count2);
-
396 size_t i; T1 a; T2 b;
-
397 for (i = 0; i < count1 && i < count2 && ((a = str1[i]) | (b = str2[i])); ++i) {
-
398 if (a > b) return +1;
-
399 if (a < b) return -1;
-
400 }
-
401 if (i < count1 && str1[i]) return +1;
-
402 if (i < count2 && str2[i]) return -1;
-
403 return 0;
-
404 }
-
405
-
415 template <class T1, class T2>
-
416 inline int strncmp(_In_reads_or_z_opt_(count) const T1* str1, _In_reads_or_z_opt_(count) const T2* str2, _In_ size_t count)
-
417 {
-
418 _Assume_((str1 && str2) || !count);
-
419 size_t i; T1 a; T2 b;
-
420 for (i = 0; i < count && ((a = str1[i]) | (b = str2[i])); ++i) {
-
421 if (a > b) return +1;
-
422 if (a < b) return -1;
-
423 }
-
424 if (i < count && str1[i]) return +1;
-
425 if (i < count && str2[i]) return -1;
-
426 return 0;
-
427 }
-
428
-
439 template <class T>
-
440 inline int strncoll(
-
441 _In_reads_or_z_opt_(count1) const T* str1, _In_ size_t count1,
-
442 _In_reads_or_z_opt_(count2) const T* str2, _In_ size_t count2,
-
443 _In_ const std::locale& locale)
-
444 {
-
445 _Assume_(str1 || !count1);
-
446 _Assume_(str2 || !count2);
-
447 auto& collate = std::use_facet<std::collate<T>>(locale);
-
448 return collate.compare(str1, str1 + count1, str2, str2 + count2);
-
449 }
-
450
-
459 template <class T1, class T2>
-
460 inline int stricmp(_In_z_ const T1* str1, _In_z_ const T2* str2, _In_ const std::locale& locale)
-
461 {
-
462 _Assume_(str1);
-
463 _Assume_(str2);
-
464 size_t i; T1 a; T2 b;
-
465 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
-
466 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
-
467 for (i = 0; (a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i])); i++) {
-
468 if (a > b) return +1;
-
469 if (a < b) return -1;
-
470 }
-
471 if (str1[i]) return +1;
-
472 if (str2[i]) return -1;
-
473 return 0;
-
474 }
-
475
-
485 template <class T1, class T2>
-
486 inline int strnicmp(_In_reads_or_z_opt_(count) const T1* str1, _In_reads_or_z_opt_(count) const T2* str2, _In_ size_t count, _In_ const std::locale& locale)
-
487 {
-
488 _Assume_(str1 || !count);
-
489 _Assume_(str2 || !count);
-
490 size_t i; T1 a; T2 b;
-
491 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
-
492 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
-
493 for (i = 0; i < count && ((a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i]))); i++) {
-
494 if (a > b) return +1;
-
495 if (a < b) return -1;
-
496 }
-
497 if (i < count && str1[i]) return +1;
-
498 if (i < count && str2[i]) return -1;
-
499 return 0;
-
500 }
-
501
-
512 template <class T1, class T2>
-
513 inline int strnicmp(
-
514 _In_reads_or_z_opt_(count1) const T1* str1, _In_ size_t count1,
-
515 _In_reads_or_z_opt_(count2) const T2* str2, _In_ size_t count2,
-
516 _In_ const std::locale& locale)
-
517 {
-
518 _Assume_(str1 || !count1);
-
519 _Assume_(str2 || !count2);
-
520 size_t i; T1 a; T2 b;
-
521 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
-
522 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
-
523 for (i = 0; i < count1 && i < count2 && ((a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i]))); i++) {
-
524 if (a > b) return +1;
-
525 if (a < b) return -1;
-
526 }
-
527 if (i < count1 && str1[i]) return +1;
-
528 if (i < count2 && str2[i]) return -1;
-
529 return 0;
-
530 }
-
531
-
540 template <class T1, class T2>
-
541 inline size_t strstr(
-
542 _In_z_ const T1* str,
-
543 _In_z_ const T2* sample)
-
544 {
-
545 _Assume_(str);
-
546 _Assume_(sample);
-
547 for (size_t offset = 0;; ++offset) {
-
548 for (size_t i = offset, j = 0;; ++i, ++j) {
-
549 if (!sample[j])
-
550 return offset;
-
551 if (!str[i])
-
552 return npos;
-
553 if (str[i] != sample[j])
-
554 break;
-
555 }
-
556 }
-
557 }
-
558
-
568 template <class T1, class T2>
-
569 inline size_t strnstr(
-
570 _In_reads_or_z_opt_(count) const T1* str,
-
571 _In_ size_t count,
-
572 _In_z_ const T2* sample)
-
573 {
-
574 _Assume_(str || !count);
-
575 _Assume_(sample);
-
576 for (size_t offset = 0;; ++offset) {
-
577 for (size_t i = offset, j = 0;; ++i, ++j) {
-
578 if (!sample[j])
-
579 return offset;
-
580 if (i >= count || !str[i])
-
581 return npos;
-
582 if (str[i] != sample[j])
-
583 break;
-
584 }
-
585 }
-
586 }
-
587
-
596 template <class T1, class T2>
-
597 inline size_t stristr(
-
598 _In_z_ const T1* str,
-
599 _In_z_ const T2* sample,
-
600 _In_ const std::locale& locale)
-
601 {
-
602 _Assume_(str);
-
603 _Assume_(sample);
-
604 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
-
605 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
-
606 for (size_t offset = 0;; ++offset) {
-
607 for (size_t i = offset, j = 0;; ++i, ++j) {
-
608 if (!sample[j])
-
609 return offset;
-
610 if (!str[i])
-
611 return npos;
-
612 if (ctype1.tolower(str[i]) != ctype2.tolower(sample[j]))
-
613 break;
-
614 }
-
615 }
-
616 }
-
617
-
627 template <class T1, class T2>
-
628 inline size_t strnistr(
-
629 _In_reads_or_z_opt_(count) const T1* str,
-
630 _In_ size_t count,
-
631 _In_z_ const T2* sample,
-
632 _In_ const std::locale& locale)
-
633 {
-
634 _Assume_(str || !count);
-
635 _Assume_(sample);
-
636 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
-
637 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
-
638 for (size_t offset = 0;; ++offset) {
-
639 for (size_t i = offset, j = 0;; ++i, ++j) {
-
640 if (!sample[j])
-
641 return offset;
-
642 if (i >= count || !str[i])
-
643 return npos;
-
644 if (ctype1.tolower(str[i]) != ctype2.tolower(sample[j]))
-
645 break;
-
646 }
-
647 }
-
648 }
-
649
-
658 template <class T1, class T2>
-
659 inline size_t strcpy(
-
660 _Out_writes_z_(_String_length_(src) + 1) T1* dst,
-
661 _In_z_ const T2* src)
-
662 {
-
663 _Assume_(dst && src);
-
664 for (size_t i = 0; ; ++i) {
-
665 if ((dst[i] = src[i]) == 0)
-
666 return i;
-
667 }
-
668 }
-
669
-
679 template <class T1, class T2>
-
680 inline size_t strncpy(
-
681 _Out_writes_(count) _Post_maybez_ T1* dst,
-
682 _In_reads_or_z_opt_(count) const T2* src, _In_ size_t count)
-
683 {
-
684 _Assume_(dst && src || !count);
-
685 for (size_t i = 0; ; ++i) {
-
686 if (i >= count)
+
256 template <class T>
+
257 inline size_t strchr(_In_z_ const T* str, _In_ T chr)
+
258 {
+
259 _Assume_(str);
+
260 for (size_t i = 0; str[i]; ++i)
+
261 if (str[i] == chr) return i;
+
262 return npos;
+
263 }
+
264
+
274 template <class T>
+
275 inline size_t strnchr(
+
276 _In_reads_or_z_opt_(count) const T* str,
+
277 _In_ size_t count,
+
278 _In_ T chr)
+
279 {
+
280 _Assume_(str || !count);
+
281 for (size_t i = 0; i < count && str[i]; ++i)
+
282 if (str[i] == chr) return i;
+
283 return npos;
+
284 }
+
285
+
295 template <class T>
+
296 inline size_t strrnchr(
+
297 _In_reads_or_z_opt_(count) const T* str,
+
298 _In_ size_t count,
+
299 _In_ T chr)
+
300 {
+
301 _Assume_(str || !count);
+
302 size_t z = npos;
+
303 for (size_t i = 0; i < count && str[i]; ++i)
+
304 if (str[i] == chr) z = i;
+
305 return z;
+
306 }
+
307
+
317 template <class T>
+
318 inline size_t strnichr(
+
319 _In_reads_or_z_opt_(count) const T* str,
+
320 _In_ size_t count,
+
321 _In_ T chr,
+
322 _In_ const std::locale& locale)
+
323 {
+
324 _Assume_(str || !count);
+
325 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
326 chr = ctype.tolower(chr);
+
327 for (size_t i = 0; i < count && str[i]; ++i)
+
328 if (ctype.tolower(str[i]) == chr) return i;
+
329 return npos;
+
330 }
+
331
+
341 template <class T>
+
342 inline size_t strrnichr(
+
343 _In_reads_or_z_opt_(count) const T* str,
+
344 _In_ size_t count,
+
345 _In_ T chr,
+
346 _In_ const std::locale& locale)
+
347 {
+
348 _Assume_(str || !count);
+
349 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
350 chr = ctype.tolower(chr);
+
351 size_t z = npos;
+
352 for (size_t i = 0; i < count && str[i]; ++i)
+
353 if (ctype.tolower(str[i]) == chr) z = i;
+
354 return z;
+
355 }
+
356
+
365 template <class T1, class T2>
+
366 inline int strcmp(const T1* str1, const T2* str2)
+
367 {
+
368 _Assume_(str1 && str2);
+
369 T1 a; T2 b;
+
370 for (size_t i = 0; (a = str1[i]) | (b = str2[i]); ++i) {
+
371 if (a > b) return +1;
+
372 if (a < b) return -1;
+
373 }
+
374 return 0;
+
375 }
+
376
+
387 template <class T1, class T2>
+
388 inline int strncmp(
+
389 _In_reads_or_z_opt_(count1) const T1* str1, _In_ size_t count1,
+
390 _In_reads_or_z_opt_(count2) const T2* str2, _In_ size_t count2)
+
391 {
+
392 _Assume_(str1 || !count1);
+
393 _Assume_(str2 || !count2);
+
394 size_t i; T1 a; T2 b;
+
395 for (i = 0; i < count1 && i < count2 && ((a = str1[i]) | (b = str2[i])); ++i) {
+
396 if (a > b) return +1;
+
397 if (a < b) return -1;
+
398 }
+
399 if (i < count1 && str1[i]) return +1;
+
400 if (i < count2 && str2[i]) return -1;
+
401 return 0;
+
402 }
+
403
+
413 template <class T1, class T2>
+
414 inline int strncmp(_In_reads_or_z_opt_(count) const T1* str1, _In_reads_or_z_opt_(count) const T2* str2, _In_ size_t count)
+
415 {
+
416 _Assume_((str1 && str2) || !count);
+
417 size_t i; T1 a; T2 b;
+
418 for (i = 0; i < count && ((a = str1[i]) | (b = str2[i])); ++i) {
+
419 if (a > b) return +1;
+
420 if (a < b) return -1;
+
421 }
+
422 if (i < count && str1[i]) return +1;
+
423 if (i < count && str2[i]) return -1;
+
424 return 0;
+
425 }
+
426
+
437 template <class T>
+
438 inline int strncoll(
+
439 _In_reads_or_z_opt_(count1) const T* str1, _In_ size_t count1,
+
440 _In_reads_or_z_opt_(count2) const T* str2, _In_ size_t count2,
+
441 _In_ const std::locale& locale)
+
442 {
+
443 _Assume_(str1 || !count1);
+
444 _Assume_(str2 || !count2);
+
445 auto& collate = std::use_facet<std::collate<T>>(locale);
+
446 return collate.compare(str1, str1 + count1, str2, str2 + count2);
+
447 }
+
448
+
457 template <class T1, class T2>
+
458 inline int stricmp(_In_z_ const T1* str1, _In_z_ const T2* str2, _In_ const std::locale& locale)
+
459 {
+
460 _Assume_(str1);
+
461 _Assume_(str2);
+
462 size_t i; T1 a; T2 b;
+
463 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
+
464 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
+
465 for (i = 0; (a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i])); i++) {
+
466 if (a > b) return +1;
+
467 if (a < b) return -1;
+
468 }
+
469 if (str1[i]) return +1;
+
470 if (str2[i]) return -1;
+
471 return 0;
+
472 }
+
473
+
483 template <class T1, class T2>
+
484 inline int strnicmp(_In_reads_or_z_opt_(count) const T1* str1, _In_reads_or_z_opt_(count) const T2* str2, _In_ size_t count, _In_ const std::locale& locale)
+
485 {
+
486 _Assume_(str1 || !count);
+
487 _Assume_(str2 || !count);
+
488 size_t i; T1 a; T2 b;
+
489 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
+
490 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
+
491 for (i = 0; i < count && ((a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i]))); i++) {
+
492 if (a > b) return +1;
+
493 if (a < b) return -1;
+
494 }
+
495 if (i < count && str1[i]) return +1;
+
496 if (i < count && str2[i]) return -1;
+
497 return 0;
+
498 }
+
499
+
510 template <class T1, class T2>
+
511 inline int strnicmp(
+
512 _In_reads_or_z_opt_(count1) const T1* str1, _In_ size_t count1,
+
513 _In_reads_or_z_opt_(count2) const T2* str2, _In_ size_t count2,
+
514 _In_ const std::locale& locale)
+
515 {
+
516 _Assume_(str1 || !count1);
+
517 _Assume_(str2 || !count2);
+
518 size_t i; T1 a; T2 b;
+
519 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
+
520 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
+
521 for (i = 0; i < count1 && i < count2 && ((a = ctype1.tolower(str1[i])) | (b = ctype2.tolower(str2[i]))); i++) {
+
522 if (a > b) return +1;
+
523 if (a < b) return -1;
+
524 }
+
525 if (i < count1 && str1[i]) return +1;
+
526 if (i < count2 && str2[i]) return -1;
+
527 return 0;
+
528 }
+
529
+
538 template <class T1, class T2>
+
539 inline size_t strstr(
+
540 _In_z_ const T1* str,
+
541 _In_z_ const T2* sample)
+
542 {
+
543 _Assume_(str);
+
544 _Assume_(sample);
+
545 for (size_t offset = 0;; ++offset) {
+
546 for (size_t i = offset, j = 0;; ++i, ++j) {
+
547 if (!sample[j])
+
548 return offset;
+
549 if (!str[i])
+
550 return npos;
+
551 if (str[i] != sample[j])
+
552 break;
+
553 }
+
554 }
+
555 }
+
556
+
566 template <class T1, class T2>
+
567 inline size_t strnstr(
+
568 _In_reads_or_z_opt_(count) const T1* str,
+
569 _In_ size_t count,
+
570 _In_z_ const T2* sample)
+
571 {
+
572 _Assume_(str || !count);
+
573 _Assume_(sample);
+
574 for (size_t offset = 0;; ++offset) {
+
575 for (size_t i = offset, j = 0;; ++i, ++j) {
+
576 if (!sample[j])
+
577 return offset;
+
578 if (i >= count || !str[i])
+
579 return npos;
+
580 if (str[i] != sample[j])
+
581 break;
+
582 }
+
583 }
+
584 }
+
585
+
594 template <class T1, class T2>
+
595 inline size_t stristr(
+
596 _In_z_ const T1* str,
+
597 _In_z_ const T2* sample,
+
598 _In_ const std::locale& locale)
+
599 {
+
600 _Assume_(str);
+
601 _Assume_(sample);
+
602 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
+
603 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
+
604 for (size_t offset = 0;; ++offset) {
+
605 for (size_t i = offset, j = 0;; ++i, ++j) {
+
606 if (!sample[j])
+
607 return offset;
+
608 if (!str[i])
+
609 return npos;
+
610 if (ctype1.tolower(str[i]) != ctype2.tolower(sample[j]))
+
611 break;
+
612 }
+
613 }
+
614 }
+
615
+
625 template <class T1, class T2>
+
626 inline size_t strnistr(
+
627 _In_reads_or_z_opt_(count) const T1* str,
+
628 _In_ size_t count,
+
629 _In_z_ const T2* sample,
+
630 _In_ const std::locale& locale)
+
631 {
+
632 _Assume_(str || !count);
+
633 _Assume_(sample);
+
634 const auto& ctype1 = std::use_facet<std::ctype<T1>>(locale);
+
635 const auto& ctype2 = std::use_facet<std::ctype<T2>>(locale);
+
636 for (size_t offset = 0;; ++offset) {
+
637 for (size_t i = offset, j = 0;; ++i, ++j) {
+
638 if (!sample[j])
+
639 return offset;
+
640 if (i >= count || !str[i])
+
641 return npos;
+
642 if (ctype1.tolower(str[i]) != ctype2.tolower(sample[j]))
+
643 break;
+
644 }
+
645 }
+
646 }
+
647
+
656 template <class T1, class T2>
+
657 inline size_t strcpy(
+
658 _Out_writes_z_(_String_length_(src) + 1) T1* dst,
+
659 _In_z_ const T2* src)
+
660 {
+
661 _Assume_(dst && src);
+
662 for (size_t i = 0; ; ++i) {
+
663 if ((dst[i] = src[i]) == 0)
+
664 return i;
+
665 }
+
666 }
+
667
+
677 template <class T1, class T2>
+
678 inline size_t strncpy(
+
679 _Out_writes_(count) _Post_maybez_ T1* dst,
+
680 _In_reads_or_z_opt_(count) const T2* src, _In_ size_t count)
+
681 {
+
682 _Assume_(dst && src || !count);
+
683 for (size_t i = 0; ; ++i) {
+
684 if (i >= count)
+
685 return i;
+
686 if ((dst[i] = src[i]) == 0)
687 return i;
-
688 if ((dst[i] = src[i]) == 0)
-
689 return i;
-
690 }
-
691 }
-
692
-
703 template <class T1, class T2>
-
704 inline size_t strncpy(
-
705 _Out_writes_(count_dst) _Post_maybez_ T1* dst, _In_ size_t count_dst,
-
706 _In_reads_or_z_opt_(count_src) const T2* src, _In_ size_t count_src)
-
707 {
-
708 _Assume_(dst || !count_dst);
-
709 _Assume_(src || !count_src);
-
710 for (size_t i = 0; ; ++i)
-
711 {
-
712 if (i >= count_dst)
-
713 return i;
-
714 if (i >= count_src) {
-
715 dst[i] = 0;
-
716 return i;
-
717 }
-
718 if ((dst[i] = src[i]) == 0)
-
719 return i;
-
720 }
-
721 }
-
722
-
731 template <class T1, class T2>
-
732 inline size_t strcat(
-
733 _In_z_ _Out_writes_z_(_String_length_(dst) + _String_length_(src) + 1) T1* dst,
-
734 _In_z_ const T2* src)
-
735 {
-
736 _Assume_(dst && src);
-
737 for (size_t i = 0, j = stdex::strlen<T1>(dst); ; ++i, ++j) {
-
738 if ((dst[j] = src[i]) == 0)
-
739 return j;
-
740 }
-
741 }
-
742
-
752 template <class T1, class T2>
-
753 inline size_t strncat(
-
754 _Inout_z_ T1* dst,
-
755 _In_reads_or_z_opt_(count) const T2* src, _In_ size_t count)
-
756 {
-
757 _Assume_(dst && src || !count);
-
758 for (size_t i = 0, j = stdex::strlen<T1>(dst); ; ++i, ++j) {
-
759 if (i >= count)
+
688 }
+
689 }
+
690
+
701 template <class T1, class T2>
+
702 inline size_t strncpy(
+
703 _Out_writes_(count_dst) _Post_maybez_ T1* dst, _In_ size_t count_dst,
+
704 _In_reads_or_z_opt_(count_src) const T2* src, _In_ size_t count_src)
+
705 {
+
706 _Assume_(dst || !count_dst);
+
707 _Assume_(src || !count_src);
+
708 for (size_t i = 0; ; ++i)
+
709 {
+
710 if (i >= count_dst)
+
711 return i;
+
712 if (i >= count_src) {
+
713 dst[i] = 0;
+
714 return i;
+
715 }
+
716 if ((dst[i] = src[i]) == 0)
+
717 return i;
+
718 }
+
719 }
+
720
+
729 template <class T1, class T2>
+
730 inline size_t strcat(
+
731 _In_z_ _Out_writes_z_(_String_length_(dst) + _String_length_(src) + 1) T1* dst,
+
732 _In_z_ const T2* src)
+
733 {
+
734 _Assume_(dst && src);
+
735 for (size_t i = 0, j = stdex::strlen<T1>(dst); ; ++i, ++j) {
+
736 if ((dst[j] = src[i]) == 0)
+
737 return j;
+
738 }
+
739 }
+
740
+
750 template <class T1, class T2>
+
751 inline size_t strncat(
+
752 _Inout_z_ T1* dst,
+
753 _In_reads_or_z_opt_(count) const T2* src, _In_ size_t count)
+
754 {
+
755 _Assume_(dst && src || !count);
+
756 for (size_t i = 0, j = stdex::strlen<T1>(dst); ; ++i, ++j) {
+
757 if (i >= count)
+
758 return j;
+
759 if ((dst[j] = src[i]) == 0)
760 return j;
-
761 if ((dst[j] = src[i]) == 0)
-
762 return j;
-
763 }
-
764 }
-
765
-
776 template <class T1, class T2>
-
777 inline size_t strncat(
-
778 _Out_writes_(count_dst) _Post_maybez_ T1* dst, _In_ size_t count_dst,
-
779 _In_reads_or_z_opt_(count_src) const T2* src, _In_ size_t count_src)
-
780 {
-
781 _Assume_(dst || !count_dst);
-
782 _Assume_(src || !count_src);
-
783 for (size_t i = 0, j = stdex::strnlen<T1>(dst, count_dst); ; ++i, ++j)
-
784 {
-
785 if (j >= count_dst)
-
786 return j;
-
787 if (i >= count_src) {
-
788 dst[j] = 0;
-
789 return j;
-
790 }
-
791 if ((dst[j] = src[i]) == 0)
-
792 return j;
-
793 }
-
794 }
-
795
-
806 template <class T>
-
807 inline _Check_return_ _Ret_maybenull_z_ T* strdup(_In_opt_z_ const T* str)
-
808 {
-
809 if (!str) _Unlikely_
-
810 return nullptr;
-
811 size_t count = strlen(str) + 1;
-
812 T* dst = new T[count];
-
813 strncpy(dst, count, str, SIZE_MAX);
-
814 return dst;
-
815 }
-
816
-
828 template <class T>
-
829 inline _Ret_z_ T* strndup(
-
830 _In_reads_or_z_opt_(count) const T* str,
-
831 _In_ size_t count)
-
832 {
-
833 T* dst = new T[count];
-
834 strncpy(dst, count, str, SIZE_MAX);
-
835 return dst;
-
836 }
-
837
-
847 template <class T>
-
848 inline size_t crlf2nl(_Out_writes_z_(strlen(src)) T* dst, _In_z_ const T* src)
-
849 {
-
850 _Assume_(dst);
-
851 _Assume_(src);
-
852 size_t i, j;
-
853 for (i = j = 0; src[j];) {
-
854 if (src[j] != '\r' || src[j + 1] != '\n')
-
855 dst[i++] = src[j++];
-
856 else {
-
857 dst[i++] = '\n';
-
858 j += 2;
-
859 }
-
860 }
-
861 dst[i] = 0;
-
862 return i;
-
863 }
-
864
-
871 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
872 inline void crlf2nl(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &dst, _In_z_ const _Elem* src)
-
873 {
-
874 _Assume_(src);
-
875 _Assume_(src != dst.c_str());
-
876 dst.clear();
-
877 dst.reserve(strlen(src));
-
878 for (size_t j = 0; src[j];) {
-
879 if (src[j] != '\r' || src[j + 1] != '\n')
-
880 dst += src[j++];
-
881 else {
-
882 dst += '\n';
-
883 j += 2;
-
884 }
-
885 }
-
886 }
-
887
-
893 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
894 inline void crlf2nl(_Inout_ std::basic_string<_Elem, _Traits, _Ax>& str)
-
895 {
-
896 size_t i, j, n;
-
897 for (i = j = 0, n = str.size(); j < n;) {
-
898 if (str[j] != '\r' || str[j + 1] != '\n')
-
899 str[i++] = str[j++];
-
900 else {
-
901 str[i++] = '\n';
-
902 j += 2;
-
903 }
-
904 }
-
905 str.resize(i);
-
906 }
-
907
-
909 template <class T, class T_bin>
-
910 inline T_bin strtoint(
-
911 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
912 _Out_opt_ size_t* end,
-
913 _In_ int radix,
-
914 _Out_ uint8_t& flags)
-
915 {
-
916 _Assume_(str || !count);
-
917 _Assume_(radix == 0 || 2 <= radix && radix <= 36);
-
918
-
919 size_t i = 0;
-
920 T_bin value = 0, digit,
-
921 max_ui = (T_bin)-1,
-
922 max_ui_pre1, max_ui_pre2;
+
761 }
+
762 }
+
763
+
774 template <class T1, class T2>
+
775 inline size_t strncat(
+
776 _Out_writes_(count_dst) _Post_maybez_ T1* dst, _In_ size_t count_dst,
+
777 _In_reads_or_z_opt_(count_src) const T2* src, _In_ size_t count_src)
+
778 {
+
779 _Assume_(dst || !count_dst);
+
780 _Assume_(src || !count_src);
+
781 for (size_t i = 0, j = stdex::strnlen<T1>(dst, count_dst); ; ++i, ++j)
+
782 {
+
783 if (j >= count_dst)
+
784 return j;
+
785 if (i >= count_src) {
+
786 dst[j] = 0;
+
787 return j;
+
788 }
+
789 if ((dst[j] = src[i]) == 0)
+
790 return j;
+
791 }
+
792 }
+
793
+
804 template <class T>
+
805 inline _Check_return_ _Ret_maybenull_z_ T* strdup(_In_opt_z_ const T* str)
+
806 {
+
807 if (!str) _Unlikely_
+
808 return nullptr;
+
809 size_t count = strlen(str) + 1;
+
810 T* dst = new T[count];
+
811 strncpy(dst, count, str, SIZE_MAX);
+
812 return dst;
+
813 }
+
814
+
826 template <class T>
+
827 inline _Ret_z_ T* strndup(
+
828 _In_reads_or_z_opt_(count) const T* str,
+
829 _In_ size_t count)
+
830 {
+
831 T* dst = new T[count];
+
832 strncpy(dst, count, str, SIZE_MAX);
+
833 return dst;
+
834 }
+
835
+
845 template <class T>
+
846 inline size_t crlf2nl(_Out_writes_z_(strlen(src)) T* dst, _In_z_ const T* src)
+
847 {
+
848 _Assume_(dst);
+
849 _Assume_(src);
+
850 size_t i, j;
+
851 for (i = j = 0; src[j];) {
+
852 if (src[j] != '\r' || src[j + 1] != '\n')
+
853 dst[i++] = src[j++];
+
854 else {
+
855 dst[i++] = '\n';
+
856 j += 2;
+
857 }
+
858 }
+
859 dst[i] = 0;
+
860 return i;
+
861 }
+
862
+
869 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
870 inline void crlf2nl(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &dst, _In_z_ const _Elem* src)
+
871 {
+
872 _Assume_(src);
+
873 _Assume_(src != dst.c_str());
+
874 dst.clear();
+
875 dst.reserve(strlen(src));
+
876 for (size_t j = 0; src[j];) {
+
877 if (src[j] != '\r' || src[j + 1] != '\n')
+
878 dst += src[j++];
+
879 else {
+
880 dst += '\n';
+
881 j += 2;
+
882 }
+
883 }
+
884 }
+
885
+
891 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
892 inline void crlf2nl(_Inout_ std::basic_string<_Elem, _Traits, _Ax>& str)
+
893 {
+
894 size_t i, j, n;
+
895 for (i = j = 0, n = str.size(); j < n;) {
+
896 if (str[j] != '\r' || str[j + 1] != '\n')
+
897 str[i++] = str[j++];
+
898 else {
+
899 str[i++] = '\n';
+
900 j += 2;
+
901 }
+
902 }
+
903 str.resize(i);
+
904 }
+
905
+
907 template <class T, class T_bin>
+
908 inline T_bin strtoint(
+
909 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
910 _Out_opt_ size_t* end,
+
911 _In_ int radix,
+
912 _Out_ uint8_t& flags)
+
913 {
+
914 _Assume_(str || !count);
+
915 _Assume_(radix == 0 || 2 <= radix && radix <= 36);
+
916
+
917 size_t i = 0;
+
918 T_bin value = 0, digit,
+
919 max_ui = (T_bin)-1,
+
920 max_ui_pre1, max_ui_pre2;
+
921
+
922 flags = 0;
923
-
924 flags = 0;
-
925
-
926 // Skip leading spaces.
-
927 for (;; ++i) {
-
928 if (i >= count || !str[i]) goto error;
-
929 if (!isspace(str[i])) break;
-
930 }
-
931
-
932 // Read the sign.
-
933 if (str[i] == '+') {
-
934 flags &= ~0x01;
-
935 ++i;
-
936 if (i >= count || !str[i]) goto error;
-
937 }
-
938 else if (str[i] == '-') {
-
939 flags |= 0x01;
-
940 ++i;
-
941 if (i >= count || !str[i]) goto error;
-
942 }
-
943
-
944 if (radix == 16) {
-
945 // On hexadecimal, allow leading 0x.
-
946 if (str[i] == '0' && i + 1 < count && (str[i + 1] == 'x' || str[i + 1] == 'X')) {
-
947 i += 2;
-
948 if (i >= count || !str[i]) goto error;
-
949 }
-
950 }
-
951 else if (!radix) {
-
952 // Autodetect radix.
-
953 if (str[i] == '0') {
-
954 ++i;
-
955 if (i >= count || !str[i]) goto error;
-
956 if (str[i] == 'x' || str[i] == 'X') {
-
957 radix = 16;
-
958 ++i;
-
959 if (i >= count || !str[i]) goto error;
-
960 }
-
961 else
-
962 radix = 8;
-
963 }
-
964 else
-
965 radix = 10;
-
966 }
-
967
-
968 // We have the radix.
-
969 max_ui_pre1 = max_ui / (T_bin)radix;
-
970 max_ui_pre2 = max_ui % (T_bin)radix;
-
971 for (;;) {
-
972 if ('0' <= str[i] && str[i] <= '9')
-
973 digit = (T_bin)str[i] - '0';
-
974 else if ('A' <= str[i] && str[i] <= 'Z')
-
975 digit = (T_bin)str[i] - 'A' + '\x0a';
-
976 else if ('a' <= str[i] && str[i] <= 'z')
-
977 digit = (T_bin)str[i] - 'a' + '\x0a';
-
978 else
+
924 // Skip leading spaces.
+
925 for (;; ++i) {
+
926 if (i >= count || !str[i]) goto error;
+
927 if (!isspace(str[i])) break;
+
928 }
+
929
+
930 // Read the sign.
+
931 if (str[i] == '+') {
+
932 flags &= ~0x01;
+
933 ++i;
+
934 if (i >= count || !str[i]) goto error;
+
935 }
+
936 else if (str[i] == '-') {
+
937 flags |= 0x01;
+
938 ++i;
+
939 if (i >= count || !str[i]) goto error;
+
940 }
+
941
+
942 if (radix == 16) {
+
943 // On hexadecimal, allow leading 0x.
+
944 if (str[i] == '0' && i + 1 < count && (str[i + 1] == 'x' || str[i + 1] == 'X')) {
+
945 i += 2;
+
946 if (i >= count || !str[i]) goto error;
+
947 }
+
948 }
+
949 else if (!radix) {
+
950 // Autodetect radix.
+
951 if (str[i] == '0') {
+
952 ++i;
+
953 if (i >= count || !str[i]) goto error;
+
954 if (str[i] == 'x' || str[i] == 'X') {
+
955 radix = 16;
+
956 ++i;
+
957 if (i >= count || !str[i]) goto error;
+
958 }
+
959 else
+
960 radix = 8;
+
961 }
+
962 else
+
963 radix = 10;
+
964 }
+
965
+
966 // We have the radix.
+
967 max_ui_pre1 = max_ui / (T_bin)radix;
+
968 max_ui_pre2 = max_ui % (T_bin)radix;
+
969 for (;;) {
+
970 if ('0' <= str[i] && str[i] <= '9')
+
971 digit = (T_bin)str[i] - '0';
+
972 else if ('A' <= str[i] && str[i] <= 'Z')
+
973 digit = (T_bin)str[i] - 'A' + '\x0a';
+
974 else if ('a' <= str[i] && str[i] <= 'z')
+
975 digit = (T_bin)str[i] - 'a' + '\x0a';
+
976 else
+
977 goto error;
+
978 if (digit >= (T_bin)radix)
979 goto error;
-
980 if (digit >= (T_bin)radix)
-
981 goto error;
-
982
-
983 if (value < max_ui_pre1 || // Multiplication nor addition will not overflow.
-
984 (value == max_ui_pre1 && digit <= max_ui_pre2)) // Small digits will not overflow.
-
985 value = value * (T_bin)radix + digit;
-
986 else {
-
987 // Overflow!
-
988 flags |= 0x02;
-
989 }
-
990
-
991 ++i;
-
992 if (i >= count || !str[i])
-
993 goto error;
-
994 }
-
995
-
996 error:
-
997 if (end) *end = i;
-
998 return value;
-
999 }
-
1001
-
1012 template <class T, class T_bin>
-
1013 T_bin strtoint(
-
1014 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1015 _Out_opt_ size_t* end,
-
1016 _In_ int radix)
-
1017 {
-
1018 uint8_t flags;
-
1019 T_bin value;
-
1020
-
1021 switch (sizeof(T_bin)) {
-
1022 case 1:
-
1023 value = (T_bin)strtoint<T, uint8_t>(str, count, end, radix, flags);
-
1024 if ((flags & 0x01) && (value & 0x80)) {
-
1025 // Sign bit is 1 => overflow.
-
1026 flags |= 0x02;
-
1027 }
-
1028 return (flags & 0x02) ?
-
1029 (flags & 0x01) ? (T_bin)0x80 : (T_bin)0x7f :
-
1030 (flags & 0x01) ? -value : value;
-
1031
-
1032 case 2:
-
1033 value = (T_bin)strtoint<T, uint16_t>(str, count, end, radix, flags);
-
1034 if ((flags & 0x01) && (value & 0x8000)) {
-
1035 // Sign bit is 1 => overflow.
-
1036 flags |= 0x02;
-
1037 }
-
1038 return (flags & 0x02) ?
-
1039 (flags & 0x01) ? (T_bin)0x8000 : (T_bin)0x7fff :
-
1040 (flags & 0x01) ? -value : value;
-
1041
-
1042 case 4:
-
1043 value = (T_bin)strtoint<T, uint32_t>(str, count, end, radix, flags);
-
1044 if ((flags & 0x01) && (value & 0x80000000)) {
-
1045 // Sign bit is 1 => overflow.
-
1046 flags |= 0x02;
-
1047 }
-
1048 return (flags & 0x02) ?
-
1049 (flags & 0x01) ? (T_bin)0x80000000 : (T_bin)0x7fffffff :
-
1050 (flags & 0x01) ? -value : value;
-
1051
-
1052 case 8:
-
1053 value = (T_bin)strtoint<T, uint64_t>(str, count, end, radix, flags);
-
1054 if ((flags & 0x01) && (value & 0x8000000000000000)) {
-
1055 // Sign bit is 1 => overflow.
-
1056 flags |= 0x02;
-
1057 }
-
1058 return (flags & 0x02) ?
-
1059 (flags & 0x01) ? (T_bin)0x8000000000000000 : (T_bin)0x7fffffffffffffff :
-
1060 (flags & 0x01) ? -value : value;
-
1061
-
1062 default:
-
1063 throw std::invalid_argument("Unsupported bit length");
-
1064 }
-
1065 }
-
1066
-
1077 template <class T, class T_bin>
-
1078 inline T_bin strtouint(
-
1079 _In_reads_or_z_opt_(count) const T* str,
-
1080 _In_ size_t count,
-
1081 _Out_opt_ size_t* end,
-
1082 _In_ int radix)
-
1083 {
-
1084 uint8_t flags;
-
1085 T_bin value;
-
1086
-
1087 switch (sizeof(T_bin)) {
-
1088 case 1: value = (T_bin)strtoint<T, uint8_t>(str, count, end, radix, flags); break;
-
1089 case 2: value = (T_bin)strtoint<T, uint16_t>(str, count, end, radix, flags); break;
-
1090 case 4: value = (T_bin)strtoint<T, uint32_t>(str, count, end, radix, flags); break;
-
1091 case 8: value = (T_bin)strtoint<T, uint64_t>(str, count, end, radix, flags); break;
-
1092 default: throw std::invalid_argument("Unsupported bit length");
-
1093 }
-
1094
-
1095 return (flags & 0x02) ?
-
1096 (flags & 0x01) ? (T_bin)0 : (T_bin)-1 :
-
1097 (flags & 0x01) ? ~value : value;
-
1098 }
-
1099
-
1110 template <class T>
-
1111 inline int32_t strto32(
-
1112 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1113 _Out_opt_ size_t* end,
-
1114 _In_ int radix)
-
1115 {
-
1116 return strtoint<T, int32_t>(str, count, end, radix);
-
1117 }
-
1118
-
1129 template <class T>
-
1130 inline int64_t strto64(
-
1131 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1132 _Out_opt_ size_t* end,
-
1133 _In_ int radix)
-
1134 {
-
1135 return strtoint<T, int64_t>(str, count, end, radix);
-
1136 }
-
1137
-
1149 template <class T>
-
1150 inline intptr_t strtoi(
-
1151 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1152 _Out_opt_ size_t* end,
-
1153 _In_ int radix)
-
1154 {
-
1155#if defined(_WIN64) || defined(__LP64__)
-
1156 return (intptr_t)strto64(str, count, end, radix);
-
1157#else
-
1158 return (intptr_t)strto32(str, count, end, radix);
-
1159#endif
-
1160 }
-
1161
-
1172 template <class T>
-
1173 inline uint32_t strtou32(
-
1174 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1175 _Out_opt_ size_t* end,
-
1176 _In_ int radix)
-
1177 {
-
1178 return strtouint<T, uint32_t>(str, count, end, radix);
-
1179 }
-
1180
-
1191 template <class T>
-
1192 inline uint64_t strtou64(
-
1193 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1194 _Out_opt_ size_t* end,
-
1195 _In_ int radix)
-
1196 {
-
1197 return strtouint<T, uint64_t>(str, count, end, radix);
-
1198 }
-
1199
-
1211 template <class T>
-
1212 inline size_t strtoui(
-
1213 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
-
1214 _Out_opt_ size_t* end,
-
1215 _In_ int radix)
-
1216 {
-
1217#if defined(_WIN64) || defined(__LP64__)
-
1218 return (size_t)strtou64(str, count, end, radix);
-
1219#else
-
1220 return (size_t)strtou32(str, count, end, radix);
-
1221#endif
-
1222 }
-
1223
-
1225 inline int vsnprintf(_Out_z_cap_(capacity) char *str, _In_ size_t capacity, _In_z_ _Printf_format_string_params_(2) const char *format, _In_opt_ locale_t locale, _In_ va_list arg)
-
1226 {
-
1227 int r;
-
1228#ifdef _WIN32
-
1229 // Don't use _vsnprintf_s(). It terminates the string even if we want to print to the edge of the buffer.
-
1230#pragma warning(suppress: 4996)
-
1231 r = _vsnprintf_l(str, capacity, format, locale, arg);
-
1232#else
-
1233 r = ::vsnprintf(str, capacity, format, arg);
-
1234#endif
-
1235 if (r == -1 && strnlen(str, capacity) == capacity) {
-
1236 // Buffer overrun. Estimate buffer size for the next iteration.
-
1237 capacity += std::max<size_t>(capacity / 8, 0x80);
-
1238 if (capacity > INT_MAX)
-
1239 throw std::invalid_argument("string too big");
-
1240 return (int)capacity;
-
1241 }
-
1242 return r;
-
1243 }
-
1244
-
1245 inline int vsnprintf(_Out_z_cap_(capacity) wchar_t *str, _In_ size_t capacity, _In_z_ _Printf_format_string_params_(2) const wchar_t *format, _In_opt_ locale_t locale, _In_ va_list arg)
-
1246 {
-
1247 int r;
-
1248#ifdef _WIN32
-
1249 // Don't use _vsnwprintf_s(). It terminates the string even if we want to print to the edge of the buffer.
-
1250#pragma warning(suppress: 4996)
-
1251 r = _vsnwprintf_l(str, capacity, format, locale, arg);
-
1252#else
-
1253 r = vswprintf(str, capacity, format, arg);
-
1254#endif
-
1255 if (r == -1 && strnlen(str, capacity) == capacity) {
-
1256 // Buffer overrun. Estimate buffer size for the next iteration.
-
1257 capacity += std::max<size_t>(capacity / 8, 0x80);
-
1258 if (capacity > INT_MAX)
-
1259 throw std::invalid_argument("string too big");
-
1260 return (int)capacity;
-
1261 }
-
1262 return r;
-
1263 }
-
1265
-
1274 template<class _Elem, class _Traits, class _Ax>
-
1275 inline void vappendf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
-
1276 {
-
1277 _Elem buf[1024/sizeof(_Elem)];
-
1278
-
1279 // Try with stack buffer first.
-
1280 int count = vsnprintf(buf, _countof(buf) - 1, format, locale, arg);
-
1281 if (count >= 0) {
-
1282 // Copy from stack.
-
1283 str.append(buf, count);
-
1284 } else {
-
1285 for (size_t capacity = 2*1024/sizeof(_Elem);; capacity *= 2) {
-
1286 // Allocate on heap and retry.
-
1287 auto buf_dyn = std::make_unique<_Elem[]>(capacity);
-
1288 count = vsnprintf(buf_dyn.get(), capacity - 1, format, locale, arg);
-
1289 if (count >= 0) {
-
1290 str.append(buf_dyn.get(), count);
-
1291 break;
-
1292 }
-
1293 }
-
1294 }
-
1295 }
-
1296
-
1304 template<class _Elem, class _Traits, class _Ax>
-
1305 inline void appendf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
-
1306 {
-
1307 va_list arg;
-
1308 va_start(arg, locale);
-
1309 vappendf(str, format, locale, arg);
-
1310 va_end(arg);
-
1311 }
-
1312
-
1321 template<class _Elem, class _Traits, class _Ax>
-
1322 inline void vsprintf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
-
1323 {
-
1324 str.clear();
-
1325 vappendf(str, format, locale, arg);
-
1326 }
-
1327
-
1335 template<class _Elem, class _Traits, class _Ax>
-
1336 inline void sprintf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
-
1337 {
-
1338 va_list arg;
-
1339 va_start(arg, locale);
-
1340 vsprintf(str, format, locale, arg);
-
1341 va_end(arg);
-
1342 }
-
1343
-
1353 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1354 inline std::basic_string<_Elem, _Traits, _Ax> vsprintf(_In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
-
1355 {
-
1356 std::basic_string<_Elem, _Traits, _Ax> str;
-
1357 vappendf(str, format, locale, arg);
-
1358 return str;
-
1359 }
-
1360
-
1369 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1370 inline std::basic_string<_Elem, _Traits, _Ax> sprintf(_In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
-
1371 {
-
1372 va_list arg;
-
1373 va_start(arg, locale);
-
1374 auto str = vsprintf(format, locale, arg);
-
1375 va_end(arg);
-
1376 return str;
-
1377 }
-
1378
-
1380 inline size_t strftime(_Out_z_cap_(capacity) char *str, _In_ size_t capacity, _In_z_ _Printf_format_string_ const char *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
-
1381 {
-
1382#ifdef _WIN32
-
1383 return _strftime_l(str, capacity, format, time, locale);
-
1384#else
-
1385 return strftime_l(str, capacity, format, time, locale);
-
1386#endif
-
1387 }
-
1388
-
1389 inline size_t strftime(_Out_z_cap_(capacity) wchar_t *str, _In_ size_t capacity, _In_z_ _Printf_format_string_ const wchar_t *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
-
1390 {
-
1391#ifdef _WIN32
-
1392 return _wcsftime_l(str, capacity, format, time, locale);
-
1393#else
-
1394 return wcsftime_l(str, capacity, format, time, locale);
-
1395#endif
-
1396 }
-
1398
-
1407 template<class _Elem, class _Traits, class _Ax>
-
1408 inline void strcatftime(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
-
1409 {
-
1410 _Elem buf[1024/sizeof(_Elem)];
-
1411
-
1412 // Try with stack buffer first.
-
1413 size_t count = strftime(buf, _countof(buf), format, time, locale);
-
1414 if (count) {
-
1415 // Copy from stack.
-
1416 str.append(buf, count);
-
1417 } else {
-
1418 for (size_t capacity = 2*1024/sizeof(_Elem);; capacity *= 2) {
-
1419 // Allocate on heap and retry.
-
1420 auto buf_dyn = std::make_unique<_Elem[]>(capacity);
-
1421 count = strftime(buf_dyn.get(), capacity, format, time, locale);
-
1422 if (count) {
-
1423 str.append(buf_dyn.get(), count);
-
1424 break;
-
1425 }
-
1426 }
-
1427 }
-
1428 }
-
1429
-
1438 template<class _Elem, class _Traits, class _Ax>
-
1439 inline void strftime(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
-
1440 {
-
1441 str.clear();
-
1442 strcatftime(str, format, time, locale);
-
1443 }
-
1444
-
1455 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1456 inline std::basic_string<_Elem, _Traits, _Ax> strftime(_In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
-
1457 {
-
1458 std::basic_string<_Elem, _Traits, _Ax> str;
-
1459 strcatftime(str, format, time, locale);
-
1460 return str;
-
1461 }
-
1462
-
1470 template<class T>
-
1471 inline void strlwr(_Inout_z_ T* str, _In_ const std::locale& locale)
-
1472 {
-
1473 _Assume_(str);
-
1474 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1475 for (size_t i = 0; str[i]; ++i)
-
1476 str[i] = ctype.tolower(str[i]);
-
1477 }
-
1478
-
1487 template<class T>
-
1488 inline void strlwr(_Inout_updates_z_(count) T* str, _In_ size_t count, _In_ const std::locale& locale)
-
1489 {
-
1490 _Assume_(str || !count);
-
1491 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1492 for (size_t i = 0; i < count && str[i]; ++i)
-
1493 str[i] = ctype.tolower(str[i]);
-
1494 }
-
1495
-
1503 template<class T>
-
1504 inline void strupr(_Inout_z_ T* str, _In_ const std::locale& locale)
-
1505 {
-
1506 _Assume_(str);
-
1507 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1508 for (size_t i = 0; str[i]; ++i)
-
1509 str[i] = ctype.toupper(str[i]);
-
1510 }
-
1511
-
1520 template<class T>
-
1521 inline void strupr(_Inout_updates_z_(count) T* str, _In_ size_t count, _In_ const std::locale& locale)
-
1522 {
-
1523 _Assume_(str || !count);
-
1524 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1525 for (size_t i = 0; i < count && str[i]; ++i)
-
1526 str[i] = ctype.toupper(str[i]);
-
1527 }
-
1528
-
1536 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1537 inline void strupr(_Inout_ std::basic_string<_Elem, _Traits, _Ax>& str, _In_ const std::locale& locale)
-
1538 {
-
1539 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
-
1540 for (size_t i = 0; i < str.size(); ++i)
-
1541 str[i] = ctype.toupper(str[i]);
-
1542 }
-
1543
-
1552 template<class T>
-
1553 inline size_t ltrim(
-
1554 _Inout_z_count_(count) T* str, _In_ size_t count,
-
1555 _In_ const std::locale& locale)
-
1556 {
-
1557 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1558 for (size_t i = 0;; ++i) {
-
1559 if (i >= count) {
-
1560 if (count) str[0] = 0;
-
1561 return 0;
-
1562 }
-
1563 if (!str[i]) {
-
1564 str[0] = 0;
-
1565 return 0;
-
1566 }
-
1567 if (!ctype.is(ctype.space, str[i])) {
-
1568 if (!i)
-
1569 return strnlen(str, count);
-
1570 size_t n = count != SIZE_MAX ? strncpy(str, str + i, count - i) : strcpy(str, str + i);
-
1571 str[n] = 0;
-
1572 return n;
-
1573 }
-
1574 }
-
1575 }
-
1576
-
1582 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1583 inline void ltrim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
-
1584 {
-
1585 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
-
1586 s.erase(
-
1587 s.begin(),
-
1588 std::find_if(
-
1589 s.begin(),
-
1590 s.end(),
-
1591 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }));
-
1592 }
-
1593
-
1602 template<class T>
-
1603 inline size_t rtrim(
-
1604 _Inout_z_count_(count) T* str, _In_ size_t count,
-
1605 _In_ const std::locale& locale)
-
1606 {
-
1607 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
-
1608 for (size_t i = 0, j = 0;;) {
-
1609 if (i >= count || !str[i]) {
-
1610 if (j < count) str[j] = 0;
-
1611 return j;
-
1612 }
-
1613 if (!ctype.is(ctype.space, str[i]))
-
1614 j = ++i;
-
1615 else
-
1616 ++i;
-
1617 }
-
1618 }
-
1619
-
1625 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1626 static inline void rtrim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
-
1627 {
-
1628 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
-
1629 s.erase(
-
1630 std::find_if(
-
1631 s.rbegin(),
-
1632 s.rend(),
-
1633 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }).base(),
-
1634 s.end());
-
1635 }
-
1636
-
1645 template<class T>
-
1646 inline size_t trim(
-
1647 _Inout_z_count_(count) T* str, _In_ size_t count,
-
1648 _In_ const std::locale& locale)
-
1649 {
-
1650 return ltrim(str, rtrim(str, count, locale), locale);
-
1651 }
-
1652
-
1658 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
-
1659 static inline void trim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
-
1660 {
-
1661 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
-
1662 s.erase(
-
1663 s.begin(),
-
1664 std::find_if(
-
1665 s.begin(),
-
1666 s.end(),
-
1667 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }));
-
1668 s.erase(
-
1669 std::find_if(
-
1670 s.rbegin(),
-
1671 s.rend(),
-
1672 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }).base(),
-
1673 s.end());
-
1674 }
-
1675}
-
Deleter for unique_ptr using free_locale.
Definition string.hpp:60
-
void operator()(locale_t locale) const
Delete a pointer.
Definition string.hpp:64
+
980
+
981 if (value < max_ui_pre1 || // Multiplication nor addition will not overflow.
+
982 (value == max_ui_pre1 && digit <= max_ui_pre2)) // Small digits will not overflow.
+
983 value = value * (T_bin)radix + digit;
+
984 else {
+
985 // Overflow!
+
986 flags |= 0x02;
+
987 }
+
988
+
989 ++i;
+
990 if (i >= count || !str[i])
+
991 goto error;
+
992 }
+
993
+
994 error:
+
995 if (end) *end = i;
+
996 return value;
+
997 }
+
999
+
1010 template <class T, class T_bin>
+
1011 T_bin strtoint(
+
1012 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1013 _Out_opt_ size_t* end,
+
1014 _In_ int radix)
+
1015 {
+
1016 uint8_t flags;
+
1017 T_bin value;
+
1018
+
1019 switch (sizeof(T_bin)) {
+
1020 case 1:
+
1021 value = (T_bin)strtoint<T, uint8_t>(str, count, end, radix, flags);
+
1022 if ((flags & 0x01) && (value & 0x80)) {
+
1023 // Sign bit is 1 => overflow.
+
1024 flags |= 0x02;
+
1025 }
+
1026 return (flags & 0x02) ?
+
1027 (flags & 0x01) ? (T_bin)0x80 : (T_bin)0x7f :
+
1028 (flags & 0x01) ? -value : value;
+
1029
+
1030 case 2:
+
1031 value = (T_bin)strtoint<T, uint16_t>(str, count, end, radix, flags);
+
1032 if ((flags & 0x01) && (value & 0x8000)) {
+
1033 // Sign bit is 1 => overflow.
+
1034 flags |= 0x02;
+
1035 }
+
1036 return (flags & 0x02) ?
+
1037 (flags & 0x01) ? (T_bin)0x8000 : (T_bin)0x7fff :
+
1038 (flags & 0x01) ? -value : value;
+
1039
+
1040 case 4:
+
1041 value = (T_bin)strtoint<T, uint32_t>(str, count, end, radix, flags);
+
1042 if ((flags & 0x01) && (value & 0x80000000)) {
+
1043 // Sign bit is 1 => overflow.
+
1044 flags |= 0x02;
+
1045 }
+
1046 return (flags & 0x02) ?
+
1047 (flags & 0x01) ? (T_bin)0x80000000 : (T_bin)0x7fffffff :
+
1048 (flags & 0x01) ? -value : value;
+
1049
+
1050 case 8:
+
1051 value = (T_bin)strtoint<T, uint64_t>(str, count, end, radix, flags);
+
1052 if ((flags & 0x01) && (value & 0x8000000000000000)) {
+
1053 // Sign bit is 1 => overflow.
+
1054 flags |= 0x02;
+
1055 }
+
1056 return (flags & 0x02) ?
+
1057 (flags & 0x01) ? (T_bin)0x8000000000000000 : (T_bin)0x7fffffffffffffff :
+
1058 (flags & 0x01) ? -value : value;
+
1059
+
1060 default:
+
1061 throw std::invalid_argument("Unsupported bit length");
+
1062 }
+
1063 }
+
1064
+
1075 template <class T, class T_bin>
+
1076 inline T_bin strtouint(
+
1077 _In_reads_or_z_opt_(count) const T* str,
+
1078 _In_ size_t count,
+
1079 _Out_opt_ size_t* end,
+
1080 _In_ int radix)
+
1081 {
+
1082 uint8_t flags;
+
1083 T_bin value;
+
1084
+
1085 switch (sizeof(T_bin)) {
+
1086 case 1: value = (T_bin)strtoint<T, uint8_t>(str, count, end, radix, flags); break;
+
1087 case 2: value = (T_bin)strtoint<T, uint16_t>(str, count, end, radix, flags); break;
+
1088 case 4: value = (T_bin)strtoint<T, uint32_t>(str, count, end, radix, flags); break;
+
1089 case 8: value = (T_bin)strtoint<T, uint64_t>(str, count, end, radix, flags); break;
+
1090 default: throw std::invalid_argument("Unsupported bit length");
+
1091 }
+
1092
+
1093 return (flags & 0x02) ?
+
1094 (flags & 0x01) ? (T_bin)0 : (T_bin)-1 :
+
1095 (flags & 0x01) ? ~value : value;
+
1096 }
+
1097
+
1108 template <class T>
+
1109 inline int32_t strto32(
+
1110 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1111 _Out_opt_ size_t* end,
+
1112 _In_ int radix)
+
1113 {
+
1114 return strtoint<T, int32_t>(str, count, end, radix);
+
1115 }
+
1116
+
1127 template <class T>
+
1128 inline int64_t strto64(
+
1129 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1130 _Out_opt_ size_t* end,
+
1131 _In_ int radix)
+
1132 {
+
1133 return strtoint<T, int64_t>(str, count, end, radix);
+
1134 }
+
1135
+
1147 template <class T>
+
1148 inline intptr_t strtoi(
+
1149 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1150 _Out_opt_ size_t* end,
+
1151 _In_ int radix)
+
1152 {
+
1153#if defined(_WIN64) || defined(__LP64__)
+
1154 return (intptr_t)strto64(str, count, end, radix);
+
1155#else
+
1156 return (intptr_t)strto32(str, count, end, radix);
+
1157#endif
+
1158 }
+
1159
+
1170 template <class T>
+
1171 inline uint32_t strtou32(
+
1172 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1173 _Out_opt_ size_t* end,
+
1174 _In_ int radix)
+
1175 {
+
1176 return strtouint<T, uint32_t>(str, count, end, radix);
+
1177 }
+
1178
+
1189 template <class T>
+
1190 inline uint64_t strtou64(
+
1191 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1192 _Out_opt_ size_t* end,
+
1193 _In_ int radix)
+
1194 {
+
1195 return strtouint<T, uint64_t>(str, count, end, radix);
+
1196 }
+
1197
+
1209 template <class T>
+
1210 inline size_t strtoui(
+
1211 _In_reads_or_z_opt_(count) const T* str, _In_ size_t count,
+
1212 _Out_opt_ size_t* end,
+
1213 _In_ int radix)
+
1214 {
+
1215#if defined(_WIN64) || defined(__LP64__)
+
1216 return (size_t)strtou64(str, count, end, radix);
+
1217#else
+
1218 return (size_t)strtou32(str, count, end, radix);
+
1219#endif
+
1220 }
+
1221
+
1223 inline int vsnprintf(_Out_z_cap_(capacity) char *str, _In_ size_t capacity, _In_z_ _Printf_format_string_params_(2) const char *format, _In_opt_ locale_t locale, _In_ va_list arg)
+
1224 {
+
1225 int r;
+
1226#ifdef _WIN32
+
1227 // Don't use _vsnprintf_s(). It terminates the string even if we want to print to the edge of the buffer.
+
1228#pragma warning(suppress: 4996)
+
1229 r = _vsnprintf_l(str, capacity, format, locale, arg);
+
1230#else
+
1231 r = ::vsnprintf(str, capacity, format, arg);
+
1232#endif
+
1233 if (r == -1 && strnlen(str, capacity) == capacity) {
+
1234 // Buffer overrun. Estimate buffer size for the next iteration.
+
1235 capacity += std::max<size_t>(capacity / 8, 0x80);
+
1236 if (capacity > INT_MAX)
+
1237 throw std::invalid_argument("string too big");
+
1238 return (int)capacity;
+
1239 }
+
1240 return r;
+
1241 }
+
1242
+
1243 inline int vsnprintf(_Out_z_cap_(capacity) wchar_t *str, _In_ size_t capacity, _In_z_ _Printf_format_string_params_(2) const wchar_t *format, _In_opt_ locale_t locale, _In_ va_list arg)
+
1244 {
+
1245 int r;
+
1246#ifdef _WIN32
+
1247 // Don't use _vsnwprintf_s(). It terminates the string even if we want to print to the edge of the buffer.
+
1248#pragma warning(suppress: 4996)
+
1249 r = _vsnwprintf_l(str, capacity, format, locale, arg);
+
1250#else
+
1251 r = vswprintf(str, capacity, format, arg);
+
1252#endif
+
1253 if (r == -1 && strnlen(str, capacity) == capacity) {
+
1254 // Buffer overrun. Estimate buffer size for the next iteration.
+
1255 capacity += std::max<size_t>(capacity / 8, 0x80);
+
1256 if (capacity > INT_MAX)
+
1257 throw std::invalid_argument("string too big");
+
1258 return (int)capacity;
+
1259 }
+
1260 return r;
+
1261 }
+
1263
+
1272 template<class _Elem, class _Traits, class _Ax>
+
1273 inline void vappendf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
+
1274 {
+
1275 _Elem buf[1024/sizeof(_Elem)];
+
1276
+
1277 // Try with stack buffer first.
+
1278 int count = vsnprintf(buf, _countof(buf) - 1, format, locale, arg);
+
1279 if (count >= 0) {
+
1280 // Copy from stack.
+
1281 str.append(buf, count);
+
1282 } else {
+
1283 for (size_t capacity = 2*1024/sizeof(_Elem);; capacity *= 2) {
+
1284 // Allocate on heap and retry.
+
1285 auto buf_dyn = std::make_unique<_Elem[]>(capacity);
+
1286 count = vsnprintf(buf_dyn.get(), capacity - 1, format, locale, arg);
+
1287 if (count >= 0) {
+
1288 str.append(buf_dyn.get(), count);
+
1289 break;
+
1290 }
+
1291 }
+
1292 }
+
1293 }
+
1294
+
1302 template<class _Elem, class _Traits, class _Ax>
+
1303 inline void appendf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
+
1304 {
+
1305 va_list arg;
+
1306 va_start(arg, locale);
+
1307 vappendf(str, format, locale, arg);
+
1308 va_end(arg);
+
1309 }
+
1310
+
1319 template<class _Elem, class _Traits, class _Ax>
+
1320 inline void vsprintf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
+
1321 {
+
1322 str.clear();
+
1323 vappendf(str, format, locale, arg);
+
1324 }
+
1325
+
1333 template<class _Elem, class _Traits, class _Ax>
+
1334 inline void sprintf(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
+
1335 {
+
1336 va_list arg;
+
1337 va_start(arg, locale);
+
1338 vsprintf(str, format, locale, arg);
+
1339 va_end(arg);
+
1340 }
+
1341
+
1351 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1352 inline std::basic_string<_Elem, _Traits, _Ax> vsprintf(_In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, _In_ va_list arg)
+
1353 {
+
1354 std::basic_string<_Elem, _Traits, _Ax> str;
+
1355 vappendf(str, format, locale, arg);
+
1356 return str;
+
1357 }
+
1358
+
1367 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1368 inline std::basic_string<_Elem, _Traits, _Ax> sprintf(_In_z_ _Printf_format_string_params_(2) const _Elem *format, _In_opt_ locale_t locale, ...)
+
1369 {
+
1370 va_list arg;
+
1371 va_start(arg, locale);
+
1372 auto str = vsprintf(format, locale, arg);
+
1373 va_end(arg);
+
1374 return str;
+
1375 }
+
1376
+
1378 inline size_t strftime(_Out_z_cap_(capacity) char *str, _In_ size_t capacity, _In_z_ _Printf_format_string_ const char *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
+
1379 {
+
1380#ifdef _WIN32
+
1381 return _strftime_l(str, capacity, format, time, locale);
+
1382#else
+
1383 return strftime_l(str, capacity, format, time, locale);
+
1384#endif
+
1385 }
+
1386
+
1387 inline size_t strftime(_Out_z_cap_(capacity) wchar_t *str, _In_ size_t capacity, _In_z_ _Printf_format_string_ const wchar_t *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
+
1388 {
+
1389#ifdef _WIN32
+
1390 return _wcsftime_l(str, capacity, format, time, locale);
+
1391#else
+
1392 return wcsftime_l(str, capacity, format, time, locale);
+
1393#endif
+
1394 }
+
1396
+
1405 template<class _Elem, class _Traits, class _Ax>
+
1406 inline void strcatftime(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
+
1407 {
+
1408 _Elem buf[1024/sizeof(_Elem)];
+
1409
+
1410 // Try with stack buffer first.
+
1411 size_t count = strftime(buf, _countof(buf), format, time, locale);
+
1412 if (count) {
+
1413 // Copy from stack.
+
1414 str.append(buf, count);
+
1415 } else {
+
1416 for (size_t capacity = 2*1024/sizeof(_Elem);; capacity *= 2) {
+
1417 // Allocate on heap and retry.
+
1418 auto buf_dyn = std::make_unique<_Elem[]>(capacity);
+
1419 count = strftime(buf_dyn.get(), capacity, format, time, locale);
+
1420 if (count) {
+
1421 str.append(buf_dyn.get(), count);
+
1422 break;
+
1423 }
+
1424 }
+
1425 }
+
1426 }
+
1427
+
1436 template<class _Elem, class _Traits, class _Ax>
+
1437 inline void strftime(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
+
1438 {
+
1439 str.clear();
+
1440 strcatftime(str, format, time, locale);
+
1441 }
+
1442
+
1453 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1454 inline std::basic_string<_Elem, _Traits, _Ax> strftime(_In_z_ _Printf_format_string_ const _Elem *format, _In_ const struct tm* time, _In_opt_ locale_t locale)
+
1455 {
+
1456 std::basic_string<_Elem, _Traits, _Ax> str;
+
1457 strcatftime(str, format, time, locale);
+
1458 return str;
+
1459 }
+
1460
+
1468 template<class T>
+
1469 inline void strlwr(_Inout_z_ T* str, _In_ const std::locale& locale)
+
1470 {
+
1471 _Assume_(str);
+
1472 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1473 for (size_t i = 0; str[i]; ++i)
+
1474 str[i] = ctype.tolower(str[i]);
+
1475 }
+
1476
+
1485 template<class T>
+
1486 inline void strlwr(_Inout_updates_z_(count) T* str, _In_ size_t count, _In_ const std::locale& locale)
+
1487 {
+
1488 _Assume_(str || !count);
+
1489 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1490 for (size_t i = 0; i < count && str[i]; ++i)
+
1491 str[i] = ctype.tolower(str[i]);
+
1492 }
+
1493
+
1501 template<class T>
+
1502 inline void strupr(_Inout_z_ T* str, _In_ const std::locale& locale)
+
1503 {
+
1504 _Assume_(str);
+
1505 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1506 for (size_t i = 0; str[i]; ++i)
+
1507 str[i] = ctype.toupper(str[i]);
+
1508 }
+
1509
+
1518 template<class T>
+
1519 inline void strupr(_Inout_updates_z_(count) T* str, _In_ size_t count, _In_ const std::locale& locale)
+
1520 {
+
1521 _Assume_(str || !count);
+
1522 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1523 for (size_t i = 0; i < count && str[i]; ++i)
+
1524 str[i] = ctype.toupper(str[i]);
+
1525 }
+
1526
+
1534 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1535 inline void strupr(_Inout_ std::basic_string<_Elem, _Traits, _Ax>& str, _In_ const std::locale& locale)
+
1536 {
+
1537 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
+
1538 for (size_t i = 0; i < str.size(); ++i)
+
1539 str[i] = ctype.toupper(str[i]);
+
1540 }
+
1541
+
1550 template<class T>
+
1551 inline size_t ltrim(
+
1552 _Inout_z_count_(count) T* str, _In_ size_t count,
+
1553 _In_ const std::locale& locale)
+
1554 {
+
1555 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1556 for (size_t i = 0;; ++i) {
+
1557 if (i >= count) {
+
1558 if (count) str[0] = 0;
+
1559 return 0;
+
1560 }
+
1561 if (!str[i]) {
+
1562 str[0] = 0;
+
1563 return 0;
+
1564 }
+
1565 if (!ctype.is(ctype.space, str[i])) {
+
1566 if (!i)
+
1567 return strnlen(str, count);
+
1568 size_t n = count != SIZE_MAX ? strncpy(str, str + i, count - i) : strcpy(str, str + i);
+
1569 str[n] = 0;
+
1570 return n;
+
1571 }
+
1572 }
+
1573 }
+
1574
+
1580 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1581 inline void ltrim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
+
1582 {
+
1583 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
+
1584 s.erase(
+
1585 s.begin(),
+
1586 std::find_if(
+
1587 s.begin(),
+
1588 s.end(),
+
1589 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }));
+
1590 }
+
1591
+
1600 template<class T>
+
1601 inline size_t rtrim(
+
1602 _Inout_z_count_(count) T* str, _In_ size_t count,
+
1603 _In_ const std::locale& locale)
+
1604 {
+
1605 const auto& ctype = std::use_facet<std::ctype<T>>(locale);
+
1606 for (size_t i = 0, j = 0;;) {
+
1607 if (i >= count || !str[i]) {
+
1608 if (j < count) str[j] = 0;
+
1609 return j;
+
1610 }
+
1611 if (!ctype.is(ctype.space, str[i]))
+
1612 j = ++i;
+
1613 else
+
1614 ++i;
+
1615 }
+
1616 }
+
1617
+
1623 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1624 static inline void rtrim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
+
1625 {
+
1626 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
+
1627 s.erase(
+
1628 std::find_if(
+
1629 s.rbegin(),
+
1630 s.rend(),
+
1631 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }).base(),
+
1632 s.end());
+
1633 }
+
1634
+
1643 template<class T>
+
1644 inline size_t trim(
+
1645 _Inout_z_count_(count) T* str, _In_ size_t count,
+
1646 _In_ const std::locale& locale)
+
1647 {
+
1648 return ltrim(str, rtrim(str, count, locale), locale);
+
1649 }
+
1650
+
1656 template<class _Elem, class _Traits = std::char_traits<_Elem>, class _Ax = std::allocator<_Elem>>
+
1657 static inline void trim(_Inout_ std::basic_string<_Elem, _Traits, _Ax> &s, _In_ const std::locale& locale)
+
1658 {
+
1659 const auto& ctype = std::use_facet<std::ctype<_Elem>>(locale);
+
1660 s.erase(
+
1661 s.begin(),
+
1662 std::find_if(
+
1663 s.begin(),
+
1664 s.end(),
+
1665 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }));
+
1666 s.erase(
+
1667 std::find_if(
+
1668 s.rbegin(),
+
1669 s.rend(),
+
1670 [&](_Elem ch) { return !ctype.is(ctype.space, ch); }).base(),
+
1671 s.end());
+
1672 }
+
1673}
+
Deleter for unique_ptr using free_locale.
Definition string.hpp:58
+
void operator()(locale_t locale) const
Delete a pointer.
Definition string.hpp:62
diff --git a/structstdex_1_1chrono_1_1aosn__date-members.html b/structstdex_1_1chrono_1_1aosn__date-members.html index 2eb050152..5759d314b 100644 --- a/structstdex_1_1chrono_1_1aosn__date-members.html +++ b/structstdex_1_1chrono_1_1aosn__date-members.html @@ -96,7 +96,7 @@ $(function() { diff --git a/structstdex_1_1chrono_1_1aosn__date.html b/structstdex_1_1chrono_1_1aosn__date.html index e98e06852..c0a69370c 100644 --- a/structstdex_1_1chrono_1_1aosn__date.html +++ b/structstdex_1_1chrono_1_1aosn__date.html @@ -152,7 +152,7 @@ static constexpr bool is_s diff --git a/structstdex_1_1chrono_1_1aosn__timestamp-members.html b/structstdex_1_1chrono_1_1aosn__timestamp-members.html index 16920021d..6103e0fdc 100644 --- a/structstdex_1_1chrono_1_1aosn__timestamp-members.html +++ b/structstdex_1_1chrono_1_1aosn__timestamp-members.html @@ -110,7 +110,7 @@ $(function() { diff --git a/structstdex_1_1chrono_1_1aosn__timestamp.html b/structstdex_1_1chrono_1_1aosn__timestamp.html index 86412cfc4..e94790f67 100644 --- a/structstdex_1_1chrono_1_1aosn__timestamp.html +++ b/structstdex_1_1chrono_1_1aosn__timestamp.html @@ -197,7 +197,7 @@ static constexpr rep one_w diff --git a/structstdex_1_1free__locale__delete-members.html b/structstdex_1_1free__locale__delete-members.html index 126d8c9e2..2427804fd 100644 --- a/structstdex_1_1free__locale__delete-members.html +++ b/structstdex_1_1free__locale__delete-members.html @@ -84,7 +84,7 @@ $(function() { diff --git a/structstdex_1_1free__locale__delete.html b/structstdex_1_1free__locale__delete.html index 93b534a3b..27640998c 100644 --- a/structstdex_1_1free__locale__delete.html +++ b/structstdex_1_1free__locale__delete.html @@ -101,7 +101,7 @@ void operator() (local diff --git a/structstdex_1_1interval-members.html b/structstdex_1_1interval-members.html index 817a8cd42..92915ce85 100644 --- a/structstdex_1_1interval-members.html +++ b/structstdex_1_1interval-members.html @@ -103,7 +103,7 @@ $(function() { diff --git a/structstdex_1_1interval.html b/structstdex_1_1interval.html index 36c99c1a9..500813385 100644 --- a/structstdex_1_1interval.html +++ b/structstdex_1_1interval.html @@ -722,7 +722,7 @@ template<class T > diff --git a/structstdex_1_1mapping-members.html b/structstdex_1_1mapping-members.html index 77e7a5ca2..620ad9e1e 100644 --- a/structstdex_1_1mapping-members.html +++ b/structstdex_1_1mapping-members.html @@ -90,7 +90,7 @@ $(function() { diff --git a/structstdex_1_1mapping.html b/structstdex_1_1mapping.html index acb62e207..f9e064132 100644 --- a/structstdex_1_1mapping.html +++ b/structstdex_1_1mapping.html @@ -283,7 +283,7 @@ template<class T > diff --git a/structstdex_1_1no__delete-members.html b/structstdex_1_1no__delete-members.html index bff6bc884..2307866e8 100644 --- a/structstdex_1_1no__delete-members.html +++ b/structstdex_1_1no__delete-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/structstdex_1_1no__delete.html b/structstdex_1_1no__delete.html index c043ae6d5..5b5d0ef15 100644 --- a/structstdex_1_1no__delete.html +++ b/structstdex_1_1no__delete.html @@ -105,7 +105,7 @@ struct stdex::no_delete< T >

Noop deleter.

diff --git a/structstdex_1_1no__delete_3_01_t_0f_0e_4-members.html b/structstdex_1_1no__delete_3_01_t_0f_0e_4-members.html index 45703b43c..7f3d1170a 100644 --- a/structstdex_1_1no__delete_3_01_t_0f_0e_4-members.html +++ b/structstdex_1_1no__delete_3_01_t_0f_0e_4-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/structstdex_1_1no__delete_3_01_t_0f_0e_4.html b/structstdex_1_1no__delete_3_01_t_0f_0e_4.html index 980e406e3..2e9027ba0 100644 --- a/structstdex_1_1no__delete_3_01_t_0f_0e_4.html +++ b/structstdex_1_1no__delete_3_01_t_0f_0e_4.html @@ -106,7 +106,7 @@ struct stdex::no_delete< T[]>

Noop array deleter.

diff --git a/structstdex_1_1parser_1_1http__factor__more-members.html b/structstdex_1_1parser_1_1http__factor__more-members.html index e97e5e958..e8bb5f7a6 100644 --- a/structstdex_1_1parser_1_1http__factor__more-members.html +++ b/structstdex_1_1parser_1_1http__factor__more-members.html @@ -84,7 +84,7 @@ $(function() { diff --git a/structstdex_1_1parser_1_1http__factor__more.html b/structstdex_1_1parser_1_1http__factor__more.html index ef2dd519c..f9b0c3832 100644 --- a/structstdex_1_1parser_1_1http__factor__more.html +++ b/structstdex_1_1parser_1_1http__factor__more.html @@ -93,7 +93,7 @@ Public Member Functions diff --git a/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html b/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html index 9261d873e..bb267abb8 100644 --- a/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html +++ b/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/structstdex_1_1stream_1_1buffer_1_1buffer__t.html b/structstdex_1_1stream_1_1buffer_1_1buffer__t.html index 61f689f96..142a1967b 100644 --- a/structstdex_1_1stream_1_1buffer_1_1buffer__t.html +++ b/structstdex_1_1stream_1_1buffer_1_1buffer__t.html @@ -109,7 +109,7 @@ size_t capacity diff --git a/structstdex_1_1stream_1_1fifo_1_1node__t-members.html b/structstdex_1_1stream_1_1fifo_1_1node__t-members.html index 52c50ad76..077a37168 100644 --- a/structstdex_1_1stream_1_1fifo_1_1node__t-members.html +++ b/structstdex_1_1stream_1_1fifo_1_1node__t-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/structstdex_1_1stream_1_1fifo_1_1node__t.html b/structstdex_1_1stream_1_1fifo_1_1node__t.html index 0d52ec09f..489be44a3 100644 --- a/structstdex_1_1stream_1_1fifo_1_1node__t.html +++ b/structstdex_1_1stream_1_1fifo_1_1node__t.html @@ -99,7 +99,7 @@ uint8_t data [0]< diff --git a/structstdex_1_1sys__info__t-members.html b/structstdex_1_1sys__info__t-members.html index 781dc30d3..e43acef8c 100644 --- a/structstdex_1_1sys__info__t-members.html +++ b/structstdex_1_1sys__info__t-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/structstdex_1_1sys__info__t.html b/structstdex_1_1sys__info__t.html index f253db667..30906757f 100644 --- a/structstdex_1_1sys__info__t.html +++ b/structstdex_1_1sys__info__t.html @@ -137,7 +137,7 @@ struct utsname m_utsn< diff --git a/sys__info_8hpp_source.html b/sys__info_8hpp_source.html index d86aee3a5..3081ccd1d 100644 --- a/sys__info_8hpp_source.html +++ b/sys__info_8hpp_source.html @@ -127,7 +127,7 @@ $(document).ready(function() { init_codefold(0); });
46namespace stdex
47{
-
51 const struct sys_info_t
+
51 inline const struct sys_info_t
52 {
56#if _M_IX86
57 static constexpr platform_id process_platform = IMAGE_FILE_MACHINE_I386;
@@ -285,7 +285,7 @@ $(document).ready(function() { init_codefold(0); });
diff --git a/system_8hpp_source.html b/system_8hpp_source.html index fc683cabf..dde00ebbb 100644 --- a/system_8hpp_source.html +++ b/system_8hpp_source.html @@ -289,7 +289,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/unicode_8cpp_source.html b/unicode_8cpp_source.html index 34a633eeb..8c16ed0b8 100644 --- a/unicode_8cpp_source.html +++ b/unicode_8cpp_source.html @@ -181,7 +181,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/unicode_8hpp_source.html b/unicode_8hpp_source.html index 4a1ddcb84..16c26f4d0 100644 --- a/unicode_8hpp_source.html +++ b/unicode_8hpp_source.html @@ -699,7 +699,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/unionstdex_1_1md2__t-members.html b/unionstdex_1_1md2__t-members.html index 8b60415fb..162b07bae 100644 --- a/unionstdex_1_1md2__t-members.html +++ b/unionstdex_1_1md2__t-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/unionstdex_1_1md2__t.html b/unionstdex_1_1md2__t.html index 2883f5cd5..c4b4e17c5 100644 --- a/unionstdex_1_1md2__t.html +++ b/unionstdex_1_1md2__t.html @@ -123,7 +123,7 @@ Friends diff --git a/unionstdex_1_1sha256__t-members.html b/unionstdex_1_1sha256__t-members.html index 30e89ac3c..ee9ad17bf 100644 --- a/unionstdex_1_1sha256__t-members.html +++ b/unionstdex_1_1sha256__t-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/unionstdex_1_1sha256__t.html b/unionstdex_1_1sha256__t.html index ea49917f9..eecc98a6e 100644 --- a/unionstdex_1_1sha256__t.html +++ b/unionstdex_1_1sha256__t.html @@ -123,7 +123,7 @@ Friends diff --git a/unionstdex_1_1sha__t-members.html b/unionstdex_1_1sha__t-members.html index 5d9c3467b..71fa31296 100644 --- a/unionstdex_1_1sha__t-members.html +++ b/unionstdex_1_1sha__t-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/unionstdex_1_1sha__t.html b/unionstdex_1_1sha__t.html index 463c6a2ca..7c50fa1b0 100644 --- a/unionstdex_1_1sha__t.html +++ b/unionstdex_1_1sha__t.html @@ -123,7 +123,7 @@ Friends diff --git a/uuid_8hpp_source.html b/uuid_8hpp_source.html index 4ff0586f0..e24998a53 100644 --- a/uuid_8hpp_source.html +++ b/uuid_8hpp_source.html @@ -145,7 +145,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/vector__queue_8hpp_source.html b/vector__queue_8hpp_source.html index 437f32974..3c370b9bb 100644 --- a/vector__queue_8hpp_source.html +++ b/vector__queue_8hpp_source.html @@ -453,7 +453,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/watchdog_8cpp_source.html b/watchdog_8cpp_source.html index 7be305d57..7e100cdb7 100644 --- a/watchdog_8cpp_source.html +++ b/watchdog_8cpp_source.html @@ -118,7 +118,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/watchdog_8hpp_source.html b/watchdog_8hpp_source.html index f910d4fb2..7b8938ad1 100644 --- a/watchdog_8hpp_source.html +++ b/watchdog_8hpp_source.html @@ -176,7 +176,7 @@ $(document).ready(function() { init_codefold(0); }); diff --git a/windows_8h_source.html b/windows_8h_source.html index f473c9d3c..4aefdd10c 100644 --- a/windows_8h_source.html +++ b/windows_8h_source.html @@ -109,7 +109,7 @@ $(document).ready(function() { init_codefold(0); });