From c797761d51e9c5862f17b1fe9cc55ad24a4ede93 Mon Sep 17 00:00:00 2001 From: rozmansi Date: Mon, 27 May 2024 10:18:31 +0000 Subject: [PATCH] deploy: a0626f802a567b98af3994d85cc65d196d0f7209 --- _unit_tests_2compat_8hpp_source.html | 19 +- annotated.html | 22 +- base64_8hpp_source.html | 21 +- chrono_8hpp_source.html | 19 +- classes.html | 22 +- ...sstdex_1_1aggregate__progress-members.html | 22 +- classstdex_1_1aggregate__progress.html | 28 +- ..._progress_1_1worker__progress-members.html | 22 +- ...gregate__progress_1_1worker__progress.html | 28 +- classstdex_1_1base64__dec-members.html | 22 +- classstdex_1_1base64__dec.html | 28 +- classstdex_1_1base64__enc-members.html | 22 +- classstdex_1_1base64__enc.html | 30 +- classstdex_1_1base64__reader-members.html | 22 +- classstdex_1_1base64__reader.html | 24 +- classstdex_1_1base64__writer-members.html | 22 +- classstdex_1_1base64__writer.html | 24 +- classstdex_1_1basic__hash-members.html | 22 +- classstdex_1_1basic__hash.html | 34 +- classstdex_1_1basic__hash.png | Bin 1830 -> 660 bytes classstdex_1_1basic__sys__object-members.html | 22 +- classstdex_1_1basic__sys__object.html | 24 +- classstdex_1_1benchmark-members.html | 22 +- classstdex_1_1benchmark.html | 22 +- classstdex_1_1block__hash-members.html | 22 +- classstdex_1_1block__hash.html | 26 +- classstdex_1_1charset__encoder-members.html | 22 +- classstdex_1_1charset__encoder.html | 40 +- classstdex_1_1crc32__hash-members.html | 22 +- classstdex_1_1crc32__hash.html | 28 +- classstdex_1_1global__progress-members.html | 22 +- classstdex_1_1global__progress.html | 36 +- classstdex_1_1hex__dec-members.html | 22 +- classstdex_1_1hex__dec.html | 28 +- classstdex_1_1hex__enc-members.html | 22 +- classstdex_1_1hex__enc.html | 26 +- classstdex_1_1html_1_1comment-members.html | 22 +- classstdex_1_1html_1_1comment.html | 22 +- ...sstdex_1_1html_1_1declaration-members.html | 22 +- classstdex_1_1html_1_1declaration.html | 22 +- classstdex_1_1html_1_1document-members.html | 22 +- classstdex_1_1html_1_1document.html | 22 +- classstdex_1_1html_1_1element-members.html | 22 +- classstdex_1_1html_1_1element.html | 22 +- ...stdex_1_1html_1_1element__end-members.html | 22 +- classstdex_1_1html_1_1element__end.html | 22 +- ...dex_1_1html_1_1element__start-members.html | 22 +- classstdex_1_1html_1_1element__start.html | 22 +- ...sstdex_1_1html_1_1instruction-members.html | 22 +- classstdex_1_1html_1_1instruction.html | 22 +- classstdex_1_1html_1_1parser-members.html | 22 +- classstdex_1_1html_1_1parser.html | 50 +- classstdex_1_1html_1_1sequence-members.html | 22 +- classstdex_1_1html_1_1sequence.html | 22 +- ...ex_1_1html_1_1starting__token-members.html | 22 +- classstdex_1_1html_1_1starting__token.html | 22 +- ...sstdex_1_1html_1_1text__token-members.html | 22 +- classstdex_1_1html_1_1text__token.html | 22 +- classstdex_1_1html_1_1token-members.html | 22 +- classstdex_1_1html_1_1token.html | 22 +- classstdex_1_1html_1_1url__token-members.html | 22 +- classstdex_1_1html_1_1url__token.html | 22 +- classstdex_1_1idrec_1_1record-members.html | 34 +- classstdex_1_1idrec_1_1record.html | 46 +- classstdex_1_1lazy__progress-members.html | 22 +- classstdex_1_1lazy__progress.html | 26 +- classstdex_1_1locale-members.html | 22 +- classstdex_1_1locale.html | 22 +- classstdex_1_1md5__hash-members.html | 32 +- classstdex_1_1md5__hash.html | 46 +- ...ex_1_1minisign_1_1line__break-members.html | 22 +- classstdex_1_1minisign_1_1line__break.html | 42 +- ...inisign_1_1untrusted__comment-members.html | 22 +- ...dex_1_1minisign_1_1untrusted__comment.html | 42 +- ...dex_1_1parser_1_1basic__angle-members.html | 22 +- classstdex_1_1parser_1_1basic__angle.html | 58 +- ...x_1_1parser_1_1basic__any__cu-members.html | 22 +- classstdex_1_1parser_1_1basic__any__cu.html | 52 +- ...stdex_1_1parser_1_1basic__bol-members.html | 22 +- classstdex_1_1parser_1_1basic__bol.html | 54 +- ...ex_1_1parser_1_1basic__branch-members.html | 22 +- classstdex_1_1parser_1_1basic__branch.html | 70 +- ...r_1_1basic__chemical__formula-members.html | 22 +- ...1_1parser_1_1basic__chemical__formula.html | 62 +- ...1_1basic__creditor__reference-members.html | 22 +- ...1parser_1_1basic__creditor__reference.html | 60 +- ..._1_1parser_1_1basic__css__cdc-members.html | 22 +- classstdex_1_1parser_1_1basic__css__cdc.html | 50 +- ..._1_1parser_1_1basic__css__cdo-members.html | 22 +- classstdex_1_1parser_1_1basic__css__cdo.html | 50 +- ...parser_1_1basic__css__comment-members.html | 22 +- ...tdex_1_1parser_1_1basic__css__comment.html | 58 +- ...1parser_1_1basic__css__import-members.html | 22 +- ...stdex_1_1parser_1_1basic__css__import.html | 58 +- ...1parser_1_1basic__css__string-members.html | 22 +- ...stdex_1_1parser_1_1basic__css__string.html | 58 +- ..._1_1parser_1_1basic__css__uri-members.html | 22 +- classstdex_1_1parser_1_1basic__css__uri.html | 58 +- ...sstdex_1_1parser_1_1basic__cu-members.html | 22 +- classstdex_1_1parser_1_1basic__cu.html | 54 +- ...x_1_1parser_1_1basic__cu__set-members.html | 22 +- classstdex_1_1parser_1_1basic__cu__set.html | 58 +- ...tdex_1_1parser_1_1basic__date-members.html | 22 +- classstdex_1_1parser_1_1basic__date.html | 62 +- ...r_1_1basic__dns__domain__char-members.html | 22 +- ...1_1parser_1_1basic__dns__domain__char.html | 56 +- ...1_1parser_1_1basic__dns__name-members.html | 22 +- classstdex_1_1parser_1_1basic__dns__name.html | 54 +- ...rser_1_1basic__email__address-members.html | 22 +- ...ex_1_1parser_1_1basic__email__address.html | 58 +- ..._1_1parser_1_1basic__emoticon-members.html | 22 +- classstdex_1_1parser_1_1basic__emoticon.html | 58 +- ...stdex_1_1parser_1_1basic__eol-members.html | 22 +- classstdex_1_1parser_1_1basic__eol.html | 54 +- ..._1_1parser_1_1basic__fraction-members.html | 22 +- classstdex_1_1parser_1_1basic__fraction.html | 58 +- ...__declaration__condition__end-members.html | 22 +- ...ic__html__declaration__condition__end.html | 50 +- ...declaration__condition__start-members.html | 22 +- ...__html__declaration__condition__start.html | 58 +- ...1parser_1_1basic__html__ident-members.html | 22 +- ...stdex_1_1parser_1_1basic__html__ident.html | 50 +- ...1_1parser_1_1basic__html__tag-members.html | 22 +- classstdex_1_1parser_1_1basic__html__tag.html | 60 +- ...1parser_1_1basic__html__value-members.html | 22 +- ...stdex_1_1parser_1_1basic__html__value.html | 58 +- ...tdex_1_1parser_1_1basic__iban-members.html | 22 +- classstdex_1_1parser_1_1basic__iban.html | 60 +- ...x_1_1parser_1_1basic__integer-members.html | 22 +- classstdex_1_1parser_1_1basic__integer.html | 48 +- ...1_1parser_1_1basic__integer10-members.html | 22 +- classstdex_1_1parser_1_1basic__integer10.html | 56 +- ...1parser_1_1basic__integer10ts-members.html | 22 +- ...stdex_1_1parser_1_1basic__integer10ts.html | 66 +- ...1_1parser_1_1basic__integer16-members.html | 22 +- classstdex_1_1parser_1_1basic__integer16.html | 56 +- ...arser_1_1basic__ipv4__address-members.html | 22 +- ...dex_1_1parser_1_1basic__ipv4__address.html | 62 +- ...arser_1_1basic__ipv6__address-members.html | 22 +- ...dex_1_1parser_1_1basic__ipv6__address.html | 62 +- ...1basic__ipv6__scope__id__char-members.html | 22 +- ...arser_1_1basic__ipv6__scope__id__char.html | 52 +- ..._1parser_1_1basic__iterations-members.html | 22 +- ...sstdex_1_1parser_1_1basic__iterations.html | 58 +- ...parser_1_1basic__json__string-members.html | 22 +- ...tdex_1_1parser_1_1basic__json__string.html | 58 +- ..._1parser_1_1basic__mime__type-members.html | 22 +- ...sstdex_1_1parser_1_1basic__mime__type.html | 62 +- ...rser_1_1basic__mixed__numeral-members.html | 22 +- ...ex_1_1parser_1_1basic__mixed__numeral.html | 58 +- ...r_1_1basic__monetary__numeral-members.html | 22 +- ...1_1parser_1_1basic__monetary__numeral.html | 58 +- ...tdex_1_1parser_1_1basic__noop-members.html | 22 +- classstdex_1_1parser_1_1basic__noop.html | 50 +- ...ex_1_1parser_1_1basic__parser-members.html | 22 +- classstdex_1_1parser_1_1basic__parser.html | 167 +- classstdex_1_1parser_1_1basic__parser.png | Bin 42068 -> 35884 bytes ...1parser_1_1basic__permutation-members.html | 22 +- ...stdex_1_1parser_1_1basic__permutation.html | 62 +- ...arser_1_1basic__phone__number-members.html | 22 +- ...dex_1_1parser_1_1basic__phone__number.html | 58 +- ...1_1parser_1_1basic__punct__cu-members.html | 22 +- classstdex_1_1parser_1_1basic__punct__cu.html | 54 +- ...rser_1_1basic__roman__numeral-members.html | 22 +- ...ex_1_1parser_1_1basic__roman__numeral.html | 56 +- ...1_1basic__scientific__numeral-members.html | 22 +- ...1parser_1_1basic__scientific__numeral.html | 60 +- ...dex_1_1parser_1_1basic__score-members.html | 22 +- classstdex_1_1parser_1_1basic__score.html | 58 +- ..._1_1parser_1_1basic__sequence-members.html | 22 +- classstdex_1_1parser_1_1basic__sequence.html | 60 +- ...stdex_1_1parser_1_1basic__set-members.html | 22 +- classstdex_1_1parser_1_1basic__set.html | 60 +- ...arser_1_1basic__si__reference-members.html | 22 +- ...dex_1_1parser_1_1basic__si__reference.html | 66 +- ...sic__si__reference__delimiter-members.html | 22 +- ...er_1_1basic__si__reference__delimiter.html | 52 +- ...1_1basic__si__reference__part-members.html | 22 +- ...1parser_1_1basic__si__reference__part.html | 52 +- ...ser_1_1basic__signed__numeral-members.html | 22 +- ...x_1_1parser_1_1basic__signed__numeral.html | 58 +- ...1_1parser_1_1basic__space__cu-members.html | 22 +- classstdex_1_1parser_1_1basic__space__cu.html | 54 +- ..._1basic__space__or__punct__cu-members.html | 22 +- ...parser_1_1basic__space__or__punct__cu.html | 54 +- ...ex_1_1parser_1_1basic__string-members.html | 22 +- classstdex_1_1parser_1_1basic__string.html | 50 +- ...rser_1_1basic__string__branch-members.html | 22 +- ...ex_1_1parser_1_1basic__string__branch.html | 62 +- ...tdex_1_1parser_1_1basic__time-members.html | 22 +- classstdex_1_1parser_1_1basic__time.html | 58 +- ...stdex_1_1parser_1_1basic__url-members.html | 22 +- classstdex_1_1parser_1_1basic__url.html | 58 +- ...1_1basic__url__password__char-members.html | 22 +- ...1parser_1_1basic__url__password__char.html | 52 +- ...1_1parser_1_1basic__url__path-members.html | 22 +- classstdex_1_1parser_1_1basic__url__path.html | 64 +- ...ser_1_1basic__url__path__char-members.html | 22 +- ...x_1_1parser_1_1basic__url__path__char.html | 52 +- ...1_1basic__url__username__char-members.html | 22 +- ...1parser_1_1basic__url__username__char.html | 52 +- ...tdex_1_1parser_1_1http__agent-members.html | 22 +- classstdex_1_1parser_1_1http__agent.html | 46 +- ..._1_1parser_1_1http__any__type-members.html | 22 +- classstdex_1_1parser_1_1http__any__type.html | 38 +- ...x_1_1parser_1_1http__asterisk-members.html | 22 +- classstdex_1_1parser_1_1http__asterisk.html | 38 +- ...dex_1_1parser_1_1http__cookie-members.html | 22 +- classstdex_1_1parser_1_1http__cookie.html | 42 +- ...er_1_1http__cookie__parameter-members.html | 22 +- ..._1_1parser_1_1http__cookie__parameter.html | 42 +- ...dex_1_1parser_1_1http__header-members.html | 22 +- classstdex_1_1parser_1_1http__header.html | 46 +- ...x_1_1parser_1_1http__language-members.html | 22 +- classstdex_1_1parser_1_1http__language.html | 44 +- ..._1parser_1_1http__line__break-members.html | 22 +- ...sstdex_1_1parser_1_1http__line__break.html | 38 +- ...1parser_1_1http__media__range-members.html | 22 +- ...stdex_1_1parser_1_1http__media__range.html | 42 +- ..._1parser_1_1http__media__type-members.html | 22 +- ...sstdex_1_1parser_1_1http__media__type.html | 52 +- ..._1_1parser_1_1http__parameter-members.html | 22 +- classstdex_1_1parser_1_1http__parameter.html | 42 +- ...x_1_1parser_1_1http__protocol-members.html | 22 +- classstdex_1_1parser_1_1http__protocol.html | 52 +- ...arser_1_1http__quoted__string-members.html | 22 +- ...dex_1_1parser_1_1http__quoted__string.html | 44 +- ...ex_1_1parser_1_1http__request-members.html | 22 +- classstdex_1_1parser_1_1http__request.html | 46 +- ...tdex_1_1parser_1_1http__space-members.html | 22 +- classstdex_1_1parser_1_1http__space.html | 38 +- ...1_1parser_1_1http__text__char-members.html | 22 +- classstdex_1_1parser_1_1http__text__char.html | 38 +- ...tdex_1_1parser_1_1http__token-members.html | 22 +- classstdex_1_1parser_1_1http__token.html | 38 +- ...sstdex_1_1parser_1_1http__url-members.html | 22 +- classstdex_1_1parser_1_1http__url.html | 44 +- ...arser_1_1http__url__parameter-members.html | 22 +- ...dex_1_1parser_1_1http__url__parameter.html | 46 +- ..._1_1parser_1_1http__url__path-members.html | 22 +- classstdex_1_1parser_1_1http__url__path.html | 42 +- ...r_1_1http__url__path__segment-members.html | 22 +- ...1_1parser_1_1http__url__path__segment.html | 38 +- ..._1_1parser_1_1http__url__port-members.html | 22 +- classstdex_1_1parser_1_1http__url__port.html | 46 +- ..._1parser_1_1http__url__server-members.html | 22 +- ...sstdex_1_1parser_1_1http__url__server.html | 38 +- ...tdex_1_1parser_1_1http__value-members.html | 22 +- classstdex_1_1parser_1_1http__value.html | 42 +- ...er_1_1http__value__collection-members.html | 22 +- ..._1_1parser_1_1http__value__collection.html | 26 +- ...dex_1_1parser_1_1http__weight-members.html | 22 +- classstdex_1_1parser_1_1http__weight.html | 46 +- ...rser_1_1http__weighted__value-members.html | 22 +- ...ex_1_1parser_1_1http__weighted__value.html | 50 +- ...1parser_1_1parser__collection-members.html | 22 +- ...stdex_1_1parser_1_1parser__collection.html | 50 +- ...ex_1_1parser_1_1sgml__any__cp-members.html | 36 +- classstdex_1_1parser_1_1sgml__any__cp.html | 54 +- classstdex_1_1parser_1_1sgml__cp-members.html | 22 +- classstdex_1_1parser_1_1sgml__cp.html | 42 +- ...ex_1_1parser_1_1sgml__cp__set-members.html | 35 +- classstdex_1_1parser_1_1sgml__cp__set.html | 58 +- ...er_1_1sgml__dns__domain__char-members.html | 36 +- ..._1_1parser_1_1sgml__dns__domain__char.html | 58 +- ..._1sgml__ipv6__scope__id__char-members.html | 22 +- ...parser_1_1sgml__ipv6__scope__id__char.html | 40 +- ..._1_1parser_1_1sgml__punct__cp-members.html | 36 +- classstdex_1_1parser_1_1sgml__punct__cp.html | 56 +- ..._1_1parser_1_1sgml__space__cp-members.html | 36 +- classstdex_1_1parser_1_1sgml__space__cp.html | 56 +- ...1_1sgml__space__or__punct__cp-members.html | 36 +- ...1parser_1_1sgml__space__or__punct__cp.html | 56 +- ...dex_1_1parser_1_1sgml__string-members.html | 22 +- classstdex_1_1parser_1_1sgml__string.html | 40 +- ..._1_1sgml__url__password__char-members.html | 36 +- ..._1parser_1_1sgml__url__password__char.html | 54 +- ...rser_1_1sgml__url__path__char-members.html | 36 +- ...ex_1_1parser_1_1sgml__url__path__char.html | 54 +- ..._1_1sgml__url__username__char-members.html | 36 +- ..._1parser_1_1sgml__url__username__char.html | 54 +- classstdex_1_1pool-members.html | 22 +- classstdex_1_1pool.html | 28 +- classstdex_1_1progress-members.html | 22 +- classstdex_1_1progress.html | 38 +- classstdex_1_1progress__switcher-members.html | 22 +- classstdex_1_1progress__switcher.html | 22 +- classstdex_1_1ring-members.html | 22 +- classstdex_1_1ring.html | 26 +- classstdex_1_1scoped__executor-members.html | 22 +- classstdex_1_1scoped__executor.html | 24 +- classstdex_1_1sha1__hash-members.html | 32 +- classstdex_1_1sha1__hash.html | 46 +- classstdex_1_1spinlock-members.html | 22 +- classstdex_1_1spinlock.html | 24 +- ...ex_1_1stream_1_1async__reader-members.html | 22 +- classstdex_1_1stream_1_1async__reader.html | 24 +- ...ex_1_1stream_1_1async__writer-members.html | 22 +- classstdex_1_1stream_1_1async__writer.html | 26 +- classstdex_1_1stream_1_1basic-members.html | 22 +- classstdex_1_1stream_1_1basic.html | 80 +- ...tdex_1_1stream_1_1basic__file-members.html | 22 +- classstdex_1_1stream_1_1basic__file.html | 58 +- ...stdex_1_1stream_1_1basic__sys-members.html | 22 +- classstdex_1_1stream_1_1basic__sys.html | 30 +- classstdex_1_1stream_1_1buffer-members.html | 22 +- classstdex_1_1stream_1_1buffer.html | 28 +- ...ex_1_1stream_1_1buffered__sys-members.html | 22 +- classstdex_1_1stream_1_1buffered__sys.html | 22 +- classstdex_1_1stream_1_1cache-members.html | 38 +- classstdex_1_1stream_1_1cache.html | 50 +- ...dex_1_1stream_1_1cached__file-members.html | 38 +- classstdex_1_1stream_1_1cached__file.html | 38 +- ...sstdex_1_1stream_1_1converter-members.html | 22 +- classstdex_1_1stream_1_1converter.html | 34 +- ...stdex_1_1stream_1_1diag__file-members.html | 38 +- classstdex_1_1stream_1_1diag__file.html | 44 +- classstdex_1_1stream_1_1fifo-members.html | 22 +- classstdex_1_1stream_1_1fifo.html | 28 +- classstdex_1_1stream_1_1file-members.html | 108 +- classstdex_1_1stream_1_1file.html | 50 +- ...dex_1_1stream_1_1file__window-members.html | 38 +- classstdex_1_1stream_1_1file__window.html | 44 +- classstdex_1_1stream_1_1limiter-members.html | 22 +- classstdex_1_1stream_1_1limiter.html | 26 +- ...dex_1_1stream_1_1memory__file-members.html | 36 +- classstdex_1_1stream_1_1memory__file.html | 84 +- ...stdex_1_1stream_1_1replicator-members.html | 22 +- classstdex_1_1stream_1_1replicator.html | 28 +- ...tream_1_1replicator_1_1worker-members.html | 22 +- ...dex_1_1stream_1_1replicator_1_1worker.html | 22 +- classstdex_1_1stream_1_1socket-members.html | 22 +- classstdex_1_1stream_1_1socket.html | 32 +- classstdex_1_1stream_1_1window-members.html | 22 +- classstdex_1_1stream_1_1window.html | 26 +- classstdex_1_1stream__hasher-members.html | 22 +- classstdex_1_1stream__hasher.html | 26 +- classstdex_1_1timeout__progress-members.html | 22 +- classstdex_1_1timeout__progress.html | 32 +- classstdex_1_1user__cancelled-members.html | 22 +- classstdex_1_1user__cancelled.html | 24 +- classstdex_1_1vector__queue-members.html | 22 +- classstdex_1_1vector__queue.html | 22 +- classstdex_1_1watchdog-members.html | 22 +- classstdex_1_1watchdog.html | 26 +- classstdex_1_1zlib__reader-members.html | 22 +- classstdex_1_1zlib__reader.html | 24 +- classstdex_1_1zlib__writer-members.html | 22 +- classstdex_1_1zlib__writer.html | 24 +- debug_8hpp_source.html | 19 +- dir_4be4f7b278e009bf0f1906cf31fb73bd.html | 22 +- dir_d44c64559bbebec7f509842c48db8b23.html | 22 +- dir_fca3c47b2ea228727bd6729832f89576.html | 22 +- doxygen.css | 31 +- doxygen_crawl.html | 963 +++- dynsections.js | 4 + endian_8hpp_source.html | 19 +- exception_8hpp_source.html | 19 +- files.html | 22 +- functions.html | 24 +- functions_b.html | 22 +- functions_c.html | 26 +- functions_d.html | 24 +- functions_e.html | 22 +- functions_enum.html | 22 +- functions_f.html | 26 +- functions_func.html | 22 +- functions_func_b.html | 22 +- functions_func_c.html | 24 +- functions_func_d.html | 22 +- functions_func_e.html | 22 +- functions_func_f.html | 26 +- functions_func_g.html | 22 +- functions_func_h.html | 22 +- functions_func_i.html | 22 +- functions_func_l.html | 22 +- functions_func_m.html | 22 +- functions_func_n.html | 22 +- functions_func_o.html | 22 +- functions_func_p.html | 22 +- functions_func_q.html | 22 +- functions_func_r.html | 24 +- functions_func_s.html | 24 +- functions_func_t.html | 22 +- functions_func_u.html | 22 +- functions_func_v.html | 22 +- functions_func_w.html | 24 +- functions_func_~.html | 22 +- functions_g.html | 22 +- functions_h.html | 22 +- functions_i.html | 22 +- functions_l.html | 22 +- functions_m.html | 24 +- functions_n.html | 22 +- functions_o.html | 24 +- functions_p.html | 22 +- functions_q.html | 22 +- functions_r.html | 22 +- functions_rela.html | 22 +- functions_s.html | 22 +- functions_t.html | 22 +- functions_type.html | 22 +- functions_u.html | 22 +- functions_v.html | 22 +- functions_vars.html | 22 +- functions_vars_b.html | 22 +- functions_vars_c.html | 22 +- functions_vars_d.html | 22 +- functions_vars_e.html | 22 +- functions_vars_f.html | 22 +- functions_vars_h.html | 22 +- functions_vars_i.html | 22 +- functions_vars_l.html | 22 +- functions_vars_m.html | 22 +- functions_vars_n.html | 22 +- functions_vars_o.html | 22 +- functions_vars_p.html | 22 +- functions_vars_r.html | 22 +- functions_vars_s.html | 22 +- functions_vars_t.html | 22 +- functions_vars_u.html | 22 +- functions_vars_v.html | 22 +- functions_vars_w.html | 22 +- functions_w.html | 24 +- functions_~.html | 22 +- hash_8hpp_source.html | 19 +- hex_8hpp_source.html | 19 +- hierarchy.html | 260 +- html_8hpp_source.html | 109 +- idrec_8hpp_source.html | 19 +- include_2stdex_2compat_8hpp_source.html | 19 +- index.html | 22 +- interval_8hpp_source.html | 19 +- locale_8hpp_source.html | 19 +- mapping_8hpp_source.html | 19 +- math_8hpp_source.html | 19 +- memory_8hpp_source.html | 19 +- menu.js | 4 +- minisign_8hpp_source.html | 19 +- navtree.css | 149 + parser_8hpp_source.html | 4353 +++++++++-------- pch_8hpp_source.html | 19 +- pool_8hpp_source.html | 19 +- progress_8hpp_source.html | 21 +- resize.js | 145 + ring_8hpp_source.html | 19 +- scoped__executor_8hpp_source.html | 19 +- search/all_2.js | 2 +- search/functions_2.js | 2 +- sgml_8hpp_source.html | 19 +- sgml__unicode_8hpp_source.html | 19 +- socket_8hpp_source.html | 19 +- spinlock_8hpp_source.html | 19 +- stream_8hpp_source.html | 71 +- string_8hpp_source.html | 19 +- ...stdex_1_1chrono_1_1aosn__date-members.html | 22 +- structstdex_1_1chrono_1_1aosn__date.html | 22 +- ..._1_1chrono_1_1aosn__timestamp-members.html | 22 +- structstdex_1_1chrono_1_1aosn__timestamp.html | 22 +- ...stdex_1_1free__locale__delete-members.html | 22 +- structstdex_1_1free__locale__delete.html | 22 +- ...ex_1_1html_1_1element__traits-members.html | 22 +- structstdex_1_1html_1_1element__traits.html | 32 +- structstdex_1_1html_1_1entity-members.html | 22 +- structstdex_1_1html_1_1entity.html | 22 +- ...ex_1_1html_1_1inserted__token-members.html | 22 +- structstdex_1_1html_1_1inserted__token.html | 22 +- structstdex_1_1interval-members.html | 22 +- structstdex_1_1interval.html | 38 +- structstdex_1_1mapping-members.html | 22 +- structstdex_1_1mapping.html | 24 +- structstdex_1_1no__delete-members.html | 22 +- structstdex_1_1no__delete.html | 22 +- ..._1_1no__delete_3_01_t_0f_0e_4-members.html | 22 +- structstdex_1_1no__delete_3_01_t_0f_0e_4.html | 22 +- ..._1_1parser_1_1html__attribute-members.html | 22 +- structstdex_1_1parser_1_1html__attribute.html | 26 +- ...1parser_1_1http__factor__more-members.html | 22 +- ...stdex_1_1parser_1_1http__factor__more.html | 24 +- structstdex_1_1socket__traits-members.html | 22 +- structstdex_1_1socket__traits.html | 22 +- ...stream_1_1buffer_1_1buffer__t-members.html | 22 +- ...tdex_1_1stream_1_1buffer_1_1buffer__t.html | 22 +- ..._1_1stream_1_1fifo_1_1node__t-members.html | 22 +- structstdex_1_1stream_1_1fifo_1_1node__t.html | 22 +- structstdex_1_1sys__info__t-members.html | 22 +- structstdex_1_1sys__info__t.html | 22 +- ...tstdex_1_1sys__object__traits-members.html | 22 +- structstdex_1_1sys__object__traits.html | 22 +- structstdex_1_1wav_1_1cue-members.html | 22 +- structstdex_1_1wav_1_1cue.html | 22 +- structstdex_1_1wav_1_1cue__ex-members.html | 22 +- structstdex_1_1wav_1_1cue__ex.html | 22 +- structstdex_1_1wav_1_1data-members.html | 22 +- structstdex_1_1wav_1_1data.html | 22 +- structstdex_1_1wav_1_1format-members.html | 22 +- structstdex_1_1wav_1_1format.html | 22 +- structstdex_1_1wav_1_1header-members.html | 22 +- structstdex_1_1wav_1_1header.html | 22 +- structstdex_1_1wav_1_1label-members.html | 22 +- structstdex_1_1wav_1_1label.html | 22 +- structstdex_1_1wav_1_1list-members.html | 22 +- structstdex_1_1wav_1_1list.html | 22 +- structstdex_1_1wav_1_1ltxt-members.html | 22 +- structstdex_1_1wav_1_1ltxt.html | 22 +- structstdex_1_1wav_1_1note-members.html | 22 +- structstdex_1_1wav_1_1note.html | 22 +- structstdex_1_1wav_1_1silence-members.html | 22 +- structstdex_1_1wav_1_1silence.html | 22 +- structstdex_1_1wav_1_1wave-members.html | 22 +- structstdex_1_1wav_1_1wave.html | 22 +- sys__info_8hpp_source.html | 23 +- system_8hpp_source.html | 215 +- unicode_8hpp_source.html | 19 +- unionstdex_1_1md2__t-members.html | 22 +- unionstdex_1_1md2__t.html | 22 +- unionstdex_1_1sha256__t-members.html | 22 +- unionstdex_1_1sha256__t.html | 22 +- unionstdex_1_1sha__t-members.html | 22 +- unionstdex_1_1sha__t.html | 22 +- uuid_8hpp_source.html | 19 +- vector__queue_8hpp_source.html | 19 +- watchdog_8hpp_source.html | 19 +- wav_8hpp_source.html | 19 +- windows_8h_source.html | 19 +- zlib_8hpp_source.html | 19 +- 526 files changed, 14955 insertions(+), 6765 deletions(-) create mode 100644 navtree.css create mode 100644 resize.js diff --git a/_unit_tests_2compat_8hpp_source.html b/_unit_tests_2compat_8hpp_source.html index 077947811..f510bbf88 100644 --- a/_unit_tests_2compat_8hpp_source.html +++ b/_unit_tests_2compat_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: UnitTests/compat.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
compat.hpp
@@ -172,7 +180,8 @@ $(function() { codefold.init(0); });
+ diff --git a/annotated.html b/annotated.html index 23a0ddc5c..56078b165 100644 --- a/annotated.html +++ b/annotated.html @@ -3,13 +3,15 @@ - + stdex: Class List + + @@ -32,24 +34,35 @@ - + + +
+
+
diff --git a/base64_8hpp_source.html b/base64_8hpp_source.html index 3cd0cb928..0a70b569c 100644 --- a/base64_8hpp_source.html +++ b/base64_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/base64.hpp Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
base64.hpp
@@ -467,7 +475,7 @@ $(function() { codefold.init(0); });
416 m_num++;
417 }
418 decode();
-
419 if (m_temp_len < 3 && to_read >= 3) {
+
420 // If Base64 indicates end of data, truncate read to hint the client, end of Base64 data has been reached.
421 memcpy(data, m_temp + m_temp_off, m_temp_len);
422 m_temp_off = 0;
@@ -549,7 +557,8 @@ $(function() { codefold.init(0); });
+ diff --git a/chrono_8hpp_source.html b/chrono_8hpp_source.html index 688b341fd..0f2c94092 100644 --- a/chrono_8hpp_source.html +++ b/chrono_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/chrono.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
chrono.hpp
@@ -469,7 +477,8 @@ $(function() { codefold.init(0); });
+ diff --git a/classes.html b/classes.html index 8f9648a0f..938789ee4 100644 --- a/classes.html +++ b/classes.html @@ -3,13 +3,15 @@ - + stdex: Class Index + + @@ -32,24 +34,35 @@ - + + +
+
+
diff --git a/classstdex_1_1aggregate__progress-members.html b/classstdex_1_1aggregate__progress-members.html index f2119d4fa..dc5ceec76 100644 --- a/classstdex_1_1aggregate__progress-members.html +++ b/classstdex_1_1aggregate__progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::aggregate_progress< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+ diff --git a/classstdex_1_1aggregate__progress.html b/classstdex_1_1aggregate__progress.html index fc6094103..763d43507 100644 --- a/classstdex_1_1aggregate__progress.html +++ b/classstdex_1_1aggregate__progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::aggregate_progress< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Classes | @@ -151,12 +164,12 @@ template<class T >
stdex::aggregate_progress< T >::aggregate_progress ( - size_t num_workers, + size_t num_workers, - progress< T > * host = nullptr ) + progress< T > * host = nullptr ) @@ -227,7 +240,7 @@ template<class T >
progress< T > * stdex::aggregate_progress< T >::detach ( - ) + ) @@ -285,7 +298,8 @@ template<class T >
+ diff --git a/classstdex_1_1aggregate__progress_1_1worker__progress-members.html b/classstdex_1_1aggregate__progress_1_1worker__progress-members.html index e107ffd8c..bd1e280f7 100644 --- a/classstdex_1_1aggregate__progress_1_1worker__progress-members.html +++ b/classstdex_1_1aggregate__progress_1_1worker__progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::aggregate_progress< T >::worker_progress Member List
@@ -96,7 +109,8 @@ $(function() {
+ diff --git a/classstdex_1_1aggregate__progress_1_1worker__progress.html b/classstdex_1_1aggregate__progress_1_1worker__progress.html index 65124dbda..b6b775c7a 100644 --- a/classstdex_1_1aggregate__progress_1_1worker__progress.html +++ b/classstdex_1_1aggregate__progress_1_1worker__progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::aggregate_progress< T >::worker_progress Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -152,7 +165,7 @@ template<class T >
virtual bool stdex::aggregate_progress< T >::worker_progress::cancel ( - ) + ) @@ -220,7 +233,7 @@ template<class T >
virtual void stdex::aggregate_progress< T >::worker_progress::set_range ( - T start, + T start, @@ -299,7 +312,7 @@ template<class T >
virtual void stdex::aggregate_progress< T >::worker_progress::show ( - bool show = true) + bool show = true) @@ -328,7 +341,8 @@ template<class T > + diff --git a/classstdex_1_1base64__dec-members.html b/classstdex_1_1base64__dec-members.html index d77aad3a8..073dafe62 100644 --- a/classstdex_1_1base64__dec-members.html +++ b/classstdex_1_1base64__dec-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::base64_dec Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1base64__dec.html b/classstdex_1_1base64__dec.html index 0ebc07299..ad2add847 100644 --- a/classstdex_1_1base64__dec.html +++ b/classstdex_1_1base64__dec.html @@ -3,13 +3,15 @@ - + stdex: stdex::base64_dec Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -187,17 +200,17 @@ template<class T_to , class AX , class T_from >
void stdex::base64_dec::decode ( - std::vector< T_to, AX > & out, + std::vector< T_to, AX > & out, - bool & is_last, + bool & is_last, - const T_from * data, + const T_from * data, @@ -231,7 +244,8 @@ template<class T_to , class AX , class T_from >
+ diff --git a/classstdex_1_1base64__enc-members.html b/classstdex_1_1base64__enc-members.html index 4353e0305..ad935721c 100644 --- a/classstdex_1_1base64__enc-members.html +++ b/classstdex_1_1base64__enc-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::base64_enc Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1base64__enc.html b/classstdex_1_1base64__enc.html index 9a2f19fcc..c8a2cbd2a 100644 --- a/classstdex_1_1base64__enc.html +++ b/classstdex_1_1base64__enc.html @@ -3,13 +3,15 @@ - + stdex: stdex::base64_enc Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -192,22 +205,22 @@ template<class T , class TR , class AX >
void stdex::base64_enc::encode ( - std::basic_string< T, TR, AX > & out, + std::basic_string< T, TR, AX > & out, - const void * data, + const void * data, - size_t size, + size_t size, - bool is_last = true ) + bool is_last = true ) @@ -236,7 +249,8 @@ template<class T , class TR , class AX >
+ diff --git a/classstdex_1_1base64__reader-members.html b/classstdex_1_1base64__reader-members.html index 3408eed42..5b26db7e9 100644 --- a/classstdex_1_1base64__reader-members.html +++ b/classstdex_1_1base64__reader-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::base64_reader Member List
@@ -163,7 +176,8 @@ $(function() {
+ diff --git a/classstdex_1_1base64__reader.html b/classstdex_1_1base64__reader.html index 2e82d755f..5000cfb3c 100644 --- a/classstdex_1_1base64__reader.html +++ b/classstdex_1_1base64__reader.html @@ -3,13 +3,15 @@ - + stdex: stdex::base64_reader Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -399,7 +412,7 @@ size_t m_num virtual size_t stdex::base64_reader::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -434,7 +447,8 @@ size_t m_num
+
diff --git a/classstdex_1_1base64__writer-members.html b/classstdex_1_1base64__writer-members.html index 7f7c220a4..46f50a99b 100644 --- a/classstdex_1_1base64__writer-members.html +++ b/classstdex_1_1base64__writer-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::base64_writer Member List
@@ -165,7 +178,8 @@ $(function() {
+ diff --git a/classstdex_1_1base64__writer.html b/classstdex_1_1base64__writer.html index 9751f9365..d54f84dcc 100644 --- a/classstdex_1_1base64__writer.html +++ b/classstdex_1_1base64__writer.html @@ -3,13 +3,15 @@ - + stdex: stdex::base64_writer Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -406,7 +419,7 @@ size_t m_num virtual size_t stdex::base64_writer::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -441,7 +454,8 @@ size_t m_num
+
diff --git a/classstdex_1_1basic__hash-members.html b/classstdex_1_1basic__hash-members.html index d3e79065e..b6a2d7778 100644 --- a/classstdex_1_1basic__hash-members.html +++ b/classstdex_1_1basic__hash-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::basic_hash< T > Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1basic__hash.html b/classstdex_1_1basic__hash.html index 3160c5263..0fd6d4a06 100644 --- a/classstdex_1_1basic__hash.html +++ b/classstdex_1_1basic__hash.html @@ -3,13 +3,15 @@ - + stdex: stdex::basic_hash< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,11 +108,7 @@ Inheritance diagram for stdex::basic_hash< T >:
-stdex::block_hash< md5_t > -stdex::block_hash< sha1_t > -stdex::block_hash< T > -stdex::md5_hash -stdex::sha1_hash +stdex::block_hash< T >
@@ -154,7 +163,7 @@ template<class T > - +
virtual void stdex::basic_hash< T >::clear ())
@@ -185,7 +194,7 @@ template<class T >
virtual void stdex::basic_hash< T >::finalize ( - ) + ) @@ -216,7 +225,7 @@ template<class T > virtual void stdex::basic_hash< T >::hash ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -250,7 +259,8 @@ template<class T > + diff --git a/classstdex_1_1basic__hash.png b/classstdex_1_1basic__hash.png index 09f2a38351e6c60730728342033a217410b6d1be..04b6ff7249d1a9ecd85e67f3d2585d707629fa8a 100644 GIT binary patch delta 611 zcmV-p0-XJ(4wMBUiBL{Q4GJ0x0000DNk~Le0001v0000`2m=5B0QeWZWsxC1e*zy# zL_t(|0qvdPj^iKtjNK&K?r<78be-QwDLJt5~ zM{D6c9!v48g|pGD#IqPq-Yfu!l{f$pDRBTGQsMwWq{IP$NQnagkrD?0A|(z0L`ob0 zh?F=05Gip0AX4H0K&1Z^r`B3OphvB>{$8jgxr!2pBqJpbNk$rQihGc>7EL^M)>7x1QMf9U>h7jFL7#4&k1jyN0CBaDw^x1Vte*{y9*NN0B79wv1U zy5?(iBaU%eoMDfn4lcn3$A|QFHe!;?SLdAYhh?{Ft@f`tcKP(chS5H>tvubztP646 zVfo@lm3~*9LUub-_*M>k$F=gLcRJhM-f3l>->f5Rc(X1gd`-14Ir9NGFFHwnT_3}V x{?C%+edSLmNk&Q>l8lr%BpGSLskPQ+^aoSLc40VL$3Fl7002ovPDHLkV1g`m6ea)w literal 1830 zcmb7FYfuwc6y89MuTZc?*rEj=0gQl(8`+YlZshP9$lspiMUirju7X0&G00VnljcZ<5G$x1(TP=9aY2k>|C_tTzT4QLeY zeo}Q@`S{5r6NfbM+PkS;q+*)7g+&r%%Fxu>u_DZ6M76m9Vr)jKE`=F>uO`~vq_bRYl^E$cRJCpv_fDKuzKUm+%^ z4{te!7HK2G-p61Od3l?zX3;Vf0mQ3PI@<-ZKjn!?H)0j^5&Tw;4>^tCioi^c<697f z0%Mem5`=#Oy0pWd_ zVdtQ+vPGV%0jC)2_Q#F)MMl4rETiC}q*a|A&n(BijuxOp^& zT?dc7SpNJx?BC(m?d6*=)P8O?-Jr1cyCiU#dx8j9drXf_gq3Ff{~g_w<{>NJEo0ex#z}b0Y4j z`qwR|4XHxgJ1H+e>J(}x%+87_;}Q~m;`C$;BF{gVT=KEQo2s9eoCqDtn)~L~@b#uU zQ&+N0neqssfu;Ll3D2SLX-Q_5gh#4oRLb(p7%8Tf;LE?Pw-?6kdgLGp9ZtH?Kdj56 zCqH2&A-Ch4YM|_@wx6VjtjoPtKy%8onH`h?f3_@NgA}q;$WKItT|UxY-O$R*+YJo( z+w#C~sI+mLQc&7?#w&tKC|YalBSo8lP((yQ4vYfpx4^tIm9S{l)hz6aty~t-s$r0A znJoS|(p@RGj|6A?S*~03jb}_JaL?SlHcF>^mIH|`g_tz7l|cSU>f!@y0o3XH&dNWO z=06X>TS@vq8`GT8PHxNPupIY|p^2@4I>3II*#U;&pjaWQTdBy|{Iqu_rbX0((e2WV zD*p?mjN`@m2XjMoIyg7I`nD`(CaTBQheIocncYfvxZh(p4oYfv-Cda#UgbP6y=nX7 z5!0KNaq8BA&oyz~@hOfv!jMyZy1`=rZ1NGTR!aJ&H6kjc4te|;6xH)Gd)xf7-lU-0 z@z*4TPeyrE=lx6PQgwD+`c%+M^qP`h?wU>({MxH4>a`n9{QATOwUE1VApAfyGRf{q zQDpZ+d-U~{$o&^_WTim<33Q1URidh#LQEL#YK>wcX l4WV*a`)%kF`$+t>WwMK7u#s}}0s2P+Ain_L(k+oE{{r - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::basic_sys_object< T, TR > Member List
@@ -95,7 +108,8 @@ $(function() {
+ diff --git a/classstdex_1_1basic__sys__object.html b/classstdex_1_1basic__sys__object.html index 76cfd83eb..4f837c077 100644 --- a/classstdex_1_1basic__sys__object.html +++ b/classstdex_1_1basic__sys__object.html @@ -3,13 +3,15 @@ - + stdex: stdex::basic_sys_object< T, TR > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -152,7 +165,7 @@ template<class T = sys_handle, class TR = sys_object_traits>
virtual void stdex::basic_sys_object< T, TR >::close ( - ) + ) @@ -175,7 +188,8 @@ template<class T = sys_handle, class TR = sys_object_traits>
+ diff --git a/classstdex_1_1benchmark-members.html b/classstdex_1_1benchmark-members.html index 34a4bf996..d91e98775 100644 --- a/classstdex_1_1benchmark-members.html +++ b/classstdex_1_1benchmark-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::benchmark Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1benchmark.html b/classstdex_1_1benchmark.html index 30dcb7ff8..165772e7e 100644 --- a/classstdex_1_1benchmark.html +++ b/classstdex_1_1benchmark.html @@ -3,13 +3,15 @@ - + stdex: stdex::benchmark Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -150,7 +163,8 @@ std::chrono::time_point< std::chrono::high_resolution_clock >  +
diff --git a/classstdex_1_1block__hash-members.html b/classstdex_1_1block__hash-members.html index 05a6cc56e..f8d7c318b 100644 --- a/classstdex_1_1block__hash-members.html +++ b/classstdex_1_1block__hash-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::block_hash< T > Member List
@@ -97,7 +110,8 @@ $(function() {
+ diff --git a/classstdex_1_1block__hash.html b/classstdex_1_1block__hash.html index 173a669dd..8d9970d7d 100644 --- a/classstdex_1_1block__hash.html +++ b/classstdex_1_1block__hash.html @@ -3,13 +3,15 @@ - + stdex: stdex::block_hash< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -173,7 +186,7 @@ template<class T >
virtual void stdex::block_hash< T >::clear ( - ) + ) @@ -206,7 +219,7 @@ template<class T >
virtual void stdex::block_hash< T >::hash ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -240,7 +253,8 @@ template<class T >
+ diff --git a/classstdex_1_1charset__encoder-members.html b/classstdex_1_1charset__encoder-members.html index c11dac2fd..32f4f0bd1 100644 --- a/classstdex_1_1charset__encoder-members.html +++ b/classstdex_1_1charset__encoder-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::charset_encoder< T_from, T_to > Member List
@@ -104,7 +117,8 @@ $(function() {
+ diff --git a/classstdex_1_1charset__encoder.html b/classstdex_1_1charset__encoder.html index fbea00fe7..723f2180e 100644 --- a/classstdex_1_1charset__encoder.html +++ b/classstdex_1_1charset__encoder.html @@ -3,13 +3,15 @@ - + stdex: stdex::charset_encoder< T_from, T_to > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -186,7 +199,7 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all std::basic_string< T_to, TR_to, AX_to > stdex::charset_encoder< T_from, T_to >::convert ( - _In_reads_or_z_opt_(count_src) const T_from * src, + _In_reads_or_z_opt_(count_src) const T_from * src, @@ -302,12 +315,12 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcat ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, - _In_reads_or_z_opt_(count_src) const T_from * src, + _In_reads_or_z_opt_(count_src) const T_from * src, @@ -350,7 +363,7 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcat ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, @@ -392,7 +405,7 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcat ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, @@ -434,12 +447,12 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcpy ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, - _In_reads_or_z_opt_(count_src) const T_from * src, + _In_reads_or_z_opt_(count_src) const T_from * src, @@ -482,7 +495,7 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcpy ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, @@ -524,7 +537,7 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all void stdex::charset_encoder< T_from, T_to >::strcpy ( - std::basic_string< T_to, TR_to, AX_to > & dst, + std::basic_string< T_to, TR_to, AX_to > & dst, @@ -556,7 +569,8 @@ template<class TR_to = std::char_traits<T_to>, class AX_to = std::all
+
diff --git a/classstdex_1_1crc32__hash-members.html b/classstdex_1_1crc32__hash-members.html index 58016370f..49611348c 100644 --- a/classstdex_1_1crc32__hash-members.html +++ b/classstdex_1_1crc32__hash-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::crc32_hash Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1crc32__hash.html b/classstdex_1_1crc32__hash.html index 999c486c9..c2870cbdd 100644 --- a/classstdex_1_1crc32__hash.html +++ b/classstdex_1_1crc32__hash.html @@ -3,13 +3,15 @@ - + stdex: stdex::crc32_hash Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -148,7 +161,7 @@ crc32_t m_value virtual void stdex::crc32_hash::clear ( - ) + ) @@ -177,7 +190,7 @@ crc32_t m_value virtual void stdex::crc32_hash::finalize ( - ) + ) @@ -206,7 +219,7 @@ crc32_t m_value virtual void stdex::crc32_hash::hash ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -240,7 +253,8 @@ crc32_t m_value +
diff --git a/classstdex_1_1global__progress-members.html b/classstdex_1_1global__progress-members.html index b0a040a41..e0546ef83 100644 --- a/classstdex_1_1global__progress-members.html +++ b/classstdex_1_1global__progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::global_progress< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+ diff --git a/classstdex_1_1global__progress.html b/classstdex_1_1global__progress.html index e1b489595..a4805deaa 100644 --- a/classstdex_1_1global__progress.html +++ b/classstdex_1_1global__progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::global_progress< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -166,7 +179,7 @@ template<class T >
stdex::global_progress< T >::global_progress ( - progress< T > * host = nullptr) + progress< T > * host = nullptr) @@ -237,7 +250,7 @@ template<class T >
virtual bool stdex::global_progress< T >::cancel ( - ) + ) @@ -268,7 +281,7 @@ template<class T >
progress< T > * stdex::global_progress< T >::detach ( - ) + ) @@ -335,7 +348,7 @@ template<class T > void stdex::global_progress< T >::set_global_range ( - T start, + T start, @@ -375,7 +388,7 @@ template<class T > virtual void stdex::global_progress< T >::set_range ( - T start, + T start, @@ -417,7 +430,7 @@ template<class T > void stdex::global_progress< T >::set_section_range ( - T start, + T start, @@ -494,7 +507,7 @@ template<class T > virtual void stdex::global_progress< T >::show ( - bool show = true) + bool show = true) @@ -523,7 +536,8 @@ template<class T > + diff --git a/classstdex_1_1hex__dec-members.html b/classstdex_1_1hex__dec-members.html index ecf1d6676..88aa918bc 100644 --- a/classstdex_1_1hex__dec-members.html +++ b/classstdex_1_1hex__dec-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::hex_dec Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1hex__dec.html b/classstdex_1_1hex__dec.html index b300b0428..402317458 100644 --- a/classstdex_1_1hex__dec.html +++ b/classstdex_1_1hex__dec.html @@ -3,13 +3,15 @@ - + stdex: stdex::hex_dec Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -169,17 +182,17 @@ template<class T_to , class AX , class T_from >
void stdex::hex_dec::decode ( - std::vector< T_to, AX > & out, + std::vector< T_to, AX > & out, - bool & is_last, + bool & is_last, - const T_from * data, + const T_from * data, @@ -213,7 +226,8 @@ template<class T_to , class AX , class T_from >
+ diff --git a/classstdex_1_1hex__enc-members.html b/classstdex_1_1hex__enc-members.html index eb8c430f8..4fe129f23 100644 --- a/classstdex_1_1hex__enc-members.html +++ b/classstdex_1_1hex__enc-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::hex_enc Member List
@@ -88,7 +101,8 @@ $(function() {
+ diff --git a/classstdex_1_1hex__enc.html b/classstdex_1_1hex__enc.html index 27a27d61b..370852cb8 100644 --- a/classstdex_1_1hex__enc.html +++ b/classstdex_1_1hex__enc.html @@ -3,13 +3,15 @@ - + stdex: stdex::hex_enc Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -153,12 +166,12 @@ template<class T , class TR , class AX >
void stdex::hex_enc::encode ( - std::basic_string< T, TR, AX > & out, + std::basic_string< T, TR, AX > & out, - const void * data, + const void * data, @@ -191,7 +204,8 @@ template<class T , class TR , class AX >
+ diff --git a/classstdex_1_1html_1_1comment-members.html b/classstdex_1_1html_1_1comment-members.html index 8a92ce863..d74eea99c 100644 --- a/classstdex_1_1html_1_1comment-members.html +++ b/classstdex_1_1html_1_1comment-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::html::comment Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1comment.html b/classstdex_1_1html_1_1comment.html index bbc127318..278f076b9 100644 --- a/classstdex_1_1html_1_1comment.html +++ b/classstdex_1_1html_1_1comment.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::comment Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -137,7 +150,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1declaration-members.html b/classstdex_1_1html_1_1declaration-members.html index 3b91da76f..ebc4fe91d 100644 --- a/classstdex_1_1html_1_1declaration-members.html +++ b/classstdex_1_1html_1_1declaration-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::declaration Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1declaration.html b/classstdex_1_1html_1_1declaration.html index 65700b234..54225c5b5 100644 --- a/classstdex_1_1html_1_1declaration.html +++ b/classstdex_1_1html_1_1declaration.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::declaration Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -141,7 +154,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1document-members.html b/classstdex_1_1html_1_1document-members.html index 9e43a6bf0..a623a299c 100644 --- a/classstdex_1_1html_1_1document-members.html +++ b/classstdex_1_1html_1_1document-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::document< T, TR, AX > Member List
@@ -109,7 +122,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1document.html b/classstdex_1_1html_1_1document.html index 0baab3dad..eea0e8717 100644 --- a/classstdex_1_1html_1_1document.html +++ b/classstdex_1_1html_1_1document.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::document< T, TR, AX > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -199,7 +212,8 @@ class stdex::html::document< T, TR, AX >

HTML document.

+
diff --git a/classstdex_1_1html_1_1element-members.html b/classstdex_1_1html_1_1element-members.html index 26f7378b0..bd249850f 100644 --- a/classstdex_1_1html_1_1element-members.html +++ b/classstdex_1_1html_1_1element-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::html::element Member List
@@ -95,7 +108,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1element.html b/classstdex_1_1html_1_1element.html index d2d04c581..503b66e56 100644 --- a/classstdex_1_1html_1_1element.html +++ b/classstdex_1_1html_1_1element.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::element Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -154,7 +167,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1element__end-members.html b/classstdex_1_1html_1_1element__end-members.html index 04ad0e352..ae310e244 100644 --- a/classstdex_1_1html_1_1element__end-members.html +++ b/classstdex_1_1html_1_1element__end-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::element_end Member List
@@ -94,7 +107,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1element__end.html b/classstdex_1_1html_1_1element__end.html index 5153773e5..3a2aed52d 100644 --- a/classstdex_1_1html_1_1element__end.html +++ b/classstdex_1_1html_1_1element__end.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::element_end Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -145,7 +158,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1element__start-members.html b/classstdex_1_1html_1_1element__start-members.html index cea52a95b..7287fc8af 100644 --- a/classstdex_1_1html_1_1element__start-members.html +++ b/classstdex_1_1html_1_1element__start-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::element_start Member List
@@ -97,7 +110,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1element__start.html b/classstdex_1_1html_1_1element__start.html index 8c368dc74..3053d439e 100644 --- a/classstdex_1_1html_1_1element__start.html +++ b/classstdex_1_1html_1_1element__start.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::element_start Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -164,7 +177,8 @@ template<class T >
+
diff --git a/classstdex_1_1html_1_1instruction-members.html b/classstdex_1_1html_1_1instruction-members.html index 34c3f50cd..a0d6cb2e5 100644 --- a/classstdex_1_1html_1_1instruction-members.html +++ b/classstdex_1_1html_1_1instruction-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::html::instruction Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1instruction.html b/classstdex_1_1html_1_1instruction.html index 468aed578..2c64ba097 100644 --- a/classstdex_1_1html_1_1instruction.html +++ b/classstdex_1_1html_1_1instruction.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::instruction Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -137,7 +150,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1parser-members.html b/classstdex_1_1html_1_1parser-members.html index 3cbb086ee..7c53f3169 100644 --- a/classstdex_1_1html_1_1parser-members.html +++ b/classstdex_1_1html_1_1parser-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::parser< T, TR, AX > Member List
@@ -112,7 +125,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1parser.html b/classstdex_1_1html_1_1parser.html index a36279140..30760c503 100644 --- a/classstdex_1_1html_1_1parser.html +++ b/classstdex_1_1html_1_1parser.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::parser< T, TR, AX > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -213,22 +226,22 @@ template<class T , class TR , class AX >
void stdex::html::parser< T, TR, AX >::append_inserted_tokens ( - std::basic_string< T, TR, AX > & source, + std::basic_string< T, TR, AX > & source, - inserted_token_list & inserted_tokens, + inserted_token_list & inserted_tokens, - size_t word_index, + size_t word_index, - bool after_word, + bool after_word, @@ -311,7 +324,7 @@ template<class T_token >
size_t stdex::html::parser< T, TR, AX >::append_token ( - std::unique_ptr< T_token > && token, + std::unique_ptr< T_token > && token, @@ -352,12 +365,12 @@ template<class T , class TR , class AX >
token_list::const_iterator stdex::html::parser< T, TR, AX >::end_tokens ( - std::basic_string< T, TR, AX > & source, + std::basic_string< T, TR, AX > & source, - token_list & active_tokens, + token_list & active_tokens, @@ -399,7 +412,7 @@ template<class T , class TR , class AX > static void stdex::html::parser< T, TR, AX >::link ( - std::basic_string< T, TR, AX > & source, + std::basic_string< T, TR, AX > & source, @@ -439,7 +452,7 @@ template<class T , class TR , class AX > static void stdex::html::parser< T, TR, AX >::merge ( - token_list & a, + token_list & a, @@ -479,12 +492,12 @@ template<class T , class TR , class AX > text_token< T, TR, AX > * stdex::html::parser< T, TR, AX >::parse ( - const sequence_store::const_iterator & end, + const sequence_store::const_iterator & end, - uint32_t text_type = 0 ) + uint32_t text_type = 0 ) @@ -520,17 +533,17 @@ template<class T , class TR , class AX > static void stdex::html::parser< T, TR, AX >::start_tokens ( - std::basic_string< T, TR, AX > & source, + std::basic_string< T, TR, AX > & source, - token_list & active_tokens, + token_list & active_tokens, - const token_list & new_tokens, + const token_list & new_tokens, @@ -564,7 +577,8 @@ template<class T , class TR , class AX > + diff --git a/classstdex_1_1html_1_1sequence-members.html b/classstdex_1_1html_1_1sequence-members.html index 3be946aa5..d1910217e 100644 --- a/classstdex_1_1html_1_1sequence-members.html +++ b/classstdex_1_1html_1_1sequence-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::html::sequence Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1sequence.html b/classstdex_1_1html_1_1sequence.html index 7baba2ae0..db3d22271 100644 --- a/classstdex_1_1html_1_1sequence.html +++ b/classstdex_1_1html_1_1sequence.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::sequence Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -132,7 +145,8 @@ stdex::parser::html_sequence_t  +
diff --git a/classstdex_1_1html_1_1starting__token-members.html b/classstdex_1_1html_1_1starting__token-members.html index b570f04d2..63958b675 100644 --- a/classstdex_1_1html_1_1starting__token-members.html +++ b/classstdex_1_1html_1_1starting__token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::html::starting_token< T, TR, AX > Member List
@@ -101,7 +114,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1starting__token.html b/classstdex_1_1html_1_1starting__token.html index ceaaa2b8e..a08d23aef 100644 --- a/classstdex_1_1html_1_1starting__token.html +++ b/classstdex_1_1html_1_1starting__token.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::starting_token< T, TR, AX > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Attributes | @@ -183,7 +196,8 @@ class stdex::html::starting_token< T, TR, AX >

Token representing

+
diff --git a/classstdex_1_1html_1_1text__token-members.html b/classstdex_1_1html_1_1text__token-members.html index 7b08496c9..4eaba258d 100644 --- a/classstdex_1_1html_1_1text__token-members.html +++ b/classstdex_1_1html_1_1text__token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::html::text_token< T, TR, AX > Member List
@@ -98,7 +111,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1text__token.html b/classstdex_1_1html_1_1text__token.html index 0816fc5e3..a6b17181a 100644 --- a/classstdex_1_1html_1_1text__token.html +++ b/classstdex_1_1html_1_1text__token.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::text_token< T, TR, AX > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Attributes | @@ -170,7 +183,8 @@ class stdex::html::text_token< T, TR, AX >

Token representing part

+
diff --git a/classstdex_1_1html_1_1token-members.html b/classstdex_1_1html_1_1token-members.html index 7083fc937..f1d08b2fc 100644 --- a/classstdex_1_1html_1_1token-members.html +++ b/classstdex_1_1html_1_1token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::html::token Member List
@@ -94,7 +107,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1token.html b/classstdex_1_1html_1_1token.html index 730d18936..abf6879f0 100644 --- a/classstdex_1_1html_1_1token.html +++ b/classstdex_1_1html_1_1token.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::token Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -231,7 +244,8 @@ template<class TR = std::char_traits<wchar_t>, class AX = std::alloca
+
diff --git a/classstdex_1_1html_1_1url__token-members.html b/classstdex_1_1html_1_1url__token-members.html index 105cbcb0a..6ed9f2b09 100644 --- a/classstdex_1_1html_1_1url__token-members.html +++ b/classstdex_1_1html_1_1url__token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::html::url_token< T, TR, AX > Member List
@@ -97,7 +110,8 @@ $(function() {
+ diff --git a/classstdex_1_1html_1_1url__token.html b/classstdex_1_1html_1_1url__token.html index db39d7ba3..a033a8de6 100644 --- a/classstdex_1_1html_1_1url__token.html +++ b/classstdex_1_1html_1_1url__token.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::url_token< T, TR, AX > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Attributes | @@ -165,7 +178,8 @@ class stdex::html::url_token< T, TR, AX >

HTTP token representing

+
diff --git a/classstdex_1_1idrec_1_1record-members.html b/classstdex_1_1idrec_1_1record-members.html index 59db96bd2..7fe808576 100644 --- a/classstdex_1_1idrec_1_1record-members.html +++ b/classstdex_1_1idrec_1_1record-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::idrec::record< T, T_id, ID, T_size, N_align > Member List
@@ -90,19 +103,20 @@ $(function() { id()stdex::idrec::record< T, T_id, ID, T_size, N_align >inlinestatic open(std::ostream &stream)stdex::idrec::record< T, T_id, ID, T_size, N_align >inlinestatic open(stdex::stream::basic_file &stream)stdex::idrec::record< T, T_id, ID, T_size, N_align >inlinestatic - operator<<stdex::idrec::record< T, T_id, ID, T_size, N_align >friend - operator<<stdex::idrec::record< T, T_id, ID, T_size, N_align >friend - operator<<stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator<<(std::ostream &stream, const record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator<<(stdex::stream::basic_file &stream, const record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator<<(stdex::stream::basic &stream, const record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend operator=(const record< T, T_id, ID, T_size, N_align > &r)stdex::idrec::record< T, T_id, ID, T_size, N_align >inline - operator>>stdex::idrec::record< T, T_id, ID, T_size, N_align >friend - operator>>stdex::idrec::record< T, T_id, ID, T_size, N_align >friend - operator>>stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator>>(std::istream &stream, record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator>>(stdex::stream::basic_file &stream, record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend + operator>>(stdex::stream::basic &stream, record< T, T_id, ID, T_size, N_align > r)stdex::idrec::record< T, T_id, ID, T_size, N_align >friend record(T &d)stdex::idrec::record< T, T_id, ID, T_size, N_align >inline record(const T &d)stdex::idrec::record< T, T_id, ID, T_size, N_align >inline
+ diff --git a/classstdex_1_1idrec_1_1record.html b/classstdex_1_1idrec_1_1record.html index 9b5bedfe8..e359749cc 100644 --- a/classstdex_1_1idrec_1_1record.html +++ b/classstdex_1_1idrec_1_1record.html @@ -3,13 +3,15 @@ - + stdex: stdex::idrec::record< T, T_id, ID, T_size, N_align > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -245,7 +258,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& static std::streamoff stdex::idrec::record< T, T_id, ID, T_size, N_align >::close ( - std::ostream & stream, + std::ostream & stream, @@ -286,7 +299,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& static stdex::stream::fpos_t stdex::idrec::record< T, T_id, ID, T_size, N_align >::close ( - stdex::stream::basic_file & stream, + stdex::stream::basic_file & stream, @@ -327,12 +340,12 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& static bool stdex::idrec::record< T, T_id, ID, T_size, N_align >::find ( - std::istream & stream, + std::istream & stream, - std::streamoff end = (std::streamoff)-1 ) + std::streamoff end = (std::streamoff)-1 ) @@ -372,12 +385,12 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& static bool stdex::idrec::record< T, T_id, ID, T_size, N_align >::find ( - stdex::stream::basic_file & stream, + stdex::stream::basic_file & stream, - stdex::stream::fpos_t end = stdex::stream::fpos_max ) + stdex::stream::fpos_t end = stdex::stream::fpos_max ) @@ -526,7 +539,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& std::ostream & operator<< ( - std::ostream & stream, + std::ostream & stream, @@ -567,7 +580,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& stdex::stream::basic & operator<< ( - stdex::stream::basic & stream, + stdex::stream::basic & stream, @@ -608,7 +621,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& stdex::stream::basic_file & operator<< ( - stdex::stream::basic_file & stream, + stdex::stream::basic_file & stream, @@ -649,7 +662,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& std::istream & operator>> ( - std::istream & stream, + std::istream & stream, @@ -690,7 +703,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& stdex::stream::basic & operator>> ( - stdex::stream::basic & stream, + stdex::stream::basic & stream, @@ -731,7 +744,7 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align& stdex::stream::basic_file & operator>> ( - stdex::stream::basic_file & stream, + stdex::stream::basic_file & stream, @@ -764,7 +777,8 @@ template<class T , class T_id , const T_id ID, class T_size , T_size N_align&
+
diff --git a/classstdex_1_1lazy__progress-members.html b/classstdex_1_1lazy__progress-members.html index 75b31b418..712ef061f 100644 --- a/classstdex_1_1lazy__progress-members.html +++ b/classstdex_1_1lazy__progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::lazy_progress< T > Member List
@@ -98,7 +111,8 @@ $(function() {
+ diff --git a/classstdex_1_1lazy__progress.html b/classstdex_1_1lazy__progress.html index 7b7d73ca5..04d403d58 100644 --- a/classstdex_1_1lazy__progress.html +++ b/classstdex_1_1lazy__progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::lazy_progress< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -165,7 +178,7 @@ template<class T >
stdex::lazy_progress< T >::lazy_progress ( - const std::chrono::nanoseconds & timeout = std::chrono::milliseconds(500)) + const std::chrono::nanoseconds & timeout = std::chrono::milliseconds(500)) @@ -238,7 +251,7 @@ template<class T >
virtual void stdex::lazy_progress< T >::set_range ( - T start, + T start, @@ -272,7 +285,8 @@ template<class T >
+ diff --git a/classstdex_1_1locale-members.html b/classstdex_1_1locale-members.html index 4909469c1..8e11d7497 100644 --- a/classstdex_1_1locale-members.html +++ b/classstdex_1_1locale-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::locale Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1locale.html b/classstdex_1_1locale.html index dba05717d..aa4ae184e 100644 --- a/classstdex_1_1locale.html +++ b/classstdex_1_1locale.html @@ -3,13 +3,15 @@ - + stdex: stdex::locale Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -114,7 +127,8 @@ Public Member Functions
+
diff --git a/classstdex_1_1md5__hash-members.html b/classstdex_1_1md5__hash-members.html index 0affdb836..9cb6045a7 100644 --- a/classstdex_1_1md5__hash-members.html +++ b/classstdex_1_1md5__hash-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::md5_hash Member List
@@ -83,20 +96,19 @@ $(function() {

This is the complete list of members for stdex::md5_hash, including all inherited members.

- + - - - - - + + +
clear()stdex::md5_hashinlinevirtual
data()stdex::basic_hash< T >inline
data()stdex::basic_hash< md5_t >inline
finalize()stdex::md5_hashinlinevirtual
hash(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::block_hash< md5_t >inlinevirtual
hash_block() (defined in stdex::md5_hash)stdex::md5_hashinlineprotectedvirtual
m_state (defined in stdex::md5_hash)stdex::md5_hashprotected
m_value (defined in stdex::basic_hash< T >)stdex::basic_hash< T >protected
md5_hash() (defined in stdex::md5_hash)stdex::md5_hashinline
operator const T &() conststdex::basic_hash< T >inline
size()stdex::basic_hash< T >inlinestatic
~basic_hash() (defined in stdex::basic_hash< T >)stdex::basic_hash< T >inlinevirtual
md5_hash() (defined in stdex::md5_hash)stdex::md5_hashinline
operator const md5_t &() conststdex::basic_hash< md5_t >inline
size()stdex::basic_hash< md5_t >inlinestatic
+ diff --git a/classstdex_1_1md5__hash.html b/classstdex_1_1md5__hash.html index 17c4df713..78139e092 100644 --- a/classstdex_1_1md5__hash.html +++ b/classstdex_1_1md5__hash.html @@ -3,13 +3,15 @@ - + stdex: stdex::md5_hash Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -96,7 +109,7 @@ Inheritance diagram for stdex::md5_hash:
stdex::block_hash< md5_t > -stdex::basic_hash< T > +stdex::basic_hash< md5_t >
@@ -109,16 +122,16 @@ Public Member Functions - + - + +const md5_t &  + 
 Finalizes hash value.
 
- Public Member Functions inherited from stdex::block_hash< md5_t >
virtual void hash (_In_reads_bytes_opt_(length) const void *data, size_t length)
virtual void hash (_In_reads_bytes_opt_(length) const void *data, size_t length)
 Hashes block of data.
 
- Public Member Functions inherited from stdex::basic_hash< T >
- Public Member Functions inherited from stdex::basic_hash< md5_t >
-const T & data ()
data ()
 Returns hash value.
 
operator const T & () const
operator const md5_t & () const
 Returns hash value.
 
@@ -147,14 +160,14 @@ union {  - + +md5_t 
 
};  
 
- Protected Attributes inherited from stdex::basic_hash< T >
- Protected Attributes inherited from stdex::basic_hash< md5_t >
-T m_value
m_value
 
- + @@ -182,7 +195,7 @@ uint32_t  - +

Additional Inherited Members

- Static Public Member Functions inherited from stdex::basic_hash< T >
- Static Public Member Functions inherited from stdex::basic_hash< md5_t >
static size_t size ()
 Returns size of the hash value in bytes.
m_temp [16] virtual void stdex::md5_hash::clear ())
@@ -211,7 +224,7 @@ uint32_t m_temp [16] virtual void stdex::md5_hash::finalize ( - ) + ) @@ -224,7 +237,7 @@ uint32_t m_temp [16]Finalizes hash value.

-

Implements stdex::basic_hash< T >.

+

Implements stdex::basic_hash< md5_t >.

@@ -240,7 +253,7 @@ uint32_t m_temp [16] virtual void stdex::md5_hash::hash_block ( - ) + ) @@ -261,7 +274,8 @@ uint32_t m_temp [16] + diff --git a/classstdex_1_1minisign_1_1line__break-members.html b/classstdex_1_1minisign_1_1line__break-members.html index 5f9f4be31..d40cbe6f6 100644 --- a/classstdex_1_1minisign_1_1line__break-members.html +++ b/classstdex_1_1minisign_1_1line__break-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::minisign::line_break Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1minisign_1_1line__break.html b/classstdex_1_1minisign_1_1line__break.html index de737aa0b..7e3932e25 100644 --- a/classstdex_1_1minisign_1_1line__break.html +++ b/classstdex_1_1minisign_1_1line__break.html @@ -3,13 +3,15 @@ - + stdex: stdex::minisign::line_break Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -106,23 +119,23 @@ Protected Member Functions Additional Inherited Members - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - Public Attributes inherited from stdex::parser::basic_parser< char > -stdex::interval< size_tinterval +stdex::interval< size_t > interval  Region of the last match.
  - Protected Attributes inherited from stdex::parser::basic_parser< char > @@ -145,22 +158,22 @@ std::locale m_locale virtual bool stdex::minisign::line_break::do_match ( - _In_reads_or_z_opt_(end) const char * text, + _In_reads_or_z_opt_(end) const char * text, - size_t start = 0, + size_t start = 0, - size_t end = SIZE_MAX, + size_t end = SIZE_MAX, - int flags = stdex::parser::match_default ) + int flags = stdex::parser::match_default ) @@ -180,7 +193,8 @@ std::locale m_locale +
diff --git a/classstdex_1_1minisign_1_1untrusted__comment-members.html b/classstdex_1_1minisign_1_1untrusted__comment-members.html index c4c75ba58..a6d49fd91 100644 --- a/classstdex_1_1minisign_1_1untrusted__comment-members.html +++ b/classstdex_1_1minisign_1_1untrusted__comment-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::minisign::untrusted_comment Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1minisign_1_1untrusted__comment.html b/classstdex_1_1minisign_1_1untrusted__comment.html index deaadc091..32dd1bfd4 100644 --- a/classstdex_1_1minisign_1_1untrusted__comment.html +++ b/classstdex_1_1minisign_1_1untrusted__comment.html @@ -3,13 +3,15 @@ - + stdex: stdex::minisign::untrusted_comment Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -106,23 +119,23 @@ Protected Member Functions Additional Inherited Members - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - Public Attributes inherited from stdex::parser::basic_parser< char > -stdex::interval< size_tinterval +stdex::interval< size_t > interval  Region of the last match.
  - Protected Attributes inherited from stdex::parser::basic_parser< char > @@ -145,22 +158,22 @@ std::locale m_locale virtual bool stdex::minisign::untrusted_comment::do_match ( - _In_reads_or_z_opt_(end) const char * text, + _In_reads_or_z_opt_(end) const char * text, - size_t start = 0, + size_t start = 0, - size_t end = SIZE_MAX, + size_t end = SIZE_MAX, - int flags = stdex::parser::match_default ) + int flags = stdex::parser::match_default ) @@ -180,7 +193,8 @@ std::locale m_locale +
diff --git a/classstdex_1_1parser_1_1basic__angle-members.html b/classstdex_1_1parser_1_1basic__angle-members.html index 2b5d38111..b46d0d65d 100644 --- a/classstdex_1_1parser_1_1basic__angle-members.html +++ b/classstdex_1_1parser_1_1basic__angle-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_angle< T > Member List
@@ -102,7 +115,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1basic__angle.html b/classstdex_1_1parser_1_1basic__angle.html index 823a02ca4..8ac13825f 100644 --- a/classstdex_1_1parser_1_1basic__angle.html +++ b/classstdex_1_1parser_1_1basic__angle.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_angle< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_angle< T >:

Public Member Functions

basic_angle (const std::shared_ptr< basic_integer10< T > > &_degree, const std::shared_ptr< basic_parser< T > > &_degree_separator, const std::shared_ptr< basic_integer10< T > > &_minute, const std::shared_ptr< basic_parser< T > > &_minute_separator, const std::shared_ptr< basic_integer10< T > > &_second, const std::shared_ptr< basic_parser< T > > &_second_separator, const std::shared_ptr< basic_parser< T > > &_decimal, const std::locale &locale=std::locale()) + basic_angle (const std::shared_ptr< basic_integer10< T > > &_degree, const std::shared_ptr< basic_parser< T > > &_degree_separator, const std::shared_ptr< basic_integer10< T > > &_minute, const std::shared_ptr< basic_parser< T > > &_minute_separator, const std::shared_ptr< basic_integer10< T > > &_second, const std::shared_ptr< basic_parser< T > > &_second_separator, const std::shared_ptr< basic_parser< T > > &_decimal, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -145,13 +158,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -162,7 +175,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_angle< T >

Test for angle in d°mm'ss.dddd form.

Member Function Documentation

@@ -171,30 +184,30 @@ class stdex::parser::basic_angle< T >

Test for angle in d°mm'ss.d

-template<class T >
+template<class T >
@@ -214,15 +227,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_angle< T >::do_match virtual bool stdex::parser::basic_angle< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_angle< T >::invalidate virtual void stdex::parser::basic_angle< T >::invalidate ())
@@ -243,7 +256,8 @@ 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 3a8b15f45..15a729612 100644 --- a/classstdex_1_1parser_1_1basic__any__cu-members.html +++ b/classstdex_1_1parser_1_1basic__any__cu-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_any_cu< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__any__cu.html b/classstdex_1_1parser_1_1basic__any__cu.html index 82effa486..609d0076d 100644 --- a/classstdex_1_1parser_1_1basic__any__cu.html +++ b/classstdex_1_1parser_1_1basic__any__cu.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_any_cu< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_any_cu< T >:

Public Member Functions

basic_any_cu (const std::locale &locale=std::locale()) + basic_any_cu (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_any_cu< T >

Test for any code unit.

Member Function Documentation

@@ -147,30 +160,30 @@ class stdex::parser::basic_any_cu< T >

Test for any code unit.

-template<class T >
+template<class T >
@@ -190,7 +203,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__bol-members.html b/classstdex_1_1parser_1_1basic__bol-members.html index 86c65c7d8..0b259a8a8 100644 --- a/classstdex_1_1parser_1_1basic__bol-members.html +++ b/classstdex_1_1parser_1_1basic__bol-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_any_cu< T >::do_match virtual bool stdex::parser::basic_any_cu< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_bol< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__bol.html b/classstdex_1_1parser_1_1basic__bol.html index 60ca04430..0f6e5c3bb 100644 --- a/classstdex_1_1parser_1_1basic__bol.html +++ b/classstdex_1_1parser_1_1basic__bol.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_bol< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_bol< T >:

Public Member Functions

basic_bol (bool invert=false) + basic_bol (bool invert=false)   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -140,12 +153,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_bol< T >

Test for beginning of line.

Member Function Documentation

@@ -154,30 +167,30 @@ class stdex::parser::basic_bol< T >

Test for beginning of line.

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__branch-members.html b/classstdex_1_1parser_1_1basic__branch-members.html index 6072ce1d0..4a52d9081 100644 --- a/classstdex_1_1parser_1_1basic__branch-members.html +++ b/classstdex_1_1parser_1_1basic__branch-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_bol< T >::do_match virtual bool stdex::parser::basic_bol< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_branch< T > Member List
@@ -102,7 +115,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__branch.html b/classstdex_1_1parser_1_1basic__branch.html index 26a31b0ef..412936396 100644 --- a/classstdex_1_1parser_1_1basic__branch.html +++ b/classstdex_1_1parser_1_1basic__branch.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_branch< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -104,55 +117,55 @@ Inheritance diagram for stdex::parser::basic_branch< T >:

Public Member Functions

basic_branch (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale()) + basic_branch (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale())   basic_branch (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + basic_branch (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::parser_collection< T >parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale()) + parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale())   - parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +size_t  +stdex::interval< size_t > 

Public Attributes

-size_t hit_offset
hit_offset
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+  - + + 

Protected Member Functions

basic_branch (const std::locale &locale)
basic_branch (const std::locale &locale)
 
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::parser_collection< T >
parser_collection (const std::locale &locale)
parser_collection (const std::locale &locale)
 

@@ -167,7 +180,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_branch< T >

Test for any.

Member Function Documentation

@@ -176,30 +189,30 @@ class stdex::parser::basic_branch< T >

Test for any.

-template<class T >
+template<class T >
@@ -219,15 +232,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_branch< T >::do_match virtual bool stdex::parser::basic_branch< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_branch< T >::invalidate virtual void stdex::parser::basic_branch< T >::invalidate ())
@@ -248,7 +261,8 @@ 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 fafdd848c..db1c38fcc 100644 --- a/classstdex_1_1parser_1_1basic__chemical__formula-members.html +++ b/classstdex_1_1parser_1_1basic__chemical__formula-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_chemical_formula< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__chemical__formula.html b/classstdex_1_1parser_1_1basic__chemical__formula.html index 9051361c4..06eec6528 100644 --- a/classstdex_1_1parser_1_1basic__chemical__formula.html +++ b/classstdex_1_1parser_1_1basic__chemical__formula.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_chemical_formula< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,41 +116,41 @@ Inheritance diagram for stdex::parser::basic_chemical_formula< T >:

Public Member Functions

basic_chemical_formula (const std::shared_ptr< basic_parser< T > > &element, const std::shared_ptr< basic_parser< T > > &digit, const std::shared_ptr< basic_parser< T > > &sign, const std::locale &locale=std::locale()) + basic_chemical_formula (const std::shared_ptr< basic_parser< T > > &element, const std::shared_ptr< basic_parser< T > > &digit, const std::shared_ptr< basic_parser< T > > &sign, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +bool  +bool  +stdex::interval< size_t > 

Public Attributes

-bool has_digits
has_digits
 
-bool has_charge
has_charge
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -157,7 +170,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_chemical_formula< T >

Test for chemical formula.

Member Function Documentation

@@ -166,30 +179,30 @@ class stdex::parser::basic_chemical_formula< T >

Test for chemical

-template<class T >
+template<class T >
@@ -209,15 +222,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_chemical_formula< T >::do_match virtual bool stdex::parser::basic_chemical_formula< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_chemical_formula< T >::invalidate virtual void stdex::parser::basic_chemical_formula< T >::invalidate ())
@@ -238,7 +251,8 @@ 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 6f709e728..ff24d3a30 100644 --- a/classstdex_1_1parser_1_1basic__creditor__reference-members.html +++ b/classstdex_1_1parser_1_1basic__creditor__reference-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_creditor_reference< T > Member List
@@ -99,7 +112,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__creditor__reference.html b/classstdex_1_1parser_1_1basic__creditor__reference.html index fe7653a32..c8ab2803f 100644 --- a/classstdex_1_1parser_1_1basic__creditor__reference.html +++ b/classstdex_1_1parser_1_1basic__creditor__reference.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_creditor_reference< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_creditor_reference< T >:

Public Member Functions

basic_creditor_reference (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_creditor_reference (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   < +bool  +stdex::interval< size_t > 

@@ -132,18 +145,18 @@ T 

reference [22]
 Normalized national reference number.
 
-bool is_valid
is_valid
 Is reference valid per ISO 7064.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -157,7 +170,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_creditor_reference< T >

Test for Creditor Reference.

See also
Creditor Reference

Member Function Documentation

@@ -167,30 +180,30 @@ class stdex::parser::basic_creditor_reference< T >

Test for Credit

-template<class T >
+template<class T >
@@ -210,15 +223,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_creditor_reference< T >::do_match virtual bool stdex::parser::basic_creditor_reference< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_creditor_reference< T >::invalidate virtual void stdex::parser::basic_creditor_reference< T >::invalidate ())
@@ -239,7 +252,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__cdc-members.html b/classstdex_1_1parser_1_1basic__css__cdc-members.html index 2bc390160..3092bca8c 100644 --- a/classstdex_1_1parser_1_1basic__css__cdc-members.html +++ b/classstdex_1_1parser_1_1basic__css__cdc-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_css_cdc< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__cdc.html b/classstdex_1_1parser_1_1basic__css__cdc.html index 9be2a9df9..74063eec9 100644 --- a/classstdex_1_1parser_1_1basic__css__cdc.html +++ b/classstdex_1_1parser_1_1basic__css__cdc.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_cdc< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Protected Member Functions | @@ -99,30 +112,30 @@ Inheritance diagram for stdex::parser::basic_css_cdc< T >:
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 
+  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -131,7 +144,7 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_cdc< T >

Legacy CSS comment end -->

Member Function Documentation

@@ -140,30 +153,30 @@ class stdex::parser::basic_css_cdc< T >

Legacy CSS comment end

-template<class T >
+template<class T >
@@ -183,7 +196,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__cdo-members.html b/classstdex_1_1parser_1_1basic__css__cdo-members.html index 2415b0a89..90fccb507 100644 --- a/classstdex_1_1parser_1_1basic__css__cdo-members.html +++ b/classstdex_1_1parser_1_1basic__css__cdo-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_css_cdc< T >::do_match virtual bool stdex::parser::basic_css_cdc< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + + +
+
stdex::parser::basic_css_cdo< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__cdo.html b/classstdex_1_1parser_1_1basic__css__cdo.html index 655037e33..d77a14ade 100644 --- a/classstdex_1_1parser_1_1basic__css__cdo.html +++ b/classstdex_1_1parser_1_1basic__css__cdo.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_cdo< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -99,30 +112,30 @@ Inheritance diagram for stdex::parser::basic_css_cdo< T >:
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 
+  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -131,7 +144,7 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_cdo< T >

Legacy CSS comment start <!--

Member Function Documentation

@@ -140,30 +153,30 @@ class stdex::parser::basic_css_cdo< T >

Legacy CSS comment start <

-template<class T >
+template<class T >
@@ -183,7 +196,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__comment-members.html b/classstdex_1_1parser_1_1basic__css__comment-members.html index 4771847c3..fc993dd4c 100644 --- a/classstdex_1_1parser_1_1basic__css__comment-members.html +++ b/classstdex_1_1parser_1_1basic__css__comment-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_css_cdo< T >::do_match virtual bool stdex::parser::basic_css_cdo< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + + +
+
stdex::parser::basic_css_comment< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__comment.html b/classstdex_1_1parser_1_1basic__css__comment.html index 20a1db376..d48b5f20e 100644 --- a/classstdex_1_1parser_1_1basic__css__comment.html +++ b/classstdex_1_1parser_1_1basic__css__comment.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_comment< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,37 +114,37 @@ Inheritance diagram for stdex::parser::basic_css_comment< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 content position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -142,7 +155,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_comment< T >

CSS comment.

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_css_comment< T >

CSS comment.

-template<class T >
+template<class T >
@@ -194,15 +207,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_css_comment< T >::do_match virtual bool stdex::parser::basic_css_comment< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_css_comment< T >::invalidate virtual void stdex::parser::basic_css_comment< T >::invalidate ())
@@ -223,7 +236,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__import-members.html b/classstdex_1_1parser_1_1basic__css__import-members.html index d469155de..43085b26d 100644 --- a/classstdex_1_1parser_1_1basic__css__import-members.html +++ b/classstdex_1_1parser_1_1basic__css__import-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_css_import< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__import.html b/classstdex_1_1parser_1_1basic__css__import.html index b770ee8f3..a3f39b985 100644 --- a/classstdex_1_1parser_1_1basic__css__import.html +++ b/classstdex_1_1parser_1_1basic__css__import.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_import< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,37 +114,37 @@ Inheritance diagram for stdex::parser::basic_css_import< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 content position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -142,7 +155,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_import< T >

CSS import directive.

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_css_import< T >

CSS import directive. <

-template<class T >
+template<class T >
@@ -194,15 +207,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_css_import< T >::do_match virtual bool stdex::parser::basic_css_import< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_css_import< T >::invalidate virtual void stdex::parser::basic_css_import< T >::invalidate ())
@@ -223,7 +236,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__string-members.html b/classstdex_1_1parser_1_1basic__css__string-members.html index 4bed72250..1acb4900b 100644 --- a/classstdex_1_1parser_1_1basic__css__string-members.html +++ b/classstdex_1_1parser_1_1basic__css__string-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_css_string< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__string.html b/classstdex_1_1parser_1_1basic__css__string.html index 0987b08d3..f2e32d6c2 100644 --- a/classstdex_1_1parser_1_1basic__css__string.html +++ b/classstdex_1_1parser_1_1basic__css__string.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_string< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,37 +114,37 @@ Inheritance diagram for stdex::parser::basic_css_string< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 content position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -142,7 +155,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_string< T >

CSS string.

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_css_string< T >

CSS string.

-template<class T >
+template<class T >
@@ -194,15 +207,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_css_string< T >::do_match virtual bool stdex::parser::basic_css_string< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_css_string< T >::invalidate virtual void stdex::parser::basic_css_string< T >::invalidate ())
@@ -223,7 +236,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__css__uri-members.html b/classstdex_1_1parser_1_1basic__css__uri-members.html index b37bfca42..38b96cb35 100644 --- a/classstdex_1_1parser_1_1basic__css__uri-members.html +++ b/classstdex_1_1parser_1_1basic__css__uri-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_css_uri< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__css__uri.html b/classstdex_1_1parser_1_1basic__css__uri.html index 3ea2f9c3c..de464e7b9 100644 --- a/classstdex_1_1parser_1_1basic__css__uri.html +++ b/classstdex_1_1parser_1_1basic__css__uri.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_css_uri< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,37 +114,37 @@ Inheritance diagram for stdex::parser::basic_css_uri< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 content position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -142,7 +155,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_css_uri< T >

URI in CSS.

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_css_uri< T >

URI in CSS.

-template<class T >
+template<class T >
@@ -194,15 +207,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_css_uri< T >::do_match virtual bool stdex::parser::basic_css_uri< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_css_uri< T >::invalidate virtual void stdex::parser::basic_css_uri< T >::invalidate ())
@@ -223,7 +236,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__cu-members.html b/classstdex_1_1parser_1_1basic__cu-members.html index 0f0742398..f4939b6f6 100644 --- a/classstdex_1_1parser_1_1basic__cu-members.html +++ b/classstdex_1_1parser_1_1basic__cu-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_cu< T > Member List
@@ -97,7 +110,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__cu.html b/classstdex_1_1parser_1_1basic__cu.html index 5e8ae56b1..7c7ec24b9 100644 --- a/classstdex_1_1parser_1_1basic__cu.html +++ b/classstdex_1_1parser_1_1basic__cu.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_cu< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,28 +115,28 @@ Inheritance diagram for stdex::parser::basic_cu< T >:

Public Member Functions

basic_cu (T chr, bool invert=false, const std::locale &locale=std::locale()) + basic_cu (T chr, bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
T  +bool  +stdex::interval< size_t > 

@@ -132,7 +145,7 @@ Protected Attributes

m_chr
 
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -143,12 +156,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_cu< T >

Test for specific code unit.

Member Function Documentation

@@ -157,30 +170,30 @@ class stdex::parser::basic_cu< T >

Test for specific code unit.

-template<class T >
+template<class T >
@@ -200,7 +213,8 @@ 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 a16259975..9ae944ca7 100644 --- a/classstdex_1_1parser_1_1basic__cu__set-members.html +++ b/classstdex_1_1parser_1_1basic__cu__set-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_cu< T >::do_match virtual bool stdex::parser::basic_cu< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_cu_set< T > Member List
@@ -99,7 +112,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__cu__set.html b/classstdex_1_1parser_1_1basic__cu__set.html index 772fe602c..5d1e40a7c 100644 --- a/classstdex_1_1parser_1_1basic__cu__set.html +++ b/classstdex_1_1parser_1_1basic__cu__set.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_cu_set< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,31 +116,31 @@ Inheritance diagram for stdex::parser::basic_cu_set< T >:

Public Member Functions

basic_cu_set (_In_reads_or_z_(count) const T *set, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale()) + basic_cu_set (_In_reads_or_z_(count) const T *set, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_set< T >basic_set (bool invert=false, const std::locale &locale=std::locale()) + basic_set (bool invert=false, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +size_t  +stdex::interval< size_t > 

@@ -137,7 +150,7 @@ std::basic_string< T > 

 
- Protected Attributes inherited from stdex::parser::basic_set< T >
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -148,16 +161,16 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_set< T >
-size_t hit_offset
hit_offset
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_cu_set< T >

Test for any code unit from a given string of code units.

Member Function Documentation

@@ -166,30 +179,30 @@ class stdex::parser::basic_cu_set< T >

Test for any code unit from

-template<class T >
+template<class T >
@@ -209,7 +222,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__date-members.html b/classstdex_1_1parser_1_1basic__date-members.html index 785818efc..0a8a567b8 100644 --- a/classstdex_1_1parser_1_1basic__date-members.html +++ b/classstdex_1_1parser_1_1basic__date-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_cu_set< T >::do_match virtual bool stdex::parser::basic_cu_set< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_date< T > Member List
@@ -103,7 +116,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__date.html b/classstdex_1_1parser_1_1basic__date.html index 6fd72fdd3..a3da33470 100644 --- a/classstdex_1_1parser_1_1basic__date.html +++ b/classstdex_1_1parser_1_1basic__date.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_date< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -104,22 +117,22 @@ Inheritance diagram for stdex::parser::basic_date< T >:

Public Member Functions

basic_date (int format_mask, const std::shared_ptr< basic_integer< T > > &_day, const std::shared_ptr< basic_integer< T > > &_month, const std::shared_ptr< basic_integer< T > > &_year, const std::shared_ptr< basic_set< T > > &separator, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_date (int format_mask, const std::shared_ptr< basic_integer< T > > &_day, const std::shared_ptr< basic_integer< T > > &_month, const std::shared_ptr< basic_integer< T > > &_year, const std::shared_ptr< basic_set< T > > &separator, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -138,25 +151,25 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+static bool 

Static Protected Member Functions

-static bool is_valid (size_t day, size_t month)
is_valid (size_t day, size_t month)
 
+int  @@ -170,7 +183,7 @@ std::locale 

Protected Attributes

-int m_format_mask
m_format_mask
 
std::shared_ptr< basic_set< T > > m_separator
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_date< T >

Test for date.

Member Function Documentation

@@ -179,30 +192,30 @@ class stdex::parser::basic_date< T >

Test for date.

-template<class T >
+template<class T >
@@ -222,15 +235,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_date< T >::do_match virtual bool stdex::parser::basic_date< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_date< T >::invalidate virtual void stdex::parser::basic_date< T >::invalidate ())
@@ -251,7 +264,8 @@ 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 3e8a8c951..48159d0e1 100644 --- a/classstdex_1_1parser_1_1basic__dns__domain__char-members.html +++ b/classstdex_1_1parser_1_1basic__dns__domain__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_dns_domain_char< T > Member List
@@ -97,7 +110,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__dns__domain__char.html b/classstdex_1_1parser_1_1basic__dns__domain__char.html index 14e487ad1..bcfa9e793 100644 --- a/classstdex_1_1parser_1_1basic__dns__domain__char.html +++ b/classstdex_1_1parser_1_1basic__dns__domain__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_dns_domain_char< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,46 +116,46 @@ Inheritance diagram for stdex::parser::basic_dns_domain_char< T >:

Public Member Functions

basic_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale()) + basic_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   +bool  +stdex::interval< size_t > 

Public Attributes

-bool allow_on_edge
allow_on_edge
 Is character allowed at the beginning or an end of a DNS domain?
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool 

Protected Attributes

-bool m_allow_idn
m_allow_idn
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -150,7 +163,7 @@ std::locale m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_dns_domain_char< T >

Test for valid DNS domain character.

Member Function Documentation

@@ -159,30 +172,30 @@ class stdex::parser::basic_dns_domain_char< T >

Test for valid DNS

-template<class T >
+template<class T >
@@ -202,7 +215,8 @@ 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 a007ff5b7..7cec0f7a3 100644 --- a/classstdex_1_1parser_1_1basic__dns__name-members.html +++ b/classstdex_1_1parser_1_1basic__dns__name-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_dns_domain_char< T >::do_match virtual bool stdex::parser::basic_dns_domain_char< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_dns_name< T > Member List
@@ -98,7 +111,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__dns__name.html b/classstdex_1_1parser_1_1basic__dns__name.html index 2b79fb22b..1e40f98e5 100644 --- a/classstdex_1_1parser_1_1basic__dns__name.html +++ b/classstdex_1_1parser_1_1basic__dns__name.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_dns_name< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_dns_name< T >:

Public Member Functions

basic_dns_name (bool allow_absolute, const std::shared_ptr< basic_dns_domain_char< T > > &domain_char, const std::shared_ptr< basic_parser< T > > &separator, const std::locale &locale=std::locale()) + basic_dns_name (bool allow_absolute, const std::shared_ptr< basic_dns_domain_char< T > > &domain_char, const std::shared_ptr< basic_parser< T > > &separator, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_allow_absolute
m_allow_absolute
 May DNS names end with a dot (absolute name)?
 
@@ -147,12 +160,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_dns_name< T >

Test for DNS domain/hostname.

Member Function Documentation

@@ -161,30 +174,30 @@ class stdex::parser::basic_dns_name< T >

Test for DNS domain/hostn

-template<class T >
+template<class T >
@@ -204,7 +217,8 @@ 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 f87af03b0..9c92ceaf0 100644 --- a/classstdex_1_1parser_1_1basic__email__address-members.html +++ b/classstdex_1_1parser_1_1basic__email__address-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_dns_name< T >::do_match virtual bool stdex::parser::basic_dns_name< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_email_address< T > Member List
@@ -102,7 +115,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__email__address.html b/classstdex_1_1parser_1_1basic__email__address.html index 1ade7cc90..b03b543c4 100644 --- a/classstdex_1_1parser_1_1basic__email__address.html +++ b/classstdex_1_1parser_1_1basic__email__address.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_email_address< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_email_address< T >:

Public Member Functions

basic_email_address (const std::shared_ptr< basic_parser< T > > &_username, const std::shared_ptr< basic_parser< T > > &at, const std::shared_ptr< basic_parser< T > > &ip_lbracket, const std::shared_ptr< basic_parser< T > > &ip_rbracket, const std::shared_ptr< basic_parser< T > > &_ipv4_host, const std::shared_ptr< basic_parser< T > > &_ipv6_host, const std::shared_ptr< basic_parser< T > > &_dns_host, const std::locale &locale=std::locale()) + basic_email_address (const std::shared_ptr< basic_parser< T > > &_username, const std::shared_ptr< basic_parser< T > > &at, const std::shared_ptr< basic_parser< T > > &ip_lbracket, const std::shared_ptr< basic_parser< T > > &ip_rbracket, const std::shared_ptr< basic_parser< T > > &_ipv4_host, const std::shared_ptr< basic_parser< T > > &_ipv6_host, const std::shared_ptr< basic_parser< T > > &_dns_host, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -137,13 +150,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -163,7 +176,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_email_address< T >

Test for e-mail address.

Member Function Documentation

@@ -172,30 +185,30 @@ class stdex::parser::basic_email_address< T >

Test for e-mail addr

-template<class T >
+template<class T >
@@ -215,15 +228,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_email_address< T >::do_match virtual bool stdex::parser::basic_email_address< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_email_address< T >::invalidate virtual void stdex::parser::basic_email_address< T >::invalidate ())
@@ -244,7 +257,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__emoticon-members.html b/classstdex_1_1parser_1_1basic__emoticon-members.html index 20390b426..ac1566924 100644 --- a/classstdex_1_1parser_1_1basic__emoticon-members.html +++ b/classstdex_1_1parser_1_1basic__emoticon-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_emoticon< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__emoticon.html b/classstdex_1_1parser_1_1basic__emoticon.html index 022cafcae..596830973 100644 --- a/classstdex_1_1parser_1_1basic__emoticon.html +++ b/classstdex_1_1parser_1_1basic__emoticon.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_emoticon< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_emoticon< T >:

Public Member Functions

basic_emoticon (const std::shared_ptr< basic_parser< T > > &_emoticon, const std::shared_ptr< basic_parser< T > > &_apex, const std::shared_ptr< basic_parser< T > > &_eyes, const std::shared_ptr< basic_parser< T > > &_nose, const std::shared_ptr< basic_set< T > > &_mouth, const std::locale &locale=std::locale()) + basic_emoticon (const std::shared_ptr< basic_parser< T > > &_emoticon, const std::shared_ptr< basic_parser< T > > &_apex, const std::shared_ptr< basic_parser< T > > &_eyes, const std::shared_ptr< basic_parser< T > > &_nose, const std::shared_ptr< basic_set< T > > &_mouth, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -144,13 +157,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -161,7 +174,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_emoticon< T >

Test for emoticon.

Member Function Documentation

@@ -170,30 +183,30 @@ class stdex::parser::basic_emoticon< T >

Test for emoticon.

-template<class T >
+template<class T >
@@ -213,15 +226,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_emoticon< T >::do_match virtual bool stdex::parser::basic_emoticon< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_emoticon< T >::invalidate virtual void stdex::parser::basic_emoticon< T >::invalidate ())
@@ -242,7 +255,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__eol-members.html b/classstdex_1_1parser_1_1basic__eol-members.html index 2e365f238..b575c268b 100644 --- a/classstdex_1_1parser_1_1basic__eol-members.html +++ b/classstdex_1_1parser_1_1basic__eol-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_eol< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__eol.html b/classstdex_1_1parser_1_1basic__eol.html index 637ae649a..40dc923f1 100644 --- a/classstdex_1_1parser_1_1basic__eol.html +++ b/classstdex_1_1parser_1_1basic__eol.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_eol< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_eol< T >:

Public Member Functions

basic_eol (bool invert=false) + basic_eol (bool invert=false)   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -140,12 +153,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_eol< T >

Test for end of line.

Member Function Documentation

@@ -154,30 +167,30 @@ class stdex::parser::basic_eol< T >

Test for end of line.

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__fraction-members.html b/classstdex_1_1parser_1_1basic__fraction-members.html index ffe6bf2dc..35617b577 100644 --- a/classstdex_1_1parser_1_1basic__fraction-members.html +++ b/classstdex_1_1parser_1_1basic__fraction-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_eol< T >::do_match virtual bool stdex::parser::basic_eol< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_fraction< T > Member List
@@ -98,7 +111,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__fraction.html b/classstdex_1_1parser_1_1basic__fraction.html index ea94b17b8..2555baa09 100644 --- a/classstdex_1_1parser_1_1basic__fraction.html +++ b/classstdex_1_1parser_1_1basic__fraction.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_fraction< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_fraction< T >:

Public Member Functions

basic_fraction (const std::shared_ptr< basic_parser< T > > &_numerator, const std::shared_ptr< basic_parser< T > > &_fraction_line, const std::shared_ptr< basic_parser< T > > &_denominator, const std::locale &locale=std::locale()) + basic_fraction (const std::shared_ptr< basic_parser< T > > &_numerator, const std::shared_ptr< basic_parser< T > > &_fraction_line, const std::shared_ptr< basic_parser< T > > &_denominator, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -133,13 +146,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -150,7 +163,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_fraction< T >

Test for fraction.

Member Function Documentation

@@ -159,30 +172,30 @@ class stdex::parser::basic_fraction< T >

Test for fraction.

-template<class T >
+template<class T >
@@ -202,15 +215,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_fraction< T >::do_match virtual bool stdex::parser::basic_fraction< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_fraction< T >::invalidate virtual void stdex::parser::basic_fraction< T >::invalidate ())
@@ -231,7 +244,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__html__declaration__condition__end-members.html b/classstdex_1_1parser_1_1basic__html__declaration__condition__end-members.html index 3090c3982..7864ed10d 100644 --- a/classstdex_1_1parser_1_1basic__html__declaration__condition__end-members.html +++ b/classstdex_1_1parser_1_1basic__html__declaration__condition__end-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_html_declaration_condition_end< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__html__declaration__condition__end.html b/classstdex_1_1parser_1_1basic__html__declaration__condition__end.html index decbac7c3..e2c662eb1 100644 --- a/classstdex_1_1parser_1_1basic__html__declaration__condition__end.html +++ b/classstdex_1_1parser_1_1basic__html__declaration__condition__end.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_html_declaration_condition_end< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Protected Member Functions | @@ -99,30 +112,30 @@ Inheritance diagram for stdex::parser::basic_html_declaration_condition_end< - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 
+  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -131,7 +144,7 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_html_declaration_condition_end< T >

End of condition ...]]>

Member Function Documentation

@@ -140,30 +153,30 @@ class stdex::parser::basic_html_declaration_condition_end< T >

End

-template<class T >
+template<class T >
@@ -183,7 +196,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__html__declaration__condition__start-members.html b/classstdex_1_1parser_1_1basic__html__declaration__condition__start-members.html index d406c14bf..0c51876b9 100644 --- a/classstdex_1_1parser_1_1basic__html__declaration__condition__start-members.html +++ b/classstdex_1_1parser_1_1basic__html__declaration__condition__start-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_html_declaration_condition_end< T >::do_match virtual bool stdex::parser::basic_html_declaration_condition_end< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + + +
+
stdex::parser::basic_html_declaration_condition_start< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__html__declaration__condition__start.html b/classstdex_1_1parser_1_1basic__html__declaration__condition__start.html index f9e66fd8a..4fbbae4a2 100644 --- a/classstdex_1_1parser_1_1basic__html__declaration__condition__start.html +++ b/classstdex_1_1parser_1_1basic__html__declaration__condition__start.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_html_declaration_condition_start< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -101,36 +114,36 @@ Inheritance diagram for stdex::parser::basic_html_declaration_condition_start< - + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcondition
condition
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 condition position in source
 
@@ -142,7 +155,7 @@ std::locale 
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_html_declaration_condition_start< T >

Start of condition <![condition[...

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_html_declaration_condition_start< T >

S

-template<class T >
+template<class T >
@@ -196,15 +209,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_html_declaration_condition_start< T >::do_match virtual bool stdex::parser::basic_html_declaration_condition_start< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_html_declaration_condition_start< T >::invalidate virtual void stdex::parser::basic_html_declaration_condition_start< T >::invalidate ())
@@ -225,7 +238,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__html__ident-members.html b/classstdex_1_1parser_1_1basic__html__ident-members.html index 093eaef04..ee490cd5f 100644 --- a/classstdex_1_1parser_1_1basic__html__ident-members.html +++ b/classstdex_1_1parser_1_1basic__html__ident-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_html_ident< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__html__ident.html b/classstdex_1_1parser_1_1basic__html__ident.html index a4bd9b4c9..d31f7c8b7 100644 --- a/classstdex_1_1parser_1_1basic__html__ident.html +++ b/classstdex_1_1parser_1_1basic__html__ident.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_html_ident< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Protected Member Functions | @@ -99,30 +112,30 @@ Inheritance diagram for stdex::parser::basic_html_ident< T >:
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -131,7 +144,7 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_html_ident< T >

Contiguous sequence of characters representing name of element, attribute etc.

Member Function Documentation

@@ -140,30 +153,30 @@ class stdex::parser::basic_html_ident< T >

Contiguous sequence of

-template<class T >
+template<class T >
@@ -183,7 +196,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__html__tag-members.html b/classstdex_1_1parser_1_1basic__html__tag-members.html index 100ca427f..8869daf9e 100644 --- a/classstdex_1_1parser_1_1basic__html__tag-members.html +++ b/classstdex_1_1parser_1_1basic__html__tag-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_html_ident< T >::do_match virtual bool stdex::parser::basic_html_ident< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_html_tag< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__html__tag.html b/classstdex_1_1parser_1_1basic__html__tag.html index 0ec05ef53..feb3143ef 100644 --- a/classstdex_1_1parser_1_1basic__html__tag.html +++ b/classstdex_1_1parser_1_1basic__html__tag.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_html_tag< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_html_tag< T >:

Public Member Functions

basic_html_tag (const std::locale &locale=std::locale()) + basic_html_tag (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  +stdex::interval< size_t > 

@@ -128,7 +141,7 @@ html_sequence_t 

type tag type
 
-stdex::interval< size_tname
name
 tag name position in source
 
@@ -137,13 +150,13 @@ std::vector<  
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -160,7 +173,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_html_tag< T >

Tag.

Member Function Documentation

@@ -169,30 +182,30 @@ class stdex::parser::basic_html_tag< T >

Tag.

-template<class T >
+template<class T >
@@ -212,15 +225,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_html_tag< T >::do_match virtual bool stdex::parser::basic_html_tag< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_html_tag< T >::invalidate virtual void stdex::parser::basic_html_tag< T >::invalidate ())
@@ -241,7 +254,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__html__value-members.html b/classstdex_1_1parser_1_1basic__html__value-members.html index 25b4ec0ab..d727499a3 100644 --- a/classstdex_1_1parser_1_1basic__html__value-members.html +++ b/classstdex_1_1parser_1_1basic__html__value-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_html_value< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__html__value.html b/classstdex_1_1parser_1_1basic__html__value.html index ff175091e..db3546171 100644 --- a/classstdex_1_1parser_1_1basic__html__value.html +++ b/classstdex_1_1parser_1_1basic__html__value.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_html_value< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,37 +114,37 @@ Inheritance diagram for stdex::parser::basic_html_value< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 content position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -142,7 +155,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_html_value< T >

Optionally-quoted string representing value of an attribute.

Member Function Documentation

@@ -151,30 +164,30 @@ class stdex::parser::basic_html_value< T >

Optionally-quoted strin

-template<class T >
+template<class T >
@@ -194,15 +207,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_html_value< T >::do_match virtual bool stdex::parser::basic_html_value< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_html_value< T >::invalidate virtual void stdex::parser::basic_html_value< T >::invalidate ())
@@ -223,7 +236,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__iban-members.html b/classstdex_1_1parser_1_1basic__iban-members.html index 5ba76a1fe..ce752e143 100644 --- a/classstdex_1_1parser_1_1basic__iban-members.html +++ b/classstdex_1_1parser_1_1basic__iban-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_iban< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__iban.html b/classstdex_1_1parser_1_1basic__iban.html index e13c5cc02..7d3b5eeca 100644 --- a/classstdex_1_1parser_1_1basic__iban.html +++ b/classstdex_1_1parser_1_1basic__iban.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_iban< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_iban< T >:

Public Member Functions

basic_iban (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_iban (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +bool  +stdex::interval< size_t > 

@@ -136,18 +149,18 @@ T 

bban [31]
 Normalized Basic Bank Account Number.
 
-bool is_valid
is_valid
 Is IBAN valid per ISO 7064.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -161,7 +174,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_iban< T >

Test for International Bank Account Number.

See also
International Bank Account Number

Member Function Documentation

@@ -171,30 +184,30 @@ class stdex::parser::basic_iban< T >

Test for International Bank A

-template<class T >
+template<class T >
@@ -214,15 +227,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_iban< T >::do_match virtual bool stdex::parser::basic_iban< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_iban< T >::invalidate virtual void stdex::parser::basic_iban< T >::invalidate ())
@@ -243,7 +256,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__integer-members.html b/classstdex_1_1parser_1_1basic__integer-members.html index 4cda7a7ba..8e39c8aa2 100644 --- a/classstdex_1_1parser_1_1basic__integer-members.html +++ b/classstdex_1_1parser_1_1basic__integer-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_integer< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__integer.html b/classstdex_1_1parser_1_1basic__integer.html index d94eff87a..f2f6e2486 100644 --- a/classstdex_1_1parser_1_1basic__integer.html +++ b/classstdex_1_1parser_1_1basic__integer.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_integer< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -105,40 +118,40 @@ Inheritance diagram for stdex::parser::basic_integer< T >:

Public Member Functions

basic_integer (const std::locale &locale=std::locale()) + basic_integer (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +size_t  +stdex::interval< size_t > 

Public Attributes

-size_t value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Additional Inherited Members

- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -146,7 +159,7 @@ std::locale m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_integer< T >

Base class for integer testing.

Member Function Documentation

@@ -155,15 +168,15 @@ class stdex::parser::basic_integer< T >

Base class for integer tes

-template<class T >
+template<class T >
- + - +
virtual void stdex::parser::basic_integer< T >::invalidate virtual void stdex::parser::basic_integer< T >::invalidate ())
@@ -184,7 +197,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__integer10-members.html b/classstdex_1_1parser_1_1basic__integer10-members.html index 664947f86..51a5c5f45 100644 --- a/classstdex_1_1parser_1_1basic__integer10-members.html +++ b/classstdex_1_1parser_1_1basic__integer10-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_integer10< T > Member List
@@ -107,7 +120,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__integer10.html b/classstdex_1_1parser_1_1basic__integer10.html index d2016a1a3..63bd16a60 100644 --- a/classstdex_1_1parser_1_1basic__integer10.html +++ b/classstdex_1_1parser_1_1basic__integer10.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_integer10< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,31 +116,31 @@ Inheritance diagram for stdex::parser::basic_integer10< T >:

Public Member Functions

basic_integer10 (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::locale &locale=std::locale()) + basic_integer10 (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_integer< T >basic_integer (const std::locale &locale=std::locale()) + basic_integer (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+size_t  +stdex::interval< size_t > 

@@ -171,17 +184,17 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_integer< T >
-size_t value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_integer10< T >

Test for decimal integer.

Member Function Documentation

@@ -190,30 +203,30 @@ class stdex::parser::basic_integer10< T >

Test for decimal integer

-template<class T >
+template<class T >
@@ -233,7 +246,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__integer10ts-members.html b/classstdex_1_1parser_1_1basic__integer10ts-members.html index b2dcc023e..467a23f01 100644 --- a/classstdex_1_1parser_1_1basic__integer10ts-members.html +++ b/classstdex_1_1parser_1_1basic__integer10ts-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_integer10< T >::do_match virtual bool stdex::parser::basic_integer10< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_integer10ts< T > Member List
@@ -101,7 +114,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__integer10ts.html b/classstdex_1_1parser_1_1basic__integer10ts.html index 41877068f..b66fb23f4 100644 --- a/classstdex_1_1parser_1_1basic__integer10ts.html +++ b/classstdex_1_1parser_1_1basic__integer10ts.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_integer10ts< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -104,52 +117,52 @@ Inheritance diagram for stdex::parser::basic_integer10ts< T >:

Public Member Functions

basic_integer10ts (const std::shared_ptr< basic_integer10< T > > &digits, const std::shared_ptr< basic_set< T > > &separator, const std::locale &locale=std::locale()) + basic_integer10ts (const std::shared_ptr< basic_integer10< T > > &digits, const std::shared_ptr< basic_set< T > > &separator, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_integer< T >basic_integer (const std::locale &locale=std::locale()) + basic_integer (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +size_t  +bool  +size_t  +stdex::interval< size_t > 

Public Attributes

-size_t digit_count
digit_count
 Total number of digits in integer.
 
-bool has_separators
has_separators
 Did integer have any separators?
 
- Public Attributes inherited from stdex::parser::basic_integer< T >
-size_t value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -166,7 +179,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_integer10ts< T >

Test for decimal integer possibly containing thousand separators.

Member Function Documentation

@@ -175,30 +188,30 @@ class stdex::parser::basic_integer10ts< T >

Test for decimal integ

-template<class T >
+template<class T >
@@ -218,15 +231,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_integer10ts< T >::do_match virtual bool stdex::parser::basic_integer10ts< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_integer10ts< T >::invalidate virtual void stdex::parser::basic_integer10ts< T >::invalidate ())
@@ -247,7 +260,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__integer16-members.html b/classstdex_1_1parser_1_1basic__integer16-members.html index ca5e5e47a..63df971ab 100644 --- a/classstdex_1_1parser_1_1basic__integer16-members.html +++ b/classstdex_1_1parser_1_1basic__integer16-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_integer16< T > Member List
@@ -113,7 +126,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__integer16.html b/classstdex_1_1parser_1_1basic__integer16.html index c706d820e..f6742cdb8 100644 --- a/classstdex_1_1parser_1_1basic__integer16.html +++ b/classstdex_1_1parser_1_1basic__integer16.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_integer16< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,31 +116,31 @@ Inheritance diagram for stdex::parser::basic_integer16< T >:

Public Member Functions

basic_integer16 (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_11, const std::shared_ptr< basic_parser< T > > &digit_12, const std::shared_ptr< basic_parser< T > > &digit_13, const std::shared_ptr< basic_parser< T > > &digit_14, const std::shared_ptr< basic_parser< T > > &digit_15, const std::locale &locale=std::locale()) + basic_integer16 (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_11, const std::shared_ptr< basic_parser< T > > &digit_12, const std::shared_ptr< basic_parser< T > > &digit_13, const std::shared_ptr< basic_parser< T > > &digit_14, const std::shared_ptr< basic_parser< T > > &digit_15, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_integer< T >basic_integer (const std::locale &locale=std::locale()) + basic_integer (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+size_t  +stdex::interval< size_t > 

@@ -189,17 +202,17 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_integer< T >
-size_t value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_integer16< T >

Test for hexadecimal integer.

Member Function Documentation

@@ -208,30 +221,30 @@ class stdex::parser::basic_integer16< T >

Test for hexadecimal int

-template<class T >
+template<class T >
@@ -251,7 +264,8 @@ 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 441f5c307..0cda2f0e8 100644 --- a/classstdex_1_1parser_1_1basic__ipv4__address-members.html +++ b/classstdex_1_1parser_1_1basic__ipv4__address-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_integer16< T >::do_match virtual bool stdex::parser::basic_integer16< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_ipv4_address< T > Member List
@@ -108,7 +121,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__ipv4__address.html b/classstdex_1_1parser_1_1basic__ipv4__address.html index e5e924a48..b6bf5c1f8 100644 --- a/classstdex_1_1parser_1_1basic__ipv4__address.html +++ b/classstdex_1_1parser_1_1basic__ipv4__address.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_ipv4_address< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,43 +116,43 @@ Inheritance diagram for stdex::parser::basic_ipv4_address< T >:

Public Member Functions

basic_ipv4_address (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &separator, const std::locale &locale=std::locale()) + basic_ipv4_address (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &separator, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  +struct in_addr  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcomponents [4]
components [4]
 Individual component intervals.
 
-struct in_addr value
value
 IPv4 address value.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -183,7 +196,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_ipv4_address< T >

Test for IPv4 address.

Member Function Documentation

@@ -192,30 +205,30 @@ class stdex::parser::basic_ipv4_address< T >

Test for IPv4 address

-template<class T >
+template<class T >
@@ -235,15 +248,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_ipv4_address< T >::do_match virtual bool stdex::parser::basic_ipv4_address< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_ipv4_address< T >::invalidate virtual void stdex::parser::basic_ipv4_address< T >::invalidate ())
@@ -264,7 +277,8 @@ 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 49930a618..9fcce506b 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__address-members.html +++ b/classstdex_1_1parser_1_1basic__ipv6__address-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_ipv6_address< T > Member List
@@ -116,7 +129,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__ipv6__address.html b/classstdex_1_1parser_1_1basic__ipv6__address.html index 3865670d3..0fa57e771 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__address.html +++ b/classstdex_1_1parser_1_1basic__ipv6__address.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_ipv6_address< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,32 +116,32 @@ Inheritance diagram for stdex::parser::basic_ipv6_address< T >:

Public Member Functions

basic_ipv6_address (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_11, const std::shared_ptr< basic_parser< T > > &digit_12, const std::shared_ptr< basic_parser< T > > &digit_13, const std::shared_ptr< basic_parser< T > > &digit_14, const std::shared_ptr< basic_parser< T > > &digit_15, const std::shared_ptr< basic_parser< T > > &separator, const std::shared_ptr< basic_parser< T > > &scope_id_separator=nullptr, const std::shared_ptr< basic_parser< T > > &_scope_id=nullptr, const std::locale &locale=std::locale()) + basic_ipv6_address (const std::shared_ptr< basic_parser< T > > &digit_0, const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_2, const std::shared_ptr< basic_parser< T > > &digit_3, const std::shared_ptr< basic_parser< T > > &digit_4, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_6, const std::shared_ptr< basic_parser< T > > &digit_7, const std::shared_ptr< basic_parser< T > > &digit_8, const std::shared_ptr< basic_parser< T > > &digit_9, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_11, const std::shared_ptr< basic_parser< T > > &digit_12, const std::shared_ptr< basic_parser< T > > &digit_13, const std::shared_ptr< basic_parser< T > > &digit_14, const std::shared_ptr< basic_parser< T > > &digit_15, const std::shared_ptr< basic_parser< T > > &separator, const std::shared_ptr< basic_parser< T > > &scope_id_separator=nullptr, const std::shared_ptr< basic_parser< T > > &_scope_id=nullptr, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  +struct in6_addr  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcomponents [8]
components [8]
 Individual component intervals.
 
-struct in6_addr value
value
 IPv6 address value.
 
@@ -137,13 +150,13 @@ std::shared_ptr<  
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -208,7 +221,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_ipv6_address< T >

Test for IPv6 address.

Member Function Documentation

@@ -217,30 +230,30 @@ class stdex::parser::basic_ipv6_address< T >

Test for IPv6 address

-template<class T >
+template<class T >
@@ -260,15 +273,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_ipv6_address< T >::do_match virtual bool stdex::parser::basic_ipv6_address< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_ipv6_address< T >::invalidate virtual void stdex::parser::basic_ipv6_address< T >::invalidate ())
@@ -289,7 +302,8 @@ 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 57c64f8c3..2654168cb 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 @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_ipv6_scope_id_char< T > Member List
@@ -95,7 +108,8 @@ $(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 2e1c18caa..3ead71862 100644 --- a/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html +++ b/classstdex_1_1parser_1_1basic__ipv6__scope__id__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_ipv6_scope_id_char< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_ipv6_scope_id_char< T >:

Public Member Functions

basic_ipv6_scope_id_char (const std::locale &locale=std::locale()) + basic_ipv6_scope_id_char (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_ipv6_scope_id_char< T >

Test for valid IPv6 address scope ID character.

Member Function Documentation

@@ -147,30 +160,30 @@ class stdex::parser::basic_ipv6_scope_id_char< T >

Test for valid

-template<class T >
+template<class T >
@@ -190,7 +203,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__iterations-members.html b/classstdex_1_1parser_1_1basic__iterations-members.html index 2a84a567e..6c3ea53b2 100644 --- a/classstdex_1_1parser_1_1basic__iterations-members.html +++ b/classstdex_1_1parser_1_1basic__iterations-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_ipv6_scope_id_char< T >::do_match virtual bool stdex::parser::basic_ipv6_scope_id_char< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_iterations< T > Member List
@@ -99,7 +112,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__iterations.html b/classstdex_1_1parser_1_1basic__iterations.html index 7730fa802..ab9046c2e 100644 --- a/classstdex_1_1parser_1_1basic__iterations.html +++ b/classstdex_1_1parser_1_1basic__iterations.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_iterations< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,28 +115,28 @@ Inheritance diagram for stdex::parser::basic_iterations< T >:

Public Member Functions

basic_iterations (const std::shared_ptr< basic_parser< T > > &el, size_t min_iterations=0, size_t max_iterations=SIZE_MAX, bool greedy=true) + basic_iterations (const std::shared_ptr< basic_parser< T > > &el, size_t min_iterations=0, size_t max_iterations=SIZE_MAX, bool greedy=true)   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+size_t  +size_t  +bool  @@ -153,12 +166,12 @@ std::locale  +stdex::interval< size_t > 

@@ -133,15 +146,15 @@ std::shared_ptr<

 repeating element
 
-size_t m_min_iterations
m_min_iterations
 minimum number of iterations
 
-size_t m_max_iterations
m_max_iterations
 maximum number of iterations
 
-bool m_greedy
m_greedy
 try to match as long sequence as possible
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_iterations< T >

Test for repeating.

Member Function Documentation

@@ -167,30 +180,30 @@ class stdex::parser::basic_iterations< T >

Test for repeating.

-template<class T >
+template<class T >
@@ -210,7 +223,8 @@ 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 d63fd1a00..497ec710b 100644 --- a/classstdex_1_1parser_1_1basic__json__string-members.html +++ b/classstdex_1_1parser_1_1basic__json__string-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_iterations< T >::do_match virtual bool stdex::parser::basic_iterations< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_json_string< T > Member List
@@ -107,7 +120,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__json__string.html b/classstdex_1_1parser_1_1basic__json__string.html index a20668426..d10ff4f94 100644 --- a/classstdex_1_1parser_1_1basic__json__string.html +++ b/classstdex_1_1parser_1_1basic__json__string.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_json_string< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_json_string< T >:

Public Member Functions

basic_json_string (const std::shared_ptr< basic_parser< T > > &quote, const std::shared_ptr< basic_parser< T > > &chr, const std::shared_ptr< basic_parser< T > > &escape, const std::shared_ptr< basic_parser< T > > &sol, const std::shared_ptr< basic_parser< T > > &bs, const std::shared_ptr< basic_parser< T > > &ff, const std::shared_ptr< basic_parser< T > > &lf, const std::shared_ptr< basic_parser< T > > &cr, const std::shared_ptr< basic_parser< T > > &htab, const std::shared_ptr< basic_parser< T > > &uni, const std::shared_ptr< basic_integer16< T > > &hex, const std::locale &locale=std::locale()) + basic_json_string (const std::shared_ptr< basic_parser< T > > &quote, const std::shared_ptr< basic_parser< T > > &chr, const std::shared_ptr< basic_parser< T > > &escape, const std::shared_ptr< basic_parser< T > > &sol, const std::shared_ptr< basic_parser< T > > &bs, const std::shared_ptr< basic_parser< T > > &ff, const std::shared_ptr< basic_parser< T > > &lf, const std::shared_ptr< basic_parser< T > > &cr, const std::shared_ptr< basic_parser< T > > &htab, const std::shared_ptr< basic_parser< T > > &uni, const std::shared_ptr< basic_integer16< T > > &hex, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -128,13 +141,13 @@ std::basic_string< T > 

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -178,7 +191,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_json_string< T >

Test for JSON string.

Member Function Documentation

@@ -187,30 +200,30 @@ class stdex::parser::basic_json_string< T >

Test for JSON string.

-template<class T >
+template<class T >
@@ -230,15 +243,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_json_string< T >::do_match virtual bool stdex::parser::basic_json_string< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_json_string< T >::invalidate virtual void stdex::parser::basic_json_string< T >::invalidate ())
@@ -259,7 +272,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__mime__type-members.html b/classstdex_1_1parser_1_1basic__mime__type-members.html index ac688c1da..bb0a5f265 100644 --- a/classstdex_1_1parser_1_1basic__mime__type-members.html +++ b/classstdex_1_1parser_1_1basic__mime__type-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_mime_type< T > Member List
@@ -97,7 +110,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__mime__type.html b/classstdex_1_1parser_1_1basic__mime__type.html index bb5c57ca2..ef59170ef 100644 --- a/classstdex_1_1parser_1_1basic__mime__type.html +++ b/classstdex_1_1parser_1_1basic__mime__type.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_mime_type< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,45 +114,45 @@ Inheritance diagram for stdex::parser::basic_mime_type< T >:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tbase_type
base_type
 basic type position in source
 
-stdex::interval< size_tsub_type
sub_type
 sub-type position in source
 
-stdex::interval< size_tcharset
charset
 charset position in source
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_multiline)
 

@@ -150,7 +163,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_mime_type< T >

MIME content type.

Member Function Documentation

@@ -159,30 +172,30 @@ class stdex::parser::basic_mime_type< T >

MIME content type.

-template<class T >
+template<class T >
@@ -202,15 +215,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_mime_type< T >::do_match virtual bool stdex::parser::basic_mime_type< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_multiline )int flags = match_multiline )
- + - +
virtual void stdex::parser::basic_mime_type< T >::invalidate virtual void stdex::parser::basic_mime_type< T >::invalidate ())
@@ -231,7 +244,8 @@ 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 29e52de3c..7d63ee767 100644 --- a/classstdex_1_1parser_1_1basic__mixed__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__mixed__numeral-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_mixed_numeral< T > Member List
@@ -101,7 +114,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__mixed__numeral.html b/classstdex_1_1parser_1_1basic__mixed__numeral.html index a576d0bc5..a6e5d7653 100644 --- a/classstdex_1_1parser_1_1basic__mixed__numeral.html +++ b/classstdex_1_1parser_1_1basic__mixed__numeral.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_mixed_numeral< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_mixed_numeral< T >:

Public Member Functions

basic_mixed_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_integer, const std::shared_ptr< basic_parser< T > > &space, const std::shared_ptr< basic_parser< T > > &_fraction, const std::locale &locale=std::locale()) + basic_mixed_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_integer, const std::shared_ptr< basic_parser< T > > &space, const std::shared_ptr< basic_parser< T > > &_fraction, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -145,13 +158,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -165,7 +178,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_mixed_numeral< T >

Test for mixed numeral.

Member Function Documentation

@@ -174,30 +187,30 @@ class stdex::parser::basic_mixed_numeral< T >

Test for mixed numer

-template<class T >
+template<class T >
@@ -217,15 +230,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_mixed_numeral< T >::do_match virtual bool stdex::parser::basic_mixed_numeral< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_mixed_numeral< T >::invalidate virtual void stdex::parser::basic_mixed_numeral< T >::invalidate ())
@@ -246,7 +259,8 @@ 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 ba3d29fbc..2edb20ee7 100644 --- a/classstdex_1_1parser_1_1basic__monetary__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__monetary__numeral-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_monetary_numeral< T > Member List
@@ -102,7 +115,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__monetary__numeral.html b/classstdex_1_1parser_1_1basic__monetary__numeral.html index 0d3b0ad20..0e3f8f014 100644 --- a/classstdex_1_1parser_1_1basic__monetary__numeral.html +++ b/classstdex_1_1parser_1_1basic__monetary__numeral.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_monetary_numeral< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_monetary_numeral< T >:

Public Member Functions

basic_monetary_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_currency, const std::shared_ptr< basic_parser< T > > &_integer, const std::shared_ptr< basic_parser< T > > &_decimal_separator, const std::shared_ptr< basic_parser< T > > &_decimal, const std::locale &locale=std::locale()) + basic_monetary_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_currency, const std::shared_ptr< basic_parser< T > > &_integer, const std::shared_ptr< basic_parser< T > > &_decimal_separator, const std::shared_ptr< basic_parser< T > > &_decimal, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -152,13 +165,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -169,7 +182,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_monetary_numeral< T >

Test for monetary numeral.

Member Function Documentation

@@ -178,30 +191,30 @@ class stdex::parser::basic_monetary_numeral< T >

Test for monetary

-template<class T >
+template<class T >
@@ -221,15 +234,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_monetary_numeral< T >::do_match virtual bool stdex::parser::basic_monetary_numeral< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_monetary_numeral< T >::invalidate virtual void stdex::parser::basic_monetary_numeral< T >::invalidate ())
@@ -250,7 +263,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__noop-members.html b/classstdex_1_1parser_1_1basic__noop-members.html index f04ca86a1..64cc37f5f 100644 --- a/classstdex_1_1parser_1_1basic__noop-members.html +++ b/classstdex_1_1parser_1_1basic__noop-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_noop< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__noop.html b/classstdex_1_1parser_1_1basic__noop.html index b531f1f7a..87cb0c15e 100644 --- a/classstdex_1_1parser_1_1basic__noop.html +++ b/classstdex_1_1parser_1_1basic__noop.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_noop< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Protected Member Functions | @@ -99,30 +112,30 @@ Inheritance diagram for stdex::parser::basic_noop< T >:
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -131,7 +144,7 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< T >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_noop< T >

"No-op" match

Member Function Documentation

@@ -140,30 +153,30 @@ class stdex::parser::basic_noop< T >

"No-op" match

-template<class T >
+template<class T >
@@ -183,7 +196,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__parser-members.html b/classstdex_1_1parser_1_1basic__parser-members.html index 839adef62..2df1482af 100644 --- a/classstdex_1_1parser_1_1basic__parser-members.html +++ b/classstdex_1_1parser_1_1basic__parser-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_noop< T >::do_match virtual bool stdex::parser::basic_noop< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_parser< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__parser.html b/classstdex_1_1parser_1_1basic__parser.html index 42114927a..03e95969b 100644 --- a/classstdex_1_1parser_1_1basic__parser.html +++ b/classstdex_1_1parser_1_1basic__parser.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_parser< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -96,100 +109,91 @@ Inheritance diagram for stdex::parser::basic_parser< T >:
-stdex::parser::basic_any_cu< char > -stdex::parser::basic_dns_domain_char< char > -stdex::parser::basic_punct_cu< char > -stdex::parser::basic_set< char > -stdex::parser::basic_space_cu< char > -stdex::parser::basic_space_or_punct_cu< char > -stdex::parser::basic_url_password_char< char > -stdex::parser::basic_url_path_char< char > -stdex::parser::basic_url_username_char< char > -stdex::parser::basic_angle< T > -stdex::parser::basic_any_cu< T > -stdex::parser::basic_bol< T > -stdex::parser::basic_chemical_formula< T > -stdex::parser::basic_creditor_reference< T > -stdex::parser::basic_css_cdc< T > -stdex::parser::basic_css_cdo< T > -stdex::parser::basic_css_comment< T > -stdex::parser::basic_css_import< T > -stdex::parser::basic_css_string< T > -stdex::parser::basic_css_uri< T > -stdex::parser::basic_cu< T > -stdex::parser::basic_date< T > -stdex::parser::basic_dns_domain_char< T > -stdex::parser::basic_dns_name< T > -stdex::parser::basic_email_address< T > -stdex::parser::basic_emoticon< T > -stdex::parser::basic_eol< T > -stdex::parser::basic_fraction< T > -stdex::parser::basic_html_declaration_condition_end< T > -stdex::parser::basic_html_declaration_condition_start< T > -stdex::parser::basic_html_ident< T > -stdex::parser::basic_html_tag< T > -stdex::parser::basic_html_value< T > -stdex::parser::basic_iban< T > -stdex::parser::basic_integer< T > -stdex::parser::basic_ipv4_address< T > -stdex::parser::basic_ipv6_address< T > -stdex::parser::basic_ipv6_scope_id_char< T > -stdex::parser::basic_iterations< T > -stdex::parser::basic_json_string< T > -stdex::parser::basic_mime_type< T > -stdex::parser::basic_mixed_numeral< T > -stdex::parser::basic_monetary_numeral< T > -stdex::parser::basic_noop< T > -stdex::parser::basic_phone_number< T > -stdex::parser::basic_punct_cu< T > -stdex::parser::basic_scientific_numeral< T > -stdex::parser::basic_score< T > -stdex::parser::basic_set< T > -stdex::parser::basic_si_reference< T > -stdex::parser::basic_si_reference_delimiter< T > -stdex::parser::basic_si_reference_part< T > -stdex::parser::basic_signed_numeral< T > -stdex::parser::basic_space_cu< T > -stdex::parser::basic_space_or_punct_cu< T > -stdex::parser::basic_string< T > -stdex::parser::basic_time< T > -stdex::parser::basic_url< T > -stdex::parser::basic_url_password_char< T > -stdex::parser::basic_url_path< T > -stdex::parser::basic_url_path_char< T > -stdex::parser::basic_url_username_char< T > -stdex::parser::parser_collection< T > +stdex::parser::basic_angle< T > +stdex::parser::basic_any_cu< T > +stdex::parser::basic_bol< T > +stdex::parser::basic_chemical_formula< T > +stdex::parser::basic_creditor_reference< T > +stdex::parser::basic_css_cdc< T > +stdex::parser::basic_css_cdo< T > +stdex::parser::basic_css_comment< T > +stdex::parser::basic_css_import< T > +stdex::parser::basic_css_string< T > +stdex::parser::basic_css_uri< T > +stdex::parser::basic_cu< T > +stdex::parser::basic_date< T > +stdex::parser::basic_dns_domain_char< T > +stdex::parser::basic_dns_name< T > +stdex::parser::basic_email_address< T > +stdex::parser::basic_emoticon< T > +stdex::parser::basic_eol< T > +stdex::parser::basic_fraction< T > +stdex::parser::basic_html_declaration_condition_end< T > +stdex::parser::basic_html_declaration_condition_start< T > +stdex::parser::basic_html_ident< T > +stdex::parser::basic_html_tag< T > +stdex::parser::basic_html_value< T > +stdex::parser::basic_iban< T > +stdex::parser::basic_integer< T > +stdex::parser::basic_ipv4_address< T > +stdex::parser::basic_ipv6_address< T > +stdex::parser::basic_ipv6_scope_id_char< T > +stdex::parser::basic_iterations< T > +stdex::parser::basic_json_string< T > +stdex::parser::basic_mime_type< T > +stdex::parser::basic_mixed_numeral< T > +stdex::parser::basic_monetary_numeral< T > +stdex::parser::basic_noop< T > +stdex::parser::basic_phone_number< T > +stdex::parser::basic_punct_cu< T > +stdex::parser::basic_scientific_numeral< T > +stdex::parser::basic_score< T > +stdex::parser::basic_set< T > +stdex::parser::basic_si_reference< T > +stdex::parser::basic_si_reference_delimiter< T > +stdex::parser::basic_si_reference_part< T > +stdex::parser::basic_signed_numeral< T > +stdex::parser::basic_space_cu< T > +stdex::parser::basic_space_or_punct_cu< T > +stdex::parser::basic_string< T > +stdex::parser::basic_time< T > +stdex::parser::basic_url< T > +stdex::parser::basic_url_password_char< T > +stdex::parser::basic_url_path< T > +stdex::parser::basic_url_path_char< T > +stdex::parser::basic_url_username_char< T > +stdex::parser::parser_collection< T >
+  +bool  +bool  +bool  +virtual void 

Public Member Functions

basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -199,7 +203,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_parser< T >

Base template for all parsers.

Member Function Documentation

@@ -208,30 +212,30 @@ class stdex::parser::basic_parser< T >

Base template for all parse

-template<class T >
+template<class T >
@@ -251,7 +255,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__parser.png b/classstdex_1_1parser_1_1basic__parser.png index 4620fe8d013a46ba77079b6720a040be47965ab2..07d16958c35882d3ca7d3658e50ea3824dbb622a 100644 GIT binary patch literal 35884 zcmeHwX;_nI+IDB^QblE2#|0H=Ym~7fRH+~W$+V8zRE18hAhHAo1yLZ%4k5`XMcTS# z3{_NwRIM@!gb0NIfkZ%!$PyKSV74Ngkc2=&5<<4`z8_Y#edjyAAMg7f_2Wk;W`ZV9 zuIF0L^SsXcyDvSr&!4+&?ptrYH6Q!=-@bb5tv@o}dduR)J8y$$K9s~Xg8y0m<<76S zn$2eL@P$krN2$r(^zoV_OEVi@{PN2$;Q5V>-amo=Z%*u2p1a=ye@1>>{+RXjt+!4x zv48vY>%>3EMbhZ3hgZ`ccVN%0RhaK`OQZa|^7&U{p1AGKdUwvjWd#MiMw}z~Q7e_o z=w*Ld+R@FW*kbzOe>|TA1z(t@?*xy-4lzF7nQ9yYkDWH|U3#P1Gy)!9TxLJ7If!fk zk9W>re8TEIS=?S2dVA)| z%chvf9Yn%MxHBu(R%R#pm!OrgFAfcaFfdtopYAAy&}<1lkJB$_%W%O7=j3hT+Hbco zvbL&t6vu+?Bi&bf(vAB3cr4*7k?PscFYNakwbn zfJJT(my`~t6qmuYsc`8#+O zxwxOIYd%)Z(wCChoMrX~w~Cs{3$0=rh2X=EtY^-$sQrYGeDK}igD;bTuZnc}Ciunq z8u+y}J$>nGYpAcU-%(XrS$TQZTvK@AmtPJt4>P{}IJK>9vBk`V2jN3zpr8Gp4aQ~m zf8Keu{Ilvm!v|NY|N9;U-w(<>;CsmTeD^0Gr>{xfMg4-B0V3r__3FB@5XQA z#VT{*&1+u8N9kxSFv7A>V_9Jrbu1;k{AKx`KXCJa@A>9CD?;Zjo@@Ga{^Gee9tB+q zn)^Th;NuWReUW{MeSP$@3$;H~ug0#b!y=jN*TZaC1QofvdS_3D8{RAVVz=@O>K|aj z@Bv}@{jm%eaCM#rNqh<@*QJew_cD3XzlzV`G=+GD-I?t<3yc>AZ=3h7vkk$=_vQ?@ z2Q80K7K!OM*{CcKY0D%Nk+!n3^JhVfHZ|{w53MPR3F6FdHYzfI=J-+Q3Hs4v%_4X6=Zp`43mxwC0iK9x5W&fTj!JLhJh>_G8o zxCw4%-u!vplm;5gd@R{FS^3M4D~e zn;2=Ssl@imRdrhTtY3~q5Q3NqNvrCDz}2}3E=l`{FC#4FJCqI&EAA4RK3a48MpY8N zTbUHlBp9kUspZDILl2s-*e*nCX!8#-26xYo&*Fx#Zj6FUt9m}|kgwpLcW598hDw=Hu|?4Cvk ze&^Y+Eo}ncEbAr19p%n@mmU<(C6MDe<>^<>OtElrrWy^ z@ur-dnJiYs#%QgY$uuVy!Q^lVsi)Uj9!Zq!e4EG2T$SbuacS~i6m159yaN_|)b zI*yHuyAdWl+|G%JRCNbo05nzs9Deaaw&+ zVe&IB;pAVj| z4jdJ?Ruex!+P{Ps|01MXK#$InMG^A4T8m{hglL{1ffGFdam&k3Ze0uws)b3S2w5(;a8(*)LM^-SJ}b#0HI4Jg=Qs?2jV+n`i#=>wGre0W3enld z?`rRCcgd??kV)s^P5A>MG|$@{b!44bJhDE3YPbc%cs;+-%kb0rJyFuV8Upu9RyoB& z)UPCVu)=AlMSfNC?@1Lkq;>7^rK?~PWq&EkDfjZet6ynKZW#sXTJU|&OoEl}a5eot zeIVt+bEQ#i3DYX^gUS9d^SJ0h5zdxY7$JB!J;>$cAeqj{lA1!&MA^xk@AcRO1a~-U z&jsPA-1x%oqVMS>LFcuRa9_cd^cj{Et@;6Ou4cp|KAl3|AXrYeYnx^9HZeS{3d54v zUdc@F1Et*Zg;Gy)-;eJd*d9LzpH8hwr}pKb2E|HBWgQUfL%+Z*$ou^(Z_rsS7H_tnY8 z)s3Io=toWA70+S2^fl)NIuxQ@{XhhV&UMDJ2Z}GAcnaG0pBAPPaSXI~fs10JKe|wm z=tgSiu&ZdBY?3w)htzOQAy+DCRVKown95t#&ioy3QRJ8UcNDb`(CAhLO>#D9O(ELD(oOA zs!7#iTLF`)ZBqr|!)!n!>uz1K11}I7hs@1E33~=Ko;xNIYRo?vEUtz`6lzovGl{01 z68l2hMka1QtEPsmWBTwjyKam8Soy>}hxlq6iu>{kagKKtFDWiG%Xp??MS4&TbGUyE&O1u<~(_%3RpKH|m)C7{*nyBj1~l26$K=9Kwh zPH}#HPWg)>tk7)Jw4(43W4`9SJ5$}`w#lmA69|Sx_u}$Hiw63eZ_2@63&tPCIoV2K z=+CA^PJhzLyfq0}`XxfckgP#fSY%BOg+<)e@%0|kC&o65g)xzr$>KmiqTDsQWkVz&WgGz|6pzs@35M_JL`~bXHp18Mi zb8(~T(QqAXDPP=Oq%p}zF~my}P@;c~vQ!Apayt!y8r2ob)@as-sGh{+p2U`;pkFM8 z!|h#U8s11nkxzpxwbM!_IIc5&LCxmzP<6JC!BwP>BM^qi;FaXS|6IdDr|RDNy?+@2 z&FWt+e3qJae9b5S;}2?1RXfxdJuR}Y4-ZY84qZq#zmB}r>f5Cp zy;G(|p`^>yarC+7dWL)HEQ^IB*+><$L^=9KPDlQ11FBF``H`N@?cJ0YLmi~&M@1hA zT5=^3a8Tx0$x5kvz7d>iwN?0d;E!(XcBtFqLvhW?PQvCy>6wkAm4qXxIxYOB6OLD5 zN)>r+>f40;!T6q|ND0m>rv!*>%(!51MVN<{dlWHfcO{N0iXRa?^O)Q80FJht zk{U5hgr|F{1R>^}I(Y}tO__LEQcpq;=M2ZMs+_<1=Qxb2vYq>#UdGEDKyD*#CP^v^%meW`_3P5o!+!oo9=Vey{i*C&EDs8dl{wa766y1li z^;{JvN2GNn70U1RqTuTm!brs9+w2q>Q&snp{zAL_tT}D0>V7_1b+<9R{@A`pgUXhF z8|I~l=`d8kRkO+$4_ZGb^NYD~03*DgS%N=TvpzedCjE+jWC4gk66k50SvGAZC#3RP zO|QIa;k3$YD}5fnUf3{HhvQ`sWO?p45s=UdLO0p8tyDv%nZ^QnHIyDCX?+M#LYcc; zb5MsJ=;Pd*7cDkz249aU?u`t*e@q2l(i6c<3~LbLg9{;~N(J}r4$@I-@nJAGK5?yP zJMOkU+>)i8r2!T$n6=e&}HUHSdW{%nDA!fWTe%m0+#c z7p341$elqTM@YnC951zM8W|F<%{30yyU&k@jL50|VRJQVwK{G??+g|pLea+E;_kK0 zo$w5QzK!<Aw+ zoOZDj1!`d0dkb8Wi}s)?uDw$Z>4+$XqP~^;Ox;uUU43ud2Y9ZdzKy9}$X)4`PTD!b zC);Ogi`&Syy8_*BL@*K~%qd91dkr_tvUdqfs1{S`(SgLxEC}LUww6`Vh~KbIIq&%8 zsA5yBlQ#HfO2g3pG>??;fT_x0i8l76qad$CkgiU5e&7iBxE+2F^sM;Meq zksC+LlD@$Nd`iQ}UFxM_-SQ>vnW*If!MEE@x<#5*NfFvshr^OvX95^wJX|iwbZk<3 z+@QWYM;0$@Dmp8aXe+Laq z6Nnm8RL~l%atR!V@&PE54?vlAona^S6a=Ct3ap_IwtsMb`;7^9qKW$bwST9k1`Hf+ z80NSRcyGpliL2hUvta(>ZOfL*^xtc4=T{~1048nCdksEZ+b2(?HiDrfuXo|fF(aHt49$jBnKz8m$nAGs2zuDsXsL!Kq;FEnAe zTl7IVPXGwqc$-KdkUcClQ;i&E4oqNp|01WE`q9zR%@>bV57-Fw>YEo7rH5 zI8SGI9X9R_P)Nm_bEF+{lVOC*5Ek^1--iIneE*l34&F4TV^1tAR@}4cZ?2_CmAnJn zGt=I`jT2?$5BbbA2uYjG-~u%-8ppWIZ7_5^-^9?FH*az_&CNhBKx2p?M|}=+6zoq& zC_%gt2dvT-hSO@kHcl3@o}jX+>sD>P_}btQr7LST(ooWZ>gTsN^0zOU0z$GUfsm+j z+gOjPxe4m2P~-xEUYf*U zI#Kdk0bUr;NSvqH@Pfn(ILE5`U~(?KKZE7hqmg#5WQdY0mK}X3zW5#TVp*pg?d7vK z@zz=yyOnZo;QZqQivqffEHsH-?T^%@1*1oE10(_sw+E)C^!b3Zyq zFhSJ%c$wwv@UtD4M0nW(Ov4Hmv=A`A)AS4bP<1qziP}?%e%nF!ugrW2_~3w7nRkIt z`^I(ts)8V#Gajq-;H^&F+~+kgth>o;G8hhX`~$(0;EL#^;M%0(XJ(;zhTcUStpsw| zfU;m~QtbZ}m zJX&H~E#!Fhzj!mg)UxvlYq*k>Bbc;9YE1i zn@p&W!*O@F4drdaoUuJlJmq)#SwXKJWIOf^_-SE99ng{nP#0mfG>L(_;0~M{j9p(- zWyGV2RKp3-KTHyK29O+a5UzUT#07SCfo zA$|L3=Xw37W@}lAT+ZK(%&e|s3G-2v`)Qak9Wp;e+tg1cOv;FSU0ZpfX8{)z#o?GB zWIP9cAWsMxzy0uYD(6cOexVkc$cqp%7JGTFs-r=5+hj*~6GWZ_f+%lXWf|!p58B+=}rlWbBUbC2@ z*JdeH`P#MukI*uIauQ28x?Zc6pun(JBN-4NAlb79gtUkna-SeAzOOJH6J8^p5}Zle zSzht?z@qk2zz`cfVd2(g2ifKc9BLxnr4(&m4zui1G$%SLM0gr~N6i??Ha*F?j9+aZftDTlzQ)zibG_N7fFmP$C33fMzlvhn`{mh zv&W`e`6UfxGf;rd@H+X-nYEm$UppG>ig901QBxyPjJpe_p8Hqy}W@gb%yOexVF49J7!S$xO-TWu&;^#1A-_b;d!;sA-9e8C3IR)4!6Rd1+ zT&)L#>?8!;{}aBG6#N28|LmYJ#2p|2g(KaEwF3Enu24rRJyfRcs- zDY9J95n){Z@-LJw3rZ(zK!t7u720rm`qYA13h3Uq;WHpj{+bkXVh;Y@i4a0T37w!j zxIYP+VO^dFJCyI>eY(kCX?F;sdSyY9%woz$c_U#hAk?B?C)Bpt0=*XLR&|sLku<+D z@&3Il^wBywk&*RqT=ZcjyF&AOIj(xEquL}QB@Oj9{GRqgDU4ihRJ-#hvRst+W3Dx( zNz9Yq5?Xpv{}4Kk-E|%pd6a6UoxxjEHasuRHHHpsIScS&pV%~_x0KtTT>k=S1#Y#^ zB)BUhUL@;(?mx^IG}j_kw`@9pCUoeoq?OZHw(YAbt&_cyStsa)=)buZA!+OX3$p&h zoiR;4I>fJU)>m2^+Ko7<1Axp~56}TPqpgM|Z3}JzhUoKLFqj-9=KJHtCjmd99eTCO zlKnoiEq33=F{_p)XZ@uv3tcQ z!L-?|yl7^^KPGGF?o{Ge4?*6#3i1{*5ZlO#{Qy2p8)+NMT<1$0cM~$6d~`Da@DkEU zA2ph9e6&Z&vKRyFc29zJ`2N;M*C|>j?YM5))}s3sgNv&r^3`tcC!!XTi$Hq^DV>-@ zu)XWt3={!?Qw?4{UlS>ZwNe5{j|u&ht`<~;H&b=eJ~dNx@H4U^xhe5mscKF9a6N7$ zx-pY3Br*YW8xO9esuv8$rx${h=2-5py1te?BmhaK*G8s4G<17^Ws-S~1Fa3yFb3s? z9NWBNT#%CdNPngNYr(8mT&JcKeWYAZJkI@BV-b^OFvXztY-TY0j^c|66rO!rdtR?3Y9y`?l$=flQTOimR@i%-BH zT0A#ia^K^W9A9P{Nh})JC!7ajHsDGiRitq*+4Z56U|r;vLdng546*JU#z+p)#a3K(9dETD8T=lUVcNB$bAZO`pX)-kU6UYH%7OHw`Zj{yB;pS@#U zvOaBXA$A~VQ#zcbV{v0>;&z3+nqUrg#59bwWTQau#4i`rO~)cw~$-XH_Qq_)u>MrBF-Y(e>u@h;w+Ofu@?_5zcYGR zC~lqYkihX8Tw3I-iqDjAnz%*~%`Jwu=Jf8Lt7~X+^C5phNeKk^MB=xBq#kuhTmr5z!gs(VI% zboWklQTrF*7CTKTr;IVT*tS=NI;5zMp!!3 z4(JoTbgir-&@JS+C|f?)f}DC7>7C7GX+59YHqsTySuAVz1ys3a z_+hV$yL)UrqR=TFS3=YXQnjY$0Mfbfy#LSAEk2aC&bj&vWbNmH0k@Ow@dGAPl9O^U zNP;8LlC`wtN~OunHJ-?7iR07&qCl}2YHFKtcG!<#J^Z+VW~qs+d+C<26LO|k26a%z zPt>m7H?ge+Ql|;Hbkhn#bTPM=$F9@dfnyY0>S;iMqIn;LzUkN)4B!fYr?~!*+sP`M zYJkXp_bTvIIJ?TWVrSgm;5NzrjhpKZf$M*64B1&pgIYk0C_4G_7(D84{7!fR_gpxG zrC&{16GgUT1zD~GT?v%s!KeL>#4tT?j}N!m@*_Y!txqQ>_U<_h6n!kK>41KtiB z!Dv^1R{l0S-^koO&w@IFJbmygC+(K zp8?hP*A}TJ#(Voov6d6i!kT~lUm}QwZ{xyx{*;vHA#ztiI)37v|5kb~p0?&9t828O zku{4DWh~ToLuITp+gfHN`52o6bZHIWRkI8C+Sa#b0j)i)?P#SnM~0J#y;cB~>gf88 z5CH8MA04d!DZz(fk(EOr zVborPeX*~{eOs2Gs`F8!P~gW#u_FDtRQRIozNg4yU*PN07rn>y86z{#u@=JdO|J`O zXJ}$)65j*MFs5h*txyd&`k-L!Hoc&;%qDO)GJM_OhV3!?FxpTFdB%StvG;sD_9zha z+?Ba$D)xx^)V#{5T3eMOgM%Y}s}v%t2|G~oFfR5~5PX;fDX0@r#8?AGjMqBr1pSv$ zov`_*?G479b{i9hV!-Hb;DP(~&5J*P4o$9Ef%rqShIs5pFa`F)c>6Oa@?A2%gAP_5qyAUS7iTi823! zfwwJm;TN>p&V~`_`I2bNy9l(g8wWreJ9{*Apl~M3s<_<8hd-{Nt)kR_$oyg)e9y9> z?J?T(xmC23!hnl{<#u%nSP;fEW2U=R?k5$Gh1Bw{!J(b(Y=8x{lt3)N`l;~)8tB~v z(lV{+68XpXG5`gHXhNIbffSIzp4z2=d&%WMwzv`ym(jz`8CYc)NcxlO0p!&nXZpZr zz?HxFUsUDaUxRvQdNp<%#JMDwgLd>Mc>jXiQ)a9w>wvoL@SO~Wl+XQ#rpJQ{6g(To z6g-qw$|K{e^LdNnJqAia!QHqQ=xA9VfeM&e;DAcxR{P!07V&DFcP5u|q-2=Sl=q z5bo;qM$ZgtiOJ=S9DTl>9$70!TJ%+b5Z?gdl28k0EP5!dqZR=$>wqlL-!`u;OZyS1 zuBTtEu4b|LfKXk^ypnf}Vzt~J@ZXbrQh@r-nnrz-4-vG7HB4qCL#oN>(!z2x9HgiN zUEOr7$-LZk2CH0urJ=EROdeMLtMahoAjd7*1kBf9O@8C#8dP01+P6RcoQI#$d7MxT z3}!A7hsowz_yq*R?I*9k_Zn_dCUjwuE$Ob#3FQ5i#@$OZkoD!j2~kgE8p|avylaZl zCj3+S(EB2(Y**Q`#0cf^SWShKwoB1DGewW8Lsm}!(4>YyQ+4DTPbvoLiOpGSWnruA z>JCD}suLnkMc2X8P=*LM3v$6T;o@X~6vHZ8T&V>l5o8+ebT0tf_wnxzHSb|gZ|yQ? z5simo+$r@CYx03>VBHx_?9mcW1nlH2lo8h2S~O>AZ4JsKql)uNYiG`Bi4)dtF5%wG z++n+=wHbY~vbtslX(c2?0(KLz&H`g|!H?W>BeJQ-U6-&hf45(NAyF@5Mb-uoM;l?5 zQxU4gPWkb-+NG-STwSdk}&pEq=kFhS&lZVXz?QN?1lVIvY<7d)tu4Owge+SlfVXi_dd)@s5&#kk>dfo9G#$8 zFRCc>NL6?Zwww+4TyP~XT{nR5O8y1Q$U9kxlZ*9oQXU!XOi1z}tT5;X;*6J_S^Z#5 zMwdGX#fvNXO!bga-Tp&fGgfKNo0b%_U@PAQdf47v*%fY$nMR&I@n=@P@UY!JP zX$3?MaMln?(C_goH1xM^zS%mAPlO(&lq1ISQVjewrzG@owBq-Tv{R;7#`{M zWiZ=w#5z*~gRuDWS(rviP|>|#;!k5~&qM_XbE?4tU#@adPP zH8R>V@Tp{gIqFguqHjb}DrX_Qz)4o8E^oj#!To$!&=%TCaI{_J;4U-+>zgUXpwo*b=2x-*Rp=YQ3Y=ne%mK|N0u88ArRhu z6+(aet)z@wMNs?(?pr4ZGE)q5vyNrGO-qq*15X{Mq&Si%s9)z`_-2fWX01Q~L9E zFBqANRjz`KfCW%#4vEL3dU@8h^kWzn2>9ungqH!c{&i~F(TQyP8$tg26OvzEJ}tQM zvvVXbnipn$3RQ2gN~wVAjX(n(k~#dZi12M4Uwf}V#cuhz-SblWJCV<$*->N^Ccf^P0i7XG=%_0;Y zkUT#0AWlKj)QOM22pzB^ugp4WSsmpd`k`ExvJaWP*CLE4BY^f`8Y5Z|mDLkpQCm^v zd(3j-ys5!^AH!>N`<_zA7at=oD5ko(EWaDHS%kfVtQu4ESVNHQf4*wZLSQR}Y0+-c z&PVIt))fXR!WHKY#mF=iKDDcrtEl#`NW{co5->&5NVnl3f84n^eRHCJiZ#bHi}EkZ zuAIHlRIKA?Kt=c7A3lpBpMw+RQkmc(M1VMO$Dsmnr*O7b%?6Dq`LE!aH!t$0r&UgL zrr-kYG!e|(U7x^?=|ccQ6yYwv5JK;;*li5Oj;Gws>K>z(lOm=^XC9DMTq4eMo7l*| zR-|SKwx&DAR<#fZwTq=F-2w2IxPCCbHLWV~LRRx_@a1gzfQ(qwDAV#2s-rG>Q56tq za;+AxZQouN_%0Ldty=r}&j-Awd3n+)wCC-MqbkSJ?2#W3(D5^b#w=%{bEnam8?~iH z`Z$0j zlQGCg_7NK+=_9U2My8&*nn({KnYckB2fKpBe(4$e{|RHWyoQueL2J2;%7q&@G%(GZ z7J&=+pOE7zwE6e4xEeSqGfF}CB{aF80OL}04!A@O??zBlS_&IuqLDnf3hY$(hg=7F z5DI|PU*%yWvjZq}H2y>-nKWu4Dy#xl4l`cwbvtFUhkQNFAspu^MTdG_Vl8F62{od1P!f# zYt!$TOFze(XOv!RYJjWLx%mujm{z}1t3-Sw)&(SwB>qLxH0cxN(7(zxiuHl^uWe4N z+av78$QbBZSFU1xPBoYM_GIj@gps#cCioC$MP7b-zIhiFF)uNLq^t(ZiaF3gqVSEx z#3gelmvne`#%C{3Nl}DGh>3F`k426I7e-3L@OQHT5ORgRT&CYQeEWT16?FwzMPc-> z?s_Rw>Dv|Bq*LTmtfsg)&OzKU~+aj&w?Y=NGL zL7aA+_=NS^bF$G39#c$r<9j0+L5`i|b$oeSnLiVVn6!D-Zy^KJV4`xpz&dg;(%_hsUM zQ5M2&v&L(8BHIIR8z9QzXx(iPV;ynczVw)R8uVlJgZMeb6pGqEPru@-;WRQENk9uo z8n{fuV0)lKorB>sy9YtLk5QehrS8uMu{*IY5$X@V4M)V8^-ZG=!K6B2{kg=>C|3+d zT*?GmCN`qr@CBD;=9c5e#w3XQlmtoIvMKj^8}*cAU8U(e$t$LeWZPI)ZQPyyt6WUx zF{YKX3MaR#AeP8Cg3dk^Hx~*u+9c*zcCQuW4>K`m1Pr?+1-+ucimD?{j|VWnXqFUP z#v8dAC^K~M0%OjQg@UAS`Il6DD9H`sb4Vr^rD0uNeN)eiF!G-$X(Y3RVO)UQ1vj$6 zzhydARk*Khd;gSlJ!++a66ClFpGt%23NTx5J@`R`AcP za&mYYF*=tLW^&ADunv^3wQuOyF_v9xHlE}1SoJS-8Ht$T!3QQ@5UoLvWl-F#InS`-kgx?%6)+L)8Qm0^Ta;WeH4Y^^9<;9es7Re*E=@?fTX({)T>BV~YPVe-ew556f+S&T4U(K^14(g8b!3a-{&irM31ZmbRlp!uk3zA0 zG3-R&$Yt7jQzm^1&r!Ity$QCUz#&a{qZ%Q6{svGdKKC;~`1}hHJ`U3-dAPD|-v8*p z(~NsR12-rDFTqHCb(!{v+OEjvXSP<32mD?J*pr9q&(NI=!4dCQ7JZaUWkYO%^giNB z@drdCbZ%huTl7@wY!Pz)j5zfCb24GB9M=|qz_1&`;=vTIuc(PSISTe_*NQf0PVLot z<*^H8+WX9v+mQ{(cc%s$jiNjtI%#aM*^%frd^?JMTwq;UDWdOG@@F9>d@1OH48oBJ z)6-ql{cu2xnXNDV0V*oMjua0F40MZtq}dz*LkX$}-ngO00H)n>oqCFMpBArCt%c%Z z9kTj(7+jXHZ8Hh?$=iVd>_1j*m(P{$ocxn@@SD?LBbf8De$w2Dq|V# zR%*$Xl%cE*E;LSd1o*<(Rx;xi0`5MY0#+5K)^Cj`s{;!S*Mn@C&?{LVIyu}ZX6g60 zKii{;_*8IeB%jeJ9>=N>Dt*0-Yk!#21P2-zqq~K zFf+1HFGAoS(WJzEaRK4OOqy{T8MIq^gq~X3i?&K~yO5dBtd(cvmrDMPAnhVJV>jt^ z+{R4QN+?}Y0P6A66tb}AE@!5>G5%$p+XnXe9S^#a&p8)&l`zrfLc6xCrrY>37t=dK9g5`@1b~7PR{Tj7h zHo7or-ZNa$_t7zZ72S>g*l4(2dU=WL#;Le(1hH^QNA8E{hO4?ePUJ0*Kzr!W0$tM% zSbpth63Fh7C6&@^)AkxIr9CdGB52dSW|DvOov;!(f(BLsF_mlWFUxHM$6CW)uu4JY zkFQb?HorJp8^9C@`~{f1DTfdjl*7|qP?$RwE5ZiG-4@ZU+&z0KpJw$da9yT*-q)!4 zr3=?aG6wA~FM_$RJ?T{4IxGnqxAuTN#ySvc+!W^DfrbKH&M6Ir14xBS-bf8a!jzh) zH^ZihZJmhGD3xxKP(mM^UnEE~y$)QS29{iMS&w3m~`$2j@gm#Iou5)AkfPyyxR2@am0U5N6rUqEH#bmIJPp)$$*|`Fi-BA z%#(l=a6cPoj|?=>iWxmiZ`cO>#|9P~!1nETWA7Ze0Ny*Kep_*zXtEbudbs~gGapNN z($Q?elnnPRA$(Fv_#(v#@e4gV8NRtvk8kTKhOrH^%)$5U0a+ z*(xfx)U>S44deGDql*AB$9pholB8TuYCGg93IUHkL;$2)TZ+C0Wt$0r~5{58X%dNfp>5L;!7sUrW1si7;Fimcl z*f=S`XR(7Y-<^l;LEN)_lQ zuM>8BkNFDlxo7VK=j0rs{UN+Kq&y`sSM{nFM$0;di)c2O*sfJa>3?O5@km0wK(MYO zfRTPa1Hsa*tYp_N2fSptLK7-UoJJ*K@Any9Dc~JgEq>j-C+k3LLVf*(Od??af~P!J zX6lFEt-2Y((b#NTaa?3y!wpJs>7Q$XdAvyDTVR_fEhqsN0uMvS9ms&F%w)NrnM2`0 z)Ub1WG4}67-~`oN@snyQZF%&`Kdh)2`Lg>Fg1&SjJ}bND0Dk~TuL27`$@!-+mS(;b zOFS4$P00B;S*Tv$W%j4wHq9saDxlJX@+K!!qPcv zYec)f1>9gJCAb)wMDp=wq`Omqz;YnkdjijZVUV!?_*%j$yqfoRn-$(Hi;A_X%+f+D z?lo|rnMU7Do?5{2i!uRjPScFe)+Xyd5(4*61Obm~ZB{@af|l;rS-?0P)ls~paQ{UL0#Ox2 zacQ?kn>-@S-c5Bd9yv_7_5x~oy-EWd0&?T9zjV5$xB+4h%)hbf{TN|1b5r06S#E%J zU}JIi05r5vK!!vCx3v>O0l}<=iO;^8U2sxS=%vl*QcQOMJp~;=*Ma-%jU!T2c~j-H z?kAeHsWlf{ufattIx(KfNki0B2Cl!dgH)oDCy;l9U|b< zG&U)pnwXSD>s-iAlwNJrvs~4{4L70c+F&kjc&OCx61f1H2^hX&WX+A|$Rh!?EovrB zl;Of>vk99j^^3Er!pPz2L6!$>7MoDIi|`i`fXjr6xQ^vKvkpB+mhLxjzFfbB;3V%KJd{%#ONnu;BLSEBg(++h z>}04pcZ3#@+HTv8Sd$OZF9H(rB7sb-prLSsS($cqE^yG9aF@>ouLc_*KaVf{{nk3e z@9$h9kk2NL`tVw9lnvs^>9s=SjD#I97gxYsoPAcB;Y&LF49+_n`P%EfA;u(?i4_QJ znY&-*5DR@Cw;Yq6Vv^%sD&~nBSyjo}183@ivVhY(<{X6_j{s!9liM^xQMAe>26LOH z>8q6X0Uu9+R27HlMP*miZmZ2aSfC8<>yn&NP~ z{C0}0Pm{>TA;+{i|7=|6;uGM|?!`hIUPP-Nk(KH|4K%(wKbfI{@fBk6r+dz{KKgA~ z@jJGuB3nYyHZ-R4nVY{6tapM?HnNu@TVEVKaAz~ta6g1DE_7yO3on&;UKFpBm_1TV z>NA$#;SrRwkPhj_ENO-sNz=M>lF3790zBxJOkn|;GJ7=nSxZNYdsbggO4XKgxIzRV zY5|uW%sOqJ)Y~V>Rq$@D0)CRm#*(!~RHh4mR@VL!VC}I6qL*!OhzEVco3-{Zjm5Fc zFv$WXIvc@Z*hT2(!?@W2U`xkQV-Qd00RI>W>`NbU_YLio0F)9GcZ`? zptJZ!Q7FGl+euoQg(CZdRMO)YY&K`?r1C(ph9YZ=ZzT8VG^K54+U=qiK;jWOzs48L z4yw~-@MuEMxfP>_Lx-vj-#dNJ1H3UTi4D+W1HoB62nCIIHt58yxCU9&l+~u7-5ALeSM> zVm&&EzsN&*tuIindyoqSf-mZC%dds*qT*po8w&z2Q&DKniF5lHYdQr!$pqcqLjldN z8E*aj)HqzmAETSH7e@|VSWD{IhE#ZX2~Af)siBONWRbONVK!<5@?Si9akh&B z(*v9ea*3}VBh!DLdqv9R9xux_$G5bEo>5=VKO zfPI=J=ukf%!^px?ac~MQoT2~ZqR1;nB%u3o_e8h>GlC31n-f5Wu6dSw(bgfw#-L%P ztb(cxLo`FXT}FIdf%c@Wi`CAStC4f$EDuY1&gWfW-lZ?eu|ilzN4v?x7t}8Wr#<*< z3qNUFw3yvXPDV}vsX7K{F5iUlvt~+NJ)$%}-=WRWchwJ6h)DOOlEx2u9Fd9+lt;+f zh1-XbvkR5YQv`QK@_;RHjjhNTLLX6Of|E^DOJd9ven6tJS>PzZD)+!D1WW_EdfEDg zc6GgM7wH8B6=jB-KI9MvzFw@Ca>7IlgeyjM2}#kx)XUSi&|JY`bT{9`;04aR69$8{ zoyl&7V!|Y<846I%oRNE1wjkE{{{*MfFerOujRfmVo?zo((Sv}t3QF*VKRHII+}sX4 zQ)%-{tH%#Roe=jZVu?WS_M0{BV@MOTw) zWP7ceGo9G~sKbDwZCiZoW*7isnGzB`xOd;6t|(6mCq z#w%m)zEiV~P`PrTu`aG93-fQ3)sNsGseL`bfOOnTQC9Vjy-+l6^{bT_W2p%lgiYav z$?!@&E?O50Jj$o9&K^kf__}@3;=F>jvgYK0f&k!E@$r~fg@?NuGhee$TWY9AqU#Y7 zU6@Qqibe?6h)t_B3$nB|MSJ2AYM3h)=r85S%j=!8unB0Y7QzX4eNc6|m4x zI^iX63JG|X84Etc8;2t~ZJzWDB5m%|bU_O78ti*}K>pvIZejWy2`S)pe_V6>R#j3V z@VXbhcK#|nOTi(6G3cKvnhBP`UOVmAfiJ+_F9A|Q>HUl@e;6yvWL0!wU0_znJLdf=Y5i_bc zIkByM{kZ0v{V}dsyc&c46~p@{P16kTx5hG~ZTt}XwZFjk3QZw}v_pTvnl8Y)?lnVS z+5javX6R@)!Q`pTfNnAHK)(7dL}ntket!lhpqZLbDSFu%3*2lROu7i9Z}WwH+btMM zx>KIJ6T})tB4+h{`Hpu2#kV z6T~!Zk}83r$n?Xck?`uY>}|g;Wiz#IJ9S-IXmM#Z-F%$dg@K}#!`0%2Ny?DIw*~fR zxCmwrjvL37#kS!Csi${+>&5OX1smFhNR@Pi2gYD>Dl%8{rX5?ES5Dr@Z#4QW1jkx( zwFvpFo=j*sa0){$>8zgz9^*TU_BGS@8?dPrZ)Dq47#tnzs*8hMdV!4^ZomT3Cz?WV zr2ZC1LPIxPjtve^5i095*{F6`^bEAF8TgU6AcCE9K(O-`IMeO2xb+6Xi3tGEY(Hyg zNm-G+4UgAFoOKUO)@yI?Lz}4d3}LSDY31k*aQ;!-M^H-v-X)NNE^PLa|85WSe8${sn*;KG|dX zp3Ib{EP#=9U^ubQI1IeWN5;;I^#o$t8RD&F77@jpY_w;#0JzaFn4H{~@t;h2T7n!i z#hgd5(k4xkiQr&C=8y6=?)EQO_q|sxXo+0h0hADl(zzC11_82|Wg~sI`Ap;Y+D~ro z+M@4w{(~e+cQ{jgOA_jVoC}g&Hs)JK=>jLX1vafZGi6ul!_&#v(Fz#S9X?R&9y6xl zL2@PIbMOQvCKHteo0Huj>f%AZgi$xkf^!wXe_rqu;_Yv)h;f>+bLsxxxAY_%5n0K($t&7jx~u1|{# z%DOjHmawAYqP~5uzIg{FmqyMMeO5_GMAaq0jH*Y3v#VsIGGgh6V%wp%@pD9sdDVdq z#=;=m1Thro#81j4B=3xcVoUQ##-ic&R01;=oMz4y@Q#c8#fujAD2>QUt5?T+HT?;a ztKVy=w&D`)4qxXQVu%UETNwn2opCYl>?3hhG`xcZ^0LX27Y$XJ7C?IcR=9N zT*NVz5^i$_eKEeWYC8V|ouF}|zY>ZLx%JsK+YsiP@PUhG3YKrd`eM)-SkYbGvP zT|4j*IKVzwZ$%VK}FA2?^O%pGz716ByXzcODSDnNXAhFMf9fhEfI{~xPtLWC7 z!0glv)(lUKQH0z5(^ulGM>h=*#aH!>^7R->2=gX#V5@2qvhgaqg$-;4>hKa8neopzf6NWHox0y-lX=`_KS zn1&{4nrw8& z!$kI2--YZel$wQs*~b&q^yW(Sxb06^k^+Q0Or4&}$3S`&JmF|&o*fuiNcpimspT#3 OgWc-+H~MEm$Nvuzh@r&* literal 42068 zcmeFad03NY+BV)!tJV$1T33{e6=fU*9&dj`I~p~3$e_}HY6dKCJrmd?d#<8zl;TFv+#(Y9m&?E9R?zUh_YF$8f}wSRS+*{#S4! zW7cY$MK2|5rDU5WnL2rT&3d8DYEtvoZP+*ehbk-hmhJM5s_Hc}bv*d>T{GvNI?67-s#~=qsWv)`o^O>)@445*>v+3V;}*^Acb#ET!7FTY@U?wmhTpJk zTexz@x)>%y-Yvpqo+R%G7=I7CVoVjtrR;hVdhp_86Y@U&@PG6^fj2m(0{qwfUKK_; zY1%Yv(#*Nj!utmweRd`EFUW^aBTt{q;DJAxfn6W)_ly4kAH1`E-~ZeP_45_QD|fD{ zE504~RM?Hru;2 zK4K^JD{x76%>utrP-T@@g@nv53$mp$+KnXfUHO3As_az$GH|c?ih4F$r)E_;lP{t3 zy?!V!?@N)p7>FRKJ(mb~4hr!%LZ}T%|O8JVg?A z5*6VbaGT=2xZ+!a>A2Lr#;>H!CFO(EWO+RG@;kyD@UQmLEQP9wgF{g$y|RCyd>+zX zCtOsQgp!%n&hzvj6mz_gr>I&M6!38GRQC3fKnx(hp&K~(WP!^0byFaX8ku?WMB~1L z>LyhHD?-T+v*nBKoMNrh$Lp7}KWA+XaO`hbC2f=tL_SY2UDA0eJ|+1B%p})Z^-=J; z7E~>-rCeUTjoPp=&FW&<3$9D9n^3TAK+yvRcHr-7j{fWDA-~67Y z*YjL#|GExS1bCZDz}-{;9_45V0bHnEnY*bamD;EF_s%s{eFywlUGd60E9>GGUaUD& z^^YpdkKljaTDbD9U0441KM0?ZwEx2O3y1gnz7~J+U7^bj7fphszWBQz8;jfaaix&RmljuZtDt*esC7?)7db2G3=%-ZkKJaWvtB^<~2H7L^ z=xC(I)-?!aH%uZ*sU9^@bOdetryN!7xI;-=gB`p9;?W$()Gy2@(em2Hb7dT%rpeD| zayr%OiaKsHU>0ca9CBJYLlapgL5cKW6xN#5I9{d5>3C zEuo1Sc)xnewm#=ttryWN9+QkI-kIW+pq(#~#057FJdQTse5jXYg`#BsSCixhcglxU zR3r##caStNx~~`;u~t2Z%`V1tUE)!KX(yF~y7VEHNzWWG|igBnQXp}MD#{qqAVp1EkbdtopTHzzv_*g zQ1{v}HrXcFo1nF*?{9KW-I&1fSv*wMP8TVo@k$06l{Gzp$B@<|VOc&BmO={O>cfhB zZKUc?jme@ri$K-qf4BR%-Z9P=TKF;6SrpyVS6#Cr-$e@RxOB!wEJ^XpTc_%CTngZ& zU0=mreKLlO$yJAe+Z+SJZdZWNUIkB00ST7+GAG#ZUCf+@oz(QElBp!`UQG$lvW40) z4`kkOZfJH#{LHzek28spvJGeJv^2dhT`g#-bmpm~Arjw3pyV3S?P27^I@9jt=nzM5 z_F?Lo2jCqj$>g}eMsrzfls=g??BA{1vC-AxwPcn##qhy!SVaM=?d(o!Hf#>xV^ZSs zHx$<@NxE7|EC@kYR;4t?t4b5-u(K58f`};ua+Fk1D%xt;*Ur!7@0Bn0%ferHC|<<~ zLpxiWGJV=Y-z#1>$uu}P_-<}rU{YeRl z;*vR=v5k+w3vLE!4CVCgPO8}k1MU|Pa5*t#?4ZZQShJ!)nX(1LTNO56FJ<~uPa(8c zy432u^PaI>cT>Ah?G}T}$MX`pEVx!>%>=zAPYVO>6%c5ie-LQ02iiK~Gh&8|Tq&z} zr7gvhcEA+n`p20szRvQX;5F71^#<}KPtsXsnTz2pEY{&nzwG_Q?!qrir%PfDA_sB3 zrQ<@@6~FL6X;c`w%L9r6KM!3Sm;G!>r?`7q zd?;d?uCufA@VmS@pwT4m8#)`QKKKj8`FT?YvG{w&H1n1Vv`e1!q2Pn<46RpH2$i2? z8)Ovr^wmiZgXScvCr#vUDQhhfMHr+;cEm7fhy4`#IPfeU#N1};BlLwLnO0UrZc;A% zS(IxkH=PTv7F{Wf(6wJMU6C(PzlOn=y7#Ar`&dd&dSkgTq4DN`f+9>^e1^6G>kIEn zYz8rSiquL%%acN>=A)qh?435!^gjc)y0jRUYS2!lUI2~NdXOL+A{od;ijBL#3IUx< zGx#YNH3u}N;p3g$+I@c?p0eS8aIX0eH5q=Z`b^d8y5h&hE9;JiI_v=r%6S)8co&ZJ zlkf%Rf{75m7W=%7je`@P`M`J@Bs_94%)ymCRHq}~v4I*ven0cqa1#wy=FVVHnaLC| zX~$?^EX{?1&RKMv>a}DIIViCtH;mY;wPY#Ds**hN^=I&}to%=bs@5>bA(Zwk&yDlY z;q0dVq3V`i+#4+TUj9|leCWwJ?-ft!f&9HuUJ2{;*@4cdNOKjsrv;m@;)qNQ0SmCng@oZ5n=F{sP7Fs;&3gwtwP2NctfZ7ZMV( zT+9BC~3E54+2Ys4&qJ!rdz%37QM zLjJ2F+mS6#GR=zNrl1^7Fa>T3ORJ?%_l-G4A&qB~C=-(@Co52uMUSX- zY%|Ag42aHP+jb~cS6YS~_R!tab+3OwZGv4T9C;|jUimI6ZjiH|pMJr`a2Uj;;WUWn zMhOzn&$=E^Fm>6}vpa$&hV|5{eW44I5S6}R>xVoErpd_9Jz?WXP8(y ztl4}}Y`K2JLh|eJ+OmGbb%CS4?2vxylXwYUTib1X^rMR*2;p= zD|zL#+f3f^Ub-}h`c=aoYptu;mX-c)p8!e6ewiFhDaubQKNsQl+%k*I9>JS<3l&|~ z!l~Rh6|(r~H_Zu;1IEUFv$rsKrfC~q>tZ>yApH|@_$=!Irbuf_>M`_HpTv|QRucHk|Zh1i>p)rZqKaHo>oil% zPD%lde8IBAa_BJ&3F815#_H3}${WV0ZIzhkF(cTO349~OSQ3g#mcZd(I-Z(4LzAaJ zB@u&sA~5^6(0t00ck1V55G&1p7dCX#=uCbd82x$o!LNg++qw+5bsw>o&9K?K+h{en z-!l9NrL8m!+#+uVvFlHtId`&ga2kP}#H;Yxj`61xJO%DXWxb`%a&L9J@^0#R$fGM?b_7D-Lq?2Z6)F59IR4hvoG4!T4R82yVS=(D7_ zobGwcYH2V((Lut6RdmK103>+1dtdj-W4&({!1Whr-zvrBsaSXje(?TgkJ&9&k4#P_ ziI^kDsHGiRi;+O|A&GgM%FAG2-aJIC=3B4k6!K3NUNz;i;zQKjg>kl~vdctk6?gp# zEV>0e6m2pAOvJZO?ksLqsa4yEX$aJMv8%l&8~h4apliM4hwd8<-F2{%o)1-D_qNRS zIO;u@FGHp<@b+s$vxD-7dnwNhJH)mekcD%`v#`3bNm*o=7``|9b25AyD=)|2xhT!= zY5F8Rh>PuS{&+%zp$ScPdqN_%(TPp|5Bx6FY6p$yLmk(tNgvUg47EEf>*cZt*lI9F z@^H+6aW{ket5}b;8r>9i!(h3maVUhhz8k==)@Y^Cwo-_@2hjoy&W_1;ckmx2_{ogB zxtGgnY*g#A%Ec9F!}u6OdZKCg@1|UJyf^w$Y@55aaRCVgcD#mVO!sAY3j>}az z&EExGbvK$FcjWfWx!V{1RU!I|j{7AitxyK2g8MI01*qxW;R@5|Ss%}wE5BVO$w-Mp zwY%hK0YgxCY!r8W_$*wZnvB9^1vCAQ`BJ5jsaR4akw4v0HZ#hiBeiJe2JE3r7Li@E z%JeKr$mX{Zb^xWY6cKTHyrbeb>_B{-@&E~UM0!?zvrTz9U$Lu-TUlAT3xE)8Z8Q%} zcW$TM`mQNo$G&b7J_EPFmHTvN@IgR=0QN#T{OSB)0=rZfZvbWrP<{V`Bmu^d;ca1GM#?*B(utPOknZxKjM>9vWBG*Dih#ZRrDH z_W%jIuqyy2m;yr+7j%#^)773xZ8_jK$o?P@{|$39+5-OhX0uBu#bFKAMXHI)kme6< zuG6|>Cm#XbdJt&b-L1qwka7R2<|sWhkdj_p%wM!MyErRlcI)%dmNhfqNxaM#>&3|C_us6bQQi2)fJy2-0s{^9|-*GS&P(cwNh9 z>JkUiL8)#882Bd}Yru7d>^)1WIBEUm*g%b!$-E&rM3y)u0hP0x>nP-y1v`z<)%c>-wjL~!KHWHAdGhY0~|B} zb58pm2R_;%Cgph2Ec$P#_PFF4?LQk#v9%Cy*~irLb^JP!R1-Q1!6%e_ z35IgWv;R1TKFKn~KBaoOYzfoVj(-B^-K(M+U8p4{TJH6L+5KkgB>U)Ydib3z1MLj~ z&#wZ16IFLEjYpLl%Mb-RJ_THogG()t5zJV(8g_q}Pd}oXw;(C%4PD|kBA|SD?@g$Y z8ruQ@K0(@ZG%Ni(+-2n$REP08Izy#%Y5F-mEg}yBk!Q`vy(r|^H{=k;D8XluFSUl~%DQ#mMkF6&_6L}bF>^YK ze7H7Prqp=stwtp!%6HLZw9)e{QJqXS@awv&`91-HMXH~sC2LhqN)S?DUU42Ae&aJi z?dn_$((~11B;Si`)_3WLRtm+33(v7BJdVXadfR6fH!(k3FRbmGWf@42pnr1Q>Ug>% zJCqUTUYo`y{zTbe6J!#3;Q^g^_37Hiw-j~Y-y!ZIMM2?X3qcIkAN&FfzSr71jSzH* z@)|Yhtd3@>eeHX`hl;Ka8FyJArc_31Qag%}TANb36*XOwbY65wU&Q(l?^CzB(p7IBR-kfJh34(o z!EpGwI{@=AI)XHry6ZMbj^tP-qC{^&O&%fbJHcYHib?uK4@hI$-& zC3G5)fc)^_fB%DZli4flJ^`wLf)k#*z&-gX_0l!)vZ0z_g6QMLn^dD6M~(WfF=X^W zs`*}LAW8!xm;v*l6oSiN%I{!k?I!)O^*l@kpD<%iH=6Ei`jk!_03z}1IZ=PI|M&=T zN%RElnEmsNAHorNyLl^;sl{EA|H` zl_d~Knvx0%ar3X%C#an|-CauW$k=_l3eSD+dgoSLAir4Z1)zLlP>+9(db)JCDM}&f zI~*|7JVzG^lPHi9K;r#mpDfpOXu{-uyJtUBa1Jo%#}s{yS?|zkYUMMSR_BeuNa^ng zgO{7M1BUyhi(}tNDtW_}a8ewk&z_T%+}Hb79s$nZZ2-&y^LI!cAeV?N{*Hm>;?k{- zQ=OgF@^iem6a(=J2Nd~TkrUY!rd;CDlN=0N>U>3z)eB0w^8>AkNWMq9G&;0I#o!IY zThc3eQiZr{N{JJjr|IkO^A~wJ1Lo3@XusTGZjsvZL01U0MF*{qKm*AE4WwbOw9EzT zD*#>5Xe3`+1l}##AE4eZ7WhA(d_*x8$>}kV3Ic-ZWNch1Xl?4>ilU~ABi7Bl0S3qq zTqm1KLph8C49T%FE{-+uJK4xTQZWRR{&-i)-ppvG;1y@lsupCv#xJ-%nry#igOM>M zJicW`TMK)S2*SxXsw8f$JIWf4j7};lYS0G#MOkZZ%U;oj6#elJ5Pd{fWvH5>q~x%8 z-Bn{9wX~P-%W?><>vZHq&YPFn-}#*g--j$rb4!Z=Q28M8YBOJ_xjW5NNFi^De4+7Kp_$ z9ti~!i?thcH2<#Lj|SYIPuS5qF6@w8^J7#5*{B^+;M(NA18&%grtpQI071(+-x<2- zsx;i45KarwcHm_%5=fMjgCw0!-CjR%6AUVhSG`LEZ{{2-5lhAI9=I$*wO-mZBYk}` zz=j9vyKe3+D@-mZg;I_^nVf)P%JIC1My2Iu_bU1iZOh7!sn+sK)-_@7Cz*4R^!GKLitr=iN&>d6H&e1wd%jx$Y@xS=&f6NjRWIcemt5>#~0E zYlMi5E8R|7Hk$!y>DVW0x5Rb~Y~tlu(tEcu&ey| zE0t@R*PKAd8wC%haX^_12a!fHTxnd_x880G|A|E4^`)LJd?y)8 zuSlyOP}DC=tx)1N$~CI0b1u?m_|&HAtU@j$gvD1CRa4ec3ZDR#a&QAt(I*?QodohX zNfQKTEZfI49pJ^(_T4Fr;^~~Xr|Wh}>n*nmEpMCL+!U(S!3Ph%%bSfblTYZ8(muA- z9+1|LNk691H0|fe*d$Rq>ki?qOXtAtcY+iN%PtTTccCa2!g7?OnzEF_H*gf)TOmkO zP1%xFs*1?>Fl~yZSqzUZyYOH*jxy;kwLnWbV;z>ssFQ(~QISqsjv7haLxx6KLz8>z*xn77gXG6?Lo;_%Me{u9ia9- z2D$R?*9qzf)V+;Nt;n>uDKKbv`OdiWtzl=odHLdQPZC}EYqtx`nX@wh4}%H8`$=5K zt1ifg;V6pP{dIO>94q-BV?nqsgZSn>da-M7)DCaL)0hi_rguf|#W{yKi6>7snXkGb zA^08$!4)UNHuFDs+^Qc~d{fe$4xV>2+gV^;hg9AL6DzOWFro4q_swISZVx}}NAmGg z6)^^{edx5(JT(GbIZP61E_QI84U-HziXcD^o(JS$u|@&H3WbWu{}sj|2rKU>UuC$TWVXQ|6=317)=Prt56I&%1d(; zoNtJqi++9*qYm(iiQUk-x_0kTisxBWxc+E<`j5)G+PC^}^uuY|gr|(c{u=yKvocz$r02BYgFsVBSQ&0Qe|!`$ zJlbNq)eLvS5ifzV=~)Ji?ntyxF$dk{Jx1nJFNKkpV3bJNoxr?sNl}ZwB#gMc|E;^1dQp87@H?f z7zW*fCsk^>^VhJWdYQXtOIx!Pto)k)X8fns<^k0sOz21?3(?ZpyTbZ-3E{ z(&@2!Y+(Hv3d=0Ul=RP0JIp;tr66;a%!s~_oh#TXbxl`b@P@Kx3(W-(w$F<;2zSgIkD|s=nKz2n z=2&q#q2pYhY)AmIkEG%;UH=DpLl^0rQV-VW9UCt0rP#0nO;Ov zU&%U*RR{-wbUz49R=_9=1Q%!>hVxu+WrIM|w1i5Z5jyb1KE5Xs;*Dx3d;2g-s0UEoRmVc6IeG->EvPcPYUQEM)DiS&fun zN6HX?l|GZ?thlXI3ilv0t0ywE>K<^=Utye0`XD-BPA*^?#T3Px5{F=)=PXuGH+Sp#FV&s`-H93C8vKI=E2C?tSDMfN-Wz)qm;6!^+0 zH2iO%lRshJY#8Gv%#dZvcd$H)U_;#4112DM2cQmq2o`4Ug5`sgRa}%p6gR|O&Pg-T z8ES#lY?o6JS9vcQ5e9}WsB9{c;8?ng?P(TmXPTVf#v%jp5|A6QW2V5wb2}FyEzr+X zFO6WyZzY;ev|S~h5uHulRbKJ&>eeXH@c=cc0M=~)1yWj~=e2LlA45`bo~*U1?Wns- z%;T=U7S2YwUNr!KJ-A&0{sLUo;)q@|jxWnNqqLMd|I_MYWS^c?xT%Wn876F6GS(aF zGwphXq}_zl3^bVvfR%!6(Rt#pM3yhn!HtfTOt?E}N+>9j2qZ5HWr;1YpNnIq+Q3ime+OU&tt536gFzA|NJ;Zu^ zDkbig;E!bp=mKX$(*uPIYZ=dn96 zcF`g854hU!ImEUBi^9@Izi)ZwvLJM1rwVAL#9;&;+S&gX*QICx8+W1KY6au(wg6!S z9Dh*@f`O!T!?>iBIGsR9OM#%>Le|I*s>UuS^&DTDl4MKhSLB6`AD_MTQ&lx>&Hoc* z{TD%&W-MtP_fASpqX{xG6*k!Abwec!6p`L_%_NbO-yLvTc_!f)P_aBQ-PiWr{ukgU zP$MFiJ7Xdi)XvVZ3;Z4y*?B8w`G$GG0wLuTQE% z-|)n8VXNmlh27NU{F_!!yb2XLsLN==+)es69?4v}Nanh()b09B=Aum^EY_tmVVmbV z<_+PwLFjs2u|njYX1CYr@2*0#4+B!*1etgeN>Yk`iq3zU_l-YR`6hZsa18sVz6xyJ zQKi9~{)VhOkBk|98p0mb%wSW>*px9;^bvg;!MspagQvBxO~@P0hAVx)|kBgsnFOQTe)*e}(Y6 zv|)+Ka3uuzLKx;-XFW9La&p@ZoVePsK-|!gzT_{A-C;yqQrXTEO|kR@o`$iud~I$n6<_u$2$>|xxg z+vPo8fJG{>sh4;vF(r?Ux?pI|Ahr!#i)*$0I8D(g%2PhY)FBt`EyYDUEJX*>HpYWU z_GycZ5Kc37@XCQ+kZgPd4ln#~i>;qI7q+g=sWA>+T~AsoteK|ggwh)0z*BJ#O5GW! z|HZQdiUv(1>rQDH=Ssc1&iHGkeM4l@Pm7KFuK44WmK!v1v-W9j(aX5$i&EMwN=tah zMz(8?v_N7hK=a}VSZYhsCeZ0J37{m0(bBhIKLLWmf7-GD9z+Ltkf*V|*2S<)O6%0C zrQoWKim%d_K(8Cam6vhEX?=Z63wvBq+fW*YX1`sVM({CqI;L~F3IbG(Dm2tsZ-j^t zAJBDQ%?6ppy*xzI>;@ceB4z`Kt!t@}b^SS!lcLr60QQ7;-i}F{{*t(9#MDRo9c!!L zM(L}!Fn9TN#-Ft+{Z!|z8zUvEK@&ffC-tKTHITiC`+NbVx}ODYNC+MAU>cGwNwa(_ zptOh)5462+qG~X2AHbA&tn=mttWJ%RpLX7|xG`EvBz0<>NahcctLP3;ML0{r{mP{O z$)Xd)p!}W$pUwkotE{@_Wv$UodqhJ;T)`4{O?S%X)@A!+Xu*aKOfq|h`a;L#>0x3> z{Hf&)$}Oq4`epU9n_6%)v&6(@Lir5&@r}utl^TEp*y`m@T+ACf+tjQvSvRT*Z7?RC zR|+IG|7v=|Z)n5e4m#?e0x(n+1rohe8^TjseS!r=Ego^^$&{(6Q>y0SUqewSSvJ9P zfaw=e4#a7_=bK_uQhF4KtpI=Ij+hGX2!_gdd;E^5NUH=gL%x~4W3cbbmax=#JxiZ= zE^CU(I%s;#wmp`e*V`~EkG5NM(;VQ@k%EH5zKjZlsHz`pGi zpFs>PkjyI#h?xbVKRe~c&6czWqAT)Gv*sjOu>M!UO5x<`djL=b1zIrWCz18%nq?yz zo<7&XwdRH0%Y|as)LjDuUSJjA2-y?_L9!P^2n6&XIz3aD9DauYK%spKd6cEuA*`~>K!PlpH)-yU?$A;pIbjF8dz^<*xk_MC-R-JLf{Cfy-GxS0Vq>0I0+r81GycL?}B7d1?wk zz9B;p^yQ1e#V^L-!yUlVkJ^y{kq;nPY#mNwMxB5ct>1L}BdQ5R!FceT3t%G413|JwWU`Gg z32x3e@4K9hKuG4CB(^S~pXyh_+`v4K-jZ57!SV`%#6 zwiPGsL?u2g-CqmV|MjH7@}$G~m`g6aLYSFvA?q%)^~ROl9h!6X8?y8fgM4TJ6fC-; zzb4osMh%vC6e(9!HXb)cWxbPs3$&*u5MR(JVlb>b0%XDhmU_rPnVq%KxxHVFp!0*Pq!AbJ^<2++L3uI z=ib;n<}cKiQNXlq=fxW|hEn@3%R~*W?1Cs3g*lf9WZN}Qp_=c8HqcuMcYMP}1crXW_pfl9F@W73_wud@kJY5{-8Nwzj& z!}Gr?fZ53wCXLY-e6UDTQLTz3;)2zM;?23D_C#dA3Nqtau_$7U2$cu<#=A(Q6^iy4 z5u>SZ>&F!rg*$92k78$*(ohQ+o~3XLU>A%o^4phP3>tW~2tX9u3n74I;IlEgj*S7T zG5J5(&Hj1&yfbf1h%DL93<zpbYHm7K=~s`xq~jcJq^bR;p~kC8vz|J zO11Smx(v^<%&%BDe6a`-U4Y(h)JivUY*9Y8&T>O3j%g)VMr8)GXf8Y`kuR7+@C*Mf zt!Rnq_^YBzmG!QN+Rqmn>~&8DybZas(&FQ&8y!jl;>mLri9J?T7C@Q`#*rpZq3cdD zy*Q#!8g7?fXyzml+KG4ROlAvGR0$snLj8#&EgdJi5M5tXZdxi+`W@VbND))Vq=;^9 zoEwo#C!m_I1qGDe9}@FFFFe6t?#F=8=J7ZfV@m@KwlY6z6b!njp}2r1SW}1heVN?> zv88%j*EG}qTI{D(#fM4K6jjWx%oQ6-zF;a2SS<9pE801?}k%%x3);@4IMxc8Y zg(&$o2zCy6RdMeOa@PP(u^MoSINOUB4eI^kyFRz}5Q5SgX+yt2w)hehS|uv2AxaXghxI zsjSQNE=!(3O%DKXA8D!3RAP9cz+x5qWXdh%52D$Z@ZrStQvH^!T)z)T7wR=$BkNFX zrcdA&prF|QIoVmU<6li(LI#uF{f_`4IT`^$o$n=14J2y$31`7<3^HFdDmm?u*$AHN zK%-t-Mc1xFreZb7fmw<|QM}%{dB;3d(=*fT^u$B+9sx_IgIv>BZ4Ta3lM)A%SH%Qd znY2#|&{Yq_b{ue}u-G166L;Um6KY<%z+N;l-DHZo-_q-1ut8&%Q9$SnT$0-GGWLBM z(HN(*X_1#hMNq!fuoERuq=H)-F$y;nLSUJ|?(02|v+Q$ifu$F0j70BF!(9yF!~N1_H`xAa;6Cj4-YV*ffK>zw4Y~Aw}+{Rn(T)7>um=O znZ_qy9xO~6_C}?Hs`f!kO}gHxeDUxRJbNQ4DBW~K{~bofLRjtw zgyrVV2B5q!b-|fS@7ke!Pay6_Nv-I-xWvs^D;ZLZqjt?<;LRWdIQr!qkkeO<2`00` z_*-)7l2zu`EbBlJL!Sn`4iJTv6uFY3y;7cbUZzFI0hL`-SH)emQSH`PsE?BXs8TRd zK8g9HZRJt52IIT)ZkimkeLaBiEXWSO_<1>^XuEojKXNn!e^s)~ z!G{ruCVk%UbHfQgv|4u9Nnzw-2bY2jV)zGBw7wLlQGLNVFxL?on)Tb9%j%gw+@^;9@lG^~>Nim?DAUh#2layN?xq zLuV+>J2Tl1K+3kJvJ$`~BktZrD#J}rS{Dx>$h?u~&+C%sR2qGgUj^pCVD~hMGDtD1 zY>Ih}mPf`~?j}VLH2=qG4W8GB}CfT)-uFLJ9ci^KdPFn&qicxF2DM&|e3kN21!ao9ahQy#Fd{36=}@+sOx+3^$2L z8nK7&>souatLNY|3VjzfexhO%Znc86d}&0NIogT7NU-l8b6pIdF?X63m|px}vDgov z#+oqZ_`>!#!0U1u;z;wN6#hkF73lazJ$R2Rv_ET{h-sg#>w$bIRK0nFD=LAOn|?EY zgljVelT4-iIE;M^$%g>_NghFea8n&ePZya#6x(b{0DNdBYR|G-Fjv-sO&BPC8zI}Z zKaEb`>`vqJph02jo?u20PzNV}hO98G6%tmN&iZe~6Z9p1y0cq7;xUG=qE@3{XO}1J z>FTl^MV41@LE7C^okVyWHGbAebfRcIt9kJgWy7@eixX|2Gl-9B>BYn?BaEn{zfkzn$tQ`?Dz4JP}i{lWYUk-^2dcNwarLk-w)0y z5*^c_6{9Bjl>1L=(5pA6e^GH1F^^E(z1m}#ZNth_ASaaY8*>14}XJzj{kt5Be9(A zQ!pWG9#cgh*2@8sufSw?OzoZz()?e>2D6D-M(yER_3-cy$?0A zv~@_n5T8YvE?o`8Y`}!v*zc4Yr<<=>RV#i@w(o6)jSWj+SJhjvP%@Sti7QXbBdjW; zc$#VWy{zlnzjk__-?(phb|WxZBq|gkx>a=6=}Q$gF5TlXU8k5 ztTiwaOC5TT56>D~qPDok%^cLZ?VnO<_|y+?9oW-4$#kvD#Q+UQ0pPju>%E^BE@5#@ zt*%HZ2YE34(U4W+ZP+I|+Jr^y@DWS$fS=?w6PnM8Z%q+ZlGUvPdCNz6|d+<#K z{j9}UcC0IV&JdQFw{2JuAdLQ!LBvORe+r~X%j33>I!1h7IM=??t-_|YC6&OK>&K?`HwUoEijug=2` z#^)VIWADN{^bpXwQK8N)SNpY=haGeUQP)LIJIN7)YBL*-M$p~lrOS<)z=?6l_{x{s zT`GXA;2;4umIBbF@KpLtpUyCFz53Vyj@+i6{-}`UZUp*}JHMHUz>y3#bWhR{iN+u1 zmx+Qr^rw?hvak=R{3oI9?s}j)2IVj7o1Ol@IRnh(*KwfBYPMwc4=?j+yuJE>bVxGL z^{BxGI|y8LPZ>x|N(@m@10?D(cRCi^>ofo>{U5r<6X)8(K9-UtN(+|;PYmHMP;f4q zK1?FiJCE1uhBt>ZLm4vAI4b#NAuNED>l?;0rgWxmc%Q`mwCRq1&GV9b8{;vKN%2;o zyc7>g=IBrdkczF34d(je46B9Re%+P_HDTuCbt0m_j5f)1Q9HcWd8T@`MU0F`;t}q~ zo9rEf3MP7!)v4ZRppU;DWJ8O(NboVuiXzi`*ku@K9 z3WK#66piVpUN_}wpiUwZ#Hg40bQ6eCEr`)Me-NWG2iB{Fr=4vFQliane)2qU#Qdbv_C6hRmU7T<^?@cfCxOr&{=Jy|Gv6JEe~tWX7Yy{m zU`#d*pGuZmkWj503srBxu(!4@vM8nu?Ca6nW{R5nTafdZu7|3dgr=K`gliMRHTrYR zR9)Ibm9MA}Gd;=lklw5SwiLv7#-!_l4B{tE^lZyh!u)~OX=S;l9Dku}avHhIRy~a! zcmZr!EaJWe`(XWC{0(oeBzSuh?HALPtQ|VPOyaw0*DACs!F+^rD!J(kbtjZ4F>c!} zQ)DTZ@Avf@?FwROCeHaT(WUU-6F)13BVS6IBgW@e&V2gBIQ%!(X~&OAkD_eZ8zrV-1p&NMo$9uE#{?^=N%l+ zwW@0{e$PNrBXnYkSr`OC`R%|f;1tLG5JU2paxSiW@I^l;zsbQneD?2hiptzw+zLs? z-`R<__#N^&LR3?v)vJZB8(eGQg$A31toB=P|Az13bgmW3h%CWZNO^w^kqEhom9vQB z5}|;2+b4+T^R=LK=C#TT~fn8Wk#5j zLD81~x1vp6cf>0xxf9>PmVbpYyodPl@Y;YMI6#@5-(S5ydg571z(ce~i2AD1vE2G& ze)@O(x{bm_D|T>>y;SQf@;~ig+fm9opthf@z+!o~9Zxp-ZC8;UDFbe}Kvg^JdU(gg$i59XBvWu~R-UIglnn*wvE8lG!I zX@B~2pWBEL50}|A*(bGLokB!UlnN|($OIWxBl5Eb%-q|Aw*?H#xc@w1kNh}3 zv$Pw%z!19z=*Vi6K-MI+<2_%sl(Zn`sdGGZ7|0<>j?l6kiRVwM1H zS;_CTW#JDRx~SSRxyca;##%6=OaOMq&-pNZ;XPUDzJFVJd4hN_obKWYRaK4C!SQmy zK6x{weRQkvkoJ)b9$YGpd`bN(vA}jl|y}o-hgP_@BDV1V(vKche7@V6DwJNGAXe=T9+pWm@|{I#GV?P1qcrb-iu<1N{x1Y zLK)c^V+X1vz@bOiQEeHP$3*GZsuoL0^Vy*u7@$@t2N@#WQ@Gnn9z)&$GvqUShQy@y zpj7E^06yE14p^3eEdZiWE?=yA_Vz;BzO-6VMp;gG%kfwI8Omkbb(QZ@OfX$-KW3m6mb@V>^-l zsJ(eQi#F6dg|NPo@L~Eo7`?>UF(k-OK=`Y`-7q0pZWVRn69;4p{z`q`qSfh(>X%WX zEo-CXkQo>jF!b9LErE*w0QBjL01&UD^H_b_ld$}m zrB$l5KiD-ZV|QkI;%ofD4&%(D(5P%_hWMKjha(^elQE`4>P^U@UaIbtIJNT5QYzF3 z^}_v$-#M)K;ZxtxS&AXj(>!+aCh*A5-Z2E$7r{J&EPJCe#o`|3C&?#IUZpeT-%A1n zl;hAABYWHyLxj4w_Nmy2UX7$k9!!xjelmHy0qB4H^TJ~!m(gZj!>Tlu08vJw5<0<*B<0_P5p_D`-DfBBJ{ZN?3fLn3U3$~ zJlDTkxU~+PZ3cq&%naSfjjMm-w*o?jCk;3Fto#)l#|1w!V>*y=TT@a^1ZTwyhia}i z0nJa%_@psi*Sj=rPb*33W1loARVw^ru*CSCo1z4mtq3SjU{vLeN0kY65ATDbA&Rn* zk@hN7l!1t993M9H*I1`}`krq+zZEIAXW%ld!f)9(E@WQ_C4lpdfdyTf( z`XmBTZqI;?e;sIaaXQOX-$KaT@#ZN+6+_%jK;82QsC%aVF0wdZ(jD5u&BGDNSLM&d zm3(g??rCRD6!%O#yS2>>4rkRhqc7`|4AA0OibqZ+bW;3~k+=%N)`@;5#N5XZU(P#* zQndG5_e5P#THXZ5@c*@aIY87TLGaK4lB=CHeH7CIXLnDhwc(Sk-MSBA67X_lyzV0gL zm}0MVvriP+tsB__lOhKlunH8~R1@(2DM;M?%;ISt^ZuzN0cl8Vr9-P9dvoQt5nke0 zU{WE4sEHH_&-%Bh9cqX$?FZ304`?RDepKE>7nOCJ0gVDXo|lhC0m_2WHZU8D@iO0T z>M!fjiqlSs@nCNbc7g~$C;clZsKqh9%&8k|(@gE(;J9!Vp0q^Bn$tzhP1WkO!9X`r zKeFOgJig+!qGI#$ya5?a{1rVjS)=-a5R_=?7wn9gCyCfkd;lyiXf(v)!V=hMcdorV z>ItN}kSDE|88~^m-b!|_gFfBe+&hI>skqREi$o&$EfB%tWD^{hRY!Tq!ELpx^a09D zpG6Ylmkp8<+|wn(t+`nzF<2557hoJG1hPI$HF75LZv#2zwbCldju5IvcQF?BhTUVm zA$YOk6+hunG~oNKG{swcAj3=!mGIdStNv9CP7&lYnS>ccQAI)sfY< zDqf$Z3xC?u-r}9r>)gG%mPB9~rlN7cin#z%4bx$}NHpvO%L#j7QYi$%-X%eT-F>*B zF1y2NA{4#{0FPi2I`Gns*fHY`BNFfc3tyv$bG8&7d&h%Y`G+GqjE62rzlFpdZl*4} zHx)+)mdp&$KE@bc)cMNyCL})FDC1+;PQg>uUE&aqX$`*d#fRvfueP5_I5V1D*RWTxQ`by)#8k9-57E*q z>$pG~BpB-tz&VMC#{n8=E?w#{5CxCiHih{;x!0W)K*%ZttDQjKCRN*Cf=vRCJa$6Q zjfE~6Kpza8hDsErbvCQM-@x}myKoVVa@6?B?+G+NxGiUy$HDNvSRzQ$fDeBlXr?|SXJ7kM*n$r-tk^#B_j4n``L_M>?EQ2mOYH--mR4}wBV88?_8-%An-71Au19lP> zBaOs=5UBqNZHK-ZQwXQO+e=YtFECH%eAQFjTpR~LaOvUCQAv5g_& z%H$@khxJ7$yk%8Pmb80w(9ryJujF_q((p>uR%8v7Tmo(pux7g|%WgWff-qt_WCmw# zpY{)9bxTY>5(6X|m5wf0?oDu)03LAQr23P6U?bwTKf4AwmWC#Y)4#fLHc2-<<(9(a z$l>&QARY;zQNhHiPYab(3FE+#N1+rPF5hMlWQa)@S3R{xN|eGk(PzJ9aS5@fcg@;}FwlD$|u!qqj>0kN7ctX(bVbDO58& zgB+Y;3S4$)a}6%3_?`~zpchQNtSP37H@TK*SL>m{8t{F1WXC$`G?R^X$bMq%Rk*10 zAEI>>>HHI}%`O-t9;Nx~v8Ag8U<&|ViSVg_gY|gs3rdyeJ3`jUKH{A;t$&r)Qt`z^ z^(8c~WZ+X5Rgh9|T|>=wX^omW_lG#U**$XT%)~{VE^w&2-xRzf^g{KzjhH*n1qW~^ zMYrjGe`0)i$*?Lw;bPbgpMmQiu87sH3fPKyS{Xd-g19^H8OxpkQ2m3`;-7lI540Jj zR={J!#`ZnX*tU!~w86fX-*8rpuCra}h}HV6MMn3Z?C2(?2j)vwDlb&xHJ!9Kk z)>^V*Gu9VM(X%04==AXJkNdMbL@>yLnGAWSNZJ%3cGyM5K+}70?jfQ8GK4`)=nDAC zOENuwtH0`6yX8Z$=TVEP`MepCmK(7yAc zu{};axGBLhxbLs5iD$#Zg|TW}ch0{tdHn?V}B$OpUH<*vNYo4)aoo)z*3H}1+Gxg~w%2;F6 z6*lIG{nX*KeWs19pqZ8r6iMy5&=E^%i5nZeaNyW2A$nyRABr+|Gy!G1^}~2zvr4cQ zAeLCFnczgs7D2^yo&BichThncf=SlD30+Z10;O)LgyfNRk#`XS0VLo=1J7M>ehAN9 zzzZ0zK-wmA(+MB<~%YmnM(wHE#9y+r9|yPVhtZ&A^$B);Ep)4&=Mt7o)!Hh6LFWvleZcIb5X%WGv zU*-h&x8H^LS~w^a8%c*B48s+(^?w(#&MSzX1T8r6*|PcDk;(qe)KT*midIu`PomZw zS{u#W7dIRlL2zv5?LT&keAKQYj2yE zEjb$QRnkpC`; zCg^~z%MLgTx1yDlPI`C;$$tjjJIGO8_AQ`mp|jUmXms$cfwI8r}3=a2`_q;eL<6n?4ZfSLpDT=b5gRjd^cNBG468mKmNIt z`)@?gaS(Qp_=s#z2R-c9VnR)#?)~y?OXA0jX@1vL|J7y%pG8Vfe=c{WNsstBB8;E& z3>X0Ts%8%gvuT?agv)viG>1kuR+8bOzqxq21PTb@i`vL05N?IVv7WsQN3ZX_t=xU% zU<2@uOz-fpAGlQqL?3}ZaR};CWrz=&MwQW3vtt=GgZEKgmVU@JSO+8rMRVJ5KazSc zfm93QPw>j%{`LpBzqR0wj4ICxO*Ywtf-STuzVyBy#rT7aKOW#aNxl@inb?HbMMHpqg4 z6`)7-B-``g3f;Fg+DY|(RKImt;0O3+OWpgv%burwCX%}Ppe-rhlFIX#Cifr;cmTp( zAH`TKmerQot7d%mord{kd=?2l`9gqWq9*oU`Bq~TRLzLL%a8}Q0ZP07k8BivUJ!;~ zSihAi)*n;l=I*2{%G*`5yo&NeLh?H zf4->ZTd6@jPzhe<2oDS;r#@U@!==7aT_A5^s)Zar_*aZi)#K?1e1y&3QdI7F*~Zle zGt}Rb-8S4o`-BrG#IImr8WD5G|I>KAa=7Ta=XpPS%>DIfLu8>hu?}kfWlbJR%nG@7HX1E zwU3f#g|)@s7<{4w9Y z>DI`&v3$2l#Z%*3=hdTV7w+l;5gTX>{$B^*UJ)HB6lC8k|1|eoja-qDsOneHs~Y+CwS#e47M{ z!#v2xe)A-RM3+y`*R_7>bsE5aWzvdDmQD_LPus~7P6~k6hBn@C(M>W;Q&#uslDORq z{I{gTE1G-=02Xx9v9k4Wc)s%#`dr%yRJTL{m-*@Njgc0YyE%)a>Txj5vY&*G_0kZr z>^!buH0P9A;#sw5*#s6?FX_}i;cla;irX|Kc{os zQ9>cQn+JU8_$dth3yL-id`@4O<$YG|aQf)R_9G!St{QgWV-3RB76|g%HlfmI%XGd} ziO%uTq+l*)ewwCC2?4=wDrjU@PB*mb>J5vd@4C{eGSrhC30{S8FH@94I3?~t$u}3t z{9_LohUavSyX0IQ`((}wXkG@#G)K)r!h7=M#jvqs-!JXImuX9-(I^Yk<%s|?LmQm= zf6;dya*4s!Y+8^B0qbl*F_-`tkLMvZVa}G0%2@d|^Hak7zU+$ld!3omAJ@F?B@Y5A zWe?by$&;N5Jw(D$`Go0ru7xN;64fv4hsNP7!kZ_6t=@n6d;lM(;` diff --git a/classstdex_1_1parser_1_1basic__permutation-members.html b/classstdex_1_1parser_1_1basic__permutation-members.html index 4dea23295..f6c18e0d0 100644 --- a/classstdex_1_1parser_1_1basic__permutation-members.html +++ b/classstdex_1_1parser_1_1basic__permutation-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_parser< T >::do_match virtual bool stdex::parser::basic_parser< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_permutation< T > Member List
@@ -101,7 +114,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__permutation.html b/classstdex_1_1parser_1_1basic__permutation.html index 20d93f6e9..c6bfd2e78 100644 --- a/classstdex_1_1parser_1_1basic__permutation.html +++ b/classstdex_1_1parser_1_1basic__permutation.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_permutation< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,51 +115,51 @@ Inheritance diagram for stdex::parser::basic_permutation< T >:

Public Member Functions

basic_permutation (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale()) + basic_permutation (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale())   basic_permutation (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + basic_permutation (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::parser_collection< T >parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale()) + parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale())   - parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - + +bool  + 

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match_recursively (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match_recursively (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::parser_collection< T >
parser_collection (const std::locale &locale)
parser_collection (const std::locale &locale)
 
+stdex::interval< size_t >  @@ -159,7 +172,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::parser_collection< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_permutation< T >

Test for permutation.

Member Function Documentation

@@ -168,30 +181,30 @@ class stdex::parser::basic_permutation< T >

Test for permutation.

-template<class T >
+template<class T >
@@ -211,7 +224,8 @@ 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 4a564450e..d71aa922d 100644 --- a/classstdex_1_1parser_1_1basic__phone__number-members.html +++ b/classstdex_1_1parser_1_1basic__phone__number-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_permutation< T >::do_match virtual bool stdex::parser::basic_permutation< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_phone_number< T > Member List
@@ -102,7 +115,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__phone__number.html b/classstdex_1_1parser_1_1basic__phone__number.html index 156748b76..ab979cc4f 100644 --- a/classstdex_1_1parser_1_1basic__phone__number.html +++ b/classstdex_1_1parser_1_1basic__phone__number.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_phone_number< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_phone_number< T >:

Public Member Functions

basic_phone_number (const std::shared_ptr< basic_parser< T > > &digit, const std::shared_ptr< basic_parser< T > > &plus_sign, const std::shared_ptr< basic_set< T > > &lparenthesis, const std::shared_ptr< basic_set< T > > &rparenthesis, const std::shared_ptr< basic_parser< T > > &separator, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_phone_number (const std::shared_ptr< basic_parser< T > > &digit, const std::shared_ptr< basic_parser< T > > &plus_sign, const std::shared_ptr< basic_set< T > > &lparenthesis, const std::shared_ptr< basic_set< T > > &rparenthesis, const std::shared_ptr< basic_parser< T > > &separator, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -129,13 +142,13 @@ std::basic_string< T > 

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -164,7 +177,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_phone_number< T >

Test for phone number.

Member Function Documentation

@@ -173,30 +186,30 @@ class stdex::parser::basic_phone_number< T >

Test for phone number

-template<class T >
+template<class T >
@@ -216,15 +229,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_phone_number< T >::do_match virtual bool stdex::parser::basic_phone_number< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_phone_number< T >::invalidate virtual void stdex::parser::basic_phone_number< T >::invalidate ())
@@ -245,7 +258,8 @@ 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 eebfe73cf..cb0cbfcdb 100644 --- a/classstdex_1_1parser_1_1basic__punct__cu-members.html +++ b/classstdex_1_1parser_1_1basic__punct__cu-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_punct_cu< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__punct__cu.html b/classstdex_1_1parser_1_1basic__punct__cu.html index 3c0baa88a..7cbbd7687 100644 --- a/classstdex_1_1parser_1_1basic__punct__cu.html +++ b/classstdex_1_1parser_1_1basic__punct__cu.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_punct_cu< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_punct_cu< T >:

Public Member Functions

basic_punct_cu (bool invert=false, const std::locale &locale=std::locale()) + basic_punct_cu (bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -140,12 +153,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_punct_cu< T >

Test for any punctuation code unit.

Member Function Documentation

@@ -154,30 +167,30 @@ class stdex::parser::basic_punct_cu< T >

Test for any punctuation

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ 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 ecc5ac900..d2543ad81 100644 --- a/classstdex_1_1parser_1_1basic__roman__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__roman__numeral-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_punct_cu< T >::do_match virtual bool stdex::parser::basic_punct_cu< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_roman_numeral< T > Member List
@@ -106,7 +119,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__roman__numeral.html b/classstdex_1_1parser_1_1basic__roman__numeral.html index fff882d77..71f9c09b4 100644 --- a/classstdex_1_1parser_1_1basic__roman__numeral.html +++ b/classstdex_1_1parser_1_1basic__roman__numeral.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_roman_numeral< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,31 +116,31 @@ Inheritance diagram for stdex::parser::basic_roman_numeral< T >:

Public Member Functions

basic_roman_numeral (const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_50, const std::shared_ptr< basic_parser< T > > &digit_100, const std::shared_ptr< basic_parser< T > > &digit_500, const std::shared_ptr< basic_parser< T > > &digit_1000, const std::shared_ptr< basic_parser< T > > &digit_5000, const std::shared_ptr< basic_parser< T > > &digit_10000, const std::locale &locale=std::locale()) + basic_roman_numeral (const std::shared_ptr< basic_parser< T > > &digit_1, const std::shared_ptr< basic_parser< T > > &digit_5, const std::shared_ptr< basic_parser< T > > &digit_10, const std::shared_ptr< basic_parser< T > > &digit_50, const std::shared_ptr< basic_parser< T > > &digit_100, const std::shared_ptr< basic_parser< T > > &digit_500, const std::shared_ptr< basic_parser< T > > &digit_1000, const std::shared_ptr< basic_parser< T > > &digit_5000, const std::shared_ptr< basic_parser< T > > &digit_10000, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_integer< T >basic_integer (const std::locale &locale=std::locale()) + basic_integer (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+size_t  +stdex::interval< size_t > 

@@ -168,17 +181,17 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_integer< T >
-size_t value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_roman_numeral< T >

Test for Roman numeral.

Member Function Documentation

@@ -187,30 +200,30 @@ class stdex::parser::basic_roman_numeral< T >

Test for Roman numer

-template<class T >
+template<class T >
@@ -230,7 +243,8 @@ 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 7b507aab2..514ce09c3 100644 --- a/classstdex_1_1parser_1_1basic__scientific__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__scientific__numeral-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_roman_numeral< T >::do_match virtual bool stdex::parser::basic_roman_numeral< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_scientific_numeral< T > Member List
@@ -106,7 +119,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__scientific__numeral.html b/classstdex_1_1parser_1_1basic__scientific__numeral.html index 48dbd45cf..fafd7dc6f 100644 --- a/classstdex_1_1parser_1_1basic__scientific__numeral.html +++ b/classstdex_1_1parser_1_1basic__scientific__numeral.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_scientific_numeral< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_scientific_numeral< T >:

Public Member Functions

basic_scientific_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_integer< T > > &_integer, const std::shared_ptr< basic_parser< T > > &_decimal_separator, const std::shared_ptr< basic_integer< T > > &_decimal, const std::shared_ptr< basic_parser< T > > &_exponent_symbol, const std::shared_ptr< basic_parser< T > > &_positive_exp_sign, const std::shared_ptr< basic_parser< T > > &_negative_exp_sign, const std::shared_ptr< basic_integer< T > > &_exponent, const std::locale &locale=std::locale()) + basic_scientific_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_integer< T > > &_integer, const std::shared_ptr< basic_parser< T > > &_decimal_separator, const std::shared_ptr< basic_integer< T > > &_decimal, const std::shared_ptr< basic_parser< T > > &_exponent_symbol, const std::shared_ptr< basic_parser< T > > &_positive_exp_sign, const std::shared_ptr< basic_parser< T > > &_negative_exp_sign, const std::shared_ptr< basic_integer< T > > &_exponent, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +double  +stdex::interval< size_t > 

@@ -163,18 +176,18 @@ std::shared_ptr<

 Exponent part.
 
-double value
value
 Calculated value of the numeral.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -185,7 +198,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_scientific_numeral< T >

Test for scientific numeral.

Member Function Documentation

@@ -194,30 +207,30 @@ class stdex::parser::basic_scientific_numeral< T >

Test for scient

-template<class T >
+template<class T >
@@ -237,15 +250,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_scientific_numeral< T >::do_match virtual bool stdex::parser::basic_scientific_numeral< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_scientific_numeral< T >::invalidate virtual void stdex::parser::basic_scientific_numeral< T >::invalidate ())
@@ -266,7 +279,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__score-members.html b/classstdex_1_1parser_1_1basic__score-members.html index 6af732e70..8c848707e 100644 --- a/classstdex_1_1parser_1_1basic__score-members.html +++ b/classstdex_1_1parser_1_1basic__score-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_score< T > Member List
@@ -99,7 +112,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__score.html b/classstdex_1_1parser_1_1basic__score.html index 2fea55239..aa1326007 100644 --- a/classstdex_1_1parser_1_1basic__score.html +++ b/classstdex_1_1parser_1_1basic__score.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_score< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_score< T >:

Public Member Functions

basic_score (const std::shared_ptr< basic_parser< T > > &_home, const std::shared_ptr< basic_parser< T > > &_separator, const std::shared_ptr< basic_parser< T > > &_guest, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_score (const std::shared_ptr< basic_parser< T > > &_home, const std::shared_ptr< basic_parser< T > > &_separator, const std::shared_ptr< basic_parser< T > > &_guest, const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -134,13 +147,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -154,7 +167,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_score< T >

Test for match score.

Member Function Documentation

@@ -163,30 +176,30 @@ class stdex::parser::basic_score< T >

Test for match score.

-template<class T >
+template<class T >
@@ -206,15 +219,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_score< T >::do_match virtual bool stdex::parser::basic_score< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_score< T >::invalidate virtual void stdex::parser::basic_score< T >::invalidate ())
@@ -235,7 +248,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__sequence-members.html b/classstdex_1_1parser_1_1basic__sequence-members.html index deccb3b3e..33ad8b777 100644 --- a/classstdex_1_1parser_1_1basic__sequence-members.html +++ b/classstdex_1_1parser_1_1basic__sequence-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_sequence< T > Member List
@@ -100,7 +113,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__sequence.html b/classstdex_1_1parser_1_1basic__sequence.html index b57255aa2..8f827f354 100644 --- a/classstdex_1_1parser_1_1basic__sequence.html +++ b/classstdex_1_1parser_1_1basic__sequence.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_sequence< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,48 +115,48 @@ Inheritance diagram for stdex::parser::basic_sequence< T >:

Public Member Functions

basic_sequence (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale()) + basic_sequence (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale())   basic_sequence (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + basic_sequence (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::parser_collection< T >parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale()) + parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale())   - parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - + + 

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::parser_collection< T >
parser_collection (const std::locale &locale)
parser_collection (const std::locale &locale)
 
+stdex::interval< size_t >  @@ -156,7 +169,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::parser_collection< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_sequence< T >

Test for sequence.

Member Function Documentation

@@ -165,30 +178,30 @@ class stdex::parser::basic_sequence< T >

Test for sequence.

-template<class T >
+template<class T >
@@ -208,7 +221,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__set-members.html b/classstdex_1_1parser_1_1basic__set-members.html index bc96f6fc1..1640d88e0 100644 --- a/classstdex_1_1parser_1_1basic__set-members.html +++ b/classstdex_1_1parser_1_1basic__set-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_sequence< T >::do_match virtual bool stdex::parser::basic_sequence< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_set< T > Member List
@@ -97,7 +110,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__set.html b/classstdex_1_1parser_1_1basic__set.html index bb5172202..b1b8d716d 100644 --- a/classstdex_1_1parser_1_1basic__set.html +++ b/classstdex_1_1parser_1_1basic__set.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_set< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -99,44 +112,44 @@ Inheritance diagram for stdex::parser::basic_set< T >:

Public Member Functions

basic_set (bool invert=false, const std::locale &locale=std::locale()) + basic_set (bool invert=false, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +size_t  +stdex::interval< size_t > 

Public Attributes

-size_t hit_offset
hit_offset
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
+bool 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -150,30 +163,30 @@ std::locale m_locale
-template<class T >
+template<class T >
@@ -193,15 +206,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_set< T >::do_match virtual bool stdex::parser::basic_set< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_set< T >::invalidate virtual void stdex::parser::basic_set< T >::invalidate ())
@@ -222,7 +235,8 @@ 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 c9b2a003b..33e203535 100644 --- a/classstdex_1_1parser_1_1basic__si__reference-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::basic_si_reference< T > Member List
@@ -105,7 +118,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__si__reference.html b/classstdex_1_1parser_1_1basic__si__reference.html index 26f9bfa74..b1136ce83 100644 --- a/classstdex_1_1parser_1_1basic__si__reference.html +++ b/classstdex_1_1parser_1_1basic__si__reference.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_si_reference< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -104,22 +117,22 @@ Inheritance diagram for stdex::parser::basic_si_reference< T >:

Public Member Functions

basic_si_reference (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale()) + basic_si_reference (const std::shared_ptr< basic_parser< T > > &space, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +bool  +stdex::interval< size_t > 

@@ -141,30 +154,30 @@ T 

model [3]
 Reference data part 3 (P3)
 
-bool is_valid
is_valid
 Is reference valid.
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+static bool  +static bool  +static bool 

Static Protected Member Functions

-static bool check11 (const T *part1, size_t num_part1)
check11 (const T *part1, size_t num_part1)
 
-static bool check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2)
check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2)
 
-static bool check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2, const T *part3, size_t num_part3)
check11 (const T *part1, size_t num_part1, const T *part2, size_t num_part2, const T *part3, size_t num_part3)
 

@@ -181,7 +194,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_si_reference< T >

Test for SI Reference.

This is one utterly convoluted reference scheme used by Slovenian banks providing only poor integrity detection. 🤦‍

See also
Navodila za izpolnjevanje obrazca UPN – Univerzalni plačilni nalog
@@ -192,30 +205,30 @@ class stdex::parser::basic_si_reference< T >

Test for SI Reference

-template<class T >
+template<class T >
@@ -235,15 +248,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_si_reference< T >::do_match virtual bool stdex::parser::basic_si_reference< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_si_reference< T >::invalidate virtual void stdex::parser::basic_si_reference< T >::invalidate ())
@@ -264,7 +277,8 @@ 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 bbb8fb815..fb1b52d0a 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference__delimiter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_si_reference_delimiter< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__si__reference__delimiter.html b/classstdex_1_1parser_1_1basic__si__reference__delimiter.html index fd36a67f5..f6382e1f3 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__delimiter.html +++ b/classstdex_1_1parser_1_1basic__si__reference__delimiter.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_si_reference_delimiter< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_si_reference_delimiter< T >:<

Public Member Functions

basic_si_reference_delimiter (const std::locale &locale=std::locale()) + basic_si_reference_delimiter (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_si_reference_delimiter< T >

Test for SI Reference delimiter.

See also
Navodila za izpolnjevanje obrazca UPN – Univerzalni plačilni nalog

Member Function Documentation

@@ -148,30 +161,30 @@ class stdex::parser::basic_si_reference_delimiter< T >

Test for SI

-template<class T >
+template<class T >
@@ -191,7 +204,8 @@ 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 5ea642e39..f816fc6e8 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__part-members.html +++ b/classstdex_1_1parser_1_1basic__si__reference__part-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_si_reference_delimiter< T >::do_match virtual bool stdex::parser::basic_si_reference_delimiter< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_si_reference_part< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__si__reference__part.html b/classstdex_1_1parser_1_1basic__si__reference__part.html index 03f70aa3b..6fdcf1175 100644 --- a/classstdex_1_1parser_1_1basic__si__reference__part.html +++ b/classstdex_1_1parser_1_1basic__si__reference__part.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_si_reference_part< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_si_reference_part< T >:

Public Member Functions

basic_si_reference_part (const std::locale &locale=std::locale()) + basic_si_reference_part (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_si_reference_part< T >

Test for SI Reference part.

See also
Navodila za izpolnjevanje obrazca UPN – Univerzalni plačilni nalog

Member Function Documentation

@@ -148,30 +161,30 @@ class stdex::parser::basic_si_reference_part< T >

Test for SI Refe

-template<class T >
+template<class T >
@@ -191,7 +204,8 @@ 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 a0aa9f10e..02ae9fac2 100644 --- a/classstdex_1_1parser_1_1basic__signed__numeral-members.html +++ b/classstdex_1_1parser_1_1basic__signed__numeral-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_si_reference_part< T >::do_match virtual bool stdex::parser::basic_si_reference_part< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_signed_numeral< T > Member List
@@ -99,7 +112,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__signed__numeral.html b/classstdex_1_1parser_1_1basic__signed__numeral.html index 312433a35..935126ff3 100644 --- a/classstdex_1_1parser_1_1basic__signed__numeral.html +++ b/classstdex_1_1parser_1_1basic__signed__numeral.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_signed_numeral< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::basic_signed_numeral< T >:

Public Member Functions

basic_signed_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_number, const std::locale &locale=std::locale()) + basic_signed_numeral (const std::shared_ptr< basic_parser< T > > &_positive_sign, const std::shared_ptr< basic_parser< T > > &_negative_sign, const std::shared_ptr< basic_parser< T > > &_special_sign, const std::shared_ptr< basic_parser< T > > &_number, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -140,13 +153,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -157,7 +170,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_signed_numeral< T >

Test for signed numeral.

Member Function Documentation

@@ -166,30 +179,30 @@ class stdex::parser::basic_signed_numeral< T >

Test for signed num

-template<class T >
+template<class T >
@@ -209,15 +222,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_signed_numeral< T >::do_match virtual bool stdex::parser::basic_signed_numeral< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_signed_numeral< T >::invalidate virtual void stdex::parser::basic_signed_numeral< T >::invalidate ())
@@ -238,7 +251,8 @@ 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 72d986316..df8778035 100644 --- a/classstdex_1_1parser_1_1basic__space__cu-members.html +++ b/classstdex_1_1parser_1_1basic__space__cu-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_space_cu< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__space__cu.html b/classstdex_1_1parser_1_1basic__space__cu.html index e8532a81f..b6474a1b8 100644 --- a/classstdex_1_1parser_1_1basic__space__cu.html +++ b/classstdex_1_1parser_1_1basic__space__cu.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_space_cu< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_space_cu< T >:

Public Member Functions

basic_space_cu (bool invert=false, const std::locale &locale=std::locale()) + basic_space_cu (bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -140,12 +153,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_space_cu< T >

Test for any space code unit.

Member Function Documentation

@@ -154,30 +167,30 @@ class stdex::parser::basic_space_cu< T >

Test for any space code u

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ 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 8af355e7a..6fb1500ba 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 @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_space_cu< T >::do_match virtual bool stdex::parser::basic_space_cu< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_space_or_punct_cu< T > Member List
@@ -96,7 +109,8 @@ $(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 41cbcf42f..66b87bcb7 100644 --- a/classstdex_1_1parser_1_1basic__space__or__punct__cu.html +++ b/classstdex_1_1parser_1_1basic__space__or__punct__cu.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_space_or_punct_cu< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,34 +115,34 @@ Inheritance diagram for stdex::parser::basic_space_or_punct_cu< T >:

Public Member Functions

basic_space_or_punct_cu (bool invert=false, const std::locale &locale=std::locale()) + basic_space_or_punct_cu (bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+bool  +stdex::interval< size_t > 

Protected Attributes

-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
@@ -140,12 +153,12 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_space_or_punct_cu< T >

Test for any space or punctuation code unit.

Member Function Documentation

@@ -154,30 +167,30 @@ class stdex::parser::basic_space_or_punct_cu< T >

Test for any spa

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__string-members.html b/classstdex_1_1parser_1_1basic__string-members.html index fe54b03a6..c827c578a 100644 --- a/classstdex_1_1parser_1_1basic__string-members.html +++ b/classstdex_1_1parser_1_1basic__string-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_space_or_punct_cu< T >::do_match virtual bool stdex::parser::basic_space_or_punct_cu< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_string< T > Member List
@@ -96,7 +109,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__string.html b/classstdex_1_1parser_1_1basic__string.html index a1ddebbb2..6277713b7 100644 --- a/classstdex_1_1parser_1_1basic__string.html +++ b/classstdex_1_1parser_1_1basic__string.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_string< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -102,28 +115,28 @@ Inheritance diagram for stdex::parser::basic_string< T >:

Public Member Functions

basic_string (_In_reads_or_z_(count) const T *str, size_t count=SIZE_MAX, const std::locale &locale=std::locale()) + basic_string (_In_reads_or_z_(count) const T *str, size_t count=SIZE_MAX, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -140,7 +153,7 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -154,30 +167,30 @@ class stdex::parser::basic_string< T >

Test for given string.

-template<class T >
+template<class T >
@@ -197,7 +210,8 @@ 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 a07a8319c..c7329d730 100644 --- a/classstdex_1_1parser_1_1basic__string__branch-members.html +++ b/classstdex_1_1parser_1_1basic__string__branch-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_string< T >::do_match virtual bool stdex::parser::basic_string< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_string_branch< T, T_parser > Member List
@@ -107,7 +120,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1basic__string__branch.html b/classstdex_1_1parser_1_1basic__string__branch.html index 533645a7e..29f6a6861 100644 --- a/classstdex_1_1parser_1_1basic__string__branch.html +++ b/classstdex_1_1parser_1_1basic__string__branch.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_string_branch< T, T_parser > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,72 +116,72 @@ Inheritance diagram for stdex::parser::basic_string_branch< T, T_parser >:

Public Member Functions

basic_string_branch (const T *str_z=nullptr, size_t count=0, const std::locale &locale=std::locale()) + basic_string_branch (const T *str_z=nullptr, size_t count=0, const std::locale &locale=std::locale())   basic_string_branch (const T *str,...) + basic_string_branch (const T *str,...)   basic_string_branch (const std::locale &locale, const T *str,...) + basic_string_branch (const std::locale &locale, const T *str,...)   - Public Member Functions inherited from stdex::parser::basic_branch< T >basic_branch (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale()) + basic_branch (const std::shared_ptr< basic_parser< T > > *el=nullptr, size_t count=0, const std::locale &locale=std::locale())   - basic_branch (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + basic_branch (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::parser_collection< T >parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale()) + parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale())   - parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +void  +void  +  - + + 

Protected Member Functions

-void build (const T *str_z, size_t count)
build (const T *str_z, size_t count)
 
-void build (const T *str, va_list params)
build (const T *str, va_list params)
 
- Protected Member Functions inherited from stdex::parser::basic_branch< T >
basic_branch (const std::locale &locale)
basic_branch (const std::locale &locale)
 
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::parser_collection< T >
parser_collection (const std::locale &locale)
parser_collection (const std::locale &locale)
 
+size_t  +stdex::interval< size_t >  @@ -181,7 +194,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_branch< T >
-size_t hit_offset
hit_offset
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::parser_collection< T >
m_locale 

Detailed Description

-
template<class T, class T_parser = basic_string<T>>
+
template<class T, class T_parser = basic_string<T>>
class stdex::parser::basic_string_branch< T, T_parser >

Test for any string.


The documentation for this class was generated from the following file:
  • include/stdex/parser.hpp
  • @@ -189,7 +202,8 @@ 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 5679603dd..088db89de 100644 --- a/classstdex_1_1parser_1_1basic__time-members.html +++ b/classstdex_1_1parser_1_1basic__time-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_time< T > Member List
@@ -101,7 +114,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1basic__time.html b/classstdex_1_1parser_1_1basic__time.html index e2b6ba56f..7d664a117 100644 --- a/classstdex_1_1parser_1_1basic__time.html +++ b/classstdex_1_1parser_1_1basic__time.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_time< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_time< T >:

Public Member Functions

basic_time (const std::shared_ptr< basic_integer10< T > > &_hour, const std::shared_ptr< basic_integer10< T > > &_minute, const std::shared_ptr< basic_integer10< T > > &_second, const std::shared_ptr< basic_integer10< T > > &_millisecond, const std::shared_ptr< basic_set< T > > &separator, const std::shared_ptr< basic_parser< T > > &millisecond_separator, const std::locale &locale=std::locale()) + basic_time (const std::shared_ptr< basic_integer10< T > > &_hour, const std::shared_ptr< basic_integer10< T > > &_minute, const std::shared_ptr< basic_integer10< T > > &_second, const std::shared_ptr< basic_integer10< T > > &_millisecond, const std::shared_ptr< basic_set< T > > &separator, const std::shared_ptr< basic_parser< T > > &millisecond_separator, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -137,13 +150,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -160,7 +173,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_time< T >

Test for time.

Member Function Documentation

@@ -169,30 +182,30 @@ class stdex::parser::basic_time< T >

Test for time.

-template<class T >
+template<class T >
@@ -212,15 +225,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_time< T >::do_match virtual bool stdex::parser::basic_time< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_time< T >::invalidate virtual void stdex::parser::basic_time< T >::invalidate ())
@@ -241,7 +254,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1basic__url-members.html b/classstdex_1_1parser_1_1basic__url-members.html index fbf6f792b..bb869c1a4 100644 --- a/classstdex_1_1parser_1_1basic__url-members.html +++ b/classstdex_1_1parser_1_1basic__url-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_url< T > Member List
@@ -111,7 +124,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__url.html b/classstdex_1_1parser_1_1basic__url.html index ebcedebe9..62777dc86 100644 --- a/classstdex_1_1parser_1_1basic__url.html +++ b/classstdex_1_1parser_1_1basic__url.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_url< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,22 +116,22 @@ Inheritance diagram for stdex::parser::basic_url< T >:

Public Member Functions

basic_url (const std::shared_ptr< basic_parser< T > > &_http_scheme, const std::shared_ptr< basic_parser< T > > &_ftp_scheme, const std::shared_ptr< basic_parser< T > > &_mailto_scheme, const std::shared_ptr< basic_parser< T > > &_file_scheme, const std::shared_ptr< basic_parser< T > > &colon, const std::shared_ptr< basic_parser< T > > &slash, const std::shared_ptr< basic_parser< T > > &_username, const std::shared_ptr< basic_parser< T > > &_password, const std::shared_ptr< basic_parser< T > > &at, const std::shared_ptr< basic_parser< T > > &ip_lbracket, const std::shared_ptr< basic_parser< T > > &ip_rbracket, const std::shared_ptr< basic_parser< T > > &_ipv4_host, const std::shared_ptr< basic_parser< T > > &_ipv6_host, const std::shared_ptr< basic_parser< T > > &_dns_host, const std::shared_ptr< basic_parser< T > > &_port, const std::shared_ptr< basic_parser< T > > &_path, const std::locale &locale=std::locale()) + basic_url (const std::shared_ptr< basic_parser< T > > &_http_scheme, const std::shared_ptr< basic_parser< T > > &_ftp_scheme, const std::shared_ptr< basic_parser< T > > &_mailto_scheme, const std::shared_ptr< basic_parser< T > > &_file_scheme, const std::shared_ptr< basic_parser< T > > &colon, const std::shared_ptr< basic_parser< T > > &slash, const std::shared_ptr< basic_parser< T > > &_username, const std::shared_ptr< basic_parser< T > > &_password, const std::shared_ptr< basic_parser< T > > &at, const std::shared_ptr< basic_parser< T > > &ip_lbracket, const std::shared_ptr< basic_parser< T > > &ip_rbracket, const std::shared_ptr< basic_parser< T > > &_ipv4_host, const std::shared_ptr< basic_parser< T > > &_ipv6_host, const std::shared_ptr< basic_parser< T > > &_dns_host, const std::shared_ptr< basic_parser< T > > &_port, const std::shared_ptr< basic_parser< T > > &_path, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -158,13 +171,13 @@ std::shared_ptr<

 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -190,7 +203,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_url< T >

Test for URL.

Member Function Documentation

@@ -199,30 +212,30 @@ class stdex::parser::basic_url< T >

Test for URL.

-template<class T >
+template<class T >
@@ -242,15 +255,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_url< T >::do_match virtual bool stdex::parser::basic_url< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_url< T >::invalidate virtual void stdex::parser::basic_url< T >::invalidate ())
@@ -271,7 +284,8 @@ 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 e4bf68575..c5f27e60a 100644 --- a/classstdex_1_1parser_1_1basic__url__password__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__password__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_url_password_char< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__url__password__char.html b/classstdex_1_1parser_1_1basic__url__password__char.html index 9256ea838..7a264ad0a 100644 --- a/classstdex_1_1parser_1_1basic__url__password__char.html +++ b/classstdex_1_1parser_1_1basic__url__password__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_url_password_char< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_url_password_char< T >:

Public Member Functions

basic_url_password_char (const std::locale &locale=std::locale()) + basic_url_password_char (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_url_password_char< T >

Test for valid URL password character.

Member Function Documentation

@@ -147,30 +160,30 @@ class stdex::parser::basic_url_password_char< T >

Test for valid U

-template<class T >
+template<class T >
@@ -190,7 +203,8 @@ 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 ca7b90bf2..b731ec48f 100644 --- a/classstdex_1_1parser_1_1basic__url__path-members.html +++ b/classstdex_1_1parser_1_1basic__url__path-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_url_password_char< T >::do_match virtual bool stdex::parser::basic_url_password_char< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_url_path< T > Member List
@@ -101,7 +114,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__url__path.html b/classstdex_1_1parser_1_1basic__url__path.html index 9a0fd4aab..39394ed52 100644 --- a/classstdex_1_1parser_1_1basic__url__path.html +++ b/classstdex_1_1parser_1_1basic__url__path.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_url_path< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -103,44 +116,44 @@ Inheritance diagram for stdex::parser::basic_url_path< T >:

Public Member Functions

basic_url_path (const std::shared_ptr< basic_parser< T > > &path_char, const std::shared_ptr< basic_parser< T > > &query_start, const std::shared_ptr< basic_parser< T > > &bookmark_start, const std::locale &locale=std::locale()) + basic_url_path (const std::shared_ptr< basic_parser< T > > &path_char, const std::shared_ptr< basic_parser< T > > &query_start, const std::shared_ptr< basic_parser< T > > &bookmark_start, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tpath
path
 
-stdex::interval< size_tquery
query
 
-stdex::interval< size_tbookmark
bookmark
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 

@@ -160,7 +173,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_url_path< T >

Test for URL path.

Member Function Documentation

@@ -169,30 +182,30 @@ class stdex::parser::basic_url_path< T >

Test for URL path.

-template<class T >
+template<class T >
@@ -212,15 +225,15 @@ template<clas
+template<class T >
- + - + - + - + - +
virtual bool stdex::parser::basic_url_path< T >::do_match virtual bool stdex::parser::basic_url_path< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + - +
virtual void stdex::parser::basic_url_path< T >::invalidate virtual void stdex::parser::basic_url_path< T >::invalidate ())
@@ -241,7 +254,8 @@ 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 c1bcd7a4b..3f37a1266 100644 --- a/classstdex_1_1parser_1_1basic__url__path__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__path__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::basic_url_path_char< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__url__path__char.html b/classstdex_1_1parser_1_1basic__url__path__char.html index 1481e339c..1a27c9982 100644 --- a/classstdex_1_1parser_1_1basic__url__path__char.html +++ b/classstdex_1_1parser_1_1basic__url__path__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_url_path_char< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_url_path_char< T >:

Public Member Functions

basic_url_path_char (const std::locale &locale=std::locale()) + basic_url_path_char (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_url_path_char< T >

Test for valid URL path character.

Member Function Documentation

@@ -147,30 +160,30 @@ class stdex::parser::basic_url_path_char< T >

Test for valid URL p

-template<class T >
+template<class T >
@@ -190,7 +203,8 @@ 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 5f96f2e7f..a10f3129f 100644 --- a/classstdex_1_1parser_1_1basic__url__username__char-members.html +++ b/classstdex_1_1parser_1_1basic__url__username__char-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_url_path_char< T >::do_match virtual bool stdex::parser::basic_url_path_char< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::basic_url_username_char< T > Member List
@@ -95,7 +108,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1basic__url__username__char.html b/classstdex_1_1parser_1_1basic__url__username__char.html index 243fbc657..5e7dd45ca 100644 --- a/classstdex_1_1parser_1_1basic__url__username__char.html +++ b/classstdex_1_1parser_1_1basic__url__username__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::basic_url_username_char< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,35 +114,35 @@ Inheritance diagram for stdex::parser::basic_url_username_char< T >:

Public Member Functions

basic_url_username_char (const std::locale &locale=std::locale()) + basic_url_username_char (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   - +

Protected Member Functions

virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  @@ -138,7 +151,7 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
m_locale 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::basic_url_username_char< T >

Test for valid URL username character.

Member Function Documentation

@@ -147,30 +160,30 @@ class stdex::parser::basic_url_username_char< T >

Test for valid U

-template<class T >
+template<class T >
@@ -190,7 +203,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1http__agent-members.html b/classstdex_1_1parser_1_1http__agent-members.html index d280c42e3..131b99980 100644 --- a/classstdex_1_1parser_1_1http__agent-members.html +++ b/classstdex_1_1parser_1_1http__agent-members.html @@ -3,13 +3,15 @@ - +stdex: Member List + + @@ -32,23 +34,33 @@
- + - + - + - + - +
virtual bool stdex::parser::basic_url_username_char< T >::do_match virtual bool stdex::parser::basic_url_username_char< T >::do_match (_In_reads_or_z_opt_(end) const T * text, _In_reads_or_z_opt_(end) const T * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
- + + +
+
stdex::parser::http_agent Member List
@@ -90,7 +103,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1http__agent.html b/classstdex_1_1parser_1_1http__agent.html index 36dde0f95..4c5e1bb91 100644 --- a/classstdex_1_1parser_1_1http__agent.html +++ b/classstdex_1_1parser_1_1http__agent.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_agent Class Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -101,44 +114,44 @@ Inheritance diagram for stdex::parser::http_agent:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_ttype
type
 
-stdex::interval< size_tversion
version
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -161,9 +174,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_agent::invalidate virtual void stdex::parser::http_agent::invalidate ())
@@ -184,7 +197,8 @@ 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 573b537ce..6ab9f7b9f 100644 --- a/classstdex_1_1parser_1_1http__any__type-members.html +++ b/classstdex_1_1parser_1_1http__any__type-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_any_type Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__any__type.html b/classstdex_1_1parser_1_1http__any__type.html index 000016a28..e2212da0a 100644 --- a/classstdex_1_1parser_1_1http__any__type.html +++ b/classstdex_1_1parser_1_1http__any__type.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_any_type Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_any_type:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
m_locale + diff --git a/classstdex_1_1parser_1_1http__asterisk-members.html b/classstdex_1_1parser_1_1http__asterisk-members.html index 8e5b373e4..a582560ac 100644 --- a/classstdex_1_1parser_1_1http__asterisk-members.html +++ b/classstdex_1_1parser_1_1http__asterisk-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_asterisk Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__asterisk.html b/classstdex_1_1parser_1_1http__asterisk.html index 83c81fb79..56f9e8160 100644 --- a/classstdex_1_1parser_1_1http__asterisk.html +++ b/classstdex_1_1parser_1_1http__asterisk.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_asterisk Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_asterisk:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
m_locale + diff --git a/classstdex_1_1parser_1_1http__cookie-members.html b/classstdex_1_1parser_1_1http__cookie-members.html index 1777dc774..af9fc5955 100644 --- a/classstdex_1_1parser_1_1http__cookie-members.html +++ b/classstdex_1_1parser_1_1http__cookie-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_cookie Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__cookie.html b/classstdex_1_1parser_1_1http__cookie.html index c9bf9a24c..2536fbe21 100644 --- a/classstdex_1_1parser_1_1http__cookie.html +++ b/classstdex_1_1parser_1_1http__cookie.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_cookie Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,20 +115,20 @@ Inheritance diagram for stdex::parser::http_cookie:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -134,18 +147,18 @@ std::list<

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -171,9 +184,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_cookie::invalidate virtual void stdex::parser::http_cookie::invalidate ())
@@ -194,7 +207,8 @@ 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 1134c7cb6..e168a319c 100644 --- a/classstdex_1_1parser_1_1http__cookie__parameter-members.html +++ b/classstdex_1_1parser_1_1http__cookie__parameter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_cookie_parameter Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__cookie__parameter.html b/classstdex_1_1parser_1_1http__cookie__parameter.html index e78e9acb0..c3d6f04b0 100644 --- a/classstdex_1_1parser_1_1http__cookie__parameter.html +++ b/classstdex_1_1parser_1_1http__cookie__parameter.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_cookie_parameter Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,20 +115,20 @@ Inheritance diagram for stdex::parser::http_cookie_parameter:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -128,18 +141,18 @@ Public Attributes

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -165,9 +178,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_cookie_parameter::invalidate virtual void stdex::parser::http_cookie_parameter::invalidate ())
@@ -188,7 +201,8 @@ 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 ec898dc36..f9a86d5bf 100644 --- a/classstdex_1_1parser_1_1http__header-members.html +++ b/classstdex_1_1parser_1_1http__header-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_header Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__header.html b/classstdex_1_1parser_1_1http__header.html index 3a3432192..484aea036 100644 --- a/classstdex_1_1parser_1_1http__header.html +++ b/classstdex_1_1parser_1_1http__header.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_header Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,44 +115,44 @@ Inheritance diagram for stdex::parser::http_header:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tname
name
 
-stdex::interval< size_tvalue
value
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -165,9 +178,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_header::invalidate virtual void stdex::parser::http_header::invalidate ())
@@ -188,7 +201,8 @@ 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 ca817c8b6..8a88c866f 100644 --- a/classstdex_1_1parser_1_1http__language-members.html +++ b/classstdex_1_1parser_1_1http__language-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_language Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__language.html b/classstdex_1_1parser_1_1http__language.html index 31f93098f..853726aa3 100644 --- a/classstdex_1_1parser_1_1http__language.html +++ b/classstdex_1_1parser_1_1http__language.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_language Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,41 +114,41 @@ Inheritance diagram for stdex::parser::http_language:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+std::vector< stdex::interval< size_t > >  +stdex::interval< size_t > 

Public Attributes

-std::vector< stdex::interval< size_t > > components
components
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -158,9 +171,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_language::invalidate virtual void stdex::parser::http_language::invalidate ())
@@ -181,7 +194,8 @@ 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 d1471eb49..8f9ffa503 100644 --- a/classstdex_1_1parser_1_1http__line__break-members.html +++ b/classstdex_1_1parser_1_1http__line__break-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_line_break Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__line__break.html b/classstdex_1_1parser_1_1http__line__break.html index 5a3186e49..b11d50a2c 100644 --- a/classstdex_1_1parser_1_1http__line__break.html +++ b/classstdex_1_1parser_1_1http__line__break.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_line_break Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_line_break:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
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 1e0a74174..30da8d6ed 100644 --- a/classstdex_1_1parser_1_1http__media__range-members.html +++ b/classstdex_1_1parser_1_1http__media__range-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_media_range Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__media__range.html b/classstdex_1_1parser_1_1http__media__range.html index 27c4fb8da..c4ee94346 100644 --- a/classstdex_1_1parser_1_1http__media__range.html +++ b/classstdex_1_1parser_1_1http__media__range.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_media_range Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,20 +116,20 @@ Inheritance diagram for stdex::parser::http_media_range:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -129,18 +142,18 @@ Public Attributes

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -166,9 +179,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_media_range::invalidate virtual void stdex::parser::http_media_range::invalidate ())
@@ -189,7 +202,8 @@ 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 5cf2c59d9..42f2d02ac 100644 --- a/classstdex_1_1parser_1_1http__media__type-members.html +++ b/classstdex_1_1parser_1_1http__media__type-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_media_type Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__media__type.html b/classstdex_1_1parser_1_1http__media__type.html index 6e5919fd7..109788a8a 100644 --- a/classstdex_1_1parser_1_1http__media__type.html +++ b/classstdex_1_1parser_1_1http__media__type.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_media_type Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,20 +115,20 @@ Inheritance diagram for stdex::parser::http_media_type:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -132,17 +145,17 @@ std::list<

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- + +virtual bool 

Protected Member Functions

virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
@@ -210,9 +223,9 @@ std::locale 

@@ -169,24 +182,24 @@ std::locale 

m_locale - + - + - + - + - +
virtual bool stdex::parser::http_media_type::do_match virtual bool stdex::parser::http_media_type::do_match (_In_reads_or_z_(end) const char * text, _In_reads_or_z_(end) const char * text,
size_t start = 0, size_t start = 0,
size_t end = SIZE_MAX, size_t end = SIZE_MAX,
int flags = match_default )int flags = match_default )
m_locale - + - +
virtual void stdex::parser::http_media_type::invalidate virtual void stdex::parser::http_media_type::invalidate ())
@@ -233,7 +246,8 @@ 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 016440f75..11d774716 100644 --- a/classstdex_1_1parser_1_1http__parameter-members.html +++ b/classstdex_1_1parser_1_1http__parameter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_parameter Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__parameter.html b/classstdex_1_1parser_1_1http__parameter.html index b13ef80b9..1feb34a36 100644 --- a/classstdex_1_1parser_1_1http__parameter.html +++ b/classstdex_1_1parser_1_1http__parameter.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_parameter Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,20 +115,20 @@ Inheritance diagram for stdex::parser::http_parameter:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -130,18 +143,18 @@ Public Attributes

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -167,9 +180,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_parameter::invalidate virtual void stdex::parser::http_parameter::invalidate ())
@@ -190,7 +203,8 @@ 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 de745440a..1104a8144 100644 --- a/classstdex_1_1parser_1_1http__protocol-members.html +++ b/classstdex_1_1parser_1_1http__protocol-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_protocol Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__protocol.html b/classstdex_1_1parser_1_1http__protocol.html index c84bbdd2b..7127c22f0 100644 --- a/classstdex_1_1parser_1_1http__protocol.html +++ b/classstdex_1_1parser_1_1http__protocol.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_protocol Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,53 +115,53 @@ Inheritance diagram for stdex::parser::http_protocol:

Public Member Functions

http_protocol (const std::locale &locale=std::locale()) + http_protocol (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t >  +uint16_t  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_ttype
type
 
-stdex::interval< size_tversion_maj
version_maj
 
-stdex::interval< size_tversion_min
version_min
 
-uint16_t version
version
 HTTP protocol version: 0x100 = 1.0, 0x101 = 1.1...
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -171,9 +184,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_protocol::invalidate virtual void stdex::parser::http_protocol::invalidate ())
@@ -194,7 +207,8 @@ 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 9f83811b5..5f3ce0fe8 100644 --- a/classstdex_1_1parser_1_1http__quoted__string-members.html +++ b/classstdex_1_1parser_1_1http__quoted__string-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_quoted_string Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__quoted__string.html b/classstdex_1_1parser_1_1http__quoted__string.html index e5db96142..37bfdcaca 100644 --- a/classstdex_1_1parser_1_1http__quoted__string.html +++ b/classstdex_1_1parser_1_1http__quoted__string.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_quoted_string Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,42 +115,42 @@ Inheritance diagram for stdex::parser::http_quoted_string:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tcontent
content
 String content (without quotes)
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -163,9 +176,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_quoted_string::invalidate virtual void stdex::parser::http_quoted_string::invalidate ())
@@ -186,7 +199,8 @@ 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 242f604c4..d789b0596 100644 --- a/classstdex_1_1parser_1_1http__request-members.html +++ b/classstdex_1_1parser_1_1http__request-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_request Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__request.html b/classstdex_1_1parser_1_1http__request.html index 8b6ac64d9..25b8436c6 100644 --- a/classstdex_1_1parser_1_1http__request.html +++ b/classstdex_1_1parser_1_1http__request.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_request Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -103,28 +116,28 @@ Inheritance diagram for stdex::parser::http_request:

Public Member Functions

http_request (const std::locale &locale=std::locale()) + http_request (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t >  @@ -134,18 +147,18 @@ Public Attributes +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tverb
verb
 
http_url url
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -171,9 +184,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_request::invalidate virtual void stdex::parser::http_request::invalidate ())
@@ -194,7 +207,8 @@ 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 58b633ec8..3976783c8 100644 --- a/classstdex_1_1parser_1_1http__space-members.html +++ b/classstdex_1_1parser_1_1http__space-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_space Member List
@@ -88,7 +101,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__space.html b/classstdex_1_1parser_1_1http__space.html index a3dfdf287..58f190267 100644 --- a/classstdex_1_1parser_1_1http__space.html +++ b/classstdex_1_1parser_1_1http__space.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_space Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -101,11 +114,11 @@ Inheritance diagram for stdex::parser::http_space:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t > 

@@ -122,23 +135,23 @@ std::locale 

m_locale
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -150,7 +163,8 @@ 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 67781e430..908bfd399 100644 --- a/classstdex_1_1parser_1_1http__text__char-members.html +++ b/classstdex_1_1parser_1_1http__text__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::parser::http_text_char Member List
@@ -88,7 +101,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__text__char.html b/classstdex_1_1parser_1_1http__text__char.html index 0bec762b1..1ae715150 100644 --- a/classstdex_1_1parser_1_1http__text__char.html +++ b/classstdex_1_1parser_1_1http__text__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_text_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -101,11 +114,11 @@ Inheritance diagram for stdex::parser::http_text_char:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t > 

@@ -122,23 +135,23 @@ std::locale 

m_locale
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -150,7 +163,8 @@ Additional Inherited Members
+
diff --git a/classstdex_1_1parser_1_1http__token-members.html b/classstdex_1_1parser_1_1http__token-members.html index 80e7c6c26..74f7c2e18 100644 --- a/classstdex_1_1parser_1_1http__token-members.html +++ b/classstdex_1_1parser_1_1http__token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::parser::http_token Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__token.html b/classstdex_1_1parser_1_1http__token.html index 69cdb20f3..ce702fddc 100644 --- a/classstdex_1_1parser_1_1http__token.html +++ b/classstdex_1_1parser_1_1http__token.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_token Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_token:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
m_locale + diff --git a/classstdex_1_1parser_1_1http__url-members.html b/classstdex_1_1parser_1_1http__url-members.html index 1deec0eb0..97cabc183 100644 --- a/classstdex_1_1parser_1_1http__url-members.html +++ b/classstdex_1_1parser_1_1http__url-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url Member List
@@ -93,7 +106,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url.html b/classstdex_1_1parser_1_1http__url.html index 4e597d95b..61ca7ec5c 100644 --- a/classstdex_1_1parser_1_1http__url.html +++ b/classstdex_1_1parser_1_1http__url.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,22 +115,22 @@ Inheritance diagram for stdex::parser::http_url:

Public Member Functions

http_url (const std::locale &locale=std::locale()) + http_url (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +stdex::interval< size_t > 

@@ -136,18 +149,18 @@ std::list<

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -170,9 +183,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_url::invalidate virtual void stdex::parser::http_url::invalidate ())
@@ -193,7 +206,8 @@ 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 07a770290..df03f2979 100644 --- a/classstdex_1_1parser_1_1http__url__parameter-members.html +++ b/classstdex_1_1parser_1_1http__url__parameter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url_parameter Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url__parameter.html b/classstdex_1_1parser_1_1http__url__parameter.html index ebd567492..db17a366e 100644 --- a/classstdex_1_1parser_1_1http__url__parameter.html +++ b/classstdex_1_1parser_1_1http__url__parameter.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url_parameter Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,44 +114,44 @@ Inheritance diagram for stdex::parser::http_url_parameter:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t >  +stdex::interval< size_t >  +stdex::interval< size_t > 

Public Attributes

-stdex::interval< size_tname
name
 
-stdex::interval< size_tvalue
value
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -161,9 +174,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_url_parameter::invalidate virtual void stdex::parser::http_url_parameter::invalidate ())
@@ -184,7 +197,8 @@ 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 f1ef05cee..1c8c23f29 100644 --- a/classstdex_1_1parser_1_1http__url__path-members.html +++ b/classstdex_1_1parser_1_1http__url__path-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url_path Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url__path.html b/classstdex_1_1parser_1_1http__url__path.html index b6b621908..1b1dd6742 100644 --- a/classstdex_1_1parser_1_1http__url__path.html +++ b/classstdex_1_1parser_1_1http__url__path.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url_path Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,20 +114,20 @@ Inheritance diagram for stdex::parser::http_url_path:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -125,18 +138,18 @@ std::vector<

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -159,9 +172,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_url_path::invalidate virtual void stdex::parser::http_url_path::invalidate ())
@@ -182,7 +195,8 @@ 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 5eeea9b4a..b85c26f82 100644 --- a/classstdex_1_1parser_1_1http__url__path__segment-members.html +++ b/classstdex_1_1parser_1_1http__url__path__segment-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url_path_segment Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url__path__segment.html b/classstdex_1_1parser_1_1http__url__path__segment.html index 6401d84c0..deb8b40cb 100644 --- a/classstdex_1_1parser_1_1http__url__path__segment.html +++ b/classstdex_1_1parser_1_1http__url__path__segment.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url_path_segment Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_url_path_segment:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
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 e2d189aad..e51185d30 100644 --- a/classstdex_1_1parser_1_1http__url__port-members.html +++ b/classstdex_1_1parser_1_1http__url__port-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url_port Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url__port.html b/classstdex_1_1parser_1_1http__url__port.html index 40bf8df2f..49d0f732f 100644 --- a/classstdex_1_1parser_1_1http__url__port.html +++ b/classstdex_1_1parser_1_1http__url__port.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url_port Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,43 +115,43 @@ Inheritance diagram for stdex::parser::http_url_port:

Public Member Functions

http_url_port (const std::locale &locale=std::locale()) + http_url_port (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +uint16_t  +stdex::interval< size_t > 

Public Attributes

-uint16_t value
value
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -161,9 +174,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_url_port::invalidate virtual void stdex::parser::http_url_port::invalidate ())
@@ -184,7 +197,8 @@ 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 9a97a8af8..622a893f8 100644 --- a/classstdex_1_1parser_1_1http__url__server-members.html +++ b/classstdex_1_1parser_1_1http__url__server-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_url_server Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__url__server.html b/classstdex_1_1parser_1_1http__url__server.html index 0524e63bf..6a3301e3e 100644 --- a/classstdex_1_1parser_1_1http__url__server.html +++ b/classstdex_1_1parser_1_1http__url__server.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_url_server Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Protected Member Functions | @@ -100,34 +113,34 @@ Inheritance diagram for stdex::parser::http_url_server:

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   - Protected Member Functions inherited from stdex::parser::basic_parser< char > -virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 +virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0   +  +bool  +bool  +bool  +virtual void  +stdex::interval< size_t >  @@ -143,7 +156,8 @@ std::locale 

Additional Inherited Members

- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
m_locale + diff --git a/classstdex_1_1parser_1_1http__value-members.html b/classstdex_1_1parser_1_1http__value-members.html index 66bcec11c..f4c51346e 100644 --- a/classstdex_1_1parser_1_1http__value-members.html +++ b/classstdex_1_1parser_1_1http__value-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_value Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__value.html b/classstdex_1_1parser_1_1http__value.html index 7427a67c3..2d141e049 100644 --- a/classstdex_1_1parser_1_1http__value.html +++ b/classstdex_1_1parser_1_1http__value.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_value Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,20 +114,20 @@ Inheritance diagram for stdex::parser::http_value:
- + +  +bool  +bool  +bool 

Public Member Functions

virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+stdex::interval< size_t > 

@@ -129,18 +142,18 @@ Public Attributes

 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -163,9 +176,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_value::invalidate virtual void stdex::parser::http_value::invalidate ())
@@ -186,7 +199,8 @@ 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 f50f72f8f..ba167562d 100644 --- a/classstdex_1_1parser_1_1http__value__collection-members.html +++ b/classstdex_1_1parser_1_1http__value__collection-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_value_collection< KEY, T > Member List
@@ -86,7 +99,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__value__collection.html b/classstdex_1_1parser_1_1http__value__collection.html index b14106d8a..d5b816e1d 100644 --- a/classstdex_1_1parser_1_1http__value__collection.html +++ b/classstdex_1_1parser_1_1http__value__collection.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_value_collection< KEY, T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -97,11 +110,11 @@ Inheritance diagram for stdex::parser::http_value_collection< KEY, T >:

Public Member Functions

-void insert (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +void insert (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)  

Detailed Description

-
template<class KEY, class T>
+
template<class KEY, class T>
class stdex::parser::http_value_collection< KEY, T >

Collection of HTTP values.


The documentation for this class was generated from the following file:
  • include/stdex/parser.hpp
  • @@ -109,7 +122,8 @@ class stdex::parser::http_value_collection< KEY, T >

Collection of

+
diff --git a/classstdex_1_1parser_1_1http__weight-members.html b/classstdex_1_1parser_1_1http__weight-members.html index a96daab65..5458b1824 100644 --- a/classstdex_1_1parser_1_1http__weight-members.html +++ b/classstdex_1_1parser_1_1http__weight-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_weight Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__weight.html b/classstdex_1_1parser_1_1http__weight.html index 655b534d3..0040e6589 100644 --- a/classstdex_1_1parser_1_1http__weight.html +++ b/classstdex_1_1parser_1_1http__weight.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_weight Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,44 +115,44 @@ Inheritance diagram for stdex::parser::http_weight:

Public Member Functions

http_weight (const std::locale &locale=std::locale()) + http_weight (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +float  +stdex::interval< size_t > 

Public Attributes

-float value
value
 Calculated value of the weight factor.
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -162,9 +175,9 @@ std::locale 

m_locale - + - +
virtual void stdex::parser::http_weight::invalidate virtual void stdex::parser::http_weight::invalidate ())
@@ -185,7 +198,8 @@ 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 11b47c7a4..a62034163 100644 --- a/classstdex_1_1parser_1_1http__weighted__value-members.html +++ b/classstdex_1_1parser_1_1http__weighted__value-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::http_weighted_value< T, T_asterisk > Member List
@@ -92,7 +105,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1http__weighted__value.html b/classstdex_1_1parser_1_1http__weighted__value.html index f50ce4995..071efb969 100644 --- a/classstdex_1_1parser_1_1http__weighted__value.html +++ b/classstdex_1_1parser_1_1http__weighted__value.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_weighted_value< T, T_asterisk > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,28 +115,28 @@ Inheritance diagram for stdex::parser::http_weighted_value< T, T_asterisk >

Public Member Functions

http_weighted_value (const std::locale &locale=std::locale()) + http_weighted_value (const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +T_asterisk  @@ -133,18 +146,18 @@ T  +stdex::interval< size_t > 

Public Attributes

-T_asterisk asterisk
asterisk
 
value
value
 
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
+virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 

@@ -155,7 +168,7 @@ std::locale 

m_locale 

Detailed Description

-
template<class T, class T_asterisk = http_asterisk>
+
template<class T, class T_asterisk = http_asterisk>
class stdex::parser::http_weighted_value< T, T_asterisk >

Test for HTTP weighted value.

Member Function Documentation

@@ -164,15 +177,15 @@ class stdex::parser::http_weighted_value< T, T_asterisk >

Test for

-template<class T , class T_asterisk = http_asterisk>
+template<class T , class T_asterisk = http_asterisk>
- + - +
virtual void stdex::parser::http_weighted_value< T, T_asterisk >::invalidate virtual void stdex::parser::http_weighted_value< T, T_asterisk >::invalidate ())
@@ -193,7 +206,8 @@ template<clas + diff --git a/classstdex_1_1parser_1_1parser__collection-members.html b/classstdex_1_1parser_1_1parser__collection-members.html index 64290a21a..b8f2638a7 100644 --- a/classstdex_1_1parser_1_1parser__collection-members.html +++ b/classstdex_1_1parser_1_1parser__collection-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::parser_collection< T > Member List
@@ -98,7 +111,8 @@ $(function() {
+
diff --git a/classstdex_1_1parser_1_1parser__collection.html b/classstdex_1_1parser_1_1parser__collection.html index 8cb6f4fd3..ff979639d 100644 --- a/classstdex_1_1parser_1_1parser__collection.html +++ b/classstdex_1_1parser_1_1parser__collection.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::parser_collection< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -106,34 +119,34 @@ Inheritance diagram for stdex::parser::parser_collection< T >:

Public Member Functions

parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale()) + parser_collection (const std::shared_ptr< basic_parser< T > > *el, size_t count, const std::locale &locale=std::locale())   parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale()) + parser_collection (std::vector< std::shared_ptr< basic_parser< T > > > &&collection, const std::locale &locale=std::locale())   -virtual void invalidate () +virtual void invalidate ()   - Public Member Functions inherited from stdex::parser::basic_parser< T >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   +  - +

Protected Member Functions

parser_collection (const std::locale &locale)
parser_collection (const std::locale &locale)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
+stdex::interval< size_t > 

@@ -150,12 +163,12 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_parser< T >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 

Detailed Description

-
template<class T>
+
template<class T>
class stdex::parser::parser_collection< T >

Base template for collection-holding parsers.

Member Function Documentation

@@ -164,15 +177,15 @@ class stdex::parser::parser_collection< T >

Base template for coll

-template<class T >
+template<class T >
- + - +
virtual void stdex::parser::parser_collection< T >::invalidate virtual void stdex::parser::parser_collection< T >::invalidate ())
@@ -193,7 +206,8 @@ 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 abe33e4ce..6cff48539 100644 --- a/classstdex_1_1parser_1_1sgml__any__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__any__cp-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::sgml_any_cp Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_any_cp, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_any_cp)stdex::parser::sgml_any_cpinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_any_cp(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_any_cp)stdex::parser::sgml_any_cpinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_any_cp)stdex::parser::sgml_any_cpinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_any_cp(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_any_cp)stdex::parser::sgml_any_cpinline
+
diff --git a/classstdex_1_1parser_1_1sgml__any__cp.html b/classstdex_1_1parser_1_1sgml__any__cp.html index bf1e558c6..021b69c8d 100644 --- a/classstdex_1_1parser_1_1sgml__any__cp.html +++ b/classstdex_1_1parser_1_1sgml__any__cp.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_any_cp Class Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -95,57 +108,53 @@ Inheritance diagram for stdex::parser::sgml_any_cp:
stdex::parser::basic_any_cu< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_any_cp (const std::locale &locale=std::locale())
sgml_any_cp (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_any_cu< char >
basic_any_cu (const std::locale &locale=std::locale())
basic_any_cu (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_any_cu< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  - + @@ -158,7 +167,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_locale
 
m_locale + diff --git a/classstdex_1_1parser_1_1sgml__cp-members.html b/classstdex_1_1parser_1_1sgml__cp-members.html index 0dd4c2c74..403b03618 100644 --- a/classstdex_1_1parser_1_1sgml__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__cp-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_cp Member List
@@ -90,7 +103,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1sgml__cp.html b/classstdex_1_1parser_1_1sgml__cp.html index 7c019257d..e55b0f99e 100644 --- a/classstdex_1_1parser_1_1sgml__cp.html +++ b/classstdex_1_1parser_1_1sgml__cp.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_cp Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,33 +115,33 @@ Inheritance diagram for stdex::parser::sgml_cp:

Public Member Functions

sgml_cp (const char *chr, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale()) + sgml_cp (const char *chr, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   +virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
std::wstring  +bool  +stdex::interval< size_t > 

@@ -137,7 +150,7 @@ Protected Attributes

m_chr
 
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
@@ -148,7 +161,7 @@ std::locale m_locale
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -160,7 +173,8 @@ 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 eeae00af9..dd753fc3d 100644 --- a/classstdex_1_1parser_1_1sgml__cp__set-members.html +++ b/classstdex_1_1parser_1_1sgml__cp__set-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::parser::sgml_cp_set Member List
@@ -82,21 +95,15 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_cp_set, including all inherited members.

- - - - - - - - - + + + -
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_cp_set)stdex::parser::sgml_cp_setinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
m_set (defined in stdex::parser::sgml_cp_set)stdex::parser::sgml_cp_setprotected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_cp_set)stdex::parser::sgml_cp_setinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
m_set (defined in stdex::parser::sgml_cp_set)stdex::parser::sgml_cp_setprotected
sgml_cp_set(const char *set, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_cp_set)stdex::parser::sgml_cp_setinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
+ diff --git a/classstdex_1_1parser_1_1sgml__cp__set.html b/classstdex_1_1parser_1_1sgml__cp__set.html index 8df61d939..5ad0c10fc 100644 --- a/classstdex_1_1parser_1_1sgml__cp__set.html +++ b/classstdex_1_1parser_1_1sgml__cp__set.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_cp_set Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -96,47 +109,43 @@ Inheritance diagram for stdex::parser::sgml_cp_set:
stdex::parser::basic_set< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + - + +  +bool  +bool  +bool 

Public Member Functions

sgml_cp_set (const char *set, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale())
sgml_cp_set (const char *set, size_t count=SIZE_MAX, bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_set< char >
basic_set (bool invert=false, const std::locale &locale=std::locale())
basic_set (bool invert=false, const std::locale &locale=std::locale())
 
virtual void invalidate ()
virtual void invalidate ()
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_set< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
@@ -145,9 +154,9 @@ std::wstring  +bool  - + @@ -156,11 +165,11 @@ std::locale  +size_t  - + +stdex::interval< size_t > 

Protected Attributes

m_set 
- Protected Attributes inherited from stdex::parser::basic_set< char >
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_locale
 
m_locale
- Public Attributes inherited from stdex::parser::basic_set< char >
-size_t hit_offset
hit_offset
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -172,7 +181,8 @@ 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 9cd450988..91f07f214 100644 --- a/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html +++ b/classstdex_1_1parser_1_1sgml__dns__domain__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::parser::sgml_dns_domain_char Member List
@@ -83,21 +96,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_dns_domain_char, including all inherited members.

- - - - - - - - - - - + + +
allow_on_edgestdex::parser::basic_dns_domain_char< char >
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_dns_domain_char)stdex::parser::sgml_dns_domain_charinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_dns_domain_char(bool allow_idn, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_dns_domain_char)stdex::parser::sgml_dns_domain_charinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_dns_domain_char)stdex::parser::sgml_dns_domain_charinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_dns_domain_char(bool allow_idn, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_dns_domain_char)stdex::parser::sgml_dns_domain_charinline
+ diff --git a/classstdex_1_1parser_1_1sgml__dns__domain__char.html b/classstdex_1_1parser_1_1sgml__dns__domain__char.html index fc592cc84..5d78017cc 100644 --- a/classstdex_1_1parser_1_1sgml__dns__domain__char.html +++ b/classstdex_1_1parser_1_1sgml__dns__domain__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_dns_domain_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,66 +108,62 @@ Inheritance diagram for stdex::parser::sgml_dns_domain_char:
stdex::parser::basic_dns_domain_char< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale())
sgml_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_dns_domain_char< char >
basic_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale())
basic_dns_domain_char (bool allow_idn, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_dns_domain_char< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
+bool  - + +stdex::interval< size_t >  +bool  - + @@ -167,7 +176,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_dns_domain_char< char >
-bool allow_on_edge
allow_on_edge
 Is character allowed at the beginning or an end of a DNS domain?
 
- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_dns_domain_char< char >
-bool m_allow_idn
m_allow_idn
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_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 ca29db869..f10807840 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 @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_ipv6_scope_id_char Member List
@@ -88,7 +101,8 @@ $(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 40af1ba17..78c894848 100644 --- a/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html +++ b/classstdex_1_1parser_1_1sgml__ipv6__scope__id__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_ipv6_scope_id_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,40 +114,40 @@ Inheritance diagram for stdex::parser::sgml_ipv6_scope_id_char:

Public Member Functions

sgml_ipv6_scope_id_char (const std::locale &locale=std::locale()) + sgml_ipv6_scope_id_char (const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   +virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
+stdex::interval< size_t >  @@ -150,7 +163,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< char >
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 043417de6..7d0b57b15 100644 --- a/classstdex_1_1parser_1_1sgml__punct__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__punct__cp-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::parser::sgml_punct_cp Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_punct_cp, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_punct_cp)stdex::parser::sgml_punct_cpinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_punct_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_punct_cp)stdex::parser::sgml_punct_cpinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_punct_cp)stdex::parser::sgml_punct_cpinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_punct_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_punct_cp)stdex::parser::sgml_punct_cpinline
+ diff --git a/classstdex_1_1parser_1_1sgml__punct__cp.html b/classstdex_1_1parser_1_1sgml__punct__cp.html index 43f3e758f..f4d966647 100644 --- a/classstdex_1_1parser_1_1sgml__punct__cp.html +++ b/classstdex_1_1parser_1_1sgml__punct__cp.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_punct_cp Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,61 +108,57 @@ Inheritance diagram for stdex::parser::sgml_punct_cp:
stdex::parser::basic_punct_cu< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_punct_cp (bool invert=false, const std::locale &locale=std::locale())
sgml_punct_cp (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_punct_cu< char >
basic_punct_cu (bool invert=false, const std::locale &locale=std::locale())
basic_punct_cu (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_punct_cu< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  +bool  - + @@ -162,7 +171,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_punct_cu< char >
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_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 80c94f25f..e27d17434 100644 --- a/classstdex_1_1parser_1_1sgml__space__cp-members.html +++ b/classstdex_1_1parser_1_1sgml__space__cp-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_space_cp Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_space_cp, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_space_cp)stdex::parser::sgml_space_cpinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_space_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_space_cp)stdex::parser::sgml_space_cpinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_space_cp)stdex::parser::sgml_space_cpinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_space_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_space_cp)stdex::parser::sgml_space_cpinline
+ diff --git a/classstdex_1_1parser_1_1sgml__space__cp.html b/classstdex_1_1parser_1_1sgml__space__cp.html index 9177b794a..4444ab467 100644 --- a/classstdex_1_1parser_1_1sgml__space__cp.html +++ b/classstdex_1_1parser_1_1sgml__space__cp.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_space_cp Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,61 +108,57 @@ Inheritance diagram for stdex::parser::sgml_space_cp:
stdex::parser::basic_space_cu< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_space_cp (bool invert=false, const std::locale &locale=std::locale())
sgml_space_cp (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_space_cu< char >
basic_space_cu (bool invert=false, const std::locale &locale=std::locale())
basic_space_cu (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_space_cu< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  +bool  - + @@ -162,7 +171,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_space_cu< char >
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_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 7500a0f6f..76f31a598 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 @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_space_or_punct_cp Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_space_or_punct_cp, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_space_or_punct_cp)stdex::parser::sgml_space_or_punct_cpinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_space_or_punct_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_space_or_punct_cp)stdex::parser::sgml_space_or_punct_cpinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_space_or_punct_cp)stdex::parser::sgml_space_or_punct_cpinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_space_or_punct_cp(bool invert=false, const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_space_or_punct_cp)stdex::parser::sgml_space_or_punct_cpinline
+ 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 595fa5f11..f050af7e8 100644 --- a/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html +++ b/classstdex_1_1parser_1_1sgml__space__or__punct__cp.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_space_or_punct_cp Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,61 +108,57 @@ Inheritance diagram for stdex::parser::sgml_space_or_punct_cp:
stdex::parser::basic_space_or_punct_cu< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_space_or_punct_cp (bool invert=false, const std::locale &locale=std::locale())
sgml_space_or_punct_cp (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_space_or_punct_cu< char >
basic_space_or_punct_cu (bool invert=false, const std::locale &locale=std::locale())
basic_space_or_punct_cu (bool invert=false, const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_space_or_punct_cu< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  +bool  - + @@ -162,7 +171,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_space_or_punct_cu< char >
-bool m_invert
m_invert
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_locale
 
m_locale + diff --git a/classstdex_1_1parser_1_1sgml__string-members.html b/classstdex_1_1parser_1_1sgml__string-members.html index 95c45e264..9edecc556 100644 --- a/classstdex_1_1parser_1_1sgml__string-members.html +++ b/classstdex_1_1parser_1_1sgml__string-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_string Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1parser_1_1sgml__string.html b/classstdex_1_1parser_1_1sgml__string.html index 2d5e4b653..eda8df839 100644 --- a/classstdex_1_1parser_1_1sgml__string.html +++ b/classstdex_1_1parser_1_1sgml__string.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_string Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,33 +115,33 @@ Inheritance diagram for stdex::parser::sgml_string:

Public Member Functions

sgml_string (const char *str, size_t count=SIZE_MAX, const std::locale &locale=std::locale()) + sgml_string (const char *str, size_t count=SIZE_MAX, const std::locale &locale=std::locale())   - Public Member Functions inherited from stdex::parser::basic_parser< char >basic_parser (const std::locale &locale=std::locale()) + basic_parser (const std::locale &locale=std::locale())   -bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) +bool match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)   -virtual void invalidate () +virtual void invalidate ()   +virtual bool  +virtual bool 

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
+stdex::interval< size_t > 

@@ -145,7 +158,7 @@ std::locale 

m_locale
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
@@ -157,7 +170,8 @@ 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 99e16908a..9a74e0e3f 100644 --- a/classstdex_1_1parser_1_1sgml__url__password__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__password__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::parser::sgml_url_password_char Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_url_password_char, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_password_char)stdex::parser::sgml_url_password_charinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_url_password_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_password_char)stdex::parser::sgml_url_password_charinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_password_char)stdex::parser::sgml_url_password_charinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_url_password_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_password_char)stdex::parser::sgml_url_password_charinline
+ diff --git a/classstdex_1_1parser_1_1sgml__url__password__char.html b/classstdex_1_1parser_1_1sgml__url__password__char.html index ca60a4e48..2f8a14cdd 100644 --- a/classstdex_1_1parser_1_1sgml__url__password__char.html +++ b/classstdex_1_1parser_1_1sgml__url__password__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_url_password_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,57 +108,53 @@ Inheritance diagram for stdex::parser::sgml_url_password_char:
stdex::parser::basic_url_password_char< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_url_password_char (const std::locale &locale=std::locale())
sgml_url_password_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_url_password_char< char >
basic_url_password_char (const std::locale &locale=std::locale())
basic_url_password_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_url_password_char< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  - + @@ -158,7 +167,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_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 5d6dc74e0..d0241ac4b 100644 --- a/classstdex_1_1parser_1_1sgml__url__path__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__path__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_url_path_char Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_url_path_char, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_path_char)stdex::parser::sgml_url_path_charinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_url_path_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_path_char)stdex::parser::sgml_url_path_charinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_path_char)stdex::parser::sgml_url_path_charinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_url_path_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_path_char)stdex::parser::sgml_url_path_charinline
+ diff --git a/classstdex_1_1parser_1_1sgml__url__path__char.html b/classstdex_1_1parser_1_1sgml__url__path__char.html index ec61f7456..29d7a667c 100644 --- a/classstdex_1_1parser_1_1sgml__url__path__char.html +++ b/classstdex_1_1parser_1_1sgml__url__path__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_url_path_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,57 +108,53 @@ Inheritance diagram for stdex::parser::sgml_url_path_char:
stdex::parser::basic_url_path_char< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_url_path_char (const std::locale &locale=std::locale())
sgml_url_path_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_url_path_char< char >
basic_url_path_char (const std::locale &locale=std::locale())
basic_url_path_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_url_path_char< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  - + @@ -158,7 +167,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_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 d8b61e418..9b3ea89ac 100644 --- a/classstdex_1_1parser_1_1sgml__url__username__char-members.html +++ b/classstdex_1_1parser_1_1sgml__url__username__char-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::parser::sgml_url_username_char Member List
@@ -82,21 +95,14 @@ $(function() {

This is the complete list of members for stdex::parser::sgml_url_username_char, including all inherited members.

- - - - - - - - - - - + + +
basic_parser(const std::locale &locale=std::locale()) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_username_char)stdex::parser::sgml_url_username_charinlineprotectedvirtual
do_match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0 (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protectedpure virtual
intervalstdex::parser::basic_parser< T >
invalidate() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
m_locale (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >protected
match(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
match(const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
search(_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inline
sgml_url_username_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_username_char)stdex::parser::sgml_url_username_charinline
~basic_parser() (defined in stdex::parser::basic_parser< T >)stdex::parser::basic_parser< T >inlinevirtual
do_match(_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default) (defined in stdex::parser::sgml_url_username_char)stdex::parser::sgml_url_username_charinlineprotectedvirtual
intervalstdex::parser::basic_parser< char >
sgml_url_username_char(const std::locale &locale=std::locale()) (defined in stdex::parser::sgml_url_username_char)stdex::parser::sgml_url_username_charinline
+ diff --git a/classstdex_1_1parser_1_1sgml__url__username__char.html b/classstdex_1_1parser_1_1sgml__url__username__char.html index c236626ab..60c2286cd 100644 --- a/classstdex_1_1parser_1_1sgml__url__username__char.html +++ b/classstdex_1_1parser_1_1sgml__url__username__char.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::sgml_url_username_char Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,57 +108,53 @@ Inheritance diagram for stdex::parser::sgml_url_username_char:
stdex::parser::basic_url_username_char< char > -stdex::parser::basic_parser< T > +stdex::parser::basic_parser< char >
+  +  - + +  +bool  +bool  +bool  +virtual void 

Public Member Functions

sgml_url_username_char (const std::locale &locale=std::locale())
sgml_url_username_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_url_username_char< char >
basic_url_username_char (const std::locale &locale=std::locale())
basic_url_username_char (const std::locale &locale=std::locale())
 
- Public Member Functions inherited from stdex::parser::basic_parser< T >
- Public Member Functions inherited from stdex::parser::basic_parser< char >
basic_parser (const std::locale &locale=std::locale())
basic_parser (const std::locale &locale=std::locale())
 
-bool search (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
search (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-bool match (const std::basic_string_view< T, std::char_traits< T > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
match (const std::basic_string_view< char, std::char_traits< char > > text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
-virtual void invalidate ()
invalidate ()
 
+virtual bool  - + - - -

Protected Member Functions

-virtual bool do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
do_match (_In_reads_or_z_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_url_username_char< char >
-virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
virtual bool do_match (_In_reads_or_z_opt_(end) const char *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)
 
- Protected Member Functions inherited from stdex::parser::basic_parser< T >
virtual bool do_match (_In_reads_or_z_opt_(end) const T *text, size_t start=0, size_t end=SIZE_MAX, int flags=match_default)=0
 
- + +stdex::interval< size_t >  - + @@ -158,7 +167,8 @@ std::locale 

Additional Inherited Members

- Public Attributes inherited from stdex::parser::basic_parser< T >
- Public Attributes inherited from stdex::parser::basic_parser< char >
-stdex::interval< size_tinterval
interval
 Region of the last match.
 
- Protected Attributes inherited from stdex::parser::basic_parser< T >
- Protected Attributes inherited from stdex::parser::basic_parser< char >
std::locale m_locale
 
m_locale + diff --git a/classstdex_1_1pool-members.html b/classstdex_1_1pool-members.html index baec8b227..19a0ee1a8 100644 --- a/classstdex_1_1pool-members.html +++ b/classstdex_1_1pool-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::pool< T > Member List
@@ -89,7 +102,8 @@ $(function() {
+ diff --git a/classstdex_1_1pool.html b/classstdex_1_1pool.html index c4c759766..5e32af310 100644 --- a/classstdex_1_1pool.html +++ b/classstdex_1_1pool.html @@ -3,13 +3,15 @@ - + stdex: stdex::pool< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -126,7 +139,7 @@ template<class T >
T stdex::pool< T >::pop ( - numaid_t numa = numa_node()) + numaid_t numa = numa_node()) @@ -162,12 +175,12 @@ template<class T >
void stdex::pool< T >::push ( - T && r, + T && r, - numaid_t numa = numa_node() ) + numaid_t numa = numa_node() ) @@ -194,7 +207,8 @@ template<class T >
+ diff --git a/classstdex_1_1progress-members.html b/classstdex_1_1progress-members.html index c8e486106..8000e7a46 100644 --- a/classstdex_1_1progress-members.html +++ b/classstdex_1_1progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::progress< T > Member List
@@ -91,7 +104,8 @@ $(function() {
+ diff --git a/classstdex_1_1progress.html b/classstdex_1_1progress.html index 79f7f1ae9..9aa61cb9e 100644 --- a/classstdex_1_1progress.html +++ b/classstdex_1_1progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::progress< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -137,7 +150,7 @@ template<class T >
virtual bool stdex::progress< T >::cancel ( - ) + ) @@ -150,7 +163,7 @@ template<class T >

Query whether user requested abort.

-

Reimplemented in stdex::timeout_progress< T >, stdex::global_progress< T >, and stdex::aggregate_progress< T >::worker_progress.

+

Reimplemented in stdex::aggregate_progress< T >::worker_progress, stdex::global_progress< T >, and stdex::timeout_progress< T >.

@@ -187,7 +200,7 @@ template<class T > -

Reimplemented in stdex::lazy_progress< T >, stdex::timeout_progress< T >, stdex::global_progress< T >, and stdex::aggregate_progress< T >::worker_progress.

+

Reimplemented in stdex::aggregate_progress< T >::worker_progress, stdex::global_progress< T >, stdex::lazy_progress< T >, and stdex::timeout_progress< T >.

@@ -205,7 +218,7 @@ template<class T > virtual void stdex::progress< T >::set_range ( - T start, + T start, @@ -229,7 +242,7 @@ template<class T > -

Reimplemented in stdex::lazy_progress< T >, stdex::timeout_progress< T >, stdex::global_progress< T >, and stdex::aggregate_progress< T >::worker_progress.

+

Reimplemented in stdex::aggregate_progress< T >::worker_progress, stdex::global_progress< T >, stdex::lazy_progress< T >, and stdex::timeout_progress< T >.

@@ -266,7 +279,7 @@ template<class T > -

Reimplemented in stdex::timeout_progress< T >, stdex::global_progress< T >, and stdex::aggregate_progress< T >::worker_progress.

+

Reimplemented in stdex::aggregate_progress< T >::worker_progress, stdex::global_progress< T >, and stdex::timeout_progress< T >.

@@ -284,7 +297,7 @@ template<class T > virtual void stdex::progress< T >::show ( - bool show = true) + bool show = true) @@ -303,7 +316,7 @@ template<class T > -

Reimplemented in stdex::timeout_progress< T >, stdex::global_progress< T >, and stdex::aggregate_progress< T >::worker_progress.

+

Reimplemented in stdex::aggregate_progress< T >::worker_progress, stdex::global_progress< T >, and stdex::timeout_progress< T >.

@@ -313,7 +326,8 @@ template<class T > + diff --git a/classstdex_1_1progress__switcher-members.html b/classstdex_1_1progress__switcher-members.html index b4bc738bf..2acaf2f41 100644 --- a/classstdex_1_1progress__switcher-members.html +++ b/classstdex_1_1progress__switcher-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::progress_switcher< T > Member List
@@ -103,7 +116,8 @@ $(function() {
+ diff --git a/classstdex_1_1progress__switcher.html b/classstdex_1_1progress__switcher.html index a4f91247b..fcd3e9c48 100644 --- a/classstdex_1_1progress__switcher.html +++ b/classstdex_1_1progress__switcher.html @@ -3,13 +3,15 @@ - + stdex: stdex::progress_switcher< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -165,7 +178,8 @@ class stdex::progress_switcher< T >

Progress indicator switcher. <

+
diff --git a/classstdex_1_1ring-members.html b/classstdex_1_1ring-members.html index 5e4351a36..02b9de3ad 100644 --- a/classstdex_1_1ring-members.html +++ b/classstdex_1_1ring-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::ring< T, N_cap > Member List
@@ -102,7 +115,8 @@ $(function() {
+ diff --git a/classstdex_1_1ring.html b/classstdex_1_1ring.html index c972022f1..85a6fc85b 100644 --- a/classstdex_1_1ring.html +++ b/classstdex_1_1ring.html @@ -3,13 +3,15 @@ - + stdex: stdex::ring< T, N_cap > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -174,7 +187,7 @@ template<class T , size_t N_cap>
std::tuple< T *, size_t > stdex::ring< T, N_cap >::back ( - ) + ) @@ -204,7 +217,7 @@ template<class T , size_t N_cap>
std::tuple< T *, size_t > stdex::ring< T, N_cap >::front ( - ) + ) @@ -296,7 +309,8 @@ template<class T , size_t N_cap>
+ diff --git a/classstdex_1_1scoped__executor-members.html b/classstdex_1_1scoped__executor-members.html index 1fbae92e5..ad39f6d0b 100644 --- a/classstdex_1_1scoped__executor-members.html +++ b/classstdex_1_1scoped__executor-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::scoped_executor< F_init, F_done > Member List
@@ -87,7 +100,8 @@ $(function() {
+ diff --git a/classstdex_1_1scoped__executor.html b/classstdex_1_1scoped__executor.html index 7ab4db9f8..74eb5731e 100644 --- a/classstdex_1_1scoped__executor.html +++ b/classstdex_1_1scoped__executor.html @@ -3,13 +3,15 @@ - + stdex: stdex::scoped_executor< F_init, F_done > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -117,7 +130,7 @@ template<typename F_init , typename F_done >
stdex::scoped_executor< F_init, F_done >::scoped_executor ( - F_init && init, + F_init && init, @@ -149,7 +162,8 @@ template<typename F_init , typename F_done >
+ diff --git a/classstdex_1_1sha1__hash-members.html b/classstdex_1_1sha1__hash-members.html index 26141f526..50321d978 100644 --- a/classstdex_1_1sha1__hash-members.html +++ b/classstdex_1_1sha1__hash-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::sha1_hash Member List
@@ -83,20 +96,19 @@ $(function() {

This is the complete list of members for stdex::sha1_hash, including all inherited members.

- + - - - - - + + +
clear()stdex::sha1_hashinlinevirtual
data()stdex::basic_hash< T >inline
data()stdex::basic_hash< sha1_t >inline
finalize()stdex::sha1_hashinlinevirtual
hash(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::block_hash< sha1_t >inlinevirtual
hash_block() (defined in stdex::sha1_hash)stdex::sha1_hashinlineprotectedvirtual
m_state (defined in stdex::sha1_hash)stdex::sha1_hashprotected
m_value (defined in stdex::basic_hash< T >)stdex::basic_hash< T >protected
operator const T &() conststdex::basic_hash< T >inline
sha1_hash() (defined in stdex::sha1_hash)stdex::sha1_hashinline
size()stdex::basic_hash< T >inlinestatic
~basic_hash() (defined in stdex::basic_hash< T >)stdex::basic_hash< T >inlinevirtual
operator const sha1_t &() conststdex::basic_hash< sha1_t >inline
sha1_hash() (defined in stdex::sha1_hash)stdex::sha1_hashinline
size()stdex::basic_hash< sha1_t >inlinestatic
+ diff --git a/classstdex_1_1sha1__hash.html b/classstdex_1_1sha1__hash.html index 8764cff90..bba01096a 100644 --- a/classstdex_1_1sha1__hash.html +++ b/classstdex_1_1sha1__hash.html @@ -3,13 +3,15 @@ - + stdex: stdex::sha1_hash Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -96,7 +109,7 @@ Inheritance diagram for stdex::sha1_hash:
stdex::block_hash< sha1_t > -stdex::basic_hash< T > +stdex::basic_hash< sha1_t >
@@ -109,16 +122,16 @@ Public Member Functions - + - + +const sha1_t &  + 
 Finalizes hash value.
 
- Public Member Functions inherited from stdex::block_hash< sha1_t >
virtual void hash (_In_reads_bytes_opt_(length) const void *data, size_t length)
virtual void hash (_In_reads_bytes_opt_(length) const void *data, size_t length)
 Hashes block of data.
 
- Public Member Functions inherited from stdex::basic_hash< T >
- Public Member Functions inherited from stdex::basic_hash< sha1_t >
-const T & data ()
data ()
 Returns hash value.
 
operator const T & () const
operator const sha1_t & () const
 Returns hash value.
 
@@ -147,14 +160,14 @@ union {  - + +sha1_t 
 
};  
 
- Protected Attributes inherited from stdex::basic_hash< T >
- Protected Attributes inherited from stdex::basic_hash< sha1_t >
-T m_value
m_value
 
- + @@ -182,7 +195,7 @@ uint32_t  - +

Additional Inherited Members

- Static Public Member Functions inherited from stdex::basic_hash< T >
- Static Public Member Functions inherited from stdex::basic_hash< sha1_t >
static size_t size ()
 Returns size of the hash value in bytes.
m_temp [16] virtual void stdex::sha1_hash::clear ())
@@ -211,7 +224,7 @@ uint32_t m_temp [16] virtual void stdex::sha1_hash::finalize ( - ) + ) @@ -224,7 +237,7 @@ uint32_t m_temp [16]Finalizes hash value.

-

Implements stdex::basic_hash< T >.

+

Implements stdex::basic_hash< sha1_t >.

@@ -240,7 +253,7 @@ uint32_t m_temp [16] virtual void stdex::sha1_hash::hash_block ( - ) + ) @@ -261,7 +274,8 @@ uint32_t m_temp [16] + diff --git a/classstdex_1_1spinlock-members.html b/classstdex_1_1spinlock-members.html index f18e6c1e7..34a6b1883 100644 --- a/classstdex_1_1spinlock-members.html +++ b/classstdex_1_1spinlock-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::spinlock Member List
@@ -88,7 +101,8 @@ $(function() {
+ diff --git a/classstdex_1_1spinlock.html b/classstdex_1_1spinlock.html index fb17e0305..11c5d69d7 100644 --- a/classstdex_1_1spinlock.html +++ b/classstdex_1_1spinlock.html @@ -3,13 +3,15 @@ - + stdex: stdex::spinlock Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -118,7 +131,7 @@ void unlock () noexcep bool stdex::spinlock::try_lock ( - ) + ) @@ -140,7 +153,8 @@ void unlock () noexcep
+
diff --git a/classstdex_1_1stream_1_1async__reader-members.html b/classstdex_1_1stream_1_1async__reader-members.html index edf10c2a0..6ff45a871 100644 --- a/classstdex_1_1stream_1_1async__reader-members.html +++ b/classstdex_1_1stream_1_1async__reader-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::stream::async_reader< N_cap > Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1async__reader.html b/classstdex_1_1stream_1_1async__reader.html index f7039fa65..39b4ff1fc 100644 --- a/classstdex_1_1stream_1_1async__reader.html +++ b/classstdex_1_1stream_1_1async__reader.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::async_reader< N_cap > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -370,7 +383,7 @@ template<size_t N_cap = default_async_limit>
virtual size_t stdex::stream::async_reader< N_cap >::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -405,7 +418,8 @@ template<size_t N_cap = default_async_limit>
+ diff --git a/classstdex_1_1stream_1_1async__writer-members.html b/classstdex_1_1stream_1_1async__writer-members.html index ffc92556f..5399bf008 100644 --- a/classstdex_1_1stream_1_1async__writer-members.html +++ b/classstdex_1_1stream_1_1async__writer-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::async_writer< N_cap > Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1async__writer.html b/classstdex_1_1stream_1_1async__writer.html index 68d2a23e3..706b47b78 100644 --- a/classstdex_1_1stream_1_1async__writer.html +++ b/classstdex_1_1stream_1_1async__writer.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::async_writer< N_cap > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -370,7 +383,7 @@ template<size_t N_cap = default_async_limit>
virtual void stdex::stream::async_writer< N_cap >::flush ( - ) + ) @@ -401,7 +414,7 @@ template<size_t N_cap = default_async_limit>
virtual size_t stdex::stream::async_writer< N_cap >::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -436,7 +449,8 @@ template<size_t N_cap = default_async_limit>
+ diff --git a/classstdex_1_1stream_1_1basic-members.html b/classstdex_1_1stream_1_1basic-members.html index 420ee86bb..a874ad0e5 100644 --- a/classstdex_1_1stream_1_1basic-members.html +++ b/classstdex_1_1stream_1_1basic-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::basic Member List
@@ -149,7 +162,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1basic.html b/classstdex_1_1stream_1_1basic.html index b5c724013..0dea489d1 100644 --- a/classstdex_1_1stream_1_1basic.html +++ b/classstdex_1_1stream_1_1basic.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::basic Class Reference + + @@ -32,23 +34,33 @@ - + + + + @@ -418,7 +431,7 @@ state_t m_state virtual size_t stdex::stream::basic::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -443,7 +456,7 @@ state_t m_state
Returns
Number of bytes successfully read. On EOF, 0 is returned and stream state is set to state_t::eof. On error, 0 is returned and stream state is set to state_t::fail. On null reads (length == 0), 0 is returned and stream state is set to state_t::ok.
-

Reimplemented in stdex::base64_reader, stdex::stream_hasher< T >, stdex::stream::converter, stdex::stream::async_reader< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, stdex::stream::file_window, stdex::stream::cache, stdex::stream::basic_sys, stdex::stream::socket, stdex::stream::memory_file, stdex::stream::fifo, stdex::stream::diag_file, and stdex::zlib_reader.

+

Reimplemented in stdex::base64_reader, stdex::stream::async_reader< N_cap >, stdex::stream::basic_sys, stdex::stream::buffer, stdex::stream::cache, stdex::stream::converter, stdex::stream::diag_file, stdex::stream::fifo, stdex::stream::file_window, stdex::stream::limiter, stdex::stream::memory_file, stdex::stream::socket, stdex::stream::window, stdex::stream_hasher< T >, and stdex::zlib_reader.

@@ -459,12 +472,12 @@ state_t m_state size_t stdex::stream::basic::read_array ( - _Out_writes_bytes_(size *count) void * array, + _Out_writes_bytes_(size *count) void * array, - size_t size, + size_t size, @@ -533,7 +546,7 @@ template<class T > virtual std::vector< uint8_t > stdex::stream::basic::read_remainder ( - size_t max_length = SIZE_MAX) + size_t max_length = SIZE_MAX) @@ -638,7 +651,7 @@ template<class T_from , class T_to , class TR = std::char_traits<T_to> size_t stdex::stream::basic::readln ( - std::basic_string< T_to, TR, AX > & str, + std::basic_string< T_to, TR, AX > & str, @@ -702,7 +715,7 @@ template<class T_from , class T_to , class TR = std::char_traits<T_to> size_t stdex::stream::basic::readln_and_attach ( - std::basic_string< T_to, TR, AX > & str, + std::basic_string< T_to, TR, AX > & str, @@ -763,7 +776,7 @@ template<class T_from , class T_to , class TR = std::char_traits<T_to> virtual size_t stdex::stream::basic::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -788,7 +801,7 @@ template<class T_from , class T_to , class TR = std::char_traits<T_to>
Returns
Number of bytes successfully written. On error, stream state is set to state_t::fail.
-

Reimplemented in stdex::base64_writer, stdex::stream_hasher< T >, stdex::stream::converter, stdex::stream::replicator, stdex::stream::async_writer< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, stdex::stream::file_window, stdex::stream::cache, stdex::stream::basic_sys, stdex::stream::socket, stdex::stream::memory_file, stdex::stream::fifo, stdex::stream::diag_file, and stdex::zlib_writer.

+

Reimplemented in stdex::base64_writer, stdex::stream::async_writer< N_cap >, stdex::stream::basic_sys, stdex::stream::buffer, stdex::stream::cache, stdex::stream::converter, stdex::stream::diag_file, stdex::stream::fifo, stdex::stream::file_window, stdex::stream::limiter, stdex::stream::memory_file, stdex::stream::replicator, stdex::stream::socket, stdex::stream::window, stdex::stream_hasher< T >, and stdex::zlib_writer.

@@ -804,12 +817,12 @@ template<class T_from , class T_to , class TR = std::char_traits<T_to> size_t stdex::stream::basic::write_array ( - _In_reads_bytes_opt_(size *count) const void * array, + _In_reads_bytes_opt_(size *count) const void * array, - size_t size, + size_t size, @@ -843,12 +856,12 @@ template<class T_from , class T_to > size_t stdex::stream::basic::write_array ( - _In_reads_or_z_opt_(num_chars) const T_from * str, + _In_reads_or_z_opt_(num_chars) const T_from * str, - size_t num_chars, + size_t num_chars, @@ -890,7 +903,7 @@ template<class T_from , class T_to , class TR = std::char_traits<T_from&g size_t stdex::stream::basic::write_array ( - const std::basic_string< T_from, TR, AX > & str, + const std::basic_string< T_from, TR, AX > & str, @@ -931,7 +944,7 @@ template<class T_from , class T_to > size_t stdex::stream::basic::write_array ( - const T_from * str, + const T_from * str, @@ -1007,12 +1020,12 @@ template<class T > size_t stdex::stream::basic::write_sprintf ( - _Printf_format_string_params_(2) const char * format, + _Printf_format_string_params_(2) const char * format, - locale_t locale, + locale_t locale, @@ -1044,12 +1057,12 @@ template<class T > size_t stdex::stream::basic::write_sprintf ( - _Printf_format_string_params_(2) const wchar_t * format, + _Printf_format_string_params_(2) const wchar_t * format, - locale_t locale, + locale_t locale, @@ -1155,12 +1168,12 @@ template<class T > fsize_t stdex::stream::basic::write_stream ( - basic & stream, + basic & stream, - fsize_t amount = fsize_max ) + fsize_t amount = fsize_max ) @@ -1187,12 +1200,12 @@ template<class T > size_t stdex::stream::basic::write_vsprintf ( - _Printf_format_string_params_(2) const char * format, + _Printf_format_string_params_(2) const char * format, - locale_t locale, + locale_t locale, @@ -1224,12 +1237,12 @@ template<class T > size_t stdex::stream::basic::write_vsprintf ( - _Printf_format_string_params_(2) const wchar_t * format, + _Printf_format_string_params_(2) const wchar_t * format, - locale_t locale, + locale_t locale, @@ -1255,7 +1268,8 @@ template<class T > + diff --git a/classstdex_1_1stream_1_1basic__file-members.html b/classstdex_1_1stream_1_1basic__file-members.html index d61015dd1..1a00be4a0 100644 --- a/classstdex_1_1stream_1_1basic__file-members.html +++ b/classstdex_1_1stream_1_1basic__file-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::basic_file Member List
@@ -165,7 +178,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1basic__file.html b/classstdex_1_1stream_1_1basic__file.html index 3d06a3070..b8d654f8d 100644 --- a/classstdex_1_1stream_1_1basic__file.html +++ b/classstdex_1_1stream_1_1basic__file.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::basic_file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -389,7 +402,7 @@ state_t m_state virtual time_point stdex::stream::basic_file::atime ( - ) + ) const @@ -418,7 +431,7 @@ state_t m_state virtual time_point stdex::stream::basic_file::ctime ( - ) + ) const @@ -447,7 +460,7 @@ state_t m_state virtual void stdex::stream::basic_file::lock ( - fpos_t offset, + fpos_t offset, @@ -464,7 +477,7 @@ state_t m_stateLocks file section for exclusive access.

-

Reimplemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, and stdex::stream::diag_file.

+

Reimplemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, and stdex::stream::file_window.

@@ -480,7 +493,7 @@ state_t m_state virtual time_point stdex::stream::basic_file::mtime ( - ) + ) const @@ -509,7 +522,7 @@ state_t m_state charset_id stdex::stream::basic_file::read_charset ( - charset_id default_charset = charset_id::system) + charset_id default_charset = charset_id::system) @@ -542,7 +555,7 @@ state_t m_state virtual std::vector< uint8_t > stdex::stream::basic_file::read_remainder ( - size_t max_length = SIZE_MAX) + size_t max_length = SIZE_MAX) @@ -578,12 +591,12 @@ state_t m_state virtual fpos_t stdex::stream::basic_file::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -596,7 +609,7 @@ state_t m_stateSeeks to specified relative file position.

Returns
Absolute file position after seek, or fpos_max if seek failed.
-

Implemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, stdex::stream::memory_file, and stdex::stream::diag_file.

+

Implemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, stdex::stream::file_window, and stdex::stream::memory_file.

@@ -783,7 +796,7 @@ state_t m_state virtual fsize_t stdex::stream::basic_file::size ( - ) + ) const @@ -796,7 +809,7 @@ state_t m_stateReturns file size Should the file size cannot be determined, the method returns fsize_max and it does not reset the state to failed.

-

Implemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, stdex::stream::memory_file, and stdex::stream::diag_file.

+

Implemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, stdex::stream::file_window, and stdex::stream::memory_file.

@@ -843,7 +856,7 @@ state_t m_state virtual fpos_t stdex::stream::basic_file::tell ( - ) + ) const @@ -857,7 +870,7 @@ state_t m_stateReturns absolute file position in file or fpos_max if fails. This method does not update stream state.

Returns
Absolute file position or fpos_max if position cannot be determined.
-

Implemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, stdex::stream::memory_file, and stdex::stream::diag_file.

+

Implemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, stdex::stream::file_window, and stdex::stream::memory_file.

@@ -873,7 +886,7 @@ state_t m_state virtual void stdex::stream::basic_file::truncate ( - ) + ) @@ -886,7 +899,7 @@ state_t m_stateSets file size - truncates the remainder of file content from the current file position to the end of file.

-

Implemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, stdex::stream::memory_file, and stdex::stream::diag_file.

+

Implemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, stdex::stream::file_window, and stdex::stream::memory_file.

@@ -902,7 +915,7 @@ state_t m_state virtual void stdex::stream::basic_file::unlock ( - fpos_t offset, + fpos_t offset, @@ -919,7 +932,7 @@ state_t m_stateUnlocks file section for exclusive access.

-

Reimplemented in stdex::stream::file_window, stdex::stream::cache, stdex::stream::file, and stdex::stream::diag_file.

+

Reimplemented in stdex::stream::cache, stdex::stream::diag_file, stdex::stream::file, and stdex::stream::file_window.

@@ -929,7 +942,8 @@ 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 369178890..b317c3e18 100644 --- a/classstdex_1_1stream_1_1basic__sys-members.html +++ b/classstdex_1_1stream_1_1basic__sys-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::basic_sys Member List
@@ -159,7 +172,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1basic__sys.html b/classstdex_1_1stream_1_1basic__sys.html index 34b65b616..3432e16e0 100644 --- a/classstdex_1_1stream_1_1basic__sys.html +++ b/classstdex_1_1stream_1_1basic__sys.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::basic_sys Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -368,7 +381,7 @@ T m_h virtual void stdex::stream::basic_sys::close ( - ) + ) @@ -397,7 +410,7 @@ T m_h virtual void stdex::stream::basic_sys::flush ( - ) + ) @@ -426,7 +439,7 @@ T m_h virtual size_t stdex::stream::basic_sys::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -467,7 +480,7 @@ T m_h virtual size_t stdex::stream::basic_sys::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -502,7 +515,8 @@ T m_h
+
diff --git a/classstdex_1_1stream_1_1buffer-members.html b/classstdex_1_1stream_1_1buffer-members.html index ac6729efb..e8dd1ef23 100644 --- a/classstdex_1_1stream_1_1buffer-members.html +++ b/classstdex_1_1stream_1_1buffer-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::stream::buffer Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1buffer.html b/classstdex_1_1stream_1_1buffer.html index 96f5b6073..1737a215e 100644 --- a/classstdex_1_1stream_1_1buffer.html +++ b/classstdex_1_1stream_1_1buffer.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::buffer Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Classes | @@ -368,7 +381,7 @@ state_t m_state virtual void stdex::stream::buffer::flush ( - ) + ) @@ -397,7 +410,7 @@ state_t m_state virtual size_t stdex::stream::buffer::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -438,7 +451,7 @@ state_t m_state virtual size_t stdex::stream::buffer::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -473,7 +486,8 @@ 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 b7788a99c..cf495e5ee 100644 --- a/classstdex_1_1stream_1_1buffered__sys-members.html +++ b/classstdex_1_1stream_1_1buffered__sys-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::buffered_sys Member List
@@ -158,7 +171,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1buffered__sys.html b/classstdex_1_1stream_1_1buffered__sys.html index 576f4642c..822cdfbdf 100644 --- a/classstdex_1_1stream_1_1buffered__sys.html +++ b/classstdex_1_1stream_1_1buffered__sys.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::buffered_sys Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -363,7 +376,8 @@ void flush_write () +
diff --git a/classstdex_1_1stream_1_1cache-members.html b/classstdex_1_1stream_1_1cache-members.html index fa325d2d7..d7843372e 100644 --- a/classstdex_1_1stream_1_1cache-members.html +++ b/classstdex_1_1stream_1_1cache-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::cache Member List
@@ -131,9 +144,9 @@ $(function() { read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::cacheinlinevirtual seekbeg(fpos_t offset)stdex::stream::basic_fileinline seekcur(foff_t offset)stdex::stream::basic_fileinline @@ -149,25 +162,26 @@ $(function() { unlock(fpos_t offset, fsize_t length)stdex::stream::cacheinlinevirtual write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::cacheinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::basicinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::basicinline - write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + stdex::stream::basic_file::write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual ~cache() noexcept(false) (defined in stdex::stream::cache)stdex::stream::cacheinlinevirtual
+ diff --git a/classstdex_1_1stream_1_1cache.html b/classstdex_1_1stream_1_1cache.html index e4c2e081f..47d067e6c 100644 --- a/classstdex_1_1stream_1_1cache.html +++ b/classstdex_1_1stream_1_1cache.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::cache Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -389,7 +402,7 @@ state_t m_state virtual time_point stdex::stream::cache::atime ( - ) + ) const @@ -418,7 +431,7 @@ state_t m_state virtual void stdex::stream::cache::close ( - ) + ) @@ -447,7 +460,7 @@ state_t m_state virtual time_point stdex::stream::cache::ctime ( - ) + ) const @@ -476,7 +489,7 @@ state_t m_state virtual void stdex::stream::cache::flush ( - ) + ) @@ -505,7 +518,7 @@ state_t m_state virtual void stdex::stream::cache::lock ( - fpos_t offset, + fpos_t offset, @@ -538,7 +551,7 @@ state_t m_state virtual time_point stdex::stream::cache::mtime ( - ) + ) const @@ -567,7 +580,7 @@ state_t m_state virtual size_t stdex::stream::cache::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -608,12 +621,12 @@ state_t m_state virtual fpos_t stdex::stream::cache::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -729,7 +742,7 @@ state_t m_state virtual fsize_t stdex::stream::cache::size ( - ) + ) const @@ -758,7 +771,7 @@ state_t m_state virtual fpos_t stdex::stream::cache::tell ( - ) + ) const @@ -788,7 +801,7 @@ state_t m_state virtual void stdex::stream::cache::truncate ( - ) + ) @@ -817,7 +830,7 @@ state_t m_state virtual void stdex::stream::cache::unlock ( - fpos_t offset, + fpos_t offset, @@ -850,7 +863,7 @@ state_t m_state virtual size_t stdex::stream::cache::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -885,7 +898,8 @@ 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 45917eb4f..c44946396 100644 --- a/classstdex_1_1stream_1_1cached__file-members.html +++ b/classstdex_1_1stream_1_1cached__file-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::cached_file Member List
@@ -138,9 +151,9 @@ $(function() { read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::cacheinlinevirtual seekbeg(fpos_t offset)stdex::stream::basic_fileinline seekcur(foff_t offset)stdex::stream::basic_fileinline @@ -156,26 +169,27 @@ $(function() { unlock(fpos_t offset, fsize_t length)stdex::stream::cacheinlinevirtual write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::cacheinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::basicinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::basicinline - write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + stdex::stream::basic_file::write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual ~cache() noexcept(false) (defined in stdex::stream::cache)stdex::stream::cacheinlinevirtual ~cached_file() (defined in stdex::stream::cached_file)stdex::stream::cached_fileinlinevirtual
+ diff --git a/classstdex_1_1stream_1_1cached__file.html b/classstdex_1_1stream_1_1cached__file.html index 1a957c7d9..968b062c4 100644 --- a/classstdex_1_1stream_1_1cached__file.html +++ b/classstdex_1_1stream_1_1cached__file.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::cached_file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -415,17 +428,17 @@ state_t m_state stdex::stream::cached_file::cached_file ( - const schar_t * filename, + const schar_t * filename, - int mode, + int mode, - size_t cache_size = default_cache_size ) + size_t cache_size = default_cache_size ) @@ -461,17 +474,17 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca stdex::stream::cached_file::cached_file ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, - int mode, + int mode, - size_t cache_size = default_cache_size ) + size_t cache_size = default_cache_size ) @@ -506,7 +519,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::cached_file::open ( - const schar_t * filename, + const schar_t * filename, @@ -546,7 +559,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::cached_file::open ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -578,7 +591,8 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca
+
diff --git a/classstdex_1_1stream_1_1converter-members.html b/classstdex_1_1stream_1_1converter-members.html index db42e86e9..d28f30dc1 100644 --- a/classstdex_1_1stream_1_1converter-members.html +++ b/classstdex_1_1stream_1_1converter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::stream::converter Member List
@@ -151,7 +164,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1converter.html b/classstdex_1_1stream_1_1converter.html index 4e2fc3f46..f139589d4 100644 --- a/classstdex_1_1stream_1_1converter.html +++ b/classstdex_1_1stream_1_1converter.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::converter Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -351,7 +364,7 @@ state_t m_state virtual void stdex::stream::converter::close ( - ) + ) @@ -380,7 +393,7 @@ state_t m_state virtual void stdex::stream::converter::flush ( - ) + ) @@ -411,7 +424,7 @@ state_t m_state virtual size_t stdex::stream::converter::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -438,7 +451,7 @@ state_t m_stateReimplemented from stdex::stream::basic.

-

Reimplemented in stdex::base64_reader, stdex::stream_hasher< T >, stdex::stream::async_reader< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, and stdex::zlib_reader.

+

Reimplemented in stdex::base64_reader, stdex::stream::async_reader< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, stdex::stream_hasher< T >, and stdex::zlib_reader.

@@ -454,7 +467,7 @@ state_t m_state virtual size_t stdex::stream::converter::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -481,7 +494,7 @@ state_t m_stateReimplemented from stdex::stream::basic.

-

Reimplemented in stdex::base64_writer, stdex::stream_hasher< T >, stdex::stream::async_writer< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, and stdex::zlib_writer.

+

Reimplemented in stdex::base64_writer, stdex::stream::async_writer< N_cap >, stdex::stream::buffer, stdex::stream::limiter, stdex::stream::window, stdex::stream_hasher< T >, and stdex::zlib_writer.

@@ -491,7 +504,8 @@ 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 da2b6bd4b..44ce7cd8d 100644 --- a/classstdex_1_1stream_1_1diag__file-members.html +++ b/classstdex_1_1stream_1_1diag__file-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::diag_file Member List
@@ -133,9 +146,9 @@ $(function() { read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::diag_fileinlinevirtual seekbeg(fpos_t offset)stdex::stream::basic_fileinline seekcur(foff_t offset)stdex::stream::basic_fileinline @@ -151,24 +164,25 @@ $(function() { unlock(fpos_t offset, fsize_t length)stdex::stream::diag_fileinlinevirtual write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::diag_fileinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::basicinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::basicinline - write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + stdex::stream::basic_file::write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual
+ diff --git a/classstdex_1_1stream_1_1diag__file.html b/classstdex_1_1stream_1_1diag__file.html index 3a796de74..cfc3a83f5 100644 --- a/classstdex_1_1stream_1_1diag__file.html +++ b/classstdex_1_1stream_1_1diag__file.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::diag_file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -395,7 +408,7 @@ state_t m_state virtual void stdex::stream::diag_file::close ( - ) + ) @@ -424,7 +437,7 @@ state_t m_state virtual void stdex::stream::diag_file::flush ( - ) + ) @@ -453,7 +466,7 @@ state_t m_state virtual void stdex::stream::diag_file::lock ( - fpos_t offset, + fpos_t offset, @@ -486,7 +499,7 @@ state_t m_state virtual size_t stdex::stream::diag_file::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -527,12 +540,12 @@ state_t m_state virtual fpos_t stdex::stream::diag_file::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -561,7 +574,7 @@ state_t m_state virtual fsize_t stdex::stream::diag_file::size ( - ) + ) const @@ -590,7 +603,7 @@ state_t m_state virtual fpos_t stdex::stream::diag_file::tell ( - ) + ) const @@ -620,7 +633,7 @@ state_t m_state virtual void stdex::stream::diag_file::truncate ( - ) + ) @@ -649,7 +662,7 @@ state_t m_state virtual void stdex::stream::diag_file::unlock ( - fpos_t offset, + fpos_t offset, @@ -682,7 +695,7 @@ state_t m_state virtual size_t stdex::stream::diag_file::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -717,7 +730,8 @@ state_t m_state +
diff --git a/classstdex_1_1stream_1_1fifo-members.html b/classstdex_1_1stream_1_1fifo-members.html index 76a95828f..ac5b1758d 100644 --- a/classstdex_1_1stream_1_1fifo-members.html +++ b/classstdex_1_1stream_1_1fifo-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::fifo Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1fifo.html b/classstdex_1_1stream_1_1fifo.html index 1f4714607..da52d5534 100644 --- a/classstdex_1_1stream_1_1fifo.html +++ b/classstdex_1_1stream_1_1fifo.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::fifo Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Classes | @@ -358,7 +371,7 @@ state_t m_state virtual void stdex::stream::fifo::close ( - ) + ) @@ -387,7 +400,7 @@ state_t m_state virtual size_t stdex::stream::fifo::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -428,7 +441,7 @@ state_t m_state virtual size_t stdex::stream::fifo::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -463,7 +476,8 @@ state_t m_state +
diff --git a/classstdex_1_1stream_1_1file-members.html b/classstdex_1_1stream_1_1file-members.html index aaf5ce3e2..0debf18d8 100644 --- a/classstdex_1_1stream_1_1file-members.html +++ b/classstdex_1_1stream_1_1file-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::file Member List
@@ -88,16 +101,14 @@ $(function() { basic_sys_object(T h=TR::invalid_handle) (defined in stdex::basic_sys_object< T, TR >)stdex::basic_sys_object< T, TR >inline basic_sys_object(const basic_sys_object< T, TR > &other) (defined in stdex::basic_sys_object< T, TR >)stdex::basic_sys_object< T, TR >inline basic_sys_object(basic_sys_object< T, TR > &&other) noexcept (defined in stdex::basic_sys_object< T, TR >)stdex::basic_sys_object< T, TR >inline - stdex::close()stdex::stream::basicinlinevirtual - stdex::stream::basic_sys::close()stdex::stream::basic_sysinlinevirtual - ctime() conststdex::stream::fileinlinevirtual - exists(const stdex::schar_t *filename)stdex::stream::fileinlinestatic - exists(const std::basic_string< TR, AX > &filename)stdex::stream::fileinlinestatic - file(sys_handle h=invalid_handle, state_t state=state_t::ok) (defined in stdex::stream::file)stdex::stream::fileinline - file(const schar_t *filename, int mode)stdex::stream::fileinline - file(const std::basic_string< TR, AX > &filename, int mode)stdex::stream::fileinline - stdex::flush()stdex::stream::basicinlinevirtual - stdex::stream::basic_sys::flush()stdex::stream::basic_sysinlinevirtual + close()stdex::stream::basic_sysinlinevirtual + ctime() conststdex::stream::fileinlinevirtual + exists(const stdex::schar_t *filename)stdex::stream::fileinlinestatic + exists(const std::basic_string< TR, AX > &filename)stdex::stream::fileinlinestatic + file(sys_handle h=invalid_handle, state_t state=state_t::ok) (defined in stdex::stream::file)stdex::stream::fileinline + file(const schar_t *filename, int mode)stdex::stream::fileinline + file(const std::basic_string< TR, AX > &filename, int mode)stdex::stream::fileinline + flush()stdex::stream::basic_sysinlinevirtual get() const noexceptstdex::basic_sys_object< T, TR >inline lock(fpos_t offset, fsize_t length)stdex::stream::fileinlinevirtual m_h (defined in stdex::basic_sys_object< T, TR >)stdex::basic_sys_object< T, TR >protected @@ -140,55 +151,54 @@ $(function() { operator>>(std::vector< T, AX > &data) (defined in stdex::stream::basic)stdex::stream::basicinline operator>>(std::set< KEY, PR, AX > &data) (defined in stdex::stream::basic)stdex::stream::basicinline operator>>(std::multiset< KEY, PR, AX > &data) (defined in stdex::stream::basic)stdex::stream::basicinline - stdex::read(_Out_writes_bytes_to_opt_(length, return) void *data, size_t length)stdex::stream::basicinlinevirtual - stdex::stream::basic_sys::read(_Out_writes_bytes_to_opt_(length, return) void *data, size_t length)stdex::stream::basic_sysinlinevirtual - read_array(_Out_writes_bytes_(size *count) void *array, size_t size, size_t count)stdex::stream::basicinline - read_byte()stdex::stream::basicinline - read_charset(charset_id default_charset=charset_id::system)stdex::stream::basic_fileinline - read_data(T &data)stdex::stream::basicinline - read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual - read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline - readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - readonly(const stdex::schar_t *filename)stdex::stream::fileinlinestatic - readonly(const std::basic_string< TR, AX > &filename)stdex::stream::fileinlinestatic - seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::fileinlinevirtual - seekbeg(fpos_t offset)stdex::stream::basic_fileinline - seekcur(foff_t offset)stdex::stream::basic_fileinline - seekend(foff_t offset)stdex::stream::basic_fileinline - set_atime(time_point date)stdex::stream::fileinlinevirtual - set_ctime(time_point date)stdex::stream::fileinlinevirtual - set_mtime(time_point date)stdex::stream::fileinlinevirtual - size() conststdex::stream::fileinlinevirtual - skip(fsize_t amount)stdex::stream::basic_fileinlinevirtual - state() conststdex::stream::basicinline - tell() conststdex::stream::fileinlinevirtual - truncate()stdex::stream::fileinlinevirtual - unlock(fpos_t offset, fsize_t length)stdex::stream::fileinlinevirtual - stdex::write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::basicinlinevirtual - stdex::stream::basic_sys::write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::basic_sysinlinevirtual + read(_Out_writes_bytes_to_opt_(length, return) void *data, size_t length)stdex::stream::basic_sysinlinevirtual + read_array(_Out_writes_bytes_(size *count) void *array, size_t size, size_t count)stdex::stream::basicinline + read_byte()stdex::stream::basicinline + read_charset(charset_id default_charset=charset_id::system)stdex::stream::basic_fileinline + read_data(T &data)stdex::stream::basicinline + read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual + read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + readonly(const stdex::schar_t *filename)stdex::stream::fileinlinestatic + readonly(const std::basic_string< TR, AX > &filename)stdex::stream::fileinlinestatic + seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::fileinlinevirtual + seekbeg(fpos_t offset)stdex::stream::basic_fileinline + seekcur(foff_t offset)stdex::stream::basic_fileinline + seekend(foff_t offset)stdex::stream::basic_fileinline + set_atime(time_point date)stdex::stream::fileinlinevirtual + set_ctime(time_point date)stdex::stream::fileinlinevirtual + set_mtime(time_point date)stdex::stream::fileinlinevirtual + size() conststdex::stream::fileinlinevirtual + skip(fsize_t amount)stdex::stream::basic_fileinlinevirtual + state() conststdex::stream::basicinline + tell() conststdex::stream::fileinlinevirtual + truncate()stdex::stream::fileinlinevirtual + unlock(fpos_t offset, fsize_t length)stdex::stream::fileinlinevirtual + write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::basic_sysinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::basicinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::basicinline - write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + stdex::stream::basic_file::write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual ~basic_sys_object() noexcept(false) (defined in stdex::basic_sys_object< T, TR >)stdex::basic_sys_object< T, TR >inlinevirtual
+ diff --git a/classstdex_1_1stream_1_1file.html b/classstdex_1_1stream_1_1file.html index a34aa9781..d7c04fd0b 100644 --- a/classstdex_1_1stream_1_1file.html +++ b/classstdex_1_1stream_1_1file.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -455,7 +468,7 @@ T m_h stdex::stream::file::file ( - const schar_t * filename, + const schar_t * filename, @@ -495,7 +508,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca stdex::stream::file::file ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -534,7 +547,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual time_point stdex::stream::file::atime ( - ) + ) const @@ -563,7 +576,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual time_point stdex::stream::file::ctime ( - ) + ) const @@ -660,7 +673,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual void stdex::stream::file::lock ( - fpos_t offset, + fpos_t offset, @@ -693,7 +706,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual time_point stdex::stream::file::mtime ( - ) + ) const @@ -722,7 +735,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::file::open ( - const schar_t * filename, + const schar_t * filename, @@ -762,7 +775,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::file::open ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -870,12 +883,12 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual fpos_t stdex::stream::file::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -991,7 +1004,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual fsize_t stdex::stream::file::size ( - ) + ) const @@ -1020,7 +1033,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual fpos_t stdex::stream::file::tell ( - ) + ) const @@ -1050,7 +1063,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual void stdex::stream::file::truncate ( - ) + ) @@ -1079,7 +1092,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual void stdex::stream::file::unlock ( - fpos_t offset, + fpos_t offset, @@ -1106,7 +1119,8 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca
+
diff --git a/classstdex_1_1stream_1_1file__window-members.html b/classstdex_1_1stream_1_1file__window-members.html index 68a8ef449..df18ce198 100644 --- a/classstdex_1_1stream_1_1file__window-members.html +++ b/classstdex_1_1stream_1_1file__window-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::stream::file_window Member List
@@ -134,9 +147,9 @@ $(function() { read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual read_str(std::basic_string< T, TR, AX > &data)stdex::stream::basicinline readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline seek(foff_t offset, seek_t how=seek_t::beg)stdex::stream::file_windowinlinevirtual seekbeg(fpos_t offset)stdex::stream::basic_fileinline seekcur(foff_t offset)stdex::stream::basic_fileinline @@ -152,24 +165,25 @@ $(function() { unlock(fpos_t offset, fsize_t length)stdex::stream::file_windowinlinevirtual write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::file_windowinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::basicinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::basicinline - write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline + stdex::stream::basic_file::write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::basicinline write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual
+ diff --git a/classstdex_1_1stream_1_1file__window.html b/classstdex_1_1stream_1_1file__window.html index 24b3d88c1..4a5bd6891 100644 --- a/classstdex_1_1stream_1_1file__window.html +++ b/classstdex_1_1stream_1_1file__window.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::file_window Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -398,7 +411,7 @@ state_t m_state virtual void stdex::stream::file_window::close ( - ) + ) @@ -427,7 +440,7 @@ state_t m_state virtual void stdex::stream::file_window::flush ( - ) + ) @@ -456,7 +469,7 @@ state_t m_state virtual void stdex::stream::file_window::lock ( - fpos_t offset, + fpos_t offset, @@ -489,7 +502,7 @@ state_t m_state virtual size_t stdex::stream::file_window::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -530,12 +543,12 @@ state_t m_state virtual fpos_t stdex::stream::file_window::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -564,7 +577,7 @@ state_t m_state virtual fsize_t stdex::stream::file_window::size ( - ) + ) const @@ -622,7 +635,7 @@ state_t m_state virtual fpos_t stdex::stream::file_window::tell ( - ) + ) const @@ -652,7 +665,7 @@ state_t m_state virtual void stdex::stream::file_window::truncate ( - ) + ) @@ -681,7 +694,7 @@ state_t m_state virtual void stdex::stream::file_window::unlock ( - fpos_t offset, + fpos_t offset, @@ -714,7 +727,7 @@ state_t m_state virtual size_t stdex::stream::file_window::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -749,7 +762,8 @@ state_t m_state +
diff --git a/classstdex_1_1stream_1_1limiter-members.html b/classstdex_1_1stream_1_1limiter-members.html index 13a12cd86..f195af6ad 100644 --- a/classstdex_1_1stream_1_1limiter-members.html +++ b/classstdex_1_1stream_1_1limiter-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::limiter Member List
@@ -154,7 +167,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1limiter.html b/classstdex_1_1stream_1_1limiter.html index 77a81bfb8..3d302bab4 100644 --- a/classstdex_1_1stream_1_1limiter.html +++ b/classstdex_1_1stream_1_1limiter.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::limiter Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -360,7 +373,7 @@ state_t m_state virtual size_t stdex::stream::limiter::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -403,7 +416,7 @@ state_t m_state virtual size_t stdex::stream::limiter::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -440,7 +453,8 @@ 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 3d840c231..b7c6ace5d 100644 --- a/classstdex_1_1stream_1_1memory__file-members.html +++ b/classstdex_1_1stream_1_1memory__file-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::memory_file Member List
@@ -160,9 +173,9 @@ $(function() { read_remainder(size_t max_length=SIZE_MAX)stdex::stream::basic_fileinlinevirtual read_str(std::basic_string< T, TR, AX > &data)stdex::stream::memory_fileinline readln(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline readln_and_attach(std::basic_string< T, TR, AX > &str)stdex::stream::basicinline - readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::readln_and_attach(std::basic_string< T_to, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline reserve(size_t required, bool tight=false) noexceptstdex::stream::memory_fileinline save(const schar_t *filename, int mode)stdex::stream::memory_fileinline save(const std::basic_string< TR, AX > &filename, int mode)stdex::stream::memory_fileinline @@ -193,27 +206,28 @@ $(function() { unlock(fpos_t offset, fsize_t length)stdex::stream::basic_fileinlinevirtual write(_In_reads_bytes_opt_(length) const void *data, size_t length)stdex::stream::memory_fileinlinevirtual write_array(_In_reads_bytes_opt_(size *count) const void *array, size_t size, size_t count)stdex::stream::basicinline - write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline - write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const T_from *str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(_In_reads_or_z_opt_(num_chars) const T_from *str, size_t num_chars, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline + stdex::stream::basic_file::write_array(const std::basic_string< T_from, TR, AX > &str, charset_encoder< T_from, T_to > &encoder)stdex::stream::basicinline write_byte(uint8_t byte, size_t amount=1)stdex::stream::memory_fileinline stdex::stream::basic_file::write_byte(uint8_t byte, fsize_t amount=1)stdex::stream::basicinline write_charset(charset_id charset)stdex::stream::basicinline write_data(const T data)stdex::stream::memory_fileinline write_sprintf(_Printf_format_string_params_(2) const char *format, locale_t locale,...)stdex::stream::basicinline - write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline + stdex::stream::basic_file::write_sprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale,...)stdex::stream::basicinline write_str(const T *data)stdex::stream::memory_fileinline write_str(const std::basic_string< T, TR, AX > &data)stdex::stream::memory_fileinline write_stream(basic &stream, size_t amount=SIZE_MAX)stdex::stream::memory_fileinline stdex::stream::basic_file::write_stream(basic &stream, fsize_t amount=fsize_max)stdex::stream::basicinline write_vsprintf(_Printf_format_string_params_(2) const char *format, locale_t locale, va_list params)stdex::stream::basicinline - write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline + stdex::stream::basic_file::write_vsprintf(_Printf_format_string_params_(2) const wchar_t *format, locale_t locale, va_list params)stdex::stream::basicinline ~basic() noexcept(false) (defined in stdex::stream::basic)stdex::stream::basicinlinevirtual ~memory_file() (defined in stdex::stream::memory_file)stdex::stream::memory_fileinlinevirtual
+ diff --git a/classstdex_1_1stream_1_1memory__file.html b/classstdex_1_1stream_1_1memory__file.html index e25a73117..9ff43931c 100644 --- a/classstdex_1_1stream_1_1memory__file.html +++ b/classstdex_1_1stream_1_1memory__file.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::memory_file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -641,12 +654,12 @@ state_t m_state stdex::stream::memory_file::memory_file ( - size_t size, + size_t size, - state_t state = state_t::ok ) + state_t state = state_t::ok ) @@ -679,27 +692,27 @@ state_t m_state stdex::stream::memory_file::memory_file ( - void * data, + void * data, - size_t size, + size_t size, - size_t reserved, + size_t reserved, - bool manage = false, + bool manage = false, - state_t state = state_t::ok ) + state_t state = state_t::ok ) @@ -735,22 +748,22 @@ state_t m_state stdex::stream::memory_file::memory_file ( - void * data, + void * data, - size_t size, + size_t size, - bool manage = false, + bool manage = false, - state_t state = state_t::ok ) + state_t state = state_t::ok ) @@ -785,7 +798,7 @@ state_t m_state stdex::stream::memory_file::memory_file ( - const schar_t * filename, + const schar_t * filename, @@ -825,7 +838,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca stdex::stream::memory_file::memory_file ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -930,7 +943,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual void stdex::stream::memory_file::close ( - ) + ) @@ -961,7 +974,7 @@ template<class T >
void stdex::stream::memory_file::get ( - fpos_t offset, + fpos_t offset, @@ -999,7 +1012,7 @@ template<class T >
void stdex::stream::memory_file::load ( - const schar_t * filename, + const schar_t * filename, @@ -1039,7 +1052,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::memory_file::load ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -1143,7 +1156,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual size_t stdex::stream::memory_file::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -1260,12 +1273,12 @@ template<class T , class TR = std::char_traits<T>, class AX = std::al void stdex::stream::memory_file::reserve ( - size_t required, + size_t required, - bool tight = false ) + bool tight = false ) @@ -1298,7 +1311,7 @@ template<class T , class TR = std::char_traits<T>, class AX = std::al void stdex::stream::memory_file::save ( - const schar_t * filename, + const schar_t * filename, @@ -1338,7 +1351,7 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca void stdex::stream::memory_file::save ( - const std::basic_string< TR, AX > & filename, + const std::basic_string< TR, AX > & filename, @@ -1376,12 +1389,12 @@ template<class TR = std::char_traits<schar_t>, class AX = std::alloca virtual fpos_t stdex::stream::memory_file::seek ( - foff_t offset, + foff_t offset, - seek_t how = seek_t::beg ) + seek_t how = seek_t::beg ) @@ -1412,7 +1425,7 @@ template<class T >
void stdex::stream::memory_file::set ( - fpos_t offset, + fpos_t offset, @@ -1450,7 +1463,7 @@ template<class T > virtual fsize_t stdex::stream::memory_file::size ( - ) + ) const @@ -1479,7 +1492,7 @@ template<class T > virtual fpos_t stdex::stream::memory_file::tell ( - ) + ) const @@ -1509,7 +1522,7 @@ template<class T > virtual void stdex::stream::memory_file::truncate ( - ) + ) @@ -1538,7 +1551,7 @@ template<class T > virtual size_t stdex::stream::memory_file::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -1693,12 +1706,12 @@ template<class T > size_t stdex::stream::memory_file::write_stream ( - basic & stream, + basic & stream, - size_t amount = SIZE_MAX ) + size_t amount = SIZE_MAX ) @@ -1719,7 +1732,8 @@ template<class T > + diff --git a/classstdex_1_1stream_1_1replicator-members.html b/classstdex_1_1stream_1_1replicator-members.html index aa26bc8b1..dca1c6239 100644 --- a/classstdex_1_1stream_1_1replicator-members.html +++ b/classstdex_1_1stream_1_1replicator-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::stream::replicator Member List
@@ -154,7 +167,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1replicator.html b/classstdex_1_1stream_1_1replicator.html index b072a9b00..a0736822b 100644 --- a/classstdex_1_1stream_1_1replicator.html +++ b/classstdex_1_1stream_1_1replicator.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::replicator Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Classes | @@ -360,7 +373,7 @@ state_t m_state virtual void stdex::stream::replicator::close ( - ) + ) @@ -389,7 +402,7 @@ state_t m_state virtual void stdex::stream::replicator::flush ( - ) + ) @@ -418,7 +431,7 @@ state_t m_state virtual size_t stdex::stream::replicator::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -453,7 +466,8 @@ 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 c67e5d2e1..b49ffe49f 100644 --- a/classstdex_1_1stream_1_1replicator_1_1worker-members.html +++ b/classstdex_1_1stream_1_1replicator_1_1worker-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::replicator::worker Member List
@@ -95,7 +108,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1replicator_1_1worker.html b/classstdex_1_1stream_1_1replicator_1_1worker.html index f9f27c524..eb66de919 100644 --- a/classstdex_1_1stream_1_1replicator_1_1worker.html +++ b/classstdex_1_1stream_1_1replicator_1_1worker.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::replicator::worker Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -151,7 +164,8 @@ void process_op () +
diff --git a/classstdex_1_1stream_1_1socket-members.html b/classstdex_1_1stream_1_1socket-members.html index 658ffd8a3..987d6d15f 100644 --- a/classstdex_1_1stream_1_1socket-members.html +++ b/classstdex_1_1stream_1_1socket-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::socket Member List
@@ -157,7 +170,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1socket.html b/classstdex_1_1stream_1_1socket.html index 8ed1a7734..821f3b23c 100644 --- a/classstdex_1_1stream_1_1socket.html +++ b/classstdex_1_1stream_1_1socket.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::socket Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -359,12 +372,12 @@ state_t m_state stdex::stream::socket::socket ( - int af, + int af, - int type, + int type, @@ -404,7 +417,7 @@ state_t m_state virtual void stdex::stream::socket::close ( - ) + ) @@ -433,7 +446,7 @@ state_t m_state virtual size_t stdex::stream::socket::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -474,7 +487,7 @@ state_t m_state virtual size_t stdex::stream::socket::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -509,7 +522,8 @@ state_t m_state +
diff --git a/classstdex_1_1stream_1_1window-members.html b/classstdex_1_1stream_1_1window-members.html index 1ad87ccab..df4977c68 100644 --- a/classstdex_1_1stream_1_1window-members.html +++ b/classstdex_1_1stream_1_1window-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream::window Member List
@@ -157,7 +170,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream_1_1window.html b/classstdex_1_1stream_1_1window.html index d4970a2b9..1d482d3cc 100644 --- a/classstdex_1_1stream_1_1window.html +++ b/classstdex_1_1stream_1_1window.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::window Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -373,7 +386,7 @@ state_t m_state virtual size_t stdex::stream::window::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -414,7 +427,7 @@ state_t m_state virtual size_t stdex::stream::window::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -449,7 +462,8 @@ state_t m_state +
diff --git a/classstdex_1_1stream__hasher-members.html b/classstdex_1_1stream__hasher-members.html index 7ae7c9972..e3ee01043 100644 --- a/classstdex_1_1stream__hasher-members.html +++ b/classstdex_1_1stream__hasher-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::stream_hasher< T > Member List
@@ -153,7 +166,8 @@ $(function() {
+ diff --git a/classstdex_1_1stream__hasher.html b/classstdex_1_1stream__hasher.html index d1ecc0c87..4f89eef4f 100644 --- a/classstdex_1_1stream__hasher.html +++ b/classstdex_1_1stream__hasher.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream_hasher< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -354,7 +367,7 @@ template<class T >
virtual size_t stdex::stream_hasher< T >::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -397,7 +410,7 @@ template<class T >
virtual size_t stdex::stream_hasher< T >::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -432,7 +445,8 @@ template<class T >
+ diff --git a/classstdex_1_1timeout__progress-members.html b/classstdex_1_1timeout__progress-members.html index 35f85fe62..c24e3ac7c 100644 --- a/classstdex_1_1timeout__progress-members.html +++ b/classstdex_1_1timeout__progress-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::timeout_progress< T > Member List
@@ -94,7 +107,8 @@ $(function() {
+ diff --git a/classstdex_1_1timeout__progress.html b/classstdex_1_1timeout__progress.html index 7f2005ba8..851596cdb 100644 --- a/classstdex_1_1timeout__progress.html +++ b/classstdex_1_1timeout__progress.html @@ -3,13 +3,15 @@ - + stdex: stdex::timeout_progress< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -147,12 +160,12 @@ template<class T >
stdex::timeout_progress< T >::timeout_progress ( - const std::chrono::nanoseconds & timeout = std::chrono::seconds(60), + const std::chrono::nanoseconds & timeout = std::chrono::seconds(60), - progress< T > * host = nullptr ) + progress< T > * host = nullptr ) @@ -187,7 +200,7 @@ template<class T >
virtual bool stdex::timeout_progress< T >::cancel ( - ) + ) @@ -255,7 +268,7 @@ template<class T >
virtual void stdex::timeout_progress< T >::set_range ( - T start, + T start, @@ -334,7 +347,7 @@ template<class T > virtual void stdex::timeout_progress< T >::show ( - bool show = true) + bool show = true) @@ -363,7 +376,8 @@ template<class T > + diff --git a/classstdex_1_1user__cancelled-members.html b/classstdex_1_1user__cancelled-members.html index 0d3bc0f71..b14f6dfeb 100644 --- a/classstdex_1_1user__cancelled-members.html +++ b/classstdex_1_1user__cancelled-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::user_cancelled Member List
@@ -86,7 +99,8 @@ $(function() {
+ diff --git a/classstdex_1_1user__cancelled.html b/classstdex_1_1user__cancelled.html index 56bc4ea82..e7f3cfe45 100644 --- a/classstdex_1_1user__cancelled.html +++ b/classstdex_1_1user__cancelled.html @@ -3,13 +3,15 @@ - + stdex: stdex::user_cancelled Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -115,7 +128,7 @@ Public Member Functions stdex::user_cancelled::user_cancelled ( - const char * msg = "operation cancelled") + const char * msg = "operation cancelled") @@ -142,7 +155,8 @@ Public Member Functions
+
diff --git a/classstdex_1_1vector__queue-members.html b/classstdex_1_1vector__queue-members.html index b9419d9d8..4f3bb2e4d 100644 --- a/classstdex_1_1vector__queue-members.html +++ b/classstdex_1_1vector__queue-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + + +
stdex::vector_queue< T > Member List
@@ -124,7 +137,8 @@ $(function() {
+ diff --git a/classstdex_1_1vector__queue.html b/classstdex_1_1vector__queue.html index 18ce5895c..3b3c39f6c 100644 --- a/classstdex_1_1vector__queue.html +++ b/classstdex_1_1vector__queue.html @@ -3,13 +3,15 @@ - + stdex: stdex::vector_queue< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -782,7 +795,8 @@ template<class T >
+
diff --git a/classstdex_1_1watchdog-members.html b/classstdex_1_1watchdog-members.html index 9103f24ca..7d98ce825 100644 --- a/classstdex_1_1watchdog-members.html +++ b/classstdex_1_1watchdog-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
stdex::watchdog< _Clock, _Duration > Member List
@@ -96,7 +109,8 @@ $(function() {
+ diff --git a/classstdex_1_1watchdog.html b/classstdex_1_1watchdog.html index d48abee6b..c64927e19 100644 --- a/classstdex_1_1watchdog.html +++ b/classstdex_1_1watchdog.html @@ -3,13 +3,15 @@ - + stdex: stdex::watchdog< _Clock, _Duration > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -155,7 +168,7 @@ template<class _Clock , class _Duration = typename _Clock::duration> stdex::watchdog< _Clock, _Duration >::watchdog ( - _Duration timeout, + _Duration timeout, @@ -196,7 +209,7 @@ template<class _Clock , class _Duration = typename _Clock::duration> void stdex::watchdog< _Clock, _Duration >::reset ( - ) + ) @@ -218,7 +231,8 @@ template<class _Clock , class _Duration = typename _Clock::duration> +
diff --git a/classstdex_1_1zlib__reader-members.html b/classstdex_1_1zlib__reader-members.html index 01fe652de..741065c6b 100644 --- a/classstdex_1_1zlib__reader-members.html +++ b/classstdex_1_1zlib__reader-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::zlib_reader Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1zlib__reader.html b/classstdex_1_1zlib__reader.html index 20f9d53b9..473ca21d2 100644 --- a/classstdex_1_1zlib__reader.html +++ b/classstdex_1_1zlib__reader.html @@ -3,13 +3,15 @@ - + stdex: stdex::zlib_reader Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -357,7 +370,7 @@ state_t m_state virtual size_t stdex::zlib_reader::read ( - _Out_writes_bytes_to_opt_(length, return) void * data, + _Out_writes_bytes_to_opt_(length, return) void * data, @@ -392,7 +405,8 @@ state_t m_state +
diff --git a/classstdex_1_1zlib__writer-members.html b/classstdex_1_1zlib__writer-members.html index cbaac14d5..5ae40ad3c 100644 --- a/classstdex_1_1zlib__writer-members.html +++ b/classstdex_1_1zlib__writer-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
- + + +
+
stdex::zlib_writer Member List
@@ -156,7 +169,8 @@ $(function() {
+ diff --git a/classstdex_1_1zlib__writer.html b/classstdex_1_1zlib__writer.html index 213f809d1..78e5a60f2 100644 --- a/classstdex_1_1zlib__writer.html +++ b/classstdex_1_1zlib__writer.html @@ -3,13 +3,15 @@ - + stdex: stdex::zlib_writer Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -357,7 +370,7 @@ state_t m_state virtual size_t stdex::zlib_writer::write ( - _In_reads_bytes_opt_(length) const void * data, + _In_reads_bytes_opt_(length) const void * data, @@ -392,7 +405,8 @@ state_t m_state +
diff --git a/debug_8hpp_source.html b/debug_8hpp_source.html index a68997eca..20d29bdb0 100644 --- a/debug_8hpp_source.html +++ b/debug_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/debug.hpp Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); });
+
debug.hpp
@@ -213,7 +221,8 @@ $(function() { codefold.init(0); });
+ diff --git a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html index 6c3839fdf..d98bd024d 100644 --- a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html +++ b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html @@ -3,13 +3,15 @@ - + stdex: UnitTests Directory Reference + + @@ -32,23 +34,33 @@ - + + + +
UnitTests Directory Reference
@@ -90,7 +103,8 @@ Files
+ diff --git a/dir_d44c64559bbebec7f509842c48db8b23.html b/dir_d44c64559bbebec7f509842c48db8b23.html index 5b6abbafb..1ac260e14 100644 --- a/dir_d44c64559bbebec7f509842c48db8b23.html +++ b/dir_d44c64559bbebec7f509842c48db8b23.html @@ -3,13 +3,15 @@ - + stdex: include Directory Reference + + @@ -32,23 +34,33 @@ - + + + +
include Directory Reference
@@ -88,7 +101,8 @@ Directories
+ diff --git a/dir_fca3c47b2ea228727bd6729832f89576.html b/dir_fca3c47b2ea228727bd6729832f89576.html index 7f8323b78..0446da480 100644 --- a/dir_fca3c47b2ea228727bd6729832f89576.html +++ b/dir_fca3c47b2ea228727bd6729832f89576.html @@ -3,13 +3,15 @@ - + stdex: include/stdex Directory Reference + + @@ -32,23 +34,33 @@ - + + + +
stdex Directory Reference
@@ -158,7 +171,8 @@ Files
+ diff --git a/doxygen.css b/doxygen.css index 7b7d851b8..209912c71 100644 --- a/doxygen.css +++ b/doxygen.css @@ -1,4 +1,4 @@ -/* The standard CSS for doxygen 1.10.0*/ +/* The standard CSS for doxygen 1.11.0*/ html { /* page base colors */ @@ -657,7 +657,24 @@ dl.el { margin-left: -1cm; } +ul.check { + list-style:none; + text-indent: -16px; + padding-left: 38px; +} +li.unchecked:before { + content: "\2610\A0"; +} +li.checked:before { + content: "\2611\A0"; +} + +ol { + text-indent: 0px; +} + ul { + text-indent: 0px; overflow: visible; } @@ -1614,7 +1631,7 @@ dl.note { border-color: #D0C000; } -dl.warning, dl.attention { +dl.warning, dl.attention, dl.important { margin-left: -7px; padding-left: 3px; border-left: 4px solid; @@ -1662,7 +1679,7 @@ dl.bug dt a, dl.deprecated dt a, dl.todo dt a, dl.test a { font-weight: bold !important; } -dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, +dl.warning, dl.attention, dl.important, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.post, dl.todo, dl.test, dl.remark { padding: 10px; margin: 10px 0px; @@ -1675,13 +1692,13 @@ dl.section dd { margin-bottom: 2px; } -dl.warning, dl.attention { +dl.warning, dl.attention, dl.important { background: var(--warning-color-bg); border-left: 8px solid var(--warning-color-hl); color: var(--warning-color-text); } -dl.warning dt, dl.attention dt { +dl.warning dt, dl.attention dt, dl.important dt { color: var(--warning-color-hl); } @@ -1739,7 +1756,9 @@ dl.deprecated dt a { color: var(--deprecated-color-hl) !important; } -dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd { +dl.note dd, dl.warning dd, dl.pre dd, dl.post dd, +dl.remark dd, dl.attention dd, dl.important dd, dl.invariant dd, +dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd { margin-inline-start: 0px; } diff --git a/doxygen_crawl.html b/doxygen_crawl.html index 1c92c9b03..9bc66ea82 100644 --- a/doxygen_crawl.html +++ b/doxygen_crawl.html @@ -4,14 +4,12 @@ Validator / crawler helper - + - - @@ -45,6 +43,8 @@ + + @@ -529,5 +529,962 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dynsections.js b/dynsections.js index 8f493264f..b05f4c8d7 100644 --- a/dynsections.js +++ b/dynsections.js @@ -23,6 +23,10 @@ @licend The above is the entire license notice for the JavaScript code in this file */ +function toggleVisibility(linkObj) { + return dynsection.toggleVisibility(linkObj); +} + let dynsection = { // helper function diff --git a/endian_8hpp_source.html b/endian_8hpp_source.html index a576be4bf..e9932a50e 100644 --- a/endian_8hpp_source.html +++ b/endian_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/endian.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
endian.hpp
@@ -227,7 +235,8 @@ $(function() { codefold.init(0); });
+ diff --git a/exception_8hpp_source.html b/exception_8hpp_source.html index ad8bd5048..21dda1769 100644 --- a/exception_8hpp_source.html +++ b/exception_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/exception.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
exception.hpp
@@ -109,7 +117,8 @@ $(function() { codefold.init(0); });
+ diff --git a/files.html b/files.html index 8be59656d..411b64fc0 100644 --- a/files.html +++ b/files.html @@ -3,13 +3,15 @@ - + stdex: File List + + @@ -32,24 +34,35 @@ - + + +
+
+
diff --git a/functions.html b/functions.html index ea336aab9..3b5636d70 100644 --- a/functions.html +++ b/functions.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
- + + +
+
append() : stdex::html::document< T, TR, AX >
  • append_inserted_tokens() : stdex::html::parser< T, TR, AX >
  • append_tag() : stdex::html::token
  • -
  • append_token() : stdex::html::parser< T, TR, AX >
  • +
  • append_token() : stdex::html::parser< T, TR, AX >
  • assign() : stdex::html::document< T, TR, AX >
  • at() : stdex::vector_queue< T >
  • at_abs() : stdex::vector_queue< T >
  • @@ -97,7 +110,8 @@ $(function() {
    +
    diff --git a/functions_b.html b/functions_b.html index 09eec996f..7b7820a93 100644 --- a/functions_b.html +++ b/functions_b.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_c.html b/functions_c.html index 6a2703195..60258c9f8 100644 --- a/functions_c.html +++ b/functions_c.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    Here is a list of all documented class members with links to the class documentation for each member:

    - c -

    + diff --git a/functions_d.html b/functions_d.html index 64967e7ea..3f4ef5f8e 100644 --- a/functions_d.html +++ b/functions_d.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    + +
    diff --git a/functions_e.html b/functions_e.html index b68a3d250..f5f925aae 100644 --- a/functions_e.html +++ b/functions_e.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_enum.html b/functions_enum.html index 1805c9139..c8760c3ce 100644 --- a/functions_enum.html +++ b/functions_enum.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Enumerations + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_f.html b/functions_f.html index 145777451..4291fc551 100644 --- a/functions_f.html +++ b/functions_f.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    Here is a list of all documented class members with links to the class documentation for each member:

    - f -

    + diff --git a/functions_func.html b/functions_func.html index c74209476..993c0b9b0 100644 --- a/functions_func.html +++ b/functions_func.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_func_b.html b/functions_func_b.html index c4a522de3..60ed46b08 100644 --- a/functions_func_b.html +++ b/functions_func_b.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_c.html b/functions_func_c.html index dfcf369f4..ab5f82f0f 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    Here is a list of all documented functions with links to the class documentation for each member:

    - c -

    + diff --git a/functions_func_d.html b/functions_func_d.html index c2c612ac8..4070da62a 100644 --- a/functions_func_d.html +++ b/functions_func_d.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_func_e.html b/functions_func_e.html index 108a84d0d..c8c6ac0ae 100644 --- a/functions_func_e.html +++ b/functions_func_e.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_f.html b/functions_func_f.html index ebe6f5c77..de8795834 100644 --- a/functions_func_f.html +++ b/functions_func_f.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    Here is a list of all documented functions with links to the class documentation for each member:

    - f -

    + diff --git a/functions_func_g.html b/functions_func_g.html index c72b00419..c799a10d9 100644 --- a/functions_func_g.html +++ b/functions_func_g.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_func_h.html b/functions_func_h.html index 8b64779d4..ab1ff75aa 100644 --- a/functions_func_h.html +++ b/functions_func_h.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_i.html b/functions_func_i.html index a8bbdfce2..6e7013b6f 100644 --- a/functions_func_i.html +++ b/functions_func_i.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_l.html b/functions_func_l.html index f791418ca..f8fcf62bf 100644 --- a/functions_func_l.html +++ b/functions_func_l.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_m.html b/functions_func_m.html index 2d4c4f595..a5858ca4e 100644 --- a/functions_func_m.html +++ b/functions_func_m.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_n.html b/functions_func_n.html index 84d373ff0..f727b2751 100644 --- a/functions_func_n.html +++ b/functions_func_n.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_o.html b/functions_func_o.html index 27da44839..4aa20b0f3 100644 --- a/functions_func_o.html +++ b/functions_func_o.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_p.html b/functions_func_p.html index c73996cdd..6a9e01ed1 100644 --- a/functions_func_p.html +++ b/functions_func_p.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_q.html b/functions_func_q.html index c116b9155..3cc71b7a1 100644 --- a/functions_func_q.html +++ b/functions_func_q.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_r.html b/functions_func_r.html index c38e62ac6..739b30c76 100644 --- a/functions_func_r.html +++ b/functions_func_r.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    read_remainder() : stdex::stream::basic, stdex::stream::basic_file
  • read_str() : stdex::stream::basic, stdex::stream::memory_file
  • readln() : stdex::stream::basic
  • -
  • readln_and_attach() : stdex::stream::basic
  • +
  • readln_and_attach() : stdex::stream::basic
  • readonly() : stdex::stream::file
  • record() : stdex::idrec::record< T, T_id, ID, T_size, N_align >
  • remove() : stdex::stream::replicator
  • @@ -94,7 +107,8 @@ $(function() {
    +
    diff --git a/functions_func_s.html b/functions_func_s.html index f242d7115..82a41945d 100644 --- a/functions_func_s.html +++ b/functions_func_s.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    Here is a list of all documented functions with links to the class documentation for each member:

    - s -

    + diff --git a/functions_func_t.html b/functions_func_t.html index abd12588f..9c113e0b7 100644 --- a/functions_func_t.html +++ b/functions_func_t.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_func_u.html b/functions_func_u.html index 85951da02..35e96ba21 100644 --- a/functions_func_u.html +++ b/functions_func_u.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_v.html b/functions_func_v.html index cbdf4fd08..1fbdd8e40 100644 --- a/functions_func_v.html +++ b/functions_func_v.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_func_w.html b/functions_func_w.html index 101eed13d..50b631788 100644 --- a/functions_func_w.html +++ b/functions_func_w.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@
    - + + +
    +
    write_byte() : stdex::stream::basic, stdex::stream::memory_file
  • write_charset() : stdex::stream::basic
  • write_data() : stdex::stream::basic, stdex::stream::memory_file
  • -
  • write_sprintf() : stdex::stream::basic
  • +
  • write_sprintf() : stdex::stream::basic
  • write_str() : stdex::stream::basic, stdex::stream::memory_file
  • write_stream() : stdex::stream::basic, stdex::stream::memory_file
  • write_vsprintf() : stdex::stream::basic
  • @@ -89,7 +102,8 @@ $(function() {
    +
    diff --git a/functions_func_~.html b/functions_func_~.html index e9828a909..17ea5667a 100644 --- a/functions_func_~.html +++ b/functions_func_~.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_g.html b/functions_g.html index 242815cab..7e750407d 100644 --- a/functions_g.html +++ b/functions_g.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_h.html b/functions_h.html index 09e82d79e..7dcaf35e7 100644 --- a/functions_h.html +++ b/functions_h.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_i.html b/functions_i.html index b188c0a8b..64bad5045 100644 --- a/functions_i.html +++ b/functions_i.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_l.html b/functions_l.html index 8635acf19..880d5eab4 100644 --- a/functions_l.html +++ b/functions_l.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_m.html b/functions_m.html index 9fa464439..2b05ec38f 100644 --- a/functions_m.html +++ b/functions_m.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    + +
    diff --git a/functions_n.html b/functions_n.html index 6745a01dd..3f22cdad7 100644 --- a/functions_n.html +++ b/functions_n.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_o.html b/functions_o.html index 1a5ba326e..3a6ceb336 100644 --- a/functions_o.html +++ b/functions_o.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    + +
    diff --git a/functions_p.html b/functions_p.html index be1d9bc22..84df6ad5d 100644 --- a/functions_p.html +++ b/functions_p.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/functions_q.html b/functions_q.html index 7e1894997..d4fd2b0fa 100644 --- a/functions_q.html +++ b/functions_q.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_r.html b/functions_r.html index 1b11cccaf..4e06fb986 100644 --- a/functions_r.html +++ b/functions_r.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_rela.html b/functions_rela.html index 216cadd60..0a813d6d1 100644 --- a/functions_rela.html +++ b/functions_rela.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Related Symbols + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_s.html b/functions_s.html index 1bf47f997..301f4ca0b 100644 --- a/functions_s.html +++ b/functions_s.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_t.html b/functions_t.html index 2e0b3effa..a3fc89829 100644 --- a/functions_t.html +++ b/functions_t.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_type.html b/functions_type.html index ccea330fd..2c7c815fd 100644 --- a/functions_type.html +++ b/functions_type.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Typedefs + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_u.html b/functions_u.html index aa5c79bc7..02fc65759 100644 --- a/functions_u.html +++ b/functions_u.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_v.html b/functions_v.html index f09e7ac06..6d3590772 100644 --- a/functions_v.html +++ b/functions_v.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars.html b/functions_vars.html index fe87d6272..2a9c8c141 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_b.html b/functions_vars_b.html index 40bd6518a..7bf001e54 100644 --- a/functions_vars_b.html +++ b/functions_vars_b.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_c.html b/functions_vars_c.html index ec40088f7..9b47f41e5 100644 --- a/functions_vars_c.html +++ b/functions_vars_c.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_d.html b/functions_vars_d.html index 128431dc4..6773be14b 100644 --- a/functions_vars_d.html +++ b/functions_vars_d.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_e.html b/functions_vars_e.html index aab5ca3ac..4ebb34b90 100644 --- a/functions_vars_e.html +++ b/functions_vars_e.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_f.html b/functions_vars_f.html index ae198012e..d00e12449 100644 --- a/functions_vars_f.html +++ b/functions_vars_f.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_h.html b/functions_vars_h.html index 444c4ce6e..0cb579c81 100644 --- a/functions_vars_h.html +++ b/functions_vars_h.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_i.html b/functions_vars_i.html index 4dcca5044..75f78b085 100644 --- a/functions_vars_i.html +++ b/functions_vars_i.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_l.html b/functions_vars_l.html index 97f0ffd4d..6995641ad 100644 --- a/functions_vars_l.html +++ b/functions_vars_l.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_m.html b/functions_vars_m.html index d50d65512..4651a9222 100644 --- a/functions_vars_m.html +++ b/functions_vars_m.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_n.html b/functions_vars_n.html index ef91a98d7..51605c530 100644 --- a/functions_vars_n.html +++ b/functions_vars_n.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_o.html b/functions_vars_o.html index 4af1db8fd..95ec035bf 100644 --- a/functions_vars_o.html +++ b/functions_vars_o.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_p.html b/functions_vars_p.html index eb3be5fd0..39949f96b 100644 --- a/functions_vars_p.html +++ b/functions_vars_p.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_r.html b/functions_vars_r.html index 324e39583..831e619e4 100644 --- a/functions_vars_r.html +++ b/functions_vars_r.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_s.html b/functions_vars_s.html index e9cc2d7b4..409088980 100644 --- a/functions_vars_s.html +++ b/functions_vars_s.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_t.html b/functions_vars_t.html index 6c7246593..004aad4eb 100644 --- a/functions_vars_t.html +++ b/functions_vars_t.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_u.html b/functions_vars_u.html index a5f32fcc7..dcf9913d4 100644 --- a/functions_vars_u.html +++ b/functions_vars_u.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_v.html b/functions_vars_v.html index 0dc73c184..fc114e3ea 100644 --- a/functions_vars_v.html +++ b/functions_vars_v.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_vars_w.html b/functions_vars_w.html index 1b487f15a..4044f0bce 100644 --- a/functions_vars_w.html +++ b/functions_vars_w.html @@ -3,13 +3,15 @@ - + stdex: Class Members - Variables + + @@ -32,24 +34,35 @@
    - + + +
    +
    +
    diff --git a/functions_w.html b/functions_w.html index f0d82fd54..bdecedc73 100644 --- a/functions_w.html +++ b/functions_w.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@
    - + + +
    + +
    diff --git a/functions_~.html b/functions_~.html index 12365eaa7..316a985cd 100644 --- a/functions_~.html +++ b/functions_~.html @@ -3,13 +3,15 @@ - + stdex: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/hash_8hpp_source.html b/hash_8hpp_source.html index 69bafe9f2..5db3deffd 100644 --- a/hash_8hpp_source.html +++ b/hash_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/hash.hpp Source File + + @@ -32,18 +34,23 @@
    - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    hash.hpp
    @@ -748,7 +756,8 @@ $(function() { codefold.init(0); });
    + diff --git a/hex_8hpp_source.html b/hex_8hpp_source.html index f4743e5dc..17b4c5699 100644 --- a/hex_8hpp_source.html +++ b/hex_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/hex.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    hex.hpp
    @@ -223,7 +231,8 @@ $(function() { codefold.init(0); });
    + diff --git a/hierarchy.html b/hierarchy.html index 8c27f947d..521227627 100644 --- a/hierarchy.html +++ b/hierarchy.html @@ -3,13 +3,15 @@ - + stdex: Class Hierarchy + + @@ -32,24 +34,35 @@ - + + +
    + +
    diff --git a/html_8hpp_source.html b/html_8hpp_source.html index ce26f88d2..0c5133997 100644 --- a/html_8hpp_source.html +++ b/html_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/html.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    html.hpp
    @@ -1198,7 +1206,7 @@ $(function() { codefold.init(0); });
    1333 {
    1334 public:
    1335 template <class T>
    -
    1336 element(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr) :
    +
    1336 element(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr) :
    1337 sequence(tag.type, tag.interval.start, tag.interval.end, parent),
    1338 code(element_code(src + tag.name.start, tag.name.size())),
    1339 name(std::move(tag.name)),
    @@ -1376,7 +1384,7 @@ $(function() { codefold.init(0); });
    1512 {
    1513 public:
    1514 template <class T>
    -
    1515 element_start(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr, _In_opt_ sequence* _end = nullptr) :
    +
    1515 element_start(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr, _In_opt_ sequence* _end = nullptr) :
    1516 element(std::move(tag), src, parent),
    1517 end(_end)
    1518 {}
    @@ -1391,7 +1399,7 @@ $(function() { codefold.init(0); });
    1528 {
    1529 public:
    1530 template <class T>
    -
    1531 element_end(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr, _In_opt_ element_start* _start = nullptr) :
    +
    1531 element_end(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_z_ const T* src, _In_opt_ sequence* parent = nullptr, _In_opt_ element_start* _start = nullptr) :
    1532 sequence(tag.type, tag.interval.start, tag.interval.end, parent),
    1533 code(element::element_code(src + tag.name.start, tag.name.size())),
    1534 name(std::move(tag.name)),
    @@ -1410,7 +1418,7 @@ $(function() { codefold.init(0); });
    1548 {
    1549 public:
    1550 template <class T>
    -
    1551 declaration(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    +
    1551 declaration(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    1552 sequence(tag.type, tag.interval.start, tag.interval.end, parent),
    1553 name(std::move(tag.name)),
    1554 attributes(std::move(tag.attributes))
    @@ -1427,7 +1435,7 @@ $(function() { codefold.init(0); });
    1566 {
    1567 public:
    1568 template <class T>
    -
    1569 comment(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    +
    1569 comment(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    1570 sequence(tag.type, tag.interval.start, tag.interval.end, parent),
    1571 content(std::move(tag.name))
    1572 {}
    @@ -1442,7 +1450,7 @@ $(function() { codefold.init(0); });
    1582 {
    1583 public:
    1584 template <class T>
    -
    1585 instruction(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    +
    1585 instruction(_Inout_ stdex::parser::basic_html_tag<T>&& tag, _In_opt_ sequence* parent = nullptr) :
    1586 sequence(tag.type, tag.interval.start, tag.interval.end, parent),
    1587 content(std::move(tag.name))
    1588 {}
    @@ -1519,7 +1527,7 @@ $(function() { codefold.init(0); });
    1667 m_num_parsed, i,
    1668 active_element()))));
    1669 m_is_cdata = m_is_rcdata = false;
    -
    1670 i = m_num_parsed = m_condition_end.interval.end;
    +
    1670 i = m_num_parsed = m_condition_end.interval.end;
    1671 continue;
    1672 }
    1673 goto next_char;
    @@ -1528,7 +1536,7 @@ $(function() { codefold.init(0); });
    1677 if (m_condition_end.match(source, i, num_chars)) {
    -
    1679 i = m_num_parsed = m_condition_end.interval.end;
    +
    1679 i = m_num_parsed = m_condition_end.interval.end;
    1680 continue;
    1681 }
    1682 goto next_char;
    @@ -1539,7 +1547,7 @@ $(function() { codefold.init(0); });
    1687 m_sequences.push_back(std::move(std::unique_ptr<sequence>(new sequence(stdex::parser::html_sequence_t::text, m_num_parsed, i, active_element()))));
    1688
    -
    1690 i = m_num_parsed = m_condition_end.interval.end;
    +
    1690 i = m_num_parsed = m_condition_end.interval.end;
    1691 continue;
    1692 }
    1693
    @@ -1556,7 +1564,7 @@ $(function() { codefold.init(0); });
    1704 else
    1706
    -
    1707 i = m_num_parsed = m_condition_start.interval.end;
    +
    1707 i = m_num_parsed = m_condition_start.interval.end;
    1708 continue;
    1709 }
    1710
    @@ -1569,7 +1577,7 @@ $(function() { codefold.init(0); });
    1717 {
    1718 if (m_num_parsed < i)
    1719 m_sequences.push_back(std::move(std::unique_ptr<sequence>(new sequence(stdex::parser::html_sequence_t::text, m_num_parsed, i, parent))));
    -
    1720 i = m_num_parsed = m_tag.interval.end;
    +
    1720 i = m_num_parsed = m_tag.interval.end;
    1721 std::unique_ptr<element_end> e(new element_end(std::move(m_tag), source, parent->parent, parent));
    1722 parent->end = e.get();
    1723 m_sequences.push_back(std::move(e));
    @@ -1583,7 +1591,7 @@ $(function() { codefold.init(0); });
    1731 if (m_tag.match(source, i, num_chars)) {
    1732 if (m_num_parsed < i)
    1733 m_sequences.push_back(std::move(std::unique_ptr<sequence>(new sequence(stdex::parser::html_sequence_t::text, m_num_parsed, i, active_element()))));
    -
    1734 i = m_num_parsed = m_tag.interval.end;
    +
    1734 i = m_num_parsed = m_tag.interval.end;
    1735
    1736 switch (m_tag.type) {
    1737 case stdex::parser::html_sequence_t::element:
    @@ -1636,13 +1644,13 @@ $(function() { codefold.init(0); });
    1784 }
    1785 if (is_content_type && content_attr) {
    1786 // <meta http-equiv="Content-Type" content="..."> found.
    - +
    1788 if (content.match(source, content_attr->value.start, content_attr->value.end) &&
    -
    1789 content.charset)
    +
    1789 content.charset)
    1790 {
    1791 std::string str;
    -
    1792 str.reserve(content.charset.size());
    -
    1793 for (size_t j = content.charset.start; j < content.charset.end; ++j)
    +
    1792 str.reserve(content.charset.size());
    +
    1793 for (size_t j = content.charset.start; j < content.charset.end; ++j)
    1794 str.push_back(static_cast<char>(source[j]));
    1795 m_charset = stdex::charset_from_name(str);
    1796 }
    @@ -1706,7 +1714,7 @@ $(function() { codefold.init(0); });
    1854 next_char:
    1855 if (m_any_char.match(source, i, num_chars)) {
    1856 // Skip any character, but don't declare it as parsed yet. It might be a part of unfinished tag.
    -
    1857 i = m_any_char.interval.end;
    +
    1857 i = m_any_char.interval.end;
    1858 }
    1859 else
    1860 break;
    @@ -1786,13 +1794,13 @@ $(function() { codefold.init(0); }); - - - + + +
    1946 std::vector<std::unique_ptr<entity<T, TR, AX>>> m_entities;
    1947
    1948 // Element parsing data
    - +
    1950 sequence_store m_sequences;
    1951 std::vector<element_start*> m_element_stack;
    @@ -2384,20 +2392,20 @@ $(function() { codefold.init(0); });
    2623
    2624 for (;;) {
    2625 if (m_css_comment.match(m_source, start, end)) {
    -
    2626 token->text.append(m_source + start, m_css_comment.interval.end - start);
    -
    2627 start = m_css_comment.interval.end;
    +
    2626 token->text.append(m_source + start, m_css_comment.interval.end - start);
    +
    2627 start = m_css_comment.interval.end;
    2628 }
    2629 else if (m_css_cdo.match(m_source, start, end)) {
    -
    2630 token->text.append(m_source + start, m_css_cdo.interval.end - start);
    -
    2631 start = m_css_cdo.interval.end;
    +
    2630 token->text.append(m_source + start, m_css_cdo.interval.end - start);
    +
    2631 start = m_css_cdo.interval.end;
    2632 }
    2633 else if (m_css_cdc.match(m_source, start, end)) {
    -
    2634 token->text.append(m_source + start, m_css_cdc.interval.end - start);
    -
    2635 start = m_css_cdc.interval.end;
    +
    2634 token->text.append(m_source + start, m_css_cdc.interval.end - start);
    +
    2635 start = m_css_cdc.interval.end;
    2636 }
    2637 else if (
    -
    2638 (m_css_import.match(m_source, start, end) && ((void)(section = m_css_import.interval), (void)(content = m_css_import.content), true)) ||
    -
    2639 (m_css_uri.match(m_source, start, end) && ((void)(section = m_css_uri.interval), (void)(content = m_css_uri.content), true)))
    +
    2638 (m_css_import.match(m_source, start, end) && ((void)(section = m_css_import.interval), (void)(content = m_css_import.content), true)) ||
    +
    2639 (m_css_uri.match(m_source, start, end) && ((void)(section = m_css_uri.interval), (void)(content = m_css_uri.content), true)))
    2640 {
    2641 std::unique_ptr<url_token<T, TR, AX>> t_url(
    @@ -2412,8 +2420,8 @@ $(function() { codefold.init(0); });
    2651 start = section.end;
    2652 }
    2653 else if (m_any_char.match(m_source, start, end)) {
    -
    2654 token->text.append(m_source + start, m_any_char.interval.end - start);
    -
    2655 start = m_any_char.interval.end;
    +
    2654 token->text.append(m_source + start, m_any_char.interval.end - start);
    +
    2655 start = m_any_char.interval.end;
    2656 }
    2657 else
    2658 break;
    @@ -2433,13 +2441,13 @@ $(function() { codefold.init(0); });
    2671 sequence_store::const_iterator m_offset;
    2672
    2673 // For detecting URLs in CSS
    - - - - - - - + + + + + + +
    2681 };
    2682 }
    @@ -2520,8 +2528,18 @@ $(function() { codefold.init(0); });
    HTTP token representing an URL.
    Definition html.hpp:2141
    token_url_t encoding
    URL encoding.
    Definition html.hpp:2156
    std::basic_string< T, TR, AX > url
    URL.
    Definition html.hpp:2155
    -
    stdex::interval< size_t > interval
    Region of the last match.
    Definition parser.hpp:120
    -
    Test for given string.
    Definition parser.hpp:814
    +
    Test for any code unit.
    Definition parser.hpp:215
    +
    Legacy CSS comment end -->
    Definition parser.hpp:7450
    +
    Legacy CSS comment start <!--
    Definition parser.hpp:7412
    +
    CSS comment.
    Definition parser.hpp:7352
    +
    CSS import directive.
    Definition parser.hpp:7664
    +
    CSS string.
    Definition parser.hpp:7487
    +
    URI in CSS.
    Definition parser.hpp:7554
    +
    End of condition ...]]>
    Definition parser.hpp:8335
    +
    Start of condition <![condition[...
    Definition parser.hpp:8269
    +
    Tag.
    Definition parser.hpp:8033
    +
    MIME content type.
    Definition parser.hpp:7748
    +
    stdex::interval< size_t > charset
    charset position in source
    Definition parser.hpp:7760
    Progress indicator base class.
    Definition progress.hpp:22
    virtual bool cancel()
    Query whether user requested abort.
    Definition progress.hpp:70
    virtual void set(T value)
    Set current progress.
    Definition progress.hpp:52
    @@ -2565,7 +2583,8 @@ $(function() { codefold.init(0); }); + diff --git a/idrec_8hpp_source.html b/idrec_8hpp_source.html index d1da521ef..c418d4565 100644 --- a/idrec_8hpp_source.html +++ b/idrec_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/idrec.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    idrec.hpp
    @@ -480,7 +488,8 @@ $(function() { codefold.init(0); });
    + diff --git a/include_2stdex_2compat_8hpp_source.html b/include_2stdex_2compat_8hpp_source.html index e4d7f5650..eeccfca18 100644 --- a/include_2stdex_2compat_8hpp_source.html +++ b/include_2stdex_2compat_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/compat.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    compat.hpp
    @@ -299,7 +307,8 @@ $(function() { codefold.init(0); });
    + diff --git a/index.html b/index.html index 76bc407b0..46d8e80a9 100644 --- a/index.html +++ b/index.html @@ -3,13 +3,15 @@ - + stdex: stdex - Random stuff that didn't made it into std C++ + + @@ -32,24 +34,35 @@ - + + +
    +
    +
    diff --git a/interval_8hpp_source.html b/interval_8hpp_source.html index d393af5e3..c44c0ba1b 100644 --- a/interval_8hpp_source.html +++ b/interval_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/interval.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    interval.hpp
    @@ -253,7 +261,8 @@ $(function() { codefold.init(0); });
    + diff --git a/locale_8hpp_source.html b/locale_8hpp_source.html index cab8001f1..bb410599f 100644 --- a/locale_8hpp_source.html +++ b/locale_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/locale.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    locale.hpp
    @@ -189,7 +197,8 @@ $(function() { codefold.init(0); });
    + diff --git a/mapping_8hpp_source.html b/mapping_8hpp_source.html index 2f60d91b1..ae3b0dce4 100644 --- a/mapping_8hpp_source.html +++ b/mapping_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/mapping.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    mapping.hpp
    @@ -275,7 +283,8 @@ $(function() { codefold.init(0); });
    + diff --git a/math_8hpp_source.html b/math_8hpp_source.html index 1983d172b..25776f580 100644 --- a/math_8hpp_source.html +++ b/math_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/math.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    math.hpp
    @@ -169,7 +177,8 @@ $(function() { codefold.init(0); });
    + diff --git a/memory_8hpp_source.html b/memory_8hpp_source.html index 057fc1584..9a8daf53a 100644 --- a/memory_8hpp_source.html +++ b/memory_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/memory.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    memory.hpp
    @@ -131,7 +139,8 @@ $(function() { codefold.init(0); });
    + diff --git a/menu.js b/menu.js index 717761d01..0fd1e9901 100644 --- a/menu.js +++ b/menu.js @@ -22,7 +22,7 @@ @licend The above is the entire license notice for the JavaScript code in this file */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { +function initMenu(relPath,searchEnabled,serverSide,searchPage,search,treeview) { function makeTree(data,relPath) { let result=''; if ('children' in data) { @@ -91,7 +91,7 @@ function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { let prevWidth = 0; if ($mainMenuState.length) { const initResizableIfExists = function() { - if (typeof initResizable==='function') initResizable(); + if (typeof initResizable==='function') initResizable(treeview); } // animate mobile menu $mainMenuState.change(function() { diff --git a/minisign_8hpp_source.html b/minisign_8hpp_source.html index e73c36a3a..36ed07065 100644 --- a/minisign_8hpp_source.html +++ b/minisign_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/minisign.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    minisign.hpp
    @@ -213,7 +221,8 @@ $(function() { codefold.init(0); });
    + diff --git a/navtree.css b/navtree.css new file mode 100644 index 000000000..69211d4a7 --- /dev/null +++ b/navtree.css @@ -0,0 +1,149 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: var(--nav-text-active-color); + text-shadow: var(--nav-text-active-shadow); +} + +#nav-tree .selected .arrow { + color: var(--nav-arrow-selected-color); + text-shadow: none; +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px var(--font-family-nav); +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:var(--nav-text-active-color); +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: $width; + overflow : hidden; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background-image:var(--nav-splitbar-image); + background-size:100%; + background-repeat:repeat-y; + background-attachment: scroll; + cursor:ew-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-repeat:repeat-x; + background-color: var(--nav-background-color); + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/parser_8hpp_source.html b/parser_8hpp_source.html index ada269867..9ea13aacc 100644 --- a/parser_8hpp_source.html +++ b/parser_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/parser.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    parser.hpp
    @@ -160,37 +168,37 @@ $(function() { codefold.init(0); });
    80 {
    81 public:
    -
    82 basic_parser(_In_ const std::locale& locale = std::locale()) : m_locale(locale) {}
    +
    82 basic_parser(_In_ const std::locale& locale = std::locale()) : m_locale(locale) {}
    83 virtual ~basic_parser() {}
    84
    85 bool search(
    86 _In_reads_or_z_opt_(end) const T* text,
    -
    87 _In_ size_t start = 0,
    -
    88 _In_ size_t end = SIZE_MAX,
    -
    89 _In_ int flags = match_default)
    +
    87 _In_ size_t start = 0,
    +
    88 _In_ size_t end = SIZE_MAX,
    +
    89 _In_ int flags = match_default)
    90 {
    91 for (size_t i = start; i < end && text[i]; i++)
    -
    92 if (match(text, i, end, flags))
    +
    92 if (match(text, i, end, flags))
    93 return true;
    94 return false;
    95 }
    96
    97 bool match(
    98 _In_reads_or_z_opt_(end) const T* text,
    -
    99 _In_ size_t start = 0,
    -
    100 _In_ size_t end = SIZE_MAX,
    -
    101 _In_ int flags = match_default)
    +
    99 _In_ size_t start = 0,
    +
    100 _In_ size_t end = SIZE_MAX,
    +
    101 _In_ int flags = match_default)
    102 {
    -
    103 return do_match(text, start, end, flags);
    +
    103 return do_match(text, start, end, flags);
    104 }
    105
    106 bool match(
    -
    107 _In_ const std::basic_string_view<T, std::char_traits<T>> text,
    -
    108 _In_ size_t start = 0,
    -
    109 _In_ size_t end = SIZE_MAX,
    -
    110 _In_ int flags = match_default)
    +
    107 _In_ const std::basic_string_view<T, std::char_traits<T>> text,
    +
    108 _In_ size_t start = 0,
    +
    109 _In_ size_t end = SIZE_MAX,
    +
    110 _In_ int flags = match_default)
    111 {
    -
    112 return match(text.data(), start, std::min<size_t>(end, text.size()), flags);
    +
    112 return match(text.data(), start, std::min<size_t>(end, text.size()), flags);
    113 }
    114
    115 virtual void invalidate()
    @@ -203,34 +211,34 @@ $(function() { codefold.init(0); });
    122 protected:
    123 virtual bool do_match(
    124 _In_reads_or_z_opt_(end) const T* text,
    -
    125 _In_ size_t start = 0,
    -
    126 _In_ size_t end = SIZE_MAX,
    -
    127 _In_ int flags = match_default) = 0;
    +
    125 _In_ size_t start = 0,
    +
    126 _In_ size_t end = SIZE_MAX,
    +
    127 _In_ int flags = match_default) = 0;
    128
    130 template <class T_out = wchar_t>
    -
    131 const T_out* next_sgml_cp(_In_ const char* text, _In_ size_t start, _In_ size_t end, _Out_ size_t& chr_end, _Out_ T_out(&buf)[5])
    +
    131 const T_out* next_sgml_cp(_In_ const char* text, _In_ size_t start, _In_ size_t end, _Out_ size_t& chr_end, _Out_ T_out(&buf)[5])
    132 {
    133 if (text[start] == '&') {
    134 // Potential entity start
    -
    135 const auto& ctype = std::use_facet<std::ctype<T>>(m_locale);
    -
    136 for (chr_end = start + 1;; chr_end++) {
    -
    137 if (chr_end >= end || text[chr_end] == 0) {
    +
    135 const auto& ctype = std::use_facet<std::ctype<T>>(m_locale);
    +
    136 for (chr_end = start + 1;; chr_end++) {
    +
    137 if (chr_end >= end || text[chr_end] == 0) {
    138 // Unterminated entity
    139 break;
    140 }
    -
    141 if (text[chr_end] == ';') {
    +
    141 if (text[chr_end] == ';') {
    142 // Entity end
    -
    143 utf32_t buf32[2];
    -
    144 size_t n = chr_end - start - 1;
    -
    145 auto entity_w = utf32_to_wstr(sgml2uni(text + start + 1, n, buf32), buf);
    -
    146 if (entity_w) {
    -
    147 chr_end++;
    -
    148 return entity_w;
    +
    143 utf32_t buf32[2];
    +
    144 size_t n = chr_end - start - 1;
    +
    145 auto entity_w = utf32_to_wstr(sgml2uni(text + start + 1, n, buf32), buf);
    +
    146 if (entity_w) {
    +
    147 chr_end++;
    +
    148 return entity_w;
    149 }
    150 // Unknown entity.
    151 break;
    152 }
    -
    153 else if (text[chr_end] == '&' || ctype.is(ctype.space, text[chr_end])) {
    +
    153 else if (text[chr_end] == '&' || ctype.is(ctype.space, text[chr_end])) {
    154 // This char cannot possibly be a part of entity.
    155 break;
    156 }
    @@ -238,7 +246,7 @@ $(function() { codefold.init(0); });
    158 }
    159 buf[0] = text[start];
    160 buf[1] = 0;
    -
    161 chr_end = start + 1;
    +
    161 chr_end = start + 1;
    162 return buf;
    163 }
    165
    @@ -262,9 +270,9 @@ $(function() { codefold.init(0); });
    184 protected:
    185 virtual bool do_match(
    186 _In_reads_or_z_opt_(end) const T* text,
    -
    187 _In_ size_t start = 0,
    -
    188 _In_ size_t end = SIZE_MAX,
    -
    189 _In_ int flags = match_default)
    +
    187 _In_ size_t start = 0,
    +
    188 _In_ size_t end = SIZE_MAX,
    +
    189 _In_ int flags = match_default)
    190 {
    191 _Assume_(text || start >= end);
    192 if (start < end && text[start]) {
    @@ -277,28 +285,28 @@ $(function() { codefold.init(0); });
    199 };
    200
    -
    201 using noop = basic_noop<char>;
    - +
    201 using noop = basic_noop<char>;
    +
    203#ifdef _UNICODE
    -
    204 using tnoop = wnoop;
    +
    204 using tnoop = wnoop;
    205#else
    -
    206 using tnoop = noop;
    +
    206 using tnoop = noop;
    207#endif
    - +
    209
    213 template <class T>
    214 class basic_any_cu : public basic_parser<T>
    215 {
    216 public:
    -
    217 basic_any_cu(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    217 basic_any_cu(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    218
    219 protected:
    220 virtual bool do_match(
    221 _In_reads_or_z_opt_(end) const T* text,
    -
    222 _In_ size_t start = 0,
    -
    223 _In_ size_t end = SIZE_MAX,
    -
    224 _In_ int flags = match_default)
    +
    222 _In_ size_t start = 0,
    +
    223 _In_ size_t end = SIZE_MAX,
    +
    224 _In_ int flags = match_default)
    225 {
    226 _Assume_(text || start >= end);
    227 if (start < end && text[start]) {
    @@ -311,10 +319,10 @@ $(function() { codefold.init(0); });
    234 };
    235
    - - + +
    238#ifdef _UNICODE
    -
    239 using tany_cu = wany_cu;
    +
    239 using tany_cu = wany_cu;
    240#else
    241 using tany_cu = any_cu;
    242#endif
    @@ -323,27 +331,27 @@ $(function() { codefold.init(0); });
    247 class sgml_any_cp : public basic_any_cu<char>
    248 {
    249 public:
    -
    250 sgml_any_cp(_In_ const std::locale& locale = std::locale()) : basic_any_cu<char>(locale) {}
    +
    250 sgml_any_cp(_In_ const std::locale& locale = std::locale()) : basic_any_cu<char>(locale) {}
    251
    252 protected:
    253 virtual bool do_match(
    254 _In_reads_or_z_(end) const char* text,
    -
    255 _In_ size_t start = 0,
    -
    256 _In_ size_t end = SIZE_MAX,
    -
    257 _In_ int flags = match_default)
    +
    255 _In_ size_t start = 0,
    +
    256 _In_ size_t end = SIZE_MAX,
    +
    257 _In_ int flags = match_default)
    258 {
    259 _Assume_(text || start >= end);
    260 if (start < end && text[start]) {
    261 if (text[start] == '&') {
    262 // SGML entity
    -
    263 const auto& ctype = std::use_facet<std::ctype<char>>(m_locale);
    +
    263 const auto& ctype = std::use_facet<std::ctype<char>>(m_locale);
    264 for (this->interval.end = start + 1; this->interval.end < end && text[this->interval.end]; this->interval.end++)
    265 if (text[this->interval.end] == ';') {
    266 this->interval.end++;
    267 this->interval.start = start;
    268 return true;
    269 }
    -
    270 else if (text[this->interval.end] == '&' || ctype.is(ctype.space, text[this->interval.end]))
    +
    270 else if (text[this->interval.end] == '&' || ctype.is(ctype.space, text[this->interval.end]))
    271 break;
    272 // Unterminated entity
    273 }
    @@ -361,29 +369,29 @@ $(function() { codefold.init(0); });
    286 class basic_cu : public basic_parser<T>
    287 {
    288 public:
    -
    289 basic_cu(T chr, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - -
    291 m_chr(chr),
    +
    289 basic_cu(T chr, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    + +
    291 m_chr(chr),
    292 m_invert(invert)
    293 {}
    294
    295 protected:
    296 virtual bool do_match(
    297 _In_reads_or_z_opt_(end) const T* text,
    -
    298 _In_ size_t start = 0,
    -
    299 _In_ size_t end = SIZE_MAX,
    -
    300 _In_ int flags = match_default)
    +
    298 _In_ size_t start = 0,
    +
    299 _In_ size_t end = SIZE_MAX,
    +
    300 _In_ int flags = match_default)
    301 {
    302 _Assume_(text || start >= end);
    303 if (start < end && text[start]) {
    -
    304 bool r;
    -
    305 if (flags & match_case_insensitive) {
    -
    306 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    307 r = ctype.tolower(text[start]) == ctype.tolower(m_chr);
    +
    304 bool r;
    +
    305 if (flags & match_case_insensitive) {
    +
    306 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    307 r = ctype.tolower(text[start]) == ctype.tolower(m_chr);
    308 }
    309 else
    -
    310 r = text[start] == m_chr;
    -
    311 if ((r && !m_invert) || (!r && m_invert)) {
    +
    310 r = text[start] == m_chr;
    +
    311 if ((r && !m_invert) || (!r && m_invert)) {
    312 this->interval.end = (this->interval.start = start) + 1;
    313 return true;
    314 }
    @@ -397,43 +405,43 @@ $(function() { codefold.init(0); });
    322 };
    323
    -
    324 using cu = basic_cu<char>;
    -
    325 using wcu = basic_cu<wchar_t>;
    +
    324 using cu = basic_cu<char>;
    +
    325 using wcu = basic_cu<wchar_t>;
    326#ifdef _UNICODE
    -
    327 using tcu = wcu;
    +
    327 using tcu = wcu;
    328#else
    -
    329 using tcu = cu;
    +
    329 using tcu = cu;
    330#endif
    331
    335 class sgml_cp : public sgml_parser
    336 {
    337 public:
    -
    338 sgml_cp(const char* chr, size_t count = SIZE_MAX, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    338 sgml_cp(const char* chr, size_t count = SIZE_MAX, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    340 m_invert(invert)
    341 {
    -
    342 _Assume_(chr || !count);
    +
    342 _Assume_(chr || !count);
    343 wchar_t buf[5];
    -
    344 size_t chr_end;
    -
    345 m_chr.assign(count ? next_sgml_cp(chr, 0, count, chr_end, buf) : L"");
    +
    344 size_t chr_end;
    +
    345 m_chr.assign(count ? next_sgml_cp(chr, 0, count, chr_end, buf) : L"");
    346 }
    347
    348 protected:
    349 virtual bool do_match(
    350 _In_reads_or_z_(end) const char* text,
    -
    351 _In_ size_t start = 0,
    -
    352 _In_ size_t end = SIZE_MAX,
    -
    353 _In_ int flags = match_default)
    +
    351 _In_ size_t start = 0,
    +
    352 _In_ size_t end = SIZE_MAX,
    +
    353 _In_ int flags = match_default)
    354 {
    355 _Assume_(text || start >= end);
    356 if (start < end && text[start]) {
    357 wchar_t buf[5];
    -
    358 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    359 bool r = ((flags & match_case_insensitive) ?
    -
    360 stdex::strnicmp(chr, stdex::strlen(chr), m_chr.data(), m_chr.size(), m_locale) :
    -
    361 stdex::strncmp(chr, stdex::strlen(chr), m_chr.data(), m_chr.size())) == 0;
    -
    362 if ((r && !m_invert) || (!r && m_invert)) {
    +
    358 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    359 bool r = ((flags & match_case_insensitive) ?
    +
    360 stdex::strnicmp(chr, stdex::strlen(chr), m_chr.data(), m_chr.size(), m_locale) :
    +
    361 stdex::strncmp(chr, stdex::strlen(chr), m_chr.data(), m_chr.size())) == 0;
    +
    362 if ((r && !m_invert) || (!r && m_invert)) {
    363 this->interval.start = start;
    364 return true;
    365 }
    @@ -452,24 +460,24 @@ $(function() { codefold.init(0); });
    379 class basic_space_cu : public basic_parser<T>
    380 {
    381 public:
    -
    382 basic_space_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    382 basic_space_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    384 m_invert(invert)
    385 {}
    386
    387 protected:
    388 virtual bool do_match(
    389 _In_reads_or_z_opt_(end) const T* text,
    -
    390 _In_ size_t start = 0,
    -
    391 _In_ size_t end = SIZE_MAX,
    -
    392 _In_ int flags = match_default)
    +
    390 _In_ size_t start = 0,
    +
    391 _In_ size_t end = SIZE_MAX,
    +
    392 _In_ int flags = match_default)
    393 {
    394 _Assume_(text || start >= end);
    395 if (start < end && text[start]) {
    -
    396 bool r =
    -
    397 ((flags & match_multiline) || !stdex::islbreak(text[start])) &&
    +
    396 bool r =
    +
    397 ((flags & match_multiline) || !stdex::islbreak(text[start])) &&
    398 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::space, text[start]);
    -
    399 if ((r && !m_invert) || (!r && m_invert)) {
    +
    399 if ((r && !m_invert) || (!r && m_invert)) {
    400 this->interval.end = (this->interval.start = start) + 1;
    401 return true;
    402 }
    @@ -482,10 +490,10 @@ $(function() { codefold.init(0); });
    409 };
    410
    - - + +
    413#ifdef _UNICODE
    -
    414 using tspace_cu = wspace_cu;
    +
    414 using tspace_cu = wspace_cu;
    415#else
    416 using tspace_cu = space_cu;
    417#endif
    @@ -494,26 +502,26 @@ $(function() { codefold.init(0); });
    422 class sgml_space_cp : public basic_space_cu<char>
    423 {
    424 public:
    -
    425 sgml_space_cp(_In_ bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    425 sgml_space_cp(_In_ bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    427 {}
    428
    429 protected:
    430 virtual bool do_match(
    431 _In_reads_or_z_(end) const char* text,
    -
    432 _In_ size_t start = 0,
    -
    433 _In_ size_t end = SIZE_MAX,
    -
    434 _In_ int flags = match_default)
    +
    432 _In_ size_t start = 0,
    +
    433 _In_ size_t end = SIZE_MAX,
    +
    434 _In_ int flags = match_default)
    435 {
    436 _Assume_(text || start >= end);
    437 if (start < end && text[start]) {
    438 wchar_t buf[5];
    -
    439 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    440 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    441 bool r =
    -
    442 ((flags & match_multiline) || !stdex::islbreak(chr, SIZE_MAX)) &&
    -
    443 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::space, chr, chr_end) == chr_end;
    -
    444 if ((r && !m_invert) || (!r && m_invert)) {
    +
    439 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    440 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    441 bool r =
    +
    442 ((flags & match_multiline) || !stdex::islbreak(chr, SIZE_MAX)) &&
    +
    443 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::space, chr, chr_end) == chr_end;
    +
    444 if ((r && !m_invert) || (!r && m_invert)) {
    445 this->interval.start = start;
    446 return true;
    447 }
    @@ -530,22 +538,22 @@ $(function() { codefold.init(0); });
    459 class basic_punct_cu : public basic_parser<T>
    460 {
    461 public:
    -
    462 basic_punct_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    462 basic_punct_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    464 m_invert(invert)
    465 {}
    466
    467 protected:
    468 virtual bool do_match(
    469 _In_reads_or_z_opt_(end) const T* text,
    -
    470 _In_ size_t start = 0,
    -
    471 _In_ size_t end = SIZE_MAX,
    -
    472 _In_ int flags = match_default)
    +
    470 _In_ size_t start = 0,
    +
    471 _In_ size_t end = SIZE_MAX,
    +
    472 _In_ int flags = match_default)
    473 {
    474 _Assume_(text || start >= end);
    475 if (start < end && text[start]) {
    -
    476 bool r = std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::punct, text[start]);
    -
    477 if ((r && !m_invert) || (!r && m_invert)) {
    +
    476 bool r = std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::punct, text[start]);
    +
    477 if ((r && !m_invert) || (!r && m_invert)) {
    478 this->interval.end = (this->interval.start = start) + 1;
    479 return true;
    480 }
    @@ -558,10 +566,10 @@ $(function() { codefold.init(0); });
    487 };
    488
    - - + +
    491#ifdef _UNICODE
    -
    492 using tpunct_cu = wpunct_cu;
    +
    492 using tpunct_cu = wpunct_cu;
    493#else
    494 using tpunct_cu = punct_cu;
    495#endif
    @@ -570,24 +578,24 @@ $(function() { codefold.init(0); });
    500 class sgml_punct_cp : public basic_punct_cu<char>
    501 {
    502 public:
    -
    503 sgml_punct_cp(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    503 sgml_punct_cp(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    505 {}
    506
    507 protected:
    508 virtual bool do_match(
    509 _In_reads_or_z_(end) const char* text,
    -
    510 _In_ size_t start = 0,
    -
    511 _In_ size_t end = SIZE_MAX,
    -
    512 _In_ int flags = match_default)
    +
    510 _In_ size_t start = 0,
    +
    511 _In_ size_t end = SIZE_MAX,
    +
    512 _In_ int flags = match_default)
    513 {
    514 _Assume_(text || start >= end);
    515 if (start < end && text[start]) {
    516 wchar_t buf[5];
    -
    517 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    518 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    519 bool r = std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::punct, chr, chr_end) == chr_end;
    -
    520 if ((r && !m_invert) || (!r && m_invert)) {
    +
    517 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    518 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    519 bool r = std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::punct, chr, chr_end) == chr_end;
    +
    520 if ((r && !m_invert) || (!r && m_invert)) {
    521 this->interval.start = start;
    522 return true;
    523 }
    @@ -603,24 +611,24 @@ $(function() { codefold.init(0); });
    535 {
    536 public:
    -
    537 basic_space_or_punct_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    537 basic_space_or_punct_cu(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    539 m_invert(invert)
    540 {}
    541
    542 protected:
    543 virtual bool do_match(
    544 _In_reads_or_z_opt_(end) const T* text,
    -
    545 _In_ size_t start = 0,
    -
    546 _In_ size_t end = SIZE_MAX,
    -
    547 _In_ int flags = match_default)
    +
    545 _In_ size_t start = 0,
    +
    546 _In_ size_t end = SIZE_MAX,
    +
    547 _In_ int flags = match_default)
    548 {
    549 _Assume_(text || start >= end);
    550 if (start < end && text[start]) {
    -
    551 bool r =
    -
    552 ((flags & match_multiline) || !stdex::islbreak(text[start])) &&
    +
    551 bool r =
    +
    552 ((flags & match_multiline) || !stdex::islbreak(text[start])) &&
    553 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::space | std::ctype_base::punct, text[start]);
    -
    554 if ((r && !m_invert) || (!r && m_invert)) {
    +
    554 if ((r && !m_invert) || (!r && m_invert)) {
    555 this->interval.end = (this->interval.start = start) + 1;
    556 return true;
    557 }
    @@ -633,10 +641,10 @@ $(function() { codefold.init(0); });
    564 };
    565
    - - + +
    568#ifdef _UNICODE
    - +
    570#else
    572#endif
    @@ -645,26 +653,26 @@ $(function() { codefold.init(0); });
    578 {
    579 public:
    -
    580 sgml_space_or_punct_cp(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - +
    580 sgml_space_or_punct_cp(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    582 {}
    583
    584 protected:
    585 virtual bool do_match(
    586 _In_reads_or_z_(end) const char* text,
    -
    587 _In_ size_t start = 0,
    -
    588 _In_ size_t end = SIZE_MAX,
    -
    589 _In_ int flags = match_default)
    +
    587 _In_ size_t start = 0,
    +
    588 _In_ size_t end = SIZE_MAX,
    +
    589 _In_ int flags = match_default)
    590 {
    591 _Assume_(text || start >= end);
    592 if (start < end && text[start]) {
    593 wchar_t buf[5];
    -
    594 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    595 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    596 bool r =
    -
    597 ((flags & match_multiline) || !stdex::islbreak(chr, SIZE_MAX)) &&
    -
    598 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::space | std::ctype_base::punct, chr, chr_end) == chr_end;
    -
    599 if ((r && !m_invert) || (!r && m_invert)) {
    +
    594 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    595 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    596 bool r =
    +
    597 ((flags & match_multiline) || !stdex::islbreak(chr, SIZE_MAX)) &&
    +
    598 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::space | std::ctype_base::punct, chr, chr_end) == chr_end;
    +
    599 if ((r && !m_invert) || (!r && m_invert)) {
    600 this->interval.start = start;
    601 return true;
    602 }
    @@ -685,14 +693,14 @@ $(function() { codefold.init(0); });
    618 protected:
    619 virtual bool do_match(
    620 _In_reads_or_z_opt_(end) const T* text,
    -
    621 _In_ size_t start = 0,
    -
    622 _In_ size_t end = SIZE_MAX,
    -
    623 _In_ int flags = match_default)
    +
    621 _In_ size_t start = 0,
    +
    622 _In_ size_t end = SIZE_MAX,
    +
    623 _In_ int flags = match_default)
    624 {
    625 _Assume_(text || !end);
    626 _Assume_(text || start >= end);
    -
    627 bool r = start == 0 || (start <= end && stdex::islbreak(text[start - 1]));
    -
    628 if ((r && !m_invert) || (!r && m_invert)) {
    +
    627 bool r = start == 0 || (start <= end && stdex::islbreak(text[start - 1]));
    +
    628 if ((r && !m_invert) || (!r && m_invert)) {
    629 this->interval.end = this->interval.start = start;
    630 return true;
    631 }
    @@ -704,14 +712,14 @@ $(function() { codefold.init(0); });
    637 };
    638
    -
    639 using bol = basic_bol<char>;
    -
    640 using wbol = basic_bol<wchar_t>;
    +
    639 using bol = basic_bol<char>;
    +
    640 using wbol = basic_bol<wchar_t>;
    641#ifdef _UNICODE
    -
    642 using tbol = wbol;
    +
    642 using tbol = wbol;
    643#else
    -
    644 using tbol = bol;
    +
    644 using tbol = bol;
    645#endif
    - +
    647
    651 template <class T>
    @@ -723,13 +731,13 @@ $(function() { codefold.init(0); });
    657 protected:
    658 virtual bool do_match(
    659 _In_reads_or_z_opt_(end) const T* text,
    -
    660 _In_ size_t start = 0,
    -
    661 _In_ size_t end = SIZE_MAX,
    -
    662 _In_ int flags = match_default)
    +
    660 _In_ size_t start = 0,
    +
    661 _In_ size_t end = SIZE_MAX,
    +
    662 _In_ int flags = match_default)
    663 {
    664 _Assume_(text || start >= end);
    -
    665 bool r = start >= end || !text[start] || stdex::islbreak(text[start]);
    -
    666 if ((r && !m_invert) || (!r && m_invert)) {
    +
    665 bool r = start >= end || !text[start] || stdex::islbreak(text[start]);
    +
    666 if ((r && !m_invert) || (!r && m_invert)) {
    667 this->interval.end = this->interval.start = start;
    668 return true;
    669 }
    @@ -741,29 +749,29 @@ $(function() { codefold.init(0); });
    675 };
    676
    -
    677 using eol = basic_eol<char>;
    -
    678 using weol = basic_eol<wchar_t>;
    +
    677 using eol = basic_eol<char>;
    +
    678 using weol = basic_eol<wchar_t>;
    679#ifdef _UNICODE
    -
    680 using teol = weol;
    +
    680 using teol = weol;
    681#else
    -
    682 using teol = eol;
    +
    682 using teol = eol;
    683#endif
    - +
    685
    686 template <class T>
    687 class basic_set : public basic_parser<T>
    688 {
    689 public:
    -
    690 basic_set(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    - -
    692 hit_offset(SIZE_MAX),
    +
    690 basic_set(bool invert = false, _In_ const std::locale& locale = std::locale()) :
    + +
    692 hit_offset(SIZE_MAX),
    693 m_invert(invert)
    694 {}
    695
    696 virtual void invalidate()
    697 {
    -
    698 hit_offset = SIZE_MAX;
    +
    698 hit_offset = SIZE_MAX;
    700 }
    701
    @@ -772,9 +780,9 @@ $(function() { codefold.init(0); });
    704 protected:
    705 virtual bool do_match(
    706 _In_reads_or_z_opt_(end) const T* text,
    -
    707 _In_ size_t start = 0,
    -
    708 _In_ size_t end = SIZE_MAX,
    -
    709 _In_ int flags = match_default) = 0;
    +
    707 _In_ size_t start = 0,
    +
    708 _In_ size_t end = SIZE_MAX,
    +
    709 _In_ int flags = match_default) = 0;
    710
    711 bool m_invert;
    712 };
    @@ -786,36 +794,36 @@ $(function() { codefold.init(0); });
    719 {
    720 public:
    -
    722 _In_reads_or_z_(count) const T* set,
    -
    723 _In_ size_t count = SIZE_MAX,
    -
    724 _In_ bool invert = false,
    -
    725 _In_ const std::locale& locale = std::locale()) :
    -
    726 basic_set<T>(invert, locale)
    +
    722 _In_reads_or_z_(count) const T* set,
    +
    723 _In_ size_t count = SIZE_MAX,
    +
    724 _In_ bool invert = false,
    +
    725 _In_ const std::locale& locale = std::locale()) :
    +
    726 basic_set<T>(invert, locale)
    727 {
    728 if (set)
    -
    729 m_set.assign(set, set + stdex::strnlen(set, count));
    +
    729 m_set.assign(set, set + stdex::strnlen(set, count));
    730 }
    731
    732 protected:
    733 virtual bool do_match(
    734 _In_reads_or_z_opt_(end) const T* text,
    -
    735 _In_ size_t start = 0,
    -
    736 _In_ size_t end = SIZE_MAX,
    -
    737 _In_ int flags = match_default)
    +
    735 _In_ size_t start = 0,
    +
    736 _In_ size_t end = SIZE_MAX,
    +
    737 _In_ int flags = match_default)
    738 {
    739 _Assume_(text || start >= end);
    740 if (start < end && text[start]) {
    741 const T* set = m_set.data();
    -
    742 size_t r = (flags & match_case_insensitive) ?
    +
    742 size_t r = (flags & match_case_insensitive) ?
    743 stdex::strnichr(set, m_set.size(), text[start], this->m_locale) :
    744 stdex::strnchr(set, m_set.size(), text[start]);
    -
    745 if ((r != stdex::npos && !this->m_invert) || (r == stdex::npos && this->m_invert)) {
    -
    746 this->hit_offset = r;
    +
    745 if ((r != stdex::npos && !this->m_invert) || (r == stdex::npos && this->m_invert)) {
    +
    746 this->hit_offset = r;
    747 this->interval.end = (this->interval.start = start) + 1;
    748 return true;
    749 }
    750 }
    -
    751 this->hit_offset = SIZE_MAX;
    +
    751 this->hit_offset = SIZE_MAX;
    752 this->interval.invalidate();
    753 return false;
    754 }
    @@ -824,47 +832,47 @@ $(function() { codefold.init(0); });
    757 };
    758
    - - + +
    761#ifdef _UNICODE
    -
    762 using tcu_set = wcu_set;
    +
    762 using tcu_set = wcu_set;
    763#else
    -
    764 using tcu_set = cu_set;
    +
    764 using tcu_set = cu_set;
    765#endif
    766
    770 class sgml_cp_set : public basic_set<char>
    771 {
    772 public:
    -
    773 sgml_cp_set(const char* set, size_t count = SIZE_MAX, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    -
    774 basic_set<char>(invert, locale)
    +
    773 sgml_cp_set(const char* set, size_t count = SIZE_MAX, bool invert = false, _In_ const std::locale& locale = std::locale()) :
    +
    774 basic_set<char>(invert, locale)
    775 {
    776 if (set)
    -
    777 m_set = sgml2str(set, count);
    +
    777 m_set = sgml2str(set, count);
    778 }
    779
    780 protected:
    781 virtual bool do_match(
    782 _In_reads_or_z_(end) const char* text,
    -
    783 _In_ size_t start = 0,
    -
    784 _In_ size_t end = SIZE_MAX,
    -
    785 _In_ int flags = match_default)
    +
    783 _In_ size_t start = 0,
    +
    784 _In_ size_t end = SIZE_MAX,
    +
    785 _In_ int flags = match_default)
    786 {
    787 _Assume_(text || start >= end);
    788 if (start < end && text[start]) {
    789 wchar_t buf[5];
    -
    790 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    790 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    791 const wchar_t* set = m_set.data();
    -
    792 size_t r = (flags & match_case_insensitive) ?
    -
    793 stdex::strnistr(set, m_set.size(), chr, m_locale) :
    -
    794 stdex::strnstr(set, m_set.size(), chr);
    -
    795 if ((r != stdex::npos && !m_invert) || (r == stdex::npos && m_invert)) {
    -
    796 hit_offset = r;
    +
    792 size_t r = (flags & match_case_insensitive) ?
    +
    793 stdex::strnistr(set, m_set.size(), chr, m_locale) :
    +
    794 stdex::strnstr(set, m_set.size(), chr);
    +
    795 if ((r != stdex::npos && !m_invert) || (r == stdex::npos && m_invert)) {
    +
    796 hit_offset = r;
    797 this->interval.start = start;
    798 return true;
    799 }
    800 }
    -
    801 hit_offset = SIZE_MAX;
    +
    801 hit_offset = SIZE_MAX;
    802 this->interval.invalidate();
    803 return false;
    804 }
    @@ -879,29 +887,29 @@ $(function() { codefold.init(0); });
    814 {
    815 public:
    -
    817 _In_reads_or_z_(count) const T* str,
    -
    818 _In_ size_t count = SIZE_MAX,
    -
    819 _In_ const std::locale& locale = std::locale()) :
    - -
    821 m_str(str, str + stdex::strnlen(str, count))
    +
    817 _In_reads_or_z_(count) const T* str,
    +
    818 _In_ size_t count = SIZE_MAX,
    +
    819 _In_ const std::locale& locale = std::locale()) :
    + +
    821 m_str(str, str + stdex::strnlen(str, count))
    822 {}
    823
    824 protected:
    825 virtual bool do_match(
    826 _In_reads_or_z_opt_(end) const T* text,
    -
    827 _In_ size_t start = 0,
    -
    828 _In_ size_t end = SIZE_MAX,
    -
    829 _In_ int flags = match_default)
    +
    827 _In_ size_t start = 0,
    +
    828 _In_ size_t end = SIZE_MAX,
    +
    829 _In_ int flags = match_default)
    830 {
    831 _Assume_(text || start >= end);
    832 size_t
    -
    833 m = m_str.size(),
    -
    834 n = std::min<size_t>(end - start, m);
    -
    835 bool r = ((flags & match_case_insensitive) ?
    -
    836 stdex::strnicmp(text + start, n, m_str.data(), m, this->m_locale) :
    -
    837 stdex::strncmp(text + start, n, m_str.data(), m)) == 0;
    -
    838 if (r) {
    -
    839 this->interval.end = (this->interval.start = start) + n;
    +
    833 m = m_str.size(),
    +
    834 n = std::min<size_t>(end - start, m);
    +
    835 bool r = ((flags & match_case_insensitive) ?
    +
    836 stdex::strnicmp(text + start, n, m_str.data(), m, this->m_locale) :
    +
    837 stdex::strncmp(text + start, n, m_str.data(), m)) == 0;
    +
    838 if (r) {
    +
    839 this->interval.end = (this->interval.start = start) + n;
    840 return true;
    841 }
    842 this->interval.invalidate();
    @@ -924,36 +932,36 @@ $(function() { codefold.init(0); });
    861 {
    862 public:
    -
    863 sgml_string(const char* str, size_t count = SIZE_MAX, _In_ const std::locale& locale = std::locale()) :
    +
    863 sgml_string(const char* str, size_t count = SIZE_MAX, _In_ const std::locale& locale = std::locale()) :
    -
    865 m_str(sgml2str(str, count))
    +
    865 m_str(sgml2str(str, count))
    866 {}
    867
    868 protected:
    869 virtual bool do_match(
    870 _In_reads_or_z_(end) const char* text,
    -
    871 _In_ size_t start = 0,
    -
    872 _In_ size_t end = SIZE_MAX,
    -
    873 _In_ int flags = match_default)
    +
    871 _In_ size_t start = 0,
    +
    872 _In_ size_t end = SIZE_MAX,
    +
    873 _In_ int flags = match_default)
    874 {
    875 _Assume_(text || start >= end);
    -
    876 const wchar_t* str = m_str.data();
    -
    877 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    -
    878 const auto& ctype = std::use_facet<std::ctype<wchar_t>>(m_locale);
    +
    876 const wchar_t* str = m_str.data();
    +
    877 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    +
    878 const auto& ctype = std::use_facet<std::ctype<wchar_t>>(m_locale);
    879 for (this->interval.end = start;;) {
    -
    880 if (!*str) {
    +
    880 if (!*str) {
    881 this->interval.start = start;
    882 return true;
    883 }
    -
    884 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    884 if (this->interval.end >= end || !text[this->interval.end]) {
    885 this->interval.invalidate();
    886 return false;
    887 }
    888 wchar_t buf[5];
    -
    889 const wchar_t* chr = next_sgml_cp(text, this->interval.end, end, this->interval.end, buf);
    -
    890 for (; *chr; ++str, ++chr) {
    -
    891 if (!*str ||
    -
    892 (case_insensitive ? ctype.tolower(*str) != ctype.tolower(*chr) : *str != *chr))
    +
    889 const wchar_t* chr = next_sgml_cp(text, this->interval.end, end, this->interval.end, buf);
    +
    890 for (; *chr; ++str, ++chr) {
    +
    891 if (!*str ||
    +
    892 (case_insensitive ? ctype.tolower(*str) != ctype.tolower(*chr) : *str != *chr))
    893 {
    894 this->interval.invalidate();
    895 return false;
    @@ -971,31 +979,31 @@ $(function() { codefold.init(0); });
    909 {
    910 public:
    -
    911 basic_iterations(const std::shared_ptr<basic_parser<T>>& el, size_t min_iterations = 0, size_t max_iterations = SIZE_MAX, bool greedy = true) :
    -
    912 m_el(el),
    - - - +
    911 basic_iterations(const std::shared_ptr<basic_parser<T>>& el, size_t min_iterations = 0, size_t max_iterations = SIZE_MAX, bool greedy = true) :
    +
    912 m_el(el),
    +
    913 m_min_iterations(min_iterations),
    +
    914 m_max_iterations(max_iterations),
    +
    915 m_greedy(greedy)
    916 {}
    917
    918 protected:
    919 virtual bool do_match(
    920 _In_reads_or_z_opt_(end) const T* text,
    -
    921 _In_ size_t start = 0,
    -
    922 _In_ size_t end = SIZE_MAX,
    -
    923 _In_ int flags = match_default)
    +
    921 _In_ size_t start = 0,
    +
    922 _In_ size_t end = SIZE_MAX,
    +
    923 _In_ int flags = match_default)
    924 {
    925 _Assume_(text || start >= end);
    926 this->interval.start = this->interval.end = start;
    927 for (size_t i = 0; ; i++) {
    928 if ((!m_greedy && i >= m_min_iterations) || i >= m_max_iterations)
    929 return true;
    -
    930 if (!m_el->match(text, this->interval.end, end, flags)) {
    +
    930 if (!m_el->match(text, this->interval.end, end, flags)) {
    931 if (i >= m_min_iterations)
    932 return true;
    933 break;
    934 }
    -
    935 if (m_el->interval.end == this->interval.end) {
    +
    935 if (m_el->interval.end == this->interval.end) {
    936 // Element did match, but the matching interval was empty. Quit instead of spinning.
    937 return true;
    938 }
    @@ -1012,46 +1020,46 @@ $(function() { codefold.init(0); });
    949 };
    950
    - - + +
    953#ifdef _UNICODE
    -
    954 using titerations = witerations;
    +
    954 using titerations = witerations;
    955#else
    -
    956 using titerations = iterations;
    +
    956 using titerations = iterations;
    957#endif
    - +
    959
    963 template <class T>
    965 {
    966 protected:
    -
    967 parser_collection(_In_ const std::locale& locale) : basic_parser<T>(locale) {}
    +
    967 parser_collection(_In_ const std::locale& locale) : basic_parser<T>(locale) {}
    968
    969 public:
    -
    971 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el,
    -
    972 _In_ size_t count,
    -
    973 _In_ const std::locale& locale = std::locale()) :
    - +
    971 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el,
    +
    972 _In_ size_t count,
    +
    973 _In_ const std::locale& locale = std::locale()) :
    +
    975 {
    -
    976 _Assume_(el || !count);
    -
    977 m_collection.reserve(count);
    -
    978 for (size_t i = 0; i < count; i++)
    -
    979 m_collection.push_back(el[i]);
    +
    976 _Assume_(el || !count);
    +
    977 m_collection.reserve(count);
    +
    978 for (size_t i = 0; i < count; i++)
    +
    979 m_collection.push_back(el[i]);
    980 }
    981
    -
    983 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    -
    984 _In_ const std::locale& locale = std::locale()) :
    - -
    986 m_collection(std::move(collection))
    +
    983 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    +
    984 _In_ const std::locale& locale = std::locale()) :
    + +
    986 m_collection(std::move(collection))
    987 {}
    988
    989 virtual void invalidate()
    990 {
    -
    991 for (auto& el : m_collection)
    -
    992 el->invalidate();
    +
    991 for (auto& el : m_collection)
    +
    992 el->invalidate();
    994 }
    995
    @@ -1066,29 +1074,29 @@ $(function() { codefold.init(0); });
    1005 {
    1006 public:
    -
    1008 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    -
    1009 _In_ size_t count = 0,
    -
    1010 _In_ const std::locale& locale = std::locale()) :
    - +
    1008 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    +
    1009 _In_ size_t count = 0,
    +
    1010 _In_ const std::locale& locale = std::locale()) :
    +
    1011 parser_collection<T>(el, count, locale)
    1012 {}
    1013
    -
    1015 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    -
    1016 _In_ const std::locale& locale = std::locale()) :
    - +
    1015 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    +
    1016 _In_ const std::locale& locale = std::locale()) :
    +
    1017 parser_collection<T>(std::move(collection), locale)
    1018 {}
    1019
    1020 protected:
    1021 virtual bool do_match(
    1022 _In_reads_or_z_opt_(end) const T* text,
    -
    1023 _In_ size_t start = 0,
    -
    1024 _In_ size_t end = SIZE_MAX,
    -
    1025 _In_ int flags = match_default)
    +
    1023 _In_ size_t start = 0,
    +
    1024 _In_ size_t end = SIZE_MAX,
    +
    1025 _In_ int flags = match_default)
    1026 {
    1027 _Assume_(text || start >= end);
    1028 this->interval.end = start;
    1029 for (auto i = this->m_collection.begin(); i != this->m_collection.end(); ++i) {
    -
    1030 if (!(*i)->match(text, this->interval.end, end, flags)) {
    +
    1030 if (!(*i)->match(text, this->interval.end, end, flags)) {
    1031 for (++i; i != this->m_collection.end(); ++i)
    1032 (*i)->invalidate();
    1033 this->interval.invalidate();
    @@ -1102,44 +1110,44 @@ $(function() { codefold.init(0); });
    1041 };
    1042
    - - + +
    1045#ifdef _UNICODE
    -
    1046 using tsequence = wsequence;
    +
    1046 using tsequence = wsequence;
    1047#else
    -
    1048 using tsequence = sequence;
    +
    1048 using tsequence = sequence;
    1049#endif
    - +
    1051
    1055 template <class T>
    1057 {
    1058 protected:
    -
    1059 basic_branch(_In_ const std::locale& locale) :
    - -
    1061 hit_offset(SIZE_MAX)
    +
    1059 basic_branch(_In_ const std::locale& locale) :
    + +
    1061 hit_offset(SIZE_MAX)
    1062 {}
    1063
    1064 public:
    -
    1066 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    -
    1067 _In_ size_t count = 0,
    -
    1068 _In_ const std::locale& locale = std::locale()) :
    - -
    1070 hit_offset(SIZE_MAX)
    +
    1066 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    +
    1067 _In_ size_t count = 0,
    +
    1068 _In_ const std::locale& locale = std::locale()) :
    +
    1069 parser_collection<T>(el, count, locale),
    +
    1070 hit_offset(SIZE_MAX)
    1071 {}
    1072
    -
    1074 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    -
    1075 _In_ const std::locale& locale = std::locale()) :
    - -
    1077 hit_offset(SIZE_MAX)
    +
    1074 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    +
    1075 _In_ const std::locale& locale = std::locale()) :
    +
    1076 parser_collection<T>(std::move(collection), locale),
    +
    1077 hit_offset(SIZE_MAX)
    1078 {}
    1079
    1080 virtual void invalidate()
    1081 {
    -
    1082 hit_offset = SIZE_MAX;
    +
    1082 hit_offset = SIZE_MAX;
    1084 }
    1085
    @@ -1148,35 +1156,35 @@ $(function() { codefold.init(0); });
    1088 protected:
    1089 virtual bool do_match(
    1090 _In_reads_or_z_opt_(end) const T* text,
    -
    1091 _In_ size_t start = 0,
    -
    1092 _In_ size_t end = SIZE_MAX,
    -
    1093 _In_ int flags = match_default)
    +
    1091 _In_ size_t start = 0,
    +
    1092 _In_ size_t end = SIZE_MAX,
    +
    1093 _In_ int flags = match_default)
    1094 {
    1095 _Assume_(text || start >= end);
    1096 hit_offset = 0;
    1097 for (auto i = this->m_collection.begin(); i != this->m_collection.end(); ++i, ++hit_offset) {
    -
    1098 if ((*i)->match(text, start, end, flags)) {
    +
    1098 if ((*i)->match(text, start, end, flags)) {
    1099 this->interval = (*i)->interval;
    1100 for (++i; i != this->m_collection.end(); ++i)
    1101 (*i)->invalidate();
    1102 return true;
    1103 }
    1104 }
    -
    1105 hit_offset = SIZE_MAX;
    +
    1105 hit_offset = SIZE_MAX;
    1106 this->interval.invalidate();
    1107 return false;
    1108 }
    1109 };
    1110
    -
    1111 using branch = basic_branch<char>;
    - +
    1111 using branch = basic_branch<char>;
    +
    1113#ifdef _UNICODE
    -
    1114 using tbranch = wbranch;
    +
    1114 using tbranch = wbranch;
    1115#else
    -
    1116 using tbranch = branch;
    +
    1116 using tbranch = branch;
    1117#endif
    - +
    1119
    1123 template <class T, class T_parser = basic_string<T>>
    @@ -1184,70 +1192,70 @@ $(function() { codefold.init(0); });
    1125 {
    1126 public:
    -
    1128 _In_reads_(count) const T* str_z = nullptr,
    -
    1129 _In_ size_t count = 0,
    -
    1130 _In_ const std::locale& locale = std::locale()) :
    - +
    1128 _In_reads_(count) const T* str_z = nullptr,
    +
    1129 _In_ size_t count = 0,
    +
    1130 _In_ const std::locale& locale = std::locale()) :
    +
    1132 {
    -
    1133 build(str_z, count);
    +
    1133 build(str_z, count);
    1134 }
    1135
    -
    1136 basic_string_branch(_In_z_ const T* str, ...) :
    -
    1137 basic_branch<T>(std::locale())
    +
    1136 basic_string_branch(_In_z_ const T* str, ...) :
    +
    1137 basic_branch<T>(std::locale())
    1138 {
    -
    1139 va_list params;
    -
    1140 va_start(params, str);
    -
    1141 build(str, params);
    -
    1142 va_end(params);
    +
    1139 va_list params;
    +
    1140 va_start(params, str);
    +
    1141 build(str, params);
    +
    1142 va_end(params);
    1143 }
    1144
    -
    1145 basic_string_branch(_In_ const std::locale& locale, _In_z_ const T* str, ...) :
    - +
    1145 basic_string_branch(_In_ const std::locale& locale, _In_z_ const T* str, ...) :
    +
    1147 {
    -
    1148 va_list params;
    -
    1149 va_start(params, str);
    -
    1150 build(str, params);
    -
    1151 va_end(params);
    +
    1148 va_list params;
    +
    1149 va_start(params, str);
    +
    1150 build(str, params);
    +
    1151 va_end(params);
    1152 }
    1153
    1154 protected:
    -
    1155 void build(_In_reads_(count) const T* str_z, _In_ size_t count)
    +
    1155 void build(_In_reads_(count) const T* str_z, _In_ size_t count)
    1156 {
    -
    1157 _Assume_(str_z || !count);
    -
    1158 if (count) {
    -
    1159 size_t offset, n;
    +
    1157 _Assume_(str_z || !count);
    +
    1158 if (count) {
    +
    1159 size_t offset, n;
    1160 for (
    -
    1161 offset = n = 0;
    -
    1162 offset < count && str_z[offset];
    -
    1163 offset += stdex::strnlen(str_z + offset, count - offset) + 1, ++n);
    -
    1164 this->m_collection.reserve(n);
    +
    1161 offset = n = 0;
    +
    1162 offset < count && str_z[offset];
    +
    1163 offset += stdex::strnlen(str_z + offset, count - offset) + 1, ++n);
    +
    1164 this->m_collection.reserve(n);
    1165 for (
    -
    1166 offset = 0;
    -
    1167 offset < count && str_z[offset];
    -
    1168 offset += stdex::strnlen(str_z + offset, count - offset) + 1)
    -
    1169 this->m_collection.push_back(std::move(std::make_shared<T_parser>(str_z + offset, count - offset, this->m_locale)));
    +
    1166 offset = 0;
    +
    1167 offset < count && str_z[offset];
    +
    1168 offset += stdex::strnlen(str_z + offset, count - offset) + 1)
    +
    1169 this->m_collection.push_back(std::move(std::make_shared<T_parser>(str_z + offset, count - offset, this->m_locale)));
    1170 }
    1171 }
    1172
    -
    1173 void build(_In_z_ const T* str, _In_ va_list params)
    +
    1173 void build(_In_z_ const T* str, _In_ va_list params)
    1174 {
    1175 const T* p;
    1176 for (
    -
    1177 this->m_collection.push_back(std::move(std::make_shared<T_parser>(str, SIZE_MAX, this->m_locale)));
    -
    1178 (p = va_arg(params, const T*)) != nullptr;
    -
    1179 this->m_collection.push_back(std::move(std::make_shared<T_parser>(p, SIZE_MAX, this->m_locale))));
    +
    1177 this->m_collection.push_back(std::move(std::make_shared<T_parser>(str, SIZE_MAX, this->m_locale)));
    +
    1178 (p = va_arg(params, const T*)) != nullptr;
    +
    1179 this->m_collection.push_back(std::move(std::make_shared<T_parser>(p, SIZE_MAX, this->m_locale))));
    1180 }
    1181 };
    1182
    - - + +
    1185#ifdef _UNICODE
    - +
    1187#else
    - +
    1189#endif
    - +
    1191
    1195 template <class T>
    @@ -1255,29 +1263,29 @@ $(function() { codefold.init(0); });
    1197 {
    1198 public:
    -
    1200 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    -
    1201 _In_ size_t count = 0,
    -
    1202 _In_ const std::locale& locale = std::locale()) :
    - +
    1200 _In_count_(count) const std::shared_ptr<basic_parser<T>>* el = nullptr,
    +
    1201 _In_ size_t count = 0,
    +
    1202 _In_ const std::locale& locale = std::locale()) :
    +
    1203 parser_collection<T>(el, count, locale)
    1204 {}
    1205
    -
    1207 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    -
    1208 _In_ const std::locale& locale = std::locale()) :
    - +
    1207 _Inout_ std::vector<std::shared_ptr<basic_parser<T>>>&& collection,
    +
    1208 _In_ const std::locale& locale = std::locale()) :
    +
    1209 parser_collection<T>(std::move(collection), locale)
    1210 {}
    1211
    1212 protected:
    1213 virtual bool do_match(
    1214 _In_reads_or_z_opt_(end) const T* text,
    -
    1215 _In_ size_t start = 0,
    -
    1216 _In_ size_t end = SIZE_MAX,
    -
    1217 _In_ int flags = match_default)
    +
    1215 _In_ size_t start = 0,
    +
    1216 _In_ size_t end = SIZE_MAX,
    +
    1217 _In_ int flags = match_default)
    1218 {
    1219 _Assume_(text || start >= end);
    -
    1220 for (auto& el : this->m_collection)
    -
    1221 el->invalidate();
    -
    1222 if (match_recursively(text, start, end, flags)) {
    +
    1220 for (auto& el : this->m_collection)
    +
    1221 el->invalidate();
    +
    1222 if (match_recursively(text, start, end, flags)) {
    1223 this->interval.start = start;
    1224 return true;
    1225 }
    @@ -1287,26 +1295,26 @@ $(function() { codefold.init(0); });
    1229
    1230 bool match_recursively(
    1231 _In_reads_or_z_opt_(end) const T* text,
    -
    1232 _In_ size_t start = 0,
    -
    1233 _In_ size_t end = SIZE_MAX,
    -
    1234 _In_ int flags = match_default)
    +
    1232 _In_ size_t start = 0,
    +
    1233 _In_ size_t end = SIZE_MAX,
    +
    1234 _In_ int flags = match_default)
    1235 {
    -
    1236 bool all_matched = true;
    -
    1237 for (auto& el : this->m_collection) {
    -
    1238 if (!el->interval) {
    +
    1236 bool all_matched = true;
    +
    1237 for (auto& el : this->m_collection) {
    +
    1238 if (!el->interval) {
    1239 // Element was not matched in permutatuion yet.
    -
    1240 all_matched = false;
    -
    1241 if (el->match(text, start, end, flags)) {
    +
    1240 all_matched = false;
    +
    1241 if (el->match(text, start, end, flags)) {
    1242 // Element matched for the first time.
    -
    1243 if (match_recursively(text, el->interval.end, end, flags)) {
    +
    1243 if (match_recursively(text, el->interval.end, end, flags)) {
    1244 // Rest of the elements matched too.
    1245 return true;
    1246 }
    -
    1247 el->invalidate();
    +
    1247 el->invalidate();
    1248 }
    1249 }
    1250 }
    -
    1251 if (all_matched) {
    +
    1251 if (all_matched) {
    1252 this->interval.end = start;
    1253 return true;
    1254 }
    @@ -1315,22 +1323,22 @@ $(function() { codefold.init(0); });
    1257 };
    1258
    - - + +
    1261#ifdef _UNICODE
    -
    1262 using tpermutation = wpermutation;
    +
    1262 using tpermutation = wpermutation;
    1263#else
    -
    1264 using tpermutation = permutation;
    +
    1264 using tpermutation = permutation;
    1265#endif
    - +
    1267
    1271 template <class T>
    1272 class basic_integer : public basic_parser<T>
    1273 {
    1274 public:
    -
    1275 basic_integer(_In_ const std::locale& locale = std::locale()) :
    - +
    1275 basic_integer(_In_ const std::locale& locale = std::locale()) :
    +
    1277 value(0)
    1278 {}
    1279
    @@ -1351,54 +1359,54 @@ $(function() { codefold.init(0); });
    1295 {
    1296 public:
    -
    1298 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    -
    1299 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    -
    1300 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    -
    1301 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    -
    1302 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    -
    1303 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    -
    1304 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    -
    1305 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    -
    1306 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    -
    1307 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    -
    1308 _In_ const std::locale& locale = std::locale()) :
    - -
    1310 m_digit_0(digit_0),
    -
    1311 m_digit_1(digit_1),
    -
    1312 m_digit_2(digit_2),
    -
    1313 m_digit_3(digit_3),
    -
    1314 m_digit_4(digit_4),
    -
    1315 m_digit_5(digit_5),
    -
    1316 m_digit_6(digit_6),
    -
    1317 m_digit_7(digit_7),
    -
    1318 m_digit_8(digit_8),
    -
    1319 m_digit_9(digit_9)
    +
    1298 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    +
    1299 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    +
    1300 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    +
    1301 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    +
    1302 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    +
    1303 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    +
    1304 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    +
    1305 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    +
    1306 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    +
    1307 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    +
    1308 _In_ const std::locale& locale = std::locale()) :
    + +
    1310 m_digit_0(digit_0),
    +
    1311 m_digit_1(digit_1),
    +
    1312 m_digit_2(digit_2),
    +
    1313 m_digit_3(digit_3),
    +
    1314 m_digit_4(digit_4),
    +
    1315 m_digit_5(digit_5),
    +
    1316 m_digit_6(digit_6),
    +
    1317 m_digit_7(digit_7),
    +
    1318 m_digit_8(digit_8),
    +
    1319 m_digit_9(digit_9)
    1320 {}
    1321
    1322 protected:
    1323 virtual bool do_match(
    1324 _In_reads_or_z_opt_(end) const T* text,
    -
    1325 _In_ size_t start = 0,
    -
    1326 _In_ size_t end = SIZE_MAX,
    -
    1327 _In_ int flags = match_default)
    +
    1325 _In_ size_t start = 0,
    +
    1326 _In_ size_t end = SIZE_MAX,
    +
    1327 _In_ int flags = match_default)
    1328 {
    1329 _Assume_(text || start >= end);
    -
    1330 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end];) {
    -
    1331 size_t dig;
    -
    1332 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; this->interval.end = m_digit_0->interval.end; }
    -
    1333 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; this->interval.end = m_digit_1->interval.end; }
    -
    1334 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; this->interval.end = m_digit_2->interval.end; }
    -
    1335 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; this->interval.end = m_digit_3->interval.end; }
    -
    1336 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; this->interval.end = m_digit_4->interval.end; }
    -
    1337 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; this->interval.end = m_digit_5->interval.end; }
    -
    1338 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; this->interval.end = m_digit_6->interval.end; }
    -
    1339 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; this->interval.end = m_digit_7->interval.end; }
    -
    1340 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; this->interval.end = m_digit_8->interval.end; }
    -
    1341 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; this->interval.end = m_digit_9->interval.end; }
    +
    1330 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end];) {
    +
    1331 size_t dig;
    +
    1332 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; this->interval.end = m_digit_0->interval.end; }
    +
    1333 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; this->interval.end = m_digit_1->interval.end; }
    +
    1334 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; this->interval.end = m_digit_2->interval.end; }
    +
    1335 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; this->interval.end = m_digit_3->interval.end; }
    +
    1336 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; this->interval.end = m_digit_4->interval.end; }
    +
    1337 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; this->interval.end = m_digit_5->interval.end; }
    +
    1338 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; this->interval.end = m_digit_6->interval.end; }
    +
    1339 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; this->interval.end = m_digit_7->interval.end; }
    +
    1340 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; this->interval.end = m_digit_8->interval.end; }
    +
    1341 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; this->interval.end = m_digit_9->interval.end; }
    1342 else break;
    1343 this->value = this->value * 10 + dig;
    1344 }
    - +
    1345 if (start < this->interval.end) {
    1346 this->interval.start = start;
    1347 return true;
    1348 }
    @@ -1420,14 +1428,14 @@ $(function() { codefold.init(0); });
    1364 };
    1365
    - - + +
    1368#ifdef _UNICODE
    -
    1369 using tinteger10 = winteger10;
    +
    1369 using tinteger10 = winteger10;
    1370#else
    -
    1371 using tinteger10 = integer10;
    +
    1371 using tinteger10 = integer10;
    1372#endif
    - +
    1374
    1378 template <class T>
    @@ -1435,13 +1443,13 @@ $(function() { codefold.init(0); });
    1380 {
    1381 public:
    -
    1383 _In_ const std::shared_ptr<basic_integer10<T>>& digits,
    -
    1384 _In_ const std::shared_ptr<basic_set<T>>& separator,
    -
    1385 _In_ const std::locale& locale = std::locale()) :
    - +
    1383 _In_ const std::shared_ptr<basic_integer10<T>>& digits,
    +
    1384 _In_ const std::shared_ptr<basic_set<T>>& separator,
    +
    1385 _In_ const std::locale& locale = std::locale()) :
    +
    1387 digit_count(0),
    1388 has_separators(false),
    -
    1389 m_digits(digits),
    +
    1389 m_digits(digits),
    1390 m_separator(separator)
    1391 {}
    1392
    @@ -1458,12 +1466,12 @@ $(function() { codefold.init(0); });
    1403 protected:
    1404 virtual bool do_match(
    1405 _In_reads_or_z_opt_(end) const T* text,
    -
    1406 _In_ size_t start = 0,
    -
    1407 _In_ size_t end = SIZE_MAX,
    -
    1408 _In_ int flags = match_default)
    +
    1406 _In_ size_t start = 0,
    +
    1407 _In_ size_t end = SIZE_MAX,
    +
    1408 _In_ int flags = match_default)
    1409 {
    1410 _Assume_(text || start >= end);
    -
    1411 if (m_digits->match(text, start, end, flags)) {
    +
    1411 if (m_digits->match(text, start, end, flags)) {
    1412 // Leading part match.
    1413 this->value = m_digits->value;
    1414 digit_count = m_digits->interval.size();
    @@ -1472,10 +1480,10 @@ $(function() { codefold.init(0); });
    1417 this->interval.end = m_digits->interval.end;
    1418 if (m_digits->interval.size() <= 3) {
    1419 // Maybe separated with thousand separators?
    -
    1420 size_t hit_offset = SIZE_MAX;
    -
    1421 while (m_separator->match(text, this->interval.end, end, flags) &&
    -
    1422 (hit_offset == SIZE_MAX || hit_offset == m_separator->hit_offset) && // All separators must be the same, no mixing.
    -
    1423 m_digits->match(text, m_separator->interval.end, end, flags) &&
    +
    1420 size_t hit_offset = SIZE_MAX;
    +
    1421 while (m_separator->match(text, this->interval.end, end, flags) &&
    +
    1422 (hit_offset == SIZE_MAX || hit_offset == m_separator->hit_offset) && // All separators must be the same, no mixing.
    +
    1423 m_digits->match(text, m_separator->interval.end, end, flags) &&
    1424 m_digits->interval.size() == 3)
    1425 {
    1426 // Thousand separator and three-digit integer followed.
    @@ -1514,72 +1522,72 @@ $(function() { codefold.init(0); });
    1460 {
    1461 public:
    -
    1463 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    -
    1464 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    -
    1465 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    -
    1466 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    -
    1467 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    -
    1468 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    -
    1469 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    -
    1470 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    -
    1471 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    -
    1472 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    -
    1473 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    -
    1474 _In_ const std::shared_ptr<basic_parser<T>>& digit_11,
    -
    1475 _In_ const std::shared_ptr<basic_parser<T>>& digit_12,
    -
    1476 _In_ const std::shared_ptr<basic_parser<T>>& digit_13,
    -
    1477 _In_ const std::shared_ptr<basic_parser<T>>& digit_14,
    -
    1478 _In_ const std::shared_ptr<basic_parser<T>>& digit_15,
    -
    1479 _In_ const std::locale& locale = std::locale()) :
    - -
    1481 m_digit_0(digit_0),
    -
    1482 m_digit_1(digit_1),
    -
    1483 m_digit_2(digit_2),
    -
    1484 m_digit_3(digit_3),
    -
    1485 m_digit_4(digit_4),
    -
    1486 m_digit_5(digit_5),
    -
    1487 m_digit_6(digit_6),
    -
    1488 m_digit_7(digit_7),
    -
    1489 m_digit_8(digit_8),
    -
    1490 m_digit_9(digit_9),
    -
    1491 m_digit_10(digit_10),
    -
    1492 m_digit_11(digit_11),
    -
    1493 m_digit_12(digit_12),
    -
    1494 m_digit_13(digit_13),
    -
    1495 m_digit_14(digit_14),
    -
    1496 m_digit_15(digit_15)
    +
    1463 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    +
    1464 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    +
    1465 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    +
    1466 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    +
    1467 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    +
    1468 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    +
    1469 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    +
    1470 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    +
    1471 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    +
    1472 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    +
    1473 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    +
    1474 _In_ const std::shared_ptr<basic_parser<T>>& digit_11,
    +
    1475 _In_ const std::shared_ptr<basic_parser<T>>& digit_12,
    +
    1476 _In_ const std::shared_ptr<basic_parser<T>>& digit_13,
    +
    1477 _In_ const std::shared_ptr<basic_parser<T>>& digit_14,
    +
    1478 _In_ const std::shared_ptr<basic_parser<T>>& digit_15,
    +
    1479 _In_ const std::locale& locale = std::locale()) :
    + +
    1481 m_digit_0(digit_0),
    +
    1482 m_digit_1(digit_1),
    +
    1483 m_digit_2(digit_2),
    +
    1484 m_digit_3(digit_3),
    +
    1485 m_digit_4(digit_4),
    +
    1486 m_digit_5(digit_5),
    +
    1487 m_digit_6(digit_6),
    +
    1488 m_digit_7(digit_7),
    +
    1489 m_digit_8(digit_8),
    +
    1490 m_digit_9(digit_9),
    +
    1491 m_digit_10(digit_10),
    +
    1492 m_digit_11(digit_11),
    +
    1493 m_digit_12(digit_12),
    +
    1494 m_digit_13(digit_13),
    +
    1495 m_digit_14(digit_14),
    +
    1496 m_digit_15(digit_15)
    1497 {}
    1498
    1499 protected:
    1500 virtual bool do_match(
    1501 _In_reads_or_z_opt_(end) const T* text,
    -
    1502 _In_ size_t start = 0,
    -
    1503 _In_ size_t end = SIZE_MAX,
    -
    1504 _In_ int flags = match_default)
    +
    1502 _In_ size_t start = 0,
    +
    1503 _In_ size_t end = SIZE_MAX,
    +
    1504 _In_ int flags = match_default)
    1505 {
    1506 _Assume_(text || start >= end);
    -
    1507 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end];) {
    -
    1508 size_t dig;
    -
    1509 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; this->interval.end = m_digit_0->interval.end; }
    -
    1510 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; this->interval.end = m_digit_1->interval.end; }
    -
    1511 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; this->interval.end = m_digit_2->interval.end; }
    -
    1512 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; this->interval.end = m_digit_3->interval.end; }
    -
    1513 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; this->interval.end = m_digit_4->interval.end; }
    -
    1514 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; this->interval.end = m_digit_5->interval.end; }
    -
    1515 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; this->interval.end = m_digit_6->interval.end; }
    -
    1516 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; this->interval.end = m_digit_7->interval.end; }
    -
    1517 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; this->interval.end = m_digit_8->interval.end; }
    -
    1518 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; this->interval.end = m_digit_9->interval.end; }
    -
    1519 else if (m_digit_10->match(text, this->interval.end, end, flags)) { dig = 10; this->interval.end = m_digit_10->interval.end; }
    -
    1520 else if (m_digit_11->match(text, this->interval.end, end, flags)) { dig = 11; this->interval.end = m_digit_11->interval.end; }
    -
    1521 else if (m_digit_12->match(text, this->interval.end, end, flags)) { dig = 12; this->interval.end = m_digit_12->interval.end; }
    -
    1522 else if (m_digit_13->match(text, this->interval.end, end, flags)) { dig = 13; this->interval.end = m_digit_13->interval.end; }
    -
    1523 else if (m_digit_14->match(text, this->interval.end, end, flags)) { dig = 14; this->interval.end = m_digit_14->interval.end; }
    -
    1524 else if (m_digit_15->match(text, this->interval.end, end, flags)) { dig = 15; this->interval.end = m_digit_15->interval.end; }
    +
    1507 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end];) {
    +
    1508 size_t dig;
    +
    1509 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; this->interval.end = m_digit_0->interval.end; }
    +
    1510 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; this->interval.end = m_digit_1->interval.end; }
    +
    1511 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; this->interval.end = m_digit_2->interval.end; }
    +
    1512 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; this->interval.end = m_digit_3->interval.end; }
    +
    1513 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; this->interval.end = m_digit_4->interval.end; }
    +
    1514 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; this->interval.end = m_digit_5->interval.end; }
    +
    1515 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; this->interval.end = m_digit_6->interval.end; }
    +
    1516 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; this->interval.end = m_digit_7->interval.end; }
    +
    1517 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; this->interval.end = m_digit_8->interval.end; }
    +
    1518 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; this->interval.end = m_digit_9->interval.end; }
    +
    1519 else if (m_digit_10->match(text, this->interval.end, end, flags)) { dig = 10; this->interval.end = m_digit_10->interval.end; }
    +
    1520 else if (m_digit_11->match(text, this->interval.end, end, flags)) { dig = 11; this->interval.end = m_digit_11->interval.end; }
    +
    1521 else if (m_digit_12->match(text, this->interval.end, end, flags)) { dig = 12; this->interval.end = m_digit_12->interval.end; }
    +
    1522 else if (m_digit_13->match(text, this->interval.end, end, flags)) { dig = 13; this->interval.end = m_digit_13->interval.end; }
    +
    1523 else if (m_digit_14->match(text, this->interval.end, end, flags)) { dig = 14; this->interval.end = m_digit_14->interval.end; }
    +
    1524 else if (m_digit_15->match(text, this->interval.end, end, flags)) { dig = 15; this->interval.end = m_digit_15->interval.end; }
    1525 else break;
    1526 this->value = this->value * 16 + dig;
    1527 }
    - +
    1528 if (start < this->interval.end) {
    1529 this->interval.start = start;
    1530 return true;
    1531 }
    @@ -1607,14 +1615,14 @@ $(function() { codefold.init(0); });
    1553 };
    1554
    - - + +
    1557#ifdef _UNICODE
    -
    1558 using tinteger16 = winteger16;
    +
    1558 using tinteger16 = winteger16;
    1559#else
    -
    1560 using tinteger16 = integer16;
    +
    1560 using tinteger16 = integer16;
    1561#endif
    - +
    1563
    1567 template <class T>
    @@ -1622,78 +1630,78 @@ $(function() { codefold.init(0); });
    1569 {
    1570 public:
    -
    1572 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    -
    1573 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    -
    1574 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    -
    1575 _In_ const std::shared_ptr<basic_parser<T>>& digit_50,
    -
    1576 _In_ const std::shared_ptr<basic_parser<T>>& digit_100,
    -
    1577 _In_ const std::shared_ptr<basic_parser<T>>& digit_500,
    -
    1578 _In_ const std::shared_ptr<basic_parser<T>>& digit_1000,
    -
    1579 _In_ const std::shared_ptr<basic_parser<T>>& digit_5000,
    -
    1580 _In_ const std::shared_ptr<basic_parser<T>>& digit_10000,
    -
    1581 _In_ const std::locale& locale = std::locale()) :
    - -
    1583 m_digit_1(digit_1),
    -
    1584 m_digit_5(digit_5),
    -
    1585 m_digit_10(digit_10),
    -
    1586 m_digit_50(digit_50),
    -
    1587 m_digit_100(digit_100),
    -
    1588 m_digit_500(digit_500),
    -
    1589 m_digit_1000(digit_1000),
    -
    1590 m_digit_5000(digit_5000),
    -
    1591 m_digit_10000(digit_10000)
    +
    1572 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    +
    1573 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    +
    1574 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    +
    1575 _In_ const std::shared_ptr<basic_parser<T>>& digit_50,
    +
    1576 _In_ const std::shared_ptr<basic_parser<T>>& digit_100,
    +
    1577 _In_ const std::shared_ptr<basic_parser<T>>& digit_500,
    +
    1578 _In_ const std::shared_ptr<basic_parser<T>>& digit_1000,
    +
    1579 _In_ const std::shared_ptr<basic_parser<T>>& digit_5000,
    +
    1580 _In_ const std::shared_ptr<basic_parser<T>>& digit_10000,
    +
    1581 _In_ const std::locale& locale = std::locale()) :
    + +
    1583 m_digit_1(digit_1),
    +
    1584 m_digit_5(digit_5),
    +
    1585 m_digit_10(digit_10),
    +
    1586 m_digit_50(digit_50),
    +
    1587 m_digit_100(digit_100),
    +
    1588 m_digit_500(digit_500),
    +
    1589 m_digit_1000(digit_1000),
    +
    1590 m_digit_5000(digit_5000),
    +
    1591 m_digit_10000(digit_10000)
    1592 {}
    1593
    1594 protected:
    1595 virtual bool do_match(
    1596 _In_reads_or_z_opt_(end) const T* text,
    -
    1597 _In_ size_t start = 0,
    -
    1598 _In_ size_t end = SIZE_MAX,
    -
    1599 _In_ int flags = match_default)
    +
    1597 _In_ size_t start = 0,
    +
    1598 _In_ size_t end = SIZE_MAX,
    +
    1599 _In_ int flags = match_default)
    1600 {
    1601 _Assume_(text || start >= end);
    1602 size_t
    - -
    1604 end2;
    +
    1603 dig[5] = { SIZE_MAX, SIZE_MAX, SIZE_MAX, SIZE_MAX, SIZE_MAX },
    +
    1604 end2;
    1605
    -
    1606 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end]; dig[3] = dig[2], dig[2] = dig[1], dig[1] = dig[0], this->interval.end = end2) {
    -
    1607 if (m_digit_1 && m_digit_1->match(text, this->interval.end, end, flags)) { dig[0] = 1; end2 = m_digit_1->interval.end; }
    -
    1608 else if (m_digit_5 && m_digit_5->match(text, this->interval.end, end, flags)) { dig[0] = 5; end2 = m_digit_5->interval.end; }
    -
    1609 else if (m_digit_10 && m_digit_10->match(text, this->interval.end, end, flags)) { dig[0] = 10; end2 = m_digit_10->interval.end; }
    -
    1610 else if (m_digit_50 && m_digit_50->match(text, this->interval.end, end, flags)) { dig[0] = 50; end2 = m_digit_50->interval.end; }
    -
    1611 else if (m_digit_100 && m_digit_100->match(text, this->interval.end, end, flags)) { dig[0] = 100; end2 = m_digit_100->interval.end; }
    -
    1612 else if (m_digit_500 && m_digit_500->match(text, this->interval.end, end, flags)) { dig[0] = 500; end2 = m_digit_500->interval.end; }
    -
    1613 else if (m_digit_1000 && m_digit_1000->match(text, this->interval.end, end, flags)) { dig[0] = 1000; end2 = m_digit_1000->interval.end; }
    -
    1614 else if (m_digit_5000 && m_digit_5000->match(text, this->interval.end, end, flags)) { dig[0] = 5000; end2 = m_digit_5000->interval.end; }
    -
    1615 else if (m_digit_10000 && m_digit_10000->match(text, this->interval.end, end, flags)) { dig[0] = 10000; end2 = m_digit_10000->interval.end; }
    +
    1606 for (this->interval.end = start, this->value = 0; this->interval.end < end && text[this->interval.end]; dig[3] = dig[2], dig[2] = dig[1], dig[1] = dig[0], this->interval.end = end2) {
    +
    1607 if (m_digit_1 && m_digit_1->match(text, this->interval.end, end, flags)) { dig[0] = 1; end2 = m_digit_1->interval.end; }
    +
    1608 else if (m_digit_5 && m_digit_5->match(text, this->interval.end, end, flags)) { dig[0] = 5; end2 = m_digit_5->interval.end; }
    +
    1609 else if (m_digit_10 && m_digit_10->match(text, this->interval.end, end, flags)) { dig[0] = 10; end2 = m_digit_10->interval.end; }
    +
    1610 else if (m_digit_50 && m_digit_50->match(text, this->interval.end, end, flags)) { dig[0] = 50; end2 = m_digit_50->interval.end; }
    +
    1611 else if (m_digit_100 && m_digit_100->match(text, this->interval.end, end, flags)) { dig[0] = 100; end2 = m_digit_100->interval.end; }
    +
    1612 else if (m_digit_500 && m_digit_500->match(text, this->interval.end, end, flags)) { dig[0] = 500; end2 = m_digit_500->interval.end; }
    +
    1613 else if (m_digit_1000 && m_digit_1000->match(text, this->interval.end, end, flags)) { dig[0] = 1000; end2 = m_digit_1000->interval.end; }
    +
    1614 else if (m_digit_5000 && m_digit_5000->match(text, this->interval.end, end, flags)) { dig[0] = 5000; end2 = m_digit_5000->interval.end; }
    +
    1615 else if (m_digit_10000 && m_digit_10000->match(text, this->interval.end, end, flags)) { dig[0] = 10000; end2 = m_digit_10000->interval.end; }
    1616 else break;
    1617
    1618 // Store first digit.
    -
    1619 if (dig[4] == SIZE_MAX) dig[4] = dig[0];
    +
    1619 if (dig[4] == SIZE_MAX) dig[4] = dig[0];
    1620
    -
    1621 if (dig[3] == dig[2] && dig[2] == dig[1] && dig[1] == dig[0] && dig[0] != dig[4]) {
    +
    1621 if (dig[3] == dig[2] && dig[2] == dig[1] && dig[1] == dig[0] && dig[0] != dig[4]) {
    1622 // Same digit repeated four times. No-go, unless first digit. E.g. XIIII vs. XIV. MMMMMCD allowed, IIII also...
    1623 break;
    1624 }
    -
    1625 if (dig[0] <= dig[1]) {
    +
    1625 if (dig[0] <= dig[1]) {
    1626 // Digit is less or equal previous one: add.
    1627 this->value += dig[0];
    1628 }
    1629 else if (
    -
    1630 (dig[1] == 1 && (dig[0] == 5 || dig[0] == 10)) ||
    -
    1631 (dig[1] == 10 && (dig[0] == 50 || dig[0] == 100)) ||
    -
    1632 (dig[1] == 100 && (dig[0] == 500 || dig[0] == 1000)) ||
    -
    1633 (dig[1] == 1000 && (dig[0] == 5000 || dig[0] == 10000)))
    +
    1630 (dig[1] == 1 && (dig[0] == 5 || dig[0] == 10)) ||
    +
    1631 (dig[1] == 10 && (dig[0] == 50 || dig[0] == 100)) ||
    +
    1632 (dig[1] == 100 && (dig[0] == 500 || dig[0] == 1000)) ||
    +
    1633 (dig[1] == 1000 && (dig[0] == 5000 || dig[0] == 10000)))
    1634 {
    1635 // Digit is up to two orders bigger than previous one: subtract. But...
    -
    1636 if (dig[2] < dig[0]) {
    +
    1636 if (dig[2] < dig[0]) {
    1637 // Digit is also bigger than pre-previous one. E.g. VIX (V < X => invalid)
    1638 break;
    1639 }
    1640 this->value -= dig[1]; // Cancel addition in the previous step.
    -
    1641 dig[0] -= dig[1]; // Combine last two digits.
    -
    1642 dig[1] = dig[2]; // The true previous digit is now pre-previous one. :)
    -
    1643 dig[2] = dig[3]; // The true pre-previous digit is now pre-pre-previous one. :)
    +
    1641 dig[0] -= dig[1]; // Combine last two digits.
    +
    1642 dig[1] = dig[2]; // The true previous digit is now pre-previous one. :)
    +
    1643 dig[2] = dig[3]; // The true pre-previous digit is now pre-pre-previous one. :)
    1644 this->value += dig[0]; // Add combined value.
    1645 }
    1646 else {
    @@ -1722,14 +1730,14 @@ $(function() { codefold.init(0); });
    1669 };
    1670
    - - + +
    1673#ifdef _UNICODE
    - +
    1675#else
    - +
    1677#endif
    - +
    1679
    1683 template <class T>
    @@ -1737,14 +1745,14 @@ $(function() { codefold.init(0); });
    1685 {
    1686 public:
    -
    1688 _In_ const std::shared_ptr<basic_parser<T>>& _numerator,
    -
    1689 _In_ const std::shared_ptr<basic_parser<T>>& _fraction_line,
    -
    1690 _In_ const std::shared_ptr<basic_parser<T>>& _denominator,
    -
    1691 _In_ const std::locale& locale = std::locale()) :
    - -
    1693 numerator(_numerator),
    -
    1694 fraction_line(_fraction_line),
    -
    1695 denominator(_denominator)
    +
    1688 _In_ const std::shared_ptr<basic_parser<T>>& _numerator,
    +
    1689 _In_ const std::shared_ptr<basic_parser<T>>& _fraction_line,
    +
    1690 _In_ const std::shared_ptr<basic_parser<T>>& _denominator,
    +
    1691 _In_ const std::locale& locale = std::locale()) :
    + +
    1693 numerator(_numerator),
    +
    1694 fraction_line(_fraction_line),
    +
    1695 denominator(_denominator)
    1696 {}
    1697
    1698 virtual void invalidate()
    @@ -1762,14 +1770,14 @@ $(function() { codefold.init(0); });
    1710 protected:
    1711 virtual bool do_match(
    1712 _In_reads_or_z_opt_(end) const T* text,
    -
    1713 _In_ size_t start = 0,
    -
    1714 _In_ size_t end = SIZE_MAX,
    -
    1715 _In_ int flags = match_default)
    +
    1713 _In_ size_t start = 0,
    +
    1714 _In_ size_t end = SIZE_MAX,
    +
    1715 _In_ int flags = match_default)
    1716 {
    1717 _Assume_(text || start >= end);
    -
    1718 if (numerator->match(text, start, end, flags) &&
    -
    1719 fraction_line->match(text, numerator->interval.end, end, flags) &&
    -
    1720 denominator->match(text, fraction_line->interval.end, end, flags))
    +
    1718 if (numerator->match(text, start, end, flags) &&
    +
    1719 fraction_line->match(text, numerator->interval.end, end, flags) &&
    +
    1720 denominator->match(text, fraction_line->interval.end, end, flags))
    1721 {
    1722 this->interval.start = start;
    1723 this->interval.end = denominator->interval.end;
    @@ -1784,14 +1792,14 @@ $(function() { codefold.init(0); });
    1732 };
    1733
    - - + +
    1736#ifdef _UNICODE
    -
    1737 using tfraction = wfraction;
    +
    1737 using tfraction = wfraction;
    1738#else
    -
    1739 using tfraction = fraction;
    +
    1739 using tfraction = fraction;
    1740#endif
    - +
    1742
    1746 template <class T>
    @@ -1799,15 +1807,15 @@ $(function() { codefold.init(0); });
    1748 {
    1749 public:
    -
    1751 _In_ const std::shared_ptr<basic_parser<T>>& _home,
    -
    1752 _In_ const std::shared_ptr<basic_parser<T>>& _separator,
    -
    1753 _In_ const std::shared_ptr<basic_parser<T>>& _guest,
    -
    1754 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    1755 _In_ const std::locale& locale = std::locale()) :
    - -
    1757 home(_home),
    -
    1758 separator(_separator),
    -
    1759 guest(_guest),
    +
    1751 _In_ const std::shared_ptr<basic_parser<T>>& _home,
    +
    1752 _In_ const std::shared_ptr<basic_parser<T>>& _separator,
    +
    1753 _In_ const std::shared_ptr<basic_parser<T>>& _guest,
    +
    1754 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    1755 _In_ const std::locale& locale = std::locale()) :
    + +
    1757 home(_home),
    +
    1758 separator(_separator),
    +
    1759 guest(_guest),
    1760 m_space(space)
    1761 {}
    1762
    @@ -1826,30 +1834,30 @@ $(function() { codefold.init(0); });
    1775 protected:
    1776 virtual bool do_match(
    1777 _In_reads_or_z_opt_(end) const T* text,
    -
    1778 _In_ size_t start = 0,
    -
    1779 _In_ size_t end = SIZE_MAX,
    -
    1780 _In_ int flags = match_default)
    +
    1778 _In_ size_t start = 0,
    +
    1779 _In_ size_t end = SIZE_MAX,
    +
    1780 _In_ int flags = match_default)
    1781 {
    1782 _Assume_(text || start >= end);
    1783 this->interval.end = start;
    1784
    -
    1785 const int space_match_flags = flags & ~match_multiline; // Spaces in score must never be broken in new line.
    +
    1785 const int space_match_flags = flags & ~match_multiline; // Spaces in score must never be broken in new line.
    1786
    -
    1787 if (home->match(text, this->interval.end, end, flags))
    +
    1787 if (home->match(text, this->interval.end, end, flags))
    1788 this->interval.end = home->interval.end;
    1789 else
    1790 goto end;
    1791
    -
    1792 for (; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    1792 for (; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    1793
    -
    1794 if (separator->match(text, this->interval.end, end, flags))
    +
    1794 if (separator->match(text, this->interval.end, end, flags))
    1795 this->interval.end = separator->interval.end;
    1796 else
    1797 goto end;
    1798
    -
    1799 for (; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    1799 for (; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    1800
    -
    1801 if (guest->match(text, this->interval.end, end, flags))
    +
    1801 if (guest->match(text, this->interval.end, end, flags))
    1802 this->interval.end = guest->interval.end;
    1803 else
    1804 goto end;
    @@ -1869,14 +1877,14 @@ $(function() { codefold.init(0); });
    1818 };
    1819
    -
    1820 using score = basic_score<char>;
    - +
    1820 using score = basic_score<char>;
    +
    1822#ifdef _UNICODE
    -
    1823 using tscore = wscore;
    +
    1823 using tscore = wscore;
    1824#else
    -
    1825 using tscore = score;
    +
    1825 using tscore = score;
    1826#endif
    - +
    1828
    1832 template <class T>
    @@ -1884,16 +1892,16 @@ $(function() { codefold.init(0); });
    1834 {
    1835 public:
    -
    1837 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    -
    1838 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    -
    1839 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    -
    1840 _In_ const std::shared_ptr<basic_parser<T>>& _number,
    -
    1841 _In_ const std::locale& locale = std::locale()) :
    - - - - - +
    1837 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    +
    1838 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    +
    1839 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    +
    1840 _In_ const std::shared_ptr<basic_parser<T>>& _number,
    +
    1841 _In_ const std::locale& locale = std::locale()) :
    + +
    1843 positive_sign(_positive_sign),
    +
    1844 negative_sign(_negative_sign),
    +
    1845 special_sign(_special_sign),
    +
    1846 number(_number)
    1847 {}
    1848
    1849 virtual void invalidate()
    @@ -1913,23 +1921,23 @@ $(function() { codefold.init(0); });
    1863 protected:
    1864 virtual bool do_match(
    1865 _In_reads_or_z_opt_(end) const T* text,
    -
    1866 _In_ size_t start = 0,
    -
    1867 _In_ size_t end = SIZE_MAX,
    -
    1868 _In_ int flags = match_default)
    +
    1866 _In_ size_t start = 0,
    +
    1867 _In_ size_t end = SIZE_MAX,
    +
    1868 _In_ int flags = match_default)
    1869 {
    1870 _Assume_(text || start >= end);
    1871 this->interval.end = start;
    -
    1872 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    +
    1872 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    1873 this->interval.end = positive_sign->interval.end;
    1874 if (negative_sign) negative_sign->invalidate();
    1875 if (special_sign) special_sign->invalidate();
    1876 }
    -
    1877 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    +
    1877 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    1878 this->interval.end = negative_sign->interval.end;
    1879 if (positive_sign) positive_sign->invalidate();
    1880 if (special_sign) special_sign->invalidate();
    1881 }
    -
    1882 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    +
    1882 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    1883 this->interval.end = special_sign->interval.end;
    1884 if (positive_sign) positive_sign->invalidate();
    1885 if (negative_sign) negative_sign->invalidate();
    @@ -1939,7 +1947,7 @@ $(function() { codefold.init(0); });
    1889 if (negative_sign) negative_sign->invalidate();
    1890 if (special_sign) special_sign->invalidate();
    1891 }
    -
    1892 if (number->match(text, this->interval.end, end, flags)) {
    +
    1892 if (number->match(text, this->interval.end, end, flags)) {
    1893 this->interval.start = start;
    1894 this->interval.end = number->interval.end;
    1895 return true;
    @@ -1969,19 +1977,19 @@ $(function() { codefold.init(0); });
    1920 {
    1921 public:
    -
    1923 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    -
    1924 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    -
    1925 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    -
    1926 _In_ const std::shared_ptr<basic_parser<T>>& _integer,
    -
    1927 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    1928 _In_ const std::shared_ptr<basic_parser<T>>& _fraction,
    -
    1929 _In_ const std::locale& locale = std::locale()) :
    - - - - - - +
    1923 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    +
    1924 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    +
    1925 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    +
    1926 _In_ const std::shared_ptr<basic_parser<T>>& _integer,
    +
    1927 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    1928 _In_ const std::shared_ptr<basic_parser<T>>& _fraction,
    +
    1929 _In_ const std::locale& locale = std::locale()) :
    + +
    1931 positive_sign(_positive_sign),
    +
    1932 negative_sign(_negative_sign),
    +
    1933 special_sign(_special_sign),
    +
    1934 integer(_integer),
    +
    1935 fraction(_fraction),
    1936 m_space(space)
    1937 {}
    1938
    @@ -1991,7 +1999,7 @@ $(function() { codefold.init(0); });
    1942 if (negative_sign) negative_sign->invalidate();
    1943 if (special_sign) special_sign->invalidate();
    1944 integer->invalidate();
    -
    1945 fraction->invalidate();
    +
    1945 fraction->invalidate();
    1947 }
    1948
    @@ -2004,24 +2012,24 @@ $(function() { codefold.init(0); });
    1955 protected:
    1956 virtual bool do_match(
    1957 _In_reads_or_z_opt_(end) const T* text,
    -
    1958 _In_ size_t start = 0,
    -
    1959 _In_ size_t end = SIZE_MAX,
    -
    1960 _In_ int flags = match_default)
    +
    1958 _In_ size_t start = 0,
    +
    1959 _In_ size_t end = SIZE_MAX,
    +
    1960 _In_ int flags = match_default)
    1961 {
    1962 _Assume_(text || start >= end);
    1963 this->interval.end = start;
    1964
    -
    1965 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    +
    1965 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    1966 this->interval.end = positive_sign->interval.end;
    1967 if (negative_sign) negative_sign->invalidate();
    1968 if (special_sign) special_sign->invalidate();
    1969 }
    -
    1970 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    +
    1970 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    1971 this->interval.end = negative_sign->interval.end;
    1972 if (positive_sign) positive_sign->invalidate();
    1973 if (special_sign) special_sign->invalidate();
    1974 }
    -
    1975 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    +
    1975 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    1976 this->interval.end = special_sign->interval.end;
    1977 if (positive_sign) positive_sign->invalidate();
    1978 if (negative_sign) negative_sign->invalidate();
    @@ -2033,33 +2041,33 @@ $(function() { codefold.init(0); });
    1984 }
    1985
    1986 // Check for <integer> <fraction>
    -
    1987 const int space_match_flags = flags & ~match_multiline; // Spaces in fractions must never be broken in new line.
    -
    1988 if (integer->match(text, this->interval.end, end, flags) &&
    -
    1989 m_space->match(text, integer->interval.end, end, space_match_flags))
    +
    1987 const int space_match_flags = flags & ~match_multiline; // Spaces in fractions must never be broken in new line.
    +
    1988 if (integer->match(text, this->interval.end, end, flags) &&
    +
    1989 m_space->match(text, integer->interval.end, end, space_match_flags))
    1990 {
    -
    1991 for (this->interval.end = m_space->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    1992 if (fraction->match(text, this->interval.end, end, flags)) {
    +
    1991 for (this->interval.end = m_space->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    1992 if (fraction->match(text, this->interval.end, end, flags)) {
    1993 this->interval.start = start;
    -
    1994 this->interval.end = fraction->interval.end;
    +
    1994 this->interval.end = fraction->interval.end;
    1995 return true;
    1996 }
    -
    1997 fraction->invalidate();
    +
    1997 fraction->invalidate();
    1998 this->interval.start = start;
    1999 this->interval.end = integer->interval.end;
    2000 return true;
    2001 }
    2002
    2003 // Check for <fraction>
    -
    2004 if (fraction->match(text, this->interval.end, end, flags)) {
    +
    2004 if (fraction->match(text, this->interval.end, end, flags)) {
    2005 integer->invalidate();
    2006 this->interval.start = start;
    -
    2007 this->interval.end = fraction->interval.end;
    +
    2007 this->interval.end = fraction->interval.end;
    2008 return true;
    2009 }
    2010
    2011 // Check for <integer>
    -
    2012 if (integer->match(text, this->interval.end, end, flags)) {
    -
    2013 fraction->invalidate();
    +
    2012 if (integer->match(text, this->interval.end, end, flags)) {
    +
    2013 fraction->invalidate();
    2014 this->interval.start = start;
    2015 this->interval.end = integer->interval.end;
    2016 return true;
    @@ -2069,7 +2077,7 @@ $(function() { codefold.init(0); });
    2020 if (negative_sign) negative_sign->invalidate();
    2021 if (special_sign) special_sign->invalidate();
    2022 integer->invalidate();
    -
    2023 fraction->invalidate();
    +
    2023 fraction->invalidate();
    2024 this->interval.invalidate();
    2025 return false;
    2026 }
    @@ -2093,28 +2101,28 @@ $(function() { codefold.init(0); });
    2045 {
    2046 public:
    -
    2048 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    -
    2049 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    -
    2050 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    -
    2051 _In_ const std::shared_ptr<basic_integer<T>>& _integer,
    -
    2052 _In_ const std::shared_ptr<basic_parser<T>>& _decimal_separator,
    -
    2053 _In_ const std::shared_ptr<basic_integer<T>>& _decimal,
    -
    2054 _In_ const std::shared_ptr<basic_parser<T>>& _exponent_symbol,
    -
    2055 _In_ const std::shared_ptr<basic_parser<T>>& _positive_exp_sign,
    -
    2056 _In_ const std::shared_ptr<basic_parser<T>>& _negative_exp_sign,
    -
    2057 _In_ const std::shared_ptr<basic_integer<T>>& _exponent,
    -
    2058 _In_ const std::locale& locale = std::locale()) :
    - - - - - - - - - - - +
    2048 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    +
    2049 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    +
    2050 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    +
    2051 _In_ const std::shared_ptr<basic_integer<T>>& _integer,
    +
    2052 _In_ const std::shared_ptr<basic_parser<T>>& _decimal_separator,
    +
    2053 _In_ const std::shared_ptr<basic_integer<T>>& _decimal,
    +
    2054 _In_ const std::shared_ptr<basic_parser<T>>& _exponent_symbol,
    +
    2055 _In_ const std::shared_ptr<basic_parser<T>>& _positive_exp_sign,
    +
    2056 _In_ const std::shared_ptr<basic_parser<T>>& _negative_exp_sign,
    +
    2057 _In_ const std::shared_ptr<basic_integer<T>>& _exponent,
    +
    2058 _In_ const std::locale& locale = std::locale()) :
    + +
    2060 positive_sign(_positive_sign),
    +
    2061 negative_sign(_negative_sign),
    +
    2062 special_sign(_special_sign),
    +
    2063 integer(_integer),
    +
    2064 decimal_separator(_decimal_separator),
    +
    2065 decimal(_decimal),
    +
    2066 exponent_symbol(_exponent_symbol),
    +
    2067 positive_exp_sign(_positive_exp_sign),
    +
    2068 negative_exp_sign(_negative_exp_sign),
    +
    2069 exponent(_exponent),
    2070 value(std::numeric_limits<double>::quiet_NaN())
    2071 {}
    2072
    @@ -2149,24 +2157,24 @@ $(function() { codefold.init(0); });
    2101 protected:
    2102 virtual bool do_match(
    2103 _In_reads_or_z_opt_(end) const T* text,
    -
    2104 _In_ size_t start = 0,
    -
    2105 _In_ size_t end = SIZE_MAX,
    -
    2106 _In_ int flags = match_default)
    +
    2104 _In_ size_t start = 0,
    +
    2105 _In_ size_t end = SIZE_MAX,
    +
    2106 _In_ int flags = match_default)
    2107 {
    2108 _Assume_(text || start >= end);
    2109 this->interval.end = start;
    2110
    -
    2111 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    +
    2111 if (positive_sign && positive_sign->match(text, this->interval.end, end, flags)) {
    2112 this->interval.end = positive_sign->interval.end;
    2113 if (negative_sign) negative_sign->invalidate();
    2114 if (special_sign) special_sign->invalidate();
    2115 }
    -
    2116 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    +
    2116 else if (negative_sign && negative_sign->match(text, this->interval.end, end, flags)) {
    2117 this->interval.end = negative_sign->interval.end;
    2118 if (positive_sign) positive_sign->invalidate();
    2119 if (special_sign) special_sign->invalidate();
    2120 }
    -
    2121 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    +
    2121 else if (special_sign && special_sign->match(text, this->interval.end, end, flags)) {
    2122 this->interval.end = special_sign->interval.end;
    2123 if (positive_sign) positive_sign->invalidate();
    2124 if (negative_sign) negative_sign->invalidate();
    @@ -2177,11 +2185,11 @@ $(function() { codefold.init(0); });
    2129 if (special_sign) special_sign->invalidate();
    2130 }
    2131
    -
    2132 if (integer->match(text, this->interval.end, end, flags))
    +
    2132 if (integer->match(text, this->interval.end, end, flags))
    2133 this->interval.end = integer->interval.end;
    2134
    -
    2135 if (decimal_separator->match(text, this->interval.end, end, flags) &&
    -
    2136 decimal->match(text, decimal_separator->interval.end, end, flags))
    +
    2135 if (decimal_separator->match(text, this->interval.end, end, flags) &&
    +
    2136 decimal->match(text, decimal_separator->interval.end, end, flags))
    2137 this->interval.end = decimal->interval.end;
    2138 else {
    2139 decimal_separator->invalidate();
    @@ -2206,17 +2214,17 @@ $(function() { codefold.init(0); });
    2158 return false;
    2159 }
    2160
    -
    2161 if (exponent_symbol && exponent_symbol->match(text, this->interval.end, end, flags) &&
    -
    2162 ((positive_exp_sign && positive_exp_sign->match(text, exponent_symbol->interval.end, end, flags) &&
    -
    2163 exponent && exponent->match(text, positive_exp_sign->interval.end, end, flags)) ||
    -
    2164 (exponent && exponent->match(text, exponent_symbol->interval.end, end, flags))))
    +
    2161 if (exponent_symbol && exponent_symbol->match(text, this->interval.end, end, flags) &&
    +
    2162 ((positive_exp_sign && positive_exp_sign->match(text, exponent_symbol->interval.end, end, flags) &&
    +
    2163 exponent && exponent->match(text, positive_exp_sign->interval.end, end, flags)) ||
    +
    2164 (exponent && exponent->match(text, exponent_symbol->interval.end, end, flags))))
    2165 {
    2166 this->interval.end = exponent->interval.end;
    2167 if (negative_exp_sign) negative_exp_sign->invalidate();
    2168 }
    -
    2169 else if (exponent_symbol && exponent_symbol->match(text, this->interval.end, end, flags) &&
    -
    2170 negative_exp_sign && negative_exp_sign->match(text, exponent_symbol->interval.end, end, flags) &&
    -
    2171 exponent && exponent->match(text, negative_exp_sign->interval.end, end, flags))
    +
    2169 else if (exponent_symbol && exponent_symbol->match(text, this->interval.end, end, flags) &&
    +
    2170 negative_exp_sign && negative_exp_sign->match(text, exponent_symbol->interval.end, end, flags) &&
    +
    2171 exponent && exponent->match(text, negative_exp_sign->interval.end, end, flags))
    2172 {
    2173 this->interval.end = exponent->interval.end;
    2174 if (positive_exp_sign) positive_exp_sign->invalidate();
    @@ -2228,16 +2236,16 @@ $(function() { codefold.init(0); });
    2180 if (exponent) exponent->invalidate();
    2181 }
    2182
    -
    2183 value = (double)integer->value;
    +
    2183 value = (double)integer->value;
    2184 if (decimal->interval)
    -
    2185 value += (double)decimal->value * pow(10.0, -(double)decimal->interval.size());
    +
    2185 value += (double)decimal->value * pow(10.0, -(double)decimal->interval.size());
    2186 if (negative_sign && negative_sign->interval)
    2187 value = -value;
    2188 if (exponent && exponent->interval) {
    -
    2189 double e = (double)exponent->value;
    +
    2189 double e = (double)exponent->value;
    2190 if (negative_exp_sign && negative_exp_sign->interval)
    -
    2191 e = -e;
    -
    2192 value *= pow(10.0, e);
    +
    2191 e = -e;
    +
    2192 value *= pow(10.0, e);
    2193 }
    2194
    2195 this->interval.start = start;
    @@ -2261,22 +2269,22 @@ $(function() { codefold.init(0); });
    2214 {
    2215 public:
    -
    2217 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    -
    2218 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    -
    2219 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    -
    2220 _In_ const std::shared_ptr<basic_parser<T>>& _currency,
    -
    2221 _In_ const std::shared_ptr<basic_parser<T>>& _integer,
    -
    2222 _In_ const std::shared_ptr<basic_parser<T>>& _decimal_separator,
    -
    2223 _In_ const std::shared_ptr<basic_parser<T>>& _decimal,
    -
    2224 _In_ const std::locale& locale = std::locale()) :
    - - - - - - - - +
    2217 _In_ const std::shared_ptr<basic_parser<T>>& _positive_sign,
    +
    2218 _In_ const std::shared_ptr<basic_parser<T>>& _negative_sign,
    +
    2219 _In_ const std::shared_ptr<basic_parser<T>>& _special_sign,
    +
    2220 _In_ const std::shared_ptr<basic_parser<T>>& _currency,
    +
    2221 _In_ const std::shared_ptr<basic_parser<T>>& _integer,
    +
    2222 _In_ const std::shared_ptr<basic_parser<T>>& _decimal_separator,
    +
    2223 _In_ const std::shared_ptr<basic_parser<T>>& _decimal,
    +
    2224 _In_ const std::locale& locale = std::locale()) :
    + +
    2226 positive_sign(_positive_sign),
    +
    2227 negative_sign(_negative_sign),
    +
    2228 special_sign(_special_sign),
    +
    2229 currency(_currency),
    +
    2230 integer(_integer),
    +
    2231 decimal_separator(_decimal_separator),
    +
    2232 decimal(_decimal)
    2233 {}
    2234
    2235 virtual void invalidate()
    @@ -2302,24 +2310,24 @@ $(function() { codefold.init(0); });
    2255 protected:
    2256 virtual bool do_match(
    2257 _In_reads_or_z_opt_(end) const T* text,
    -
    2258 _In_ size_t start = 0,
    -
    2259 _In_ size_t end = SIZE_MAX,
    -
    2260 _In_ int flags = match_default)
    +
    2258 _In_ size_t start = 0,
    +
    2259 _In_ size_t end = SIZE_MAX,
    +
    2260 _In_ int flags = match_default)
    2261 {
    2262 _Assume_(text || start >= end);
    2263 this->interval.end = start;
    2264
    -
    2265 if (positive_sign->match(text, this->interval.end, end, flags)) {
    +
    2265 if (positive_sign->match(text, this->interval.end, end, flags)) {
    2266 this->interval.end = positive_sign->interval.end;
    2267 if (negative_sign) negative_sign->invalidate();
    2268 if (special_sign) special_sign->invalidate();
    2269 }
    -
    2270 else if (negative_sign->match(text, this->interval.end, end, flags)) {
    +
    2270 else if (negative_sign->match(text, this->interval.end, end, flags)) {
    2271 this->interval.end = negative_sign->interval.end;
    2272 if (positive_sign) positive_sign->invalidate();
    2273 if (special_sign) special_sign->invalidate();
    2274 }
    -
    2275 else if (special_sign->match(text, this->interval.end, end, flags)) {
    +
    2275 else if (special_sign->match(text, this->interval.end, end, flags)) {
    2276 this->interval.end = special_sign->interval.end;
    2277 if (positive_sign) positive_sign->invalidate();
    2278 if (negative_sign) negative_sign->invalidate();
    @@ -2330,7 +2338,7 @@ $(function() { codefold.init(0); });
    2283 if (special_sign) special_sign->invalidate();
    2284 }
    2285
    -
    2286 if (currency->match(text, this->interval.end, end, flags))
    +
    2286 if (currency->match(text, this->interval.end, end, flags))
    2287 this->interval.end = currency->interval.end;
    2288 else {
    2289 if (positive_sign) positive_sign->invalidate();
    @@ -2343,10 +2351,10 @@ $(function() { codefold.init(0); });
    2296 return false;
    2297 }
    2298
    -
    2299 if (integer->match(text, this->interval.end, end, flags))
    +
    2299 if (integer->match(text, this->interval.end, end, flags))
    2300 this->interval.end = integer->interval.end;
    -
    2301 if (decimal_separator->match(text, this->interval.end, end, flags) &&
    -
    2302 decimal->match(text, decimal_separator->interval.end, end, flags))
    +
    2301 if (decimal_separator->match(text, this->interval.end, end, flags) &&
    +
    2302 decimal->match(text, decimal_separator->interval.end, end, flags))
    2303 this->interval.end = decimal->interval.end;
    2304 else {
    2305 decimal_separator->invalidate();
    @@ -2389,29 +2397,29 @@ $(function() { codefold.init(0); });
    2343 {
    2344 public:
    -
    2346 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    -
    2347 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    -
    2348 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    -
    2349 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    -
    2350 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    -
    2351 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    -
    2352 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    -
    2353 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    -
    2354 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    -
    2355 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    -
    2356 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    -
    2357 _In_ const std::locale& locale = std::locale()) :
    - -
    2359 m_digit_0(digit_0),
    -
    2360 m_digit_1(digit_1),
    -
    2361 m_digit_2(digit_2),
    -
    2362 m_digit_3(digit_3),
    -
    2363 m_digit_4(digit_4),
    -
    2364 m_digit_5(digit_5),
    -
    2365 m_digit_6(digit_6),
    -
    2366 m_digit_7(digit_7),
    -
    2367 m_digit_8(digit_8),
    -
    2368 m_digit_9(digit_9),
    +
    2346 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    +
    2347 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    +
    2348 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    +
    2349 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    +
    2350 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    +
    2351 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    +
    2352 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    +
    2353 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    +
    2354 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    +
    2355 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    +
    2356 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    +
    2357 _In_ const std::locale& locale = std::locale()) :
    + +
    2359 m_digit_0(digit_0),
    +
    2360 m_digit_1(digit_1),
    +
    2361 m_digit_2(digit_2),
    +
    2362 m_digit_3(digit_3),
    +
    2363 m_digit_4(digit_4),
    +
    2364 m_digit_5(digit_5),
    +
    2365 m_digit_6(digit_6),
    +
    2366 m_digit_7(digit_7),
    +
    2367 m_digit_8(digit_8),
    +
    2368 m_digit_9(digit_9),
    2369 m_separator(separator)
    2370 {
    2371 value.s_addr = 0;
    @@ -2432,14 +2440,14 @@ $(function() { codefold.init(0); });
    2386 }
    2387
    - +
    2389 struct in_addr value;
    2390
    2391 protected:
    2392 virtual bool do_match(
    2393 _In_reads_or_z_opt_(end) const T* text,
    -
    2394 _In_ size_t start = 0,
    -
    2395 _In_ size_t end = SIZE_MAX,
    -
    2396 _In_ int flags = match_default)
    +
    2394 _In_ size_t start = 0,
    +
    2395 _In_ size_t end = SIZE_MAX,
    +
    2396 _In_ int flags = match_default)
    2397 {
    2398 _Assume_(text || start >= end);
    2399 this->interval.end = start;
    @@ -2448,18 +2456,18 @@ $(function() { codefold.init(0); });
    2402 size_t i;
    2403 for (i = 0; i < 4; i++) {
    2404 if (i) {
    -
    2405 if (m_separator->match(text, this->interval.end, end, flags))
    +
    2405 if (m_separator->match(text, this->interval.end, end, flags))
    2406 this->interval.end = m_separator->interval.end;
    2407 else
    -
    2408 goto error;
    +
    2408 goto error;
    2409 }
    2410
    2411 components[i].start = this->interval.end;
    -
    2412 bool is_empty = true;
    -
    2413 size_t x;
    -
    2414 for (x = 0; this->interval.end < end && text[this->interval.end];) {
    -
    2415 size_t dig, digit_end;
    -
    2416 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; digit_end = m_digit_0->interval.end; }
    +
    2412 bool is_empty = true;
    +
    2413 size_t x;
    +
    2414 for (x = 0; this->interval.end < end && text[this->interval.end];) {
    +
    2415 size_t dig, digit_end;
    +
    2416 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; digit_end = m_digit_0->interval.end; }
    2417 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; digit_end = m_digit_1->interval.end; }
    2418 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; digit_end = m_digit_2->interval.end; }
    2419 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; digit_end = m_digit_3->interval.end; }
    @@ -2525,21 +2533,21 @@ $(function() { codefold.init(0); });
    2481 {
    2482 public:
    -
    2483 basic_ipv6_scope_id_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    2483 basic_ipv6_scope_id_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    2484
    2485 protected:
    2486 virtual bool do_match(
    2487 _In_reads_or_z_opt_(end) const T* text,
    -
    2488 _In_ size_t start = 0,
    -
    2489 _In_ size_t end = SIZE_MAX,
    -
    2490 _In_ int flags = match_default)
    +
    2488 _In_ size_t start = 0,
    +
    2489 _In_ size_t end = SIZE_MAX,
    +
    2490 _In_ int flags = match_default)
    2491 {
    2492 _Assume_(text || start >= end);
    2493 if (start < end && text[start]) {
    2494 if (text[start] == '-' ||
    2495 text[start] == '_' ||
    2496 text[start] == ':' ||
    -
    2497 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    +
    2497 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    2498 {
    2499 this->interval.end = (this->interval.start = start) + 1;
    2500 return true;
    @@ -2551,36 +2559,36 @@ $(function() { codefold.init(0); });
    2506 };
    2507
    - - + +
    2510#ifdef _UNICODE
    - +
    2512#else
    - +
    2514#endif
    2515
    2520 {
    2521 public:
    -
    2522 sgml_ipv6_scope_id_char(_In_ const std::locale& locale = std::locale()) : sgml_parser(locale) {}
    +
    2522 sgml_ipv6_scope_id_char(_In_ const std::locale& locale = std::locale()) : sgml_parser(locale) {}
    2523
    2524 protected:
    2525 virtual bool do_match(
    2526 _In_reads_or_z_(end) const char* text,
    -
    2527 _In_ size_t start = 0,
    -
    2528 _In_ size_t end = SIZE_MAX,
    -
    2529 _In_ int flags = match_default)
    +
    2527 _In_ size_t start = 0,
    +
    2528 _In_ size_t end = SIZE_MAX,
    +
    2529 _In_ int flags = match_default)
    2530 {
    2531 _Assume_(text || start >= end);
    2532 if (start < end && text[start]) {
    2533 wchar_t buf[5];
    -
    2534 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    2535 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    2536 if (((chr[0] == L'-' ||
    -
    2537 chr[0] == L'_' ||
    -
    2538 chr[0] == L':') && chr[1] == 0) ||
    -
    2539 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    +
    2534 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    2535 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    2536 if (((chr[0] == L'-' ||
    +
    2537 chr[0] == L'_' ||
    +
    2538 chr[0] == L':') && chr[1] == 0) ||
    +
    2539 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    2540 {
    2541 this->interval.start = start;
    2542 return true;
    @@ -2598,48 +2606,48 @@ $(function() { codefold.init(0); });
    2555 {
    2556 public:
    -
    2558 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    -
    2559 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    -
    2560 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    -
    2561 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    -
    2562 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    -
    2563 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    -
    2564 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    -
    2565 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    -
    2566 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    -
    2567 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    -
    2568 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    -
    2569 _In_ const std::shared_ptr<basic_parser<T>>& digit_11,
    -
    2570 _In_ const std::shared_ptr<basic_parser<T>>& digit_12,
    -
    2571 _In_ const std::shared_ptr<basic_parser<T>>& digit_13,
    -
    2572 _In_ const std::shared_ptr<basic_parser<T>>& digit_14,
    -
    2573 _In_ const std::shared_ptr<basic_parser<T>>& digit_15,
    -
    2574 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    -
    2575 _In_ const std::shared_ptr<basic_parser<T>>& scope_id_separator = nullptr,
    -
    2576 _In_ const std::shared_ptr<basic_parser<T>>& _scope_id = nullptr,
    -
    2577 _In_ const std::locale& locale = std::locale()) :
    - -
    2579 m_digit_0(digit_0),
    -
    2580 m_digit_1(digit_1),
    -
    2581 m_digit_2(digit_2),
    -
    2582 m_digit_3(digit_3),
    -
    2583 m_digit_4(digit_4),
    -
    2584 m_digit_5(digit_5),
    -
    2585 m_digit_6(digit_6),
    -
    2586 m_digit_7(digit_7),
    -
    2587 m_digit_8(digit_8),
    -
    2588 m_digit_9(digit_9),
    -
    2589 m_digit_10(digit_10),
    -
    2590 m_digit_11(digit_11),
    -
    2591 m_digit_12(digit_12),
    -
    2592 m_digit_13(digit_13),
    -
    2593 m_digit_14(digit_14),
    -
    2594 m_digit_15(digit_15),
    +
    2558 _In_ const std::shared_ptr<basic_parser<T>>& digit_0,
    +
    2559 _In_ const std::shared_ptr<basic_parser<T>>& digit_1,
    +
    2560 _In_ const std::shared_ptr<basic_parser<T>>& digit_2,
    +
    2561 _In_ const std::shared_ptr<basic_parser<T>>& digit_3,
    +
    2562 _In_ const std::shared_ptr<basic_parser<T>>& digit_4,
    +
    2563 _In_ const std::shared_ptr<basic_parser<T>>& digit_5,
    +
    2564 _In_ const std::shared_ptr<basic_parser<T>>& digit_6,
    +
    2565 _In_ const std::shared_ptr<basic_parser<T>>& digit_7,
    +
    2566 _In_ const std::shared_ptr<basic_parser<T>>& digit_8,
    +
    2567 _In_ const std::shared_ptr<basic_parser<T>>& digit_9,
    +
    2568 _In_ const std::shared_ptr<basic_parser<T>>& digit_10,
    +
    2569 _In_ const std::shared_ptr<basic_parser<T>>& digit_11,
    +
    2570 _In_ const std::shared_ptr<basic_parser<T>>& digit_12,
    +
    2571 _In_ const std::shared_ptr<basic_parser<T>>& digit_13,
    +
    2572 _In_ const std::shared_ptr<basic_parser<T>>& digit_14,
    +
    2573 _In_ const std::shared_ptr<basic_parser<T>>& digit_15,
    +
    2574 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    +
    2575 _In_ const std::shared_ptr<basic_parser<T>>& scope_id_separator = nullptr,
    +
    2576 _In_ const std::shared_ptr<basic_parser<T>>& _scope_id = nullptr,
    +
    2577 _In_ const std::locale& locale = std::locale()) :
    + +
    2579 m_digit_0(digit_0),
    +
    2580 m_digit_1(digit_1),
    +
    2581 m_digit_2(digit_2),
    +
    2582 m_digit_3(digit_3),
    +
    2583 m_digit_4(digit_4),
    +
    2584 m_digit_5(digit_5),
    +
    2585 m_digit_6(digit_6),
    +
    2586 m_digit_7(digit_7),
    +
    2587 m_digit_8(digit_8),
    +
    2588 m_digit_9(digit_9),
    +
    2589 m_digit_10(digit_10),
    +
    2590 m_digit_11(digit_11),
    +
    2591 m_digit_12(digit_12),
    +
    2592 m_digit_13(digit_13),
    +
    2593 m_digit_14(digit_14),
    +
    2594 m_digit_15(digit_15),
    2595 m_separator(separator),
    -
    2596 m_scope_id_separator(scope_id_separator),
    - +
    2596 m_scope_id_separator(scope_id_separator),
    +
    2597 scope_id(_scope_id)
    2598 {
    -
    2599 memset(&value, 0, sizeof(value));
    +
    2599 memset(&value, 0, sizeof(value));
    2600 }
    2601
    2602 virtual void invalidate()
    @@ -2660,39 +2668,39 @@ $(function() { codefold.init(0); });
    2617 components[6].end = 0;
    2618 components[7].start = 1;
    2619 components[7].end = 0;
    -
    2620 memset(&value, 0, sizeof(value));
    +
    2620 memset(&value, 0, sizeof(value));
    2621 if (scope_id) scope_id->invalidate();
    2623 }
    2624
    - +
    2626 struct in6_addr value;
    2627 std::shared_ptr<basic_parser<T>> scope_id;
    2628
    2629 protected:
    2630 virtual bool do_match(
    2631 _In_reads_or_z_opt_(end) const T* text,
    -
    2632 _In_ size_t start = 0,
    -
    2633 _In_ size_t end = SIZE_MAX,
    -
    2634 _In_ int flags = match_default)
    +
    2632 _In_ size_t start = 0,
    +
    2633 _In_ size_t end = SIZE_MAX,
    +
    2634 _In_ int flags = match_default)
    2635 {
    2636 _Assume_(text || start >= end);
    2637 this->interval.end = start;
    -
    2638 memset(&value, 0, sizeof(value));
    +
    2638 memset(&value, 0, sizeof(value));
    2639
    -
    2640 size_t i, compaction_i = SIZE_MAX, compaction_start = start;
    +
    2640 size_t i, compaction_i = SIZE_MAX, compaction_start = start;
    2641 for (i = 0; i < 8; i++) {
    -
    2642 bool is_empty = true;
    +
    2642 bool is_empty = true;
    2643
    -
    2644 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    2644 if (m_separator->match(text, this->interval.end, end, flags)) {
    2645 // : found
    2646 this->interval.end = m_separator->interval.end;
    -
    2647 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    2647 if (m_separator->match(text, this->interval.end, end, flags)) {
    2648 // :: found
    -
    2649 if (compaction_i == SIZE_MAX) {
    +
    2649 if (compaction_i == SIZE_MAX) {
    2650 // Zero compaction start
    -
    2651 compaction_i = i;
    -
    2652 compaction_start = m_separator->interval.start;
    +
    2651 compaction_i = i;
    +
    2652 compaction_start = m_separator->interval.start;
    2653 this->interval.end = m_separator->interval.end;
    2654 }
    2655 else {
    @@ -2702,7 +2710,7 @@ $(function() { codefold.init(0); });
    2659 }
    2660 else if (!i) {
    2661 // Leading : found
    -
    2662 goto error;
    +
    2662 goto error;
    2663 }
    2664 }
    2665 else if (i) {
    @@ -2711,64 +2719,64 @@ $(function() { codefold.init(0); });
    2668 }
    2669
    2670 components[i].start = this->interval.end;
    -
    2671 size_t x;
    -
    2672 for (x = 0; this->interval.end < end && text[this->interval.end];) {
    -
    2673 size_t dig, digit_end;
    -
    2674 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; digit_end = m_digit_0->interval.end; }
    -
    2675 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; digit_end = m_digit_1->interval.end; }
    -
    2676 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; digit_end = m_digit_2->interval.end; }
    -
    2677 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; digit_end = m_digit_3->interval.end; }
    -
    2678 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; digit_end = m_digit_4->interval.end; }
    -
    2679 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; digit_end = m_digit_5->interval.end; }
    -
    2680 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; digit_end = m_digit_6->interval.end; }
    -
    2681 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; digit_end = m_digit_7->interval.end; }
    -
    2682 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; digit_end = m_digit_8->interval.end; }
    -
    2683 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; digit_end = m_digit_9->interval.end; }
    -
    2684 else if (m_digit_10->match(text, this->interval.end, end, flags)) { dig = 10; digit_end = m_digit_10->interval.end; }
    -
    2685 else if (m_digit_11->match(text, this->interval.end, end, flags)) { dig = 11; digit_end = m_digit_11->interval.end; }
    -
    2686 else if (m_digit_12->match(text, this->interval.end, end, flags)) { dig = 12; digit_end = m_digit_12->interval.end; }
    -
    2687 else if (m_digit_13->match(text, this->interval.end, end, flags)) { dig = 13; digit_end = m_digit_13->interval.end; }
    -
    2688 else if (m_digit_14->match(text, this->interval.end, end, flags)) { dig = 14; digit_end = m_digit_14->interval.end; }
    -
    2689 else if (m_digit_15->match(text, this->interval.end, end, flags)) { dig = 15; digit_end = m_digit_15->interval.end; }
    +
    2671 size_t x;
    +
    2672 for (x = 0; this->interval.end < end && text[this->interval.end];) {
    +
    2673 size_t dig, digit_end;
    +
    2674 if (m_digit_0->match(text, this->interval.end, end, flags)) { dig = 0; digit_end = m_digit_0->interval.end; }
    +
    2675 else if (m_digit_1->match(text, this->interval.end, end, flags)) { dig = 1; digit_end = m_digit_1->interval.end; }
    +
    2676 else if (m_digit_2->match(text, this->interval.end, end, flags)) { dig = 2; digit_end = m_digit_2->interval.end; }
    +
    2677 else if (m_digit_3->match(text, this->interval.end, end, flags)) { dig = 3; digit_end = m_digit_3->interval.end; }
    +
    2678 else if (m_digit_4->match(text, this->interval.end, end, flags)) { dig = 4; digit_end = m_digit_4->interval.end; }
    +
    2679 else if (m_digit_5->match(text, this->interval.end, end, flags)) { dig = 5; digit_end = m_digit_5->interval.end; }
    +
    2680 else if (m_digit_6->match(text, this->interval.end, end, flags)) { dig = 6; digit_end = m_digit_6->interval.end; }
    +
    2681 else if (m_digit_7->match(text, this->interval.end, end, flags)) { dig = 7; digit_end = m_digit_7->interval.end; }
    +
    2682 else if (m_digit_8->match(text, this->interval.end, end, flags)) { dig = 8; digit_end = m_digit_8->interval.end; }
    +
    2683 else if (m_digit_9->match(text, this->interval.end, end, flags)) { dig = 9; digit_end = m_digit_9->interval.end; }
    +
    2684 else if (m_digit_10->match(text, this->interval.end, end, flags)) { dig = 10; digit_end = m_digit_10->interval.end; }
    +
    2685 else if (m_digit_11->match(text, this->interval.end, end, flags)) { dig = 11; digit_end = m_digit_11->interval.end; }
    +
    2686 else if (m_digit_12->match(text, this->interval.end, end, flags)) { dig = 12; digit_end = m_digit_12->interval.end; }
    +
    2687 else if (m_digit_13->match(text, this->interval.end, end, flags)) { dig = 13; digit_end = m_digit_13->interval.end; }
    +
    2688 else if (m_digit_14->match(text, this->interval.end, end, flags)) { dig = 14; digit_end = m_digit_14->interval.end; }
    +
    2689 else if (m_digit_15->match(text, this->interval.end, end, flags)) { dig = 15; digit_end = m_digit_15->interval.end; }
    2690 else break;
    -
    2691 size_t x_n = x * 16 + dig;
    -
    2692 if (x_n <= 0xffff) {
    -
    2693 x = x_n;
    -
    2694 this->interval.end = digit_end;
    -
    2695 is_empty = false;
    +
    2691 size_t x_n = x * 16 + dig;
    +
    2692 if (x_n <= 0xffff) {
    +
    2693 x = x_n;
    +
    2694 this->interval.end = digit_end;
    +
    2695 is_empty = false;
    2696 }
    2697 else
    2698 break;
    2699 }
    -
    2700 if (is_empty) {
    -
    2701 if (compaction_i != SIZE_MAX) {
    +
    2700 if (is_empty) {
    +
    2701 if (compaction_i != SIZE_MAX) {
    2702 // Zero compaction active: no sweat.
    2703 break;
    2704 }
    -
    2705 goto error;
    +
    2705 goto error;
    2706 }
    2707 components[i].end = this->interval.end;
    -
    2708 HE2BE(reinterpret_cast<uint16_t&>(this->value.s6_words[i]));
    +
    2708 HE2BE(reinterpret_cast<uint16_t&>(this->value.s6_words[i]));
    2709 }
    2710
    -
    2711 if (compaction_i != SIZE_MAX) {
    +
    2711 if (compaction_i != SIZE_MAX) {
    2712 // Align components right due to zero compaction.
    -
    2713 size_t j, k;
    -
    2714 for (j = 8, k = i; k > compaction_i;) {
    -
    2715 this->value.s6_words[--j] = this->value.s6_words[--k];
    - +
    2713 size_t j, k;
    +
    2714 for (j = 8, k = i; k > compaction_i;) {
    +
    2715 this->value.s6_words[--j] = this->value.s6_words[--k];
    +
    2716 components[j] = components[k];
    2717 }
    -
    2718 for (; j > compaction_i;) {
    -
    2719 this->value.s6_words[--j] = 0;
    -
    2720 components[j].start =
    - +
    2718 for (; j > compaction_i;) {
    +
    2719 this->value.s6_words[--j] = 0;
    +
    2720 components[j].start =
    +
    2721 components[j].end = compaction_start;
    2722 }
    2723 }
    2724 else if (i < 8)
    -
    2725 goto error;
    +
    2725 goto error;
    2726
    -
    2727 if (m_scope_id_separator && m_scope_id_separator->match(text, this->interval.end, end, flags) &&
    -
    2728 scope_id && scope_id->match(text, m_scope_id_separator->interval.end, end, flags))
    +
    2727 if (m_scope_id_separator && m_scope_id_separator->match(text, this->interval.end, end, flags) &&
    +
    2728 scope_id && scope_id->match(text, m_scope_id_separator->interval.end, end, flags))
    2729 this->interval.end = scope_id->interval.end;
    2730 else if (scope_id)
    2731 scope_id->invalidate();
    @@ -2776,7 +2784,7 @@ $(function() { codefold.init(0); });
    2733 this->interval.start = start;
    2734 return true;
    2735
    -
    2736 error:
    +
    2736 error:
    2737 invalidate();
    2738 return false;
    2739 }
    @@ -2817,10 +2825,10 @@ $(function() { codefold.init(0); });
    2775 {
    2776 public:
    -
    2778 _In_ bool allow_idn,
    -
    2779 _In_ const std::locale& locale = std::locale()) :
    - -
    2781 m_allow_idn(allow_idn),
    +
    2778 _In_ bool allow_idn,
    +
    2779 _In_ const std::locale& locale = std::locale()) :
    + +
    2781 m_allow_idn(allow_idn),
    2782 allow_on_edge(true)
    2783 {}
    2784
    @@ -2829,9 +2837,9 @@ $(function() { codefold.init(0); });
    2787 protected:
    2788 virtual bool do_match(
    2789 _In_reads_or_z_opt_(end) const T* text,
    -
    2790 _In_ size_t start = 0,
    -
    2791 _In_ size_t end = SIZE_MAX,
    -
    2792 _In_ int flags = match_default)
    +
    2790 _In_ size_t start = 0,
    +
    2791 _In_ size_t end = SIZE_MAX,
    +
    2792 _In_ int flags = match_default)
    2793 {
    2794 _Assume_(text || start >= end);
    2795 if (start < end && text[start]) {
    @@ -2841,7 +2849,7 @@ $(function() { codefold.init(0); });
    2799 allow_on_edge = true;
    2800 else if (text[start] == '-')
    2801 allow_on_edge = false;
    -
    2802 else if (m_allow_idn && std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    +
    2802 else if (m_allow_idn && std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    2803 allow_on_edge = true;
    2804 else {
    2805 this->interval.invalidate();
    @@ -2871,30 +2879,30 @@ $(function() { codefold.init(0); });
    2830 {
    2831 public:
    -
    2833 _In_ bool allow_idn,
    -
    2834 _In_ const std::locale& locale = std::locale()) :
    - +
    2833 _In_ bool allow_idn,
    +
    2834 _In_ const std::locale& locale = std::locale()) :
    +
    2836 {}
    2837
    2838 protected:
    2839 virtual bool do_match(
    2840 _In_reads_or_z_(end) const char* text,
    -
    2841 _In_ size_t start = 0,
    -
    2842 _In_ size_t end = SIZE_MAX,
    -
    2843 _In_ int flags = match_default)
    +
    2841 _In_ size_t start = 0,
    +
    2842 _In_ size_t end = SIZE_MAX,
    +
    2843 _In_ int flags = match_default)
    2844 {
    2845 _Assume_(text || start >= end);
    2846 if (start < end && text[start]) {
    2847 wchar_t buf[5];
    -
    2848 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    2849 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    2850 if ((('A' <= chr[0] && chr[0] <= 'Z') ||
    -
    2851 ('a' <= chr[0] && chr[0] <= 'z') ||
    -
    2852 ('0' <= chr[0] && chr[0] <= '9')) && chr[1] == 0)
    +
    2848 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    2849 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    2850 if ((('A' <= chr[0] && chr[0] <= 'Z') ||
    +
    2851 ('a' <= chr[0] && chr[0] <= 'z') ||
    +
    2852 ('0' <= chr[0] && chr[0] <= '9')) && chr[1] == 0)
    2853 allow_on_edge = true;
    -
    2854 else if (chr[0] == '-' && chr[1] == 0)
    +
    2854 else if (chr[0] == '-' && chr[1] == 0)
    2855 allow_on_edge = false;
    -
    2856 else if (m_allow_idn && std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    +
    2856 else if (m_allow_idn && std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    2857 allow_on_edge = true;
    2858 else {
    2859 this->interval.invalidate();
    @@ -2915,34 +2923,34 @@ $(function() { codefold.init(0); });
    2875 {
    2876 public:
    -
    2878 _In_ bool allow_absolute,
    -
    2879 _In_ const std::shared_ptr<basic_dns_domain_char<T>>& domain_char,
    -
    2880 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    -
    2881 _In_ const std::locale& locale = std::locale()) :
    - - -
    2884 m_domain_char(domain_char),
    +
    2878 _In_ bool allow_absolute,
    +
    2879 _In_ const std::shared_ptr<basic_dns_domain_char<T>>& domain_char,
    +
    2880 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    +
    2881 _In_ const std::locale& locale = std::locale()) :
    + +
    2883 m_allow_absolute(allow_absolute),
    +
    2884 m_domain_char(domain_char),
    2885 m_separator(separator)
    2886 {}
    2887
    2888 protected:
    2889 virtual bool do_match(
    2890 _In_reads_or_z_opt_(end) const T* text,
    -
    2891 _In_ size_t start = 0,
    -
    2892 _In_ size_t end = SIZE_MAX,
    -
    2893 _In_ int flags = match_default)
    +
    2891 _In_ size_t start = 0,
    +
    2892 _In_ size_t end = SIZE_MAX,
    +
    2893 _In_ int flags = match_default)
    2894 {
    2895 _Assume_(text || start >= end);
    -
    2896 size_t i = start, count;
    -
    2897 for (count = 0; i < end && text[i] && count < 127; count++) {
    -
    2898 if (m_domain_char->match(text, i, end, flags) &&
    +
    2896 size_t i = start, count;
    +
    2897 for (count = 0; i < end && text[i] && count < 127; count++) {
    +
    2898 if (m_domain_char->match(text, i, end, flags) &&
    2899 m_domain_char->allow_on_edge)
    2900 {
    2901 // Domain start
    2902 this->interval.end = i = m_domain_char->interval.end;
    2903 while (i < end && text[i]) {
    2904 if (m_domain_char->allow_on_edge &&
    -
    2905 m_separator->match(text, i, end, flags))
    +
    2905 m_separator->match(text, i, end, flags))
    2906 {
    2907 // Domain end
    2908 if (m_allow_absolute)
    @@ -2953,7 +2961,7 @@ $(function() { codefold.init(0); });
    2913 }
    2914 break;
    2915 }
    -
    2916 if (m_domain_char->match(text, i, end, flags)) {
    +
    2916 if (m_domain_char->match(text, i, end, flags)) {
    2917 if (m_domain_char->allow_on_edge)
    2918 this->interval.end = i = m_domain_char->interval.end;
    2919 else
    @@ -2968,7 +2976,7 @@ $(function() { codefold.init(0); });
    2928 else
    2929 break;
    2930 }
    -
    2931 if (count) {
    +
    2931 if (count) {
    2932 this->interval.start = start;
    2933 return true;
    2934 }
    @@ -2982,28 +2990,28 @@ $(function() { codefold.init(0); });
    2942 };
    2943
    - - + +
    2946#ifdef _UNICODE
    -
    2947 using tdns_name = wdns_name;
    +
    2947 using tdns_name = wdns_name;
    2948#else
    -
    2949 using tdns_name = dns_name;
    +
    2949 using tdns_name = dns_name;
    2950#endif
    - +
    2952
    2956 template <class T>
    2958 {
    2959 public:
    -
    2960 basic_url_username_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    2960 basic_url_username_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    2961
    2962 protected:
    2963 virtual bool do_match(
    2964 _In_reads_or_z_opt_(end) const T* text,
    -
    2965 _In_ size_t start = 0,
    -
    2966 _In_ size_t end = SIZE_MAX,
    -
    2967 _In_ int flags = match_default)
    +
    2965 _In_ size_t start = 0,
    +
    2966 _In_ size_t end = SIZE_MAX,
    +
    2967 _In_ int flags = match_default)
    2968 {
    2969 _Assume_(text || start >= end);
    2970 if (start < end && text[start]) {
    @@ -3023,7 +3031,7 @@ $(function() { codefold.init(0); });
    2984 text[start] == ',' ||
    2985 text[start] == ';' ||
    2986 text[start] == '=' ||
    -
    2987 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    +
    2987 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    2988 {
    2989 this->interval.end = (this->interval.start = start) + 1;
    2990 return true;
    @@ -3035,10 +3043,10 @@ $(function() { codefold.init(0); });
    2996 };
    2997
    - - + +
    3000#ifdef _UNICODE
    - +
    3002#else
    3004#endif
    @@ -3047,37 +3055,37 @@ $(function() { codefold.init(0); });
    3010 {
    3011 public:
    -
    3012 sgml_url_username_char(_In_ const std::locale& locale = std::locale()) : basic_url_username_char<char>(locale) {}
    +
    3012 sgml_url_username_char(_In_ const std::locale& locale = std::locale()) : basic_url_username_char<char>(locale) {}
    3013
    3014 protected:
    3015 virtual bool do_match(
    3016 _In_reads_or_z_(end) const char* text,
    -
    3017 _In_ size_t start = 0,
    -
    3018 _In_ size_t end = SIZE_MAX,
    -
    3019 _In_ int flags = match_default)
    +
    3017 _In_ size_t start = 0,
    +
    3018 _In_ size_t end = SIZE_MAX,
    +
    3019 _In_ int flags = match_default)
    3020 {
    3021 _Assume_(text || start >= end);
    3022 if (start < end && text[start]) {
    3023 wchar_t buf[5];
    -
    3024 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    3025 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    3026 if (((chr[0] == L'-' ||
    -
    3027 chr[0] == L'.' ||
    -
    3028 chr[0] == L'_' ||
    -
    3029 chr[0] == L'~' ||
    -
    3030 chr[0] == L'%' ||
    -
    3031 chr[0] == L'!' ||
    -
    3032 chr[0] == L'$' ||
    -
    3033 chr[0] == L'&' ||
    -
    3034 chr[0] == L'\'' ||
    +
    3024 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    3025 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    3026 if (((chr[0] == L'-' ||
    +
    3027 chr[0] == L'.' ||
    +
    3028 chr[0] == L'_' ||
    +
    3029 chr[0] == L'~' ||
    +
    3030 chr[0] == L'%' ||
    +
    3031 chr[0] == L'!' ||
    +
    3032 chr[0] == L'$' ||
    +
    3033 chr[0] == L'&' ||
    +
    3034 chr[0] == L'\'' ||
    3035 //chr[0] == L'(' ||
    3036 //chr[0] == L')' ||
    -
    3037 chr[0] == L'*' ||
    -
    3038 chr[0] == L'+' ||
    -
    3039 chr[0] == L',' ||
    -
    3040 chr[0] == L';' ||
    -
    3041 chr[0] == L'=') && chr[1] == 0) ||
    -
    3042 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    +
    3037 chr[0] == L'*' ||
    +
    3038 chr[0] == L'+' ||
    +
    3039 chr[0] == L',' ||
    +
    3040 chr[0] == L';' ||
    +
    3041 chr[0] == L'=') && chr[1] == 0) ||
    +
    3042 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    3043 {
    3044 this->interval.start = start;
    3045 return true;
    @@ -3095,14 +3103,14 @@ $(function() { codefold.init(0); });
    3059 {
    3060 public:
    -
    3061 basic_url_password_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    3061 basic_url_password_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    3062
    3063 protected:
    3064 virtual bool do_match(
    3065 _In_reads_or_z_opt_(end) const T* text,
    -
    3066 _In_ size_t start = 0,
    -
    3067 _In_ size_t end = SIZE_MAX,
    -
    3068 _In_ int flags = match_default)
    +
    3066 _In_ size_t start = 0,
    +
    3067 _In_ size_t end = SIZE_MAX,
    +
    3068 _In_ int flags = match_default)
    3069 {
    3070 _Assume_(text || start >= end);
    3071 if (start < end && text[start]) {
    @@ -3123,7 +3131,7 @@ $(function() { codefold.init(0); });
    3086 text[start] == ';' ||
    3087 text[start] == '=' ||
    3088 text[start] == ':' ||
    -
    3089 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    +
    3089 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    3090 {
    3091 this->interval.end = (this->interval.start = start) + 1;
    3092 return true;
    @@ -3135,10 +3143,10 @@ $(function() { codefold.init(0); });
    3098 };
    3099
    - - + +
    3102#ifdef _UNICODE
    - +
    3104#else
    3106#endif
    @@ -3147,38 +3155,38 @@ $(function() { codefold.init(0); });
    3112 {
    3113 public:
    -
    3114 sgml_url_password_char(_In_ const std::locale& locale = std::locale()) : basic_url_password_char<char>(locale) {}
    +
    3114 sgml_url_password_char(_In_ const std::locale& locale = std::locale()) : basic_url_password_char<char>(locale) {}
    3115
    3116 protected:
    3117 virtual bool do_match(
    3118 _In_reads_or_z_(end) const char* text,
    -
    3119 _In_ size_t start = 0,
    -
    3120 _In_ size_t end = SIZE_MAX,
    -
    3121 _In_ int flags = match_default)
    +
    3119 _In_ size_t start = 0,
    +
    3120 _In_ size_t end = SIZE_MAX,
    +
    3121 _In_ int flags = match_default)
    3122 {
    3123 _Assume_(text || start >= end);
    3124 if (start < end && text[start]) {
    3125 wchar_t buf[5];
    -
    3126 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    3127 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    3128 if (((chr[0] == L'-' ||
    -
    3129 chr[0] == L'.' ||
    -
    3130 chr[0] == L'_' ||
    -
    3131 chr[0] == L'~' ||
    -
    3132 chr[0] == L'%' ||
    -
    3133 chr[0] == L'!' ||
    -
    3134 chr[0] == L'$' ||
    -
    3135 chr[0] == L'&' ||
    -
    3136 chr[0] == L'\'' ||
    -
    3137 chr[0] == L'(' ||
    -
    3138 chr[0] == L')' ||
    -
    3139 chr[0] == L'*' ||
    -
    3140 chr[0] == L'+' ||
    -
    3141 chr[0] == L',' ||
    -
    3142 chr[0] == L';' ||
    -
    3143 chr[0] == L'=' ||
    -
    3144 chr[0] == L':') && chr[1] == 0) ||
    -
    3145 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    +
    3126 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    3127 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    3128 if (((chr[0] == L'-' ||
    +
    3129 chr[0] == L'.' ||
    +
    3130 chr[0] == L'_' ||
    +
    3131 chr[0] == L'~' ||
    +
    3132 chr[0] == L'%' ||
    +
    3133 chr[0] == L'!' ||
    +
    3134 chr[0] == L'$' ||
    +
    3135 chr[0] == L'&' ||
    +
    3136 chr[0] == L'\'' ||
    +
    3137 chr[0] == L'(' ||
    +
    3138 chr[0] == L')' ||
    +
    3139 chr[0] == L'*' ||
    +
    3140 chr[0] == L'+' ||
    +
    3141 chr[0] == L',' ||
    +
    3142 chr[0] == L';' ||
    +
    3143 chr[0] == L'=' ||
    +
    3144 chr[0] == L':') && chr[1] == 0) ||
    +
    3145 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    3146 {
    3147 this->interval.start = start;
    3148 return true;
    @@ -3195,14 +3203,14 @@ $(function() { codefold.init(0); });
    3161 {
    3162 public:
    -
    3163 basic_url_path_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    3163 basic_url_path_char(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    3164
    3165 protected:
    3166 virtual bool do_match(
    3167 _In_reads_or_z_opt_(end) const T* text,
    -
    3168 _In_ size_t start = 0,
    -
    3169 _In_ size_t end = SIZE_MAX,
    -
    3170 _In_ int flags = match_default)
    +
    3168 _In_ size_t start = 0,
    +
    3169 _In_ size_t end = SIZE_MAX,
    +
    3170 _In_ int flags = match_default)
    3171 {
    3172 _Assume_(text || start >= end);
    3173 if (start < end && text[start]) {
    @@ -3227,7 +3235,7 @@ $(function() { codefold.init(0); });
    3192 text[start] == '@' ||
    3193 text[start] == '?' ||
    3194 text[start] == '#' ||
    -
    3195 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    +
    3195 std::use_facet<std::ctype<T>>(this->m_locale).is(std::ctype_base::alnum, text[start]))
    3196 {
    3197 this->interval.end = (this->interval.start = start) + 1;
    3198 return true;
    @@ -3239,10 +3247,10 @@ $(function() { codefold.init(0); });
    3204 };
    3205
    - - + +
    3208#ifdef _UNICODE
    - +
    3210#else
    3212#endif
    @@ -3251,42 +3259,42 @@ $(function() { codefold.init(0); });
    3218 {
    3219 public:
    -
    3220 sgml_url_path_char(_In_ const std::locale& locale = std::locale()) : basic_url_path_char<char>(locale) {}
    +
    3220 sgml_url_path_char(_In_ const std::locale& locale = std::locale()) : basic_url_path_char<char>(locale) {}
    3221
    3222 protected:
    3223 virtual bool do_match(
    3224 _In_reads_or_z_(end) const char* text,
    -
    3225 _In_ size_t start = 0,
    -
    3226 _In_ size_t end = SIZE_MAX,
    -
    3227 _In_ int flags = match_default)
    +
    3225 _In_ size_t start = 0,
    +
    3226 _In_ size_t end = SIZE_MAX,
    +
    3227 _In_ int flags = match_default)
    3228 {
    3229 _Assume_(text || start >= end);
    3230 if (start < end && text[start]) {
    3231 wchar_t buf[5];
    -
    3232 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    -
    3233 const wchar_t* chr_end = chr + stdex::strlen(chr);
    -
    3234 if (((chr[0] == L'/' ||
    -
    3235 chr[0] == L'-' ||
    -
    3236 chr[0] == L'.' ||
    -
    3237 chr[0] == L'_' ||
    -
    3238 chr[0] == L'~' ||
    -
    3239 chr[0] == L'%' ||
    -
    3240 chr[0] == L'!' ||
    -
    3241 chr[0] == L'$' ||
    -
    3242 chr[0] == L'&' ||
    -
    3243 chr[0] == L'\'' ||
    -
    3244 chr[0] == L'(' ||
    -
    3245 chr[0] == L')' ||
    -
    3246 chr[0] == L'*' ||
    -
    3247 chr[0] == L'+' ||
    -
    3248 chr[0] == L',' ||
    -
    3249 chr[0] == L';' ||
    -
    3250 chr[0] == L'=' ||
    -
    3251 chr[0] == L':' ||
    -
    3252 chr[0] == L'@' ||
    -
    3253 chr[0] == L'?' ||
    -
    3254 chr[0] == L'#') && chr[1] == 0) ||
    -
    3255 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    +
    3232 const wchar_t* chr = next_sgml_cp(text, start, end, this->interval.end, buf);
    +
    3233 const wchar_t* chr_end = chr + stdex::strlen(chr);
    +
    3234 if (((chr[0] == L'/' ||
    +
    3235 chr[0] == L'-' ||
    +
    3236 chr[0] == L'.' ||
    +
    3237 chr[0] == L'_' ||
    +
    3238 chr[0] == L'~' ||
    +
    3239 chr[0] == L'%' ||
    +
    3240 chr[0] == L'!' ||
    +
    3241 chr[0] == L'$' ||
    +
    3242 chr[0] == L'&' ||
    +
    3243 chr[0] == L'\'' ||
    +
    3244 chr[0] == L'(' ||
    +
    3245 chr[0] == L')' ||
    +
    3246 chr[0] == L'*' ||
    +
    3247 chr[0] == L'+' ||
    +
    3248 chr[0] == L',' ||
    +
    3249 chr[0] == L';' ||
    +
    3250 chr[0] == L'=' ||
    +
    3251 chr[0] == L':' ||
    +
    3252 chr[0] == L'@' ||
    +
    3253 chr[0] == L'?' ||
    +
    3254 chr[0] == L'#') && chr[1] == 0) ||
    +
    3255 std::use_facet<std::ctype<wchar_t>>(m_locale).scan_not(std::ctype_base::alnum, chr, chr_end) == chr_end)
    3256 {
    3257 this->interval.start = start;
    3258 return true;
    @@ -3304,14 +3312,14 @@ $(function() { codefold.init(0); });
    3271 {
    3272 public:
    -
    3274 _In_ const std::shared_ptr<basic_parser<T>>& path_char,
    -
    3275 _In_ const std::shared_ptr<basic_parser<T>>& query_start,
    -
    3276 _In_ const std::shared_ptr<basic_parser<T>>& bookmark_start,
    -
    3277 _In_ const std::locale& locale = std::locale()) :
    - -
    3279 m_path_char(path_char),
    -
    3280 m_query_start(query_start),
    -
    3281 m_bookmark_start(bookmark_start)
    +
    3274 _In_ const std::shared_ptr<basic_parser<T>>& path_char,
    +
    3275 _In_ const std::shared_ptr<basic_parser<T>>& query_start,
    +
    3276 _In_ const std::shared_ptr<basic_parser<T>>& bookmark_start,
    +
    3277 _In_ const std::locale& locale = std::locale()) :
    + +
    3279 m_path_char(path_char),
    +
    3280 m_query_start(query_start),
    +
    3281 m_bookmark_start(bookmark_start)
    3282 {}
    3283
    3284 virtual void invalidate()
    @@ -3332,9 +3340,9 @@ $(function() { codefold.init(0); });
    3299 protected:
    3300 virtual bool do_match(
    3301 _In_reads_or_z_opt_(end) const T* text,
    -
    3302 _In_ size_t start = 0,
    -
    3303 _In_ size_t end = SIZE_MAX,
    -
    3304 _In_ int flags = match_default)
    +
    3302 _In_ size_t start = 0,
    +
    3303 _In_ size_t end = SIZE_MAX,
    +
    3304 _In_ int flags = match_default)
    3305 {
    3306 _Assume_(text || start >= end);
    3307
    @@ -3346,25 +3354,25 @@ $(function() { codefold.init(0); });
    3313 bookmark.end = 0;
    3314
    3315 for (;;) {
    -
    3316 if (this->interval.end >= end || !text[this->interval.end])
    +
    3316 if (this->interval.end >= end || !text[this->interval.end])
    3317 break;
    -
    3318 if (m_query_start->match(text, this->interval.end, end, flags)) {
    +
    3318 if (m_query_start->match(text, this->interval.end, end, flags)) {
    3319 path.end = this->interval.end;
    3320 query.start = this->interval.end = m_query_start->interval.end;
    3321 for (;;) {
    -
    3322 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    3322 if (this->interval.end >= end || !text[this->interval.end]) {
    3323 query.end = this->interval.end;
    3324 break;
    3325 }
    -
    3326 if (m_bookmark_start->match(text, this->interval.end, end, flags)) {
    +
    3326 if (m_bookmark_start->match(text, this->interval.end, end, flags)) {
    3327 query.end = this->interval.end;
    3328 bookmark.start = this->interval.end = m_bookmark_start->interval.end;
    3329 for (;;) {
    -
    3330 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    3330 if (this->interval.end >= end || !text[this->interval.end]) {
    3331 bookmark.end = this->interval.end;
    3332 break;
    3333 }
    -
    3334 if (m_path_char->match(text, this->interval.end, end, flags))
    +
    3334 if (m_path_char->match(text, this->interval.end, end, flags))
    3335 this->interval.end = m_path_char->interval.end;
    3336 else {
    3337 bookmark.end = this->interval.end;
    @@ -3374,7 +3382,7 @@ $(function() { codefold.init(0); });
    3341 this->interval.start = start;
    3342 return true;
    3343 }
    -
    3344 if (m_path_char->match(text, this->interval.end, end, flags))
    +
    3344 if (m_path_char->match(text, this->interval.end, end, flags))
    3345 this->interval.end = m_path_char->interval.end;
    3346 else {
    3347 query.end = this->interval.end;
    @@ -3384,15 +3392,15 @@ $(function() { codefold.init(0); });
    3351 this->interval.start = start;
    3352 return true;
    3353 }
    -
    3354 if (m_bookmark_start->match(text, this->interval.end, end, flags)) {
    +
    3354 if (m_bookmark_start->match(text, this->interval.end, end, flags)) {
    3355 path.end = this->interval.end;
    3356 bookmark.start = this->interval.end = m_bookmark_start->interval.end;
    3357 for (;;) {
    -
    3358 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    3358 if (this->interval.end >= end || !text[this->interval.end]) {
    3359 bookmark.end = this->interval.end;
    3360 break;
    3361 }
    -
    3362 if (m_path_char->match(text, this->interval.end, end, flags))
    +
    3362 if (m_path_char->match(text, this->interval.end, end, flags))
    3363 this->interval.end = m_path_char->interval.end;
    3364 else {
    3365 bookmark.end = this->interval.end;
    @@ -3402,13 +3410,13 @@ $(function() { codefold.init(0); });
    3369 this->interval.start = start;
    3370 return true;
    3371 }
    -
    3372 if (m_path_char->match(text, this->interval.end, end, flags))
    +
    3372 if (m_path_char->match(text, this->interval.end, end, flags))
    3373 this->interval.end = m_path_char->interval.end;
    3374 else
    3375 break;
    3376 }
    3377
    - +
    3378 if (start < this->interval.end) {
    3379 path.end = this->interval.end;
    3380 this->interval.start = start;
    3381 return true;
    @@ -3428,14 +3436,14 @@ $(function() { codefold.init(0); });
    3395 };
    3396
    - - + +
    3399#ifdef _UNICODE
    -
    3400 using turl_path = wurl_path;
    +
    3400 using turl_path = wurl_path;
    3401#else
    -
    3402 using turl_path = url_path;
    +
    3402 using turl_path = url_path;
    3403#endif
    - +
    3405
    3409 template <class T>
    @@ -3443,40 +3451,40 @@ $(function() { codefold.init(0); });
    3411 {
    3412 public:
    3413 basic_url(
    -
    3414 _In_ const std::shared_ptr<basic_parser<T>>& _http_scheme,
    -
    3415 _In_ const std::shared_ptr<basic_parser<T>>& _ftp_scheme,
    -
    3416 _In_ const std::shared_ptr<basic_parser<T>>& _mailto_scheme,
    -
    3417 _In_ const std::shared_ptr<basic_parser<T>>& _file_scheme,
    -
    3418 _In_ const std::shared_ptr<basic_parser<T>>& colon,
    -
    3419 _In_ const std::shared_ptr<basic_parser<T>>& slash,
    -
    3420 _In_ const std::shared_ptr<basic_parser<T>>& _username,
    -
    3421 _In_ const std::shared_ptr<basic_parser<T>>& _password,
    -
    3422 _In_ const std::shared_ptr<basic_parser<T>>& at,
    -
    3423 _In_ const std::shared_ptr<basic_parser<T>>& ip_lbracket,
    -
    3424 _In_ const std::shared_ptr<basic_parser<T>>& ip_rbracket,
    -
    3425 _In_ const std::shared_ptr<basic_parser<T>>& _ipv4_host,
    -
    3426 _In_ const std::shared_ptr<basic_parser<T>>& _ipv6_host,
    -
    3427 _In_ const std::shared_ptr<basic_parser<T>>& _dns_host,
    -
    3428 _In_ const std::shared_ptr<basic_parser<T>>& _port,
    -
    3429 _In_ const std::shared_ptr<basic_parser<T>>& _path,
    -
    3430 _In_ const std::locale& locale = std::locale()) :
    - -
    3432 http_scheme(_http_scheme),
    -
    3433 ftp_scheme(_ftp_scheme),
    -
    3434 mailto_scheme(_mailto_scheme),
    -
    3435 file_scheme(_file_scheme),
    -
    3436 m_colon(colon),
    -
    3437 m_slash(slash),
    -
    3438 username(_username),
    -
    3439 password(_password),
    +
    3414 _In_ const std::shared_ptr<basic_parser<T>>& _http_scheme,
    +
    3415 _In_ const std::shared_ptr<basic_parser<T>>& _ftp_scheme,
    +
    3416 _In_ const std::shared_ptr<basic_parser<T>>& _mailto_scheme,
    +
    3417 _In_ const std::shared_ptr<basic_parser<T>>& _file_scheme,
    +
    3418 _In_ const std::shared_ptr<basic_parser<T>>& colon,
    +
    3419 _In_ const std::shared_ptr<basic_parser<T>>& slash,
    +
    3420 _In_ const std::shared_ptr<basic_parser<T>>& _username,
    +
    3421 _In_ const std::shared_ptr<basic_parser<T>>& _password,
    +
    3422 _In_ const std::shared_ptr<basic_parser<T>>& at,
    +
    3423 _In_ const std::shared_ptr<basic_parser<T>>& ip_lbracket,
    +
    3424 _In_ const std::shared_ptr<basic_parser<T>>& ip_rbracket,
    +
    3425 _In_ const std::shared_ptr<basic_parser<T>>& _ipv4_host,
    +
    3426 _In_ const std::shared_ptr<basic_parser<T>>& _ipv6_host,
    +
    3427 _In_ const std::shared_ptr<basic_parser<T>>& _dns_host,
    +
    3428 _In_ const std::shared_ptr<basic_parser<T>>& _port,
    +
    3429 _In_ const std::shared_ptr<basic_parser<T>>& _path,
    +
    3430 _In_ const std::locale& locale = std::locale()) :
    + +
    3432 http_scheme(_http_scheme),
    +
    3433 ftp_scheme(_ftp_scheme),
    +
    3434 mailto_scheme(_mailto_scheme),
    +
    3435 file_scheme(_file_scheme),
    +
    3436 m_colon(colon),
    +
    3437 m_slash(slash),
    +
    3438 username(_username),
    +
    3439 password(_password),
    3440 m_at(at),
    -
    3441 m_ip_lbracket(ip_lbracket),
    -
    3442 m_ip_rbracket(ip_rbracket),
    -
    3443 ipv4_host(_ipv4_host),
    -
    3444 ipv6_host(_ipv6_host),
    -
    3445 dns_host(_dns_host),
    -
    3446 port(_port),
    -
    3447 path(_path)
    +
    3441 m_ip_lbracket(ip_lbracket),
    +
    3442 m_ip_rbracket(ip_rbracket),
    +
    3443 ipv4_host(_ipv4_host),
    +
    3444 ipv6_host(_ipv6_host),
    +
    3445 dns_host(_dns_host),
    +
    3446 port(_port),
    +
    3447 path(_path)
    3448 {}
    3449
    3450 virtual void invalidate()
    @@ -3510,18 +3518,18 @@ $(function() { codefold.init(0); });
    3478 protected:
    3479 virtual bool do_match(
    3480 _In_reads_or_z_opt_(end) const T* text,
    -
    3481 _In_ size_t start = 0,
    -
    3482 _In_ size_t end = SIZE_MAX,
    -
    3483 _In_ int flags = match_default)
    +
    3481 _In_ size_t start = 0,
    +
    3482 _In_ size_t end = SIZE_MAX,
    +
    3483 _In_ int flags = match_default)
    3484 {
    3485 _Assume_(text || start >= end);
    3486
    3487 this->interval.end = start;
    3488
    -
    3489 if (http_scheme->match(text, this->interval.end, end, flags) &&
    -
    3490 m_colon->match(text, http_scheme->interval.end, end, flags) &&
    -
    3491 m_slash->match(text, m_colon->interval.end, end, flags) &&
    -
    3492 m_slash->match(text, m_slash->interval.end, end, flags))
    +
    3489 if (http_scheme->match(text, this->interval.end, end, flags) &&
    +
    3490 m_colon->match(text, http_scheme->interval.end, end, flags) &&
    +
    3491 m_slash->match(text, m_colon->interval.end, end, flags) &&
    +
    3492 m_slash->match(text, m_slash->interval.end, end, flags))
    3493 {
    3494 // http://
    3495 this->interval.end = m_slash->interval.end;
    @@ -3529,10 +3537,10 @@ $(function() { codefold.init(0); });
    3497 mailto_scheme->invalidate();
    3498 file_scheme->invalidate();
    3499 }
    -
    3500 else if (ftp_scheme->match(text, this->interval.end, end, flags) &&
    -
    3501 m_colon->match(text, ftp_scheme->interval.end, end, flags) &&
    -
    3502 m_slash->match(text, m_colon->interval.end, end, flags) &&
    -
    3503 m_slash->match(text, m_slash->interval.end, end, flags))
    +
    3500 else if (ftp_scheme->match(text, this->interval.end, end, flags) &&
    +
    3501 m_colon->match(text, ftp_scheme->interval.end, end, flags) &&
    +
    3502 m_slash->match(text, m_colon->interval.end, end, flags) &&
    +
    3503 m_slash->match(text, m_slash->interval.end, end, flags))
    3504 {
    3505 // ftp://
    3506 this->interval.end = m_slash->interval.end;
    @@ -3540,8 +3548,8 @@ $(function() { codefold.init(0); });
    3508 mailto_scheme->invalidate();
    3509 file_scheme->invalidate();
    3510 }
    -
    3511 else if (mailto_scheme->match(text, this->interval.end, end, flags) &&
    -
    3512 m_colon->match(text, mailto_scheme->interval.end, end, flags))
    +
    3511 else if (mailto_scheme->match(text, this->interval.end, end, flags) &&
    +
    3512 m_colon->match(text, mailto_scheme->interval.end, end, flags))
    3513 {
    3514 // mailto:
    3515 this->interval.end = m_colon->interval.end;
    @@ -3549,10 +3557,10 @@ $(function() { codefold.init(0); });
    3517 ftp_scheme->invalidate();
    3518 file_scheme->invalidate();
    3519 }
    -
    3520 else if (file_scheme->match(text, this->interval.end, end, flags) &&
    -
    3521 m_colon->match(text, file_scheme->interval.end, end, flags) &&
    -
    3522 m_slash->match(text, m_colon->interval.end, end, flags) &&
    -
    3523 m_slash->match(text, m_slash->interval.end, end, flags))
    +
    3520 else if (file_scheme->match(text, this->interval.end, end, flags) &&
    +
    3521 m_colon->match(text, file_scheme->interval.end, end, flags) &&
    +
    3522 m_slash->match(text, m_colon->interval.end, end, flags) &&
    +
    3523 m_slash->match(text, m_slash->interval.end, end, flags))
    3524 {
    3525 // file://
    3526 this->interval.end = m_slash->interval.end;
    @@ -3569,15 +3577,15 @@ $(function() { codefold.init(0); });
    3537 }
    3538
    3539 if (ftp_scheme->interval) {
    -
    3540 if (username->match(text, this->interval.end, end, flags)) {
    -
    3541 if (m_colon->match(text, username->interval.end, end, flags) &&
    -
    3542 password->match(text, m_colon->interval.end, end, flags) &&
    -
    3543 m_at->match(text, password->interval.end, end, flags))
    +
    3540 if (username->match(text, this->interval.end, end, flags)) {
    +
    3541 if (m_colon->match(text, username->interval.end, end, flags) &&
    +
    3542 password->match(text, m_colon->interval.end, end, flags) &&
    +
    3543 m_at->match(text, password->interval.end, end, flags))
    3544 {
    3545 // Username and password
    3546 this->interval.end = m_at->interval.end;
    3547 }
    -
    3548 else if (m_at->match(text, this->interval.end, end, flags)) {
    +
    3548 else if (m_at->match(text, this->interval.end, end, flags)) {
    3549 // Username only
    3550 this->interval.end = m_at->interval.end;
    3551 password->invalidate();
    @@ -3592,23 +3600,23 @@ $(function() { codefold.init(0); });
    3560 password->invalidate();
    3561 }
    3562
    -
    3563 if (ipv4_host->match(text, this->interval.end, end, flags)) {
    +
    3563 if (ipv4_host->match(text, this->interval.end, end, flags)) {
    3564 // Host is IPv4
    3565 this->interval.end = ipv4_host->interval.end;
    3566 ipv6_host->invalidate();
    3567 dns_host->invalidate();
    3568 }
    3569 else if (
    -
    3570 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    -
    3571 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3572 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    +
    3570 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    +
    3571 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3572 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    3573 {
    3574 // Host is IPv6
    3575 this->interval.end = m_ip_rbracket->interval.end;
    3576 ipv4_host->invalidate();
    3577 dns_host->invalidate();
    3578 }
    -
    3579 else if (dns_host->match(text, this->interval.end, end, flags)) {
    +
    3579 else if (dns_host->match(text, this->interval.end, end, flags)) {
    3580 // Host is hostname
    3581 this->interval.end = dns_host->interval.end;
    3582 ipv4_host->invalidate();
    @@ -3619,8 +3627,8 @@ $(function() { codefold.init(0); });
    3587 return false;
    3588 }
    3589
    -
    3590 if (m_colon->match(text, this->interval.end, end, flags) &&
    -
    3591 port->match(text, m_colon->interval.end, end, flags))
    +
    3590 if (m_colon->match(text, this->interval.end, end, flags) &&
    +
    3591 port->match(text, m_colon->interval.end, end, flags))
    3592 {
    3593 // Port
    3594 this->interval.end = port->interval.end;
    @@ -3628,7 +3636,7 @@ $(function() { codefold.init(0); });
    3596 else
    3597 port->invalidate();
    3598
    -
    3599 if (path->match(text, this->interval.end, end, flags)) {
    +
    3599 if (path->match(text, this->interval.end, end, flags)) {
    3600 // Path
    3601 this->interval.end = path->interval.end;
    3602 }
    @@ -3638,8 +3646,8 @@ $(function() { codefold.init(0); });
    3606 }
    3607
    3608 if (mailto_scheme->interval) {
    -
    3609 if (username->match(text, this->interval.end, end, flags) &&
    -
    3610 m_at->match(text, username->interval.end, end, flags))
    +
    3609 if (username->match(text, this->interval.end, end, flags) &&
    +
    3610 m_at->match(text, username->interval.end, end, flags))
    3611 {
    3612 // Username
    3613 this->interval.end = m_at->interval.end;
    @@ -3649,9 +3657,9 @@ $(function() { codefold.init(0); });
    3617 return false;
    3618 }
    3619
    -
    3620 if (m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    -
    3621 ipv4_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3622 m_ip_rbracket->match(text, ipv4_host->interval.end, end, flags))
    +
    3620 if (m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    +
    3621 ipv4_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3622 m_ip_rbracket->match(text, ipv4_host->interval.end, end, flags))
    3623 {
    3624 // Host is IPv4
    3625 this->interval.end = m_ip_rbracket->interval.end;
    @@ -3659,16 +3667,16 @@ $(function() { codefold.init(0); });
    3627 dns_host->invalidate();
    3628 }
    3629 else if (
    -
    3630 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    -
    3631 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3632 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    +
    3630 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    +
    3631 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3632 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    3633 {
    3634 // Host is IPv6
    3635 this->interval.end = m_ip_rbracket->interval.end;
    3636 ipv4_host->invalidate();
    3637 dns_host->invalidate();
    3638 }
    -
    3639 else if (dns_host->match(text, this->interval.end, end, flags)) {
    +
    3639 else if (dns_host->match(text, this->interval.end, end, flags)) {
    3640 // Host is hostname
    3641 this->interval.end = dns_host->interval.end;
    3642 ipv4_host->invalidate();
    @@ -3687,7 +3695,7 @@ $(function() { codefold.init(0); });
    3655 }
    3656
    3657 if (file_scheme->interval) {
    -
    3658 if (path->match(text, this->interval.end, end, flags)) {
    +
    3658 if (path->match(text, this->interval.end, end, flags)) {
    3659 // Path
    3660 this->interval.end = path->interval.end;
    3661 }
    @@ -3706,16 +3714,16 @@ $(function() { codefold.init(0); });
    3674
    3675 // If "http://" explicit, test for username&password.
    3676 if (http_scheme->interval &&
    -
    3677 username->match(text, this->interval.end, end, flags))
    +
    3677 username->match(text, this->interval.end, end, flags))
    3678 {
    -
    3679 if (m_colon->match(text, username->interval.end, end, flags) &&
    -
    3680 password->match(text, m_colon->interval.end, end, flags) &&
    -
    3681 m_at->match(text, password->interval.end, end, flags))
    +
    3679 if (m_colon->match(text, username->interval.end, end, flags) &&
    +
    3680 password->match(text, m_colon->interval.end, end, flags) &&
    +
    3681 m_at->match(text, password->interval.end, end, flags))
    3682 {
    3683 // Username and password
    3684 this->interval.end = m_at->interval.end;
    3685 }
    -
    3686 else if (m_at->match(text, username->interval.end, end, flags)) {
    +
    3686 else if (m_at->match(text, username->interval.end, end, flags)) {
    3687 // Username only
    3688 this->interval.end = m_at->interval.end;
    3689 password->invalidate();
    @@ -3730,23 +3738,23 @@ $(function() { codefold.init(0); });
    3698 password->invalidate();
    3699 }
    3700
    -
    3701 if (ipv4_host->match(text, this->interval.end, end, flags)) {
    +
    3701 if (ipv4_host->match(text, this->interval.end, end, flags)) {
    3702 // Host is IPv4
    3703 this->interval.end = ipv4_host->interval.end;
    3704 ipv6_host->invalidate();
    3705 dns_host->invalidate();
    3706 }
    3707 else if (
    -
    3708 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    -
    3709 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3710 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    +
    3708 m_ip_lbracket->match(text, this->interval.end, end, flags) &&
    +
    3709 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3710 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    3711 {
    3712 // Host is IPv6
    3713 this->interval.end = m_ip_rbracket->interval.end;
    3714 ipv4_host->invalidate();
    3715 dns_host->invalidate();
    3716 }
    -
    3717 else if (dns_host->match(text, this->interval.end, end, flags)) {
    +
    3717 else if (dns_host->match(text, this->interval.end, end, flags)) {
    3718 // Host is hostname
    3719 this->interval.end = dns_host->interval.end;
    3720 ipv4_host->invalidate();
    @@ -3757,8 +3765,8 @@ $(function() { codefold.init(0); });
    3725 return false;
    3726 }
    3727
    -
    3728 if (m_colon->match(text, this->interval.end, end, flags) &&
    -
    3729 port->match(text, m_colon->interval.end, end, flags))
    +
    3728 if (m_colon->match(text, this->interval.end, end, flags) &&
    +
    3729 port->match(text, m_colon->interval.end, end, flags))
    3730 {
    3731 // Port
    3732 this->interval.end = port->interval.end;
    @@ -3766,7 +3774,7 @@ $(function() { codefold.init(0); });
    3734 else
    3735 port->invalidate();
    3736
    -
    3737 if (path->match(text, this->interval.end, end, flags)) {
    +
    3737 if (path->match(text, this->interval.end, end, flags)) {
    3738 // Path
    3739 this->interval.end = path->interval.end;
    3740 }
    @@ -3783,14 +3791,14 @@ $(function() { codefold.init(0); });
    3751 };
    3752
    -
    3753 using url = basic_url<char>;
    -
    3754 using wurl = basic_url<wchar_t>;
    +
    3753 using url = basic_url<char>;
    +
    3754 using wurl = basic_url<wchar_t>;
    3755#ifdef _UNICODE
    -
    3756 using turl = wurl;
    +
    3756 using turl = wurl;
    3757#else
    -
    3758 using turl = url;
    +
    3758 using turl = url;
    3759#endif
    -
    3760 using sgml_url = basic_url<char>;
    +
    3760 using sgml_url = basic_url<char>;
    3761
    3765 template <class T>
    @@ -3798,22 +3806,22 @@ $(function() { codefold.init(0); });
    3767 {
    3768 public:
    -
    3770 _In_ const std::shared_ptr<basic_parser<T>>& _username,
    -
    3771 _In_ const std::shared_ptr<basic_parser<T>>& at,
    -
    3772 _In_ const std::shared_ptr<basic_parser<T>>& ip_lbracket,
    -
    3773 _In_ const std::shared_ptr<basic_parser<T>>& ip_rbracket,
    -
    3774 _In_ const std::shared_ptr<basic_parser<T>>& _ipv4_host,
    -
    3775 _In_ const std::shared_ptr<basic_parser<T>>& _ipv6_host,
    -
    3776 _In_ const std::shared_ptr<basic_parser<T>>& _dns_host,
    -
    3777 _In_ const std::locale& locale = std::locale()) :
    - -
    3779 username(_username),
    +
    3770 _In_ const std::shared_ptr<basic_parser<T>>& _username,
    +
    3771 _In_ const std::shared_ptr<basic_parser<T>>& at,
    +
    3772 _In_ const std::shared_ptr<basic_parser<T>>& ip_lbracket,
    +
    3773 _In_ const std::shared_ptr<basic_parser<T>>& ip_rbracket,
    +
    3774 _In_ const std::shared_ptr<basic_parser<T>>& _ipv4_host,
    +
    3775 _In_ const std::shared_ptr<basic_parser<T>>& _ipv6_host,
    +
    3776 _In_ const std::shared_ptr<basic_parser<T>>& _dns_host,
    +
    3777 _In_ const std::locale& locale = std::locale()) :
    + +
    3779 username(_username),
    3780 m_at(at),
    -
    3781 m_ip_lbracket(ip_lbracket),
    -
    3782 m_ip_rbracket(ip_rbracket),
    -
    3783 ipv4_host(_ipv4_host),
    -
    3784 ipv6_host(_ipv6_host),
    -
    3785 dns_host(_dns_host)
    +
    3781 m_ip_lbracket(ip_lbracket),
    +
    3782 m_ip_rbracket(ip_rbracket),
    +
    3783 ipv4_host(_ipv4_host),
    +
    3784 ipv6_host(_ipv6_host),
    +
    3785 dns_host(_dns_host)
    3786 {}
    3787
    3788 virtual void invalidate()
    @@ -3833,19 +3841,19 @@ $(function() { codefold.init(0); });
    3802 protected:
    3803 virtual bool do_match(
    3804 _In_reads_or_z_opt_(end) const T* text,
    -
    3805 _In_ size_t start = 0,
    -
    3806 _In_ size_t end = SIZE_MAX,
    -
    3807 _In_ int flags = match_default)
    +
    3805 _In_ size_t start = 0,
    +
    3806 _In_ size_t end = SIZE_MAX,
    +
    3807 _In_ int flags = match_default)
    3808 {
    3809 _Assume_(text || start >= end);
    3810
    -
    3811 if (username->match(text, start, end, flags) &&
    -
    3812 m_at->match(text, username->interval.end, end, flags))
    +
    3811 if (username->match(text, start, end, flags) &&
    +
    3812 m_at->match(text, username->interval.end, end, flags))
    3813 {
    3814 // Username@
    -
    3815 if (m_ip_lbracket->match(text, m_at->interval.end, end, flags) &&
    -
    3816 ipv4_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3817 m_ip_rbracket->match(text, ipv4_host->interval.end, end, flags))
    +
    3815 if (m_ip_lbracket->match(text, m_at->interval.end, end, flags) &&
    +
    3816 ipv4_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3817 m_ip_rbracket->match(text, ipv4_host->interval.end, end, flags))
    3818 {
    3819 // Host is IPv4
    3820 this->interval.end = m_ip_rbracket->interval.end;
    @@ -3853,28 +3861,28 @@ $(function() { codefold.init(0); });
    3822 dns_host->invalidate();
    3823 }
    3824 else if (
    -
    3825 m_ip_lbracket->match(text, m_at->interval.end, end, flags) &&
    -
    3826 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    -
    3827 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    +
    3825 m_ip_lbracket->match(text, m_at->interval.end, end, flags) &&
    +
    3826 ipv6_host->match(text, m_ip_lbracket->interval.end, end, flags) &&
    +
    3827 m_ip_rbracket->match(text, ipv6_host->interval.end, end, flags))
    3828 {
    3829 // Host is IPv6
    3830 this->interval.end = m_ip_rbracket->interval.end;
    3831 ipv4_host->invalidate();
    3832 dns_host->invalidate();
    3833 }
    -
    3834 else if (dns_host->match(text, m_at->interval.end, end, flags)) {
    +
    3834 else if (dns_host->match(text, m_at->interval.end, end, flags)) {
    3835 // Host is hostname
    3836 this->interval.end = dns_host->interval.end;
    3837 ipv4_host->invalidate();
    3838 ipv6_host->invalidate();
    3839 }
    3840 else
    -
    3841 goto error;
    +
    3841 goto error;
    3842 this->interval.start = start;
    3843 return true;
    3844 }
    3845
    -
    3846 error:
    +
    3846 error:
    3847 invalidate();
    3848 return false;
    3849 }
    @@ -3885,14 +3893,14 @@ $(function() { codefold.init(0); });
    3854 };
    3855
    - - + +
    3858#ifdef _UNICODE
    - +
    3860#else
    - +
    3862#endif
    - +
    3864
    3868 template <class T>
    @@ -3900,23 +3908,23 @@ $(function() { codefold.init(0); });
    3870 {
    3871 public:
    -
    3873 _In_ const std::shared_ptr<basic_parser<T>>& _emoticon,
    -
    3874 _In_ const std::shared_ptr<basic_parser<T>>& _apex,
    -
    3875 _In_ const std::shared_ptr<basic_parser<T>>& _eyes,
    -
    3876 _In_ const std::shared_ptr<basic_parser<T>>& _nose,
    -
    3877 _In_ const std::shared_ptr<basic_set<T>>& _mouth,
    -
    3878 _In_ const std::locale& locale = std::locale()) :
    - - -
    3881 apex(_apex),
    -
    3882 eyes(_eyes),
    -
    3883 nose(_nose),
    -
    3884 mouth(_mouth)
    +
    3873 _In_ const std::shared_ptr<basic_parser<T>>& _emoticon,
    +
    3874 _In_ const std::shared_ptr<basic_parser<T>>& _apex,
    +
    3875 _In_ const std::shared_ptr<basic_parser<T>>& _eyes,
    +
    3876 _In_ const std::shared_ptr<basic_parser<T>>& _nose,
    +
    3877 _In_ const std::shared_ptr<basic_set<T>>& _mouth,
    +
    3878 _In_ const std::locale& locale = std::locale()) :
    + +
    3880 emoticon(_emoticon),
    +
    3881 apex(_apex),
    +
    3882 eyes(_eyes),
    +
    3883 nose(_nose),
    +
    3884 mouth(_mouth)
    3885 {}
    3886
    3887 virtual void invalidate()
    3888 {
    -
    3889 if (emoticon) emoticon->invalidate();
    +
    3889 if (emoticon) emoticon->invalidate();
    3890 if (apex) apex->invalidate();
    3891 eyes->invalidate();
    3892 if (nose) nose->invalidate();
    @@ -3933,56 +3941,56 @@ $(function() { codefold.init(0); });
    3903 protected:
    3904 virtual bool do_match(
    3905 _In_reads_or_z_opt_(end) const T* text,
    -
    3906 _In_ size_t start = 0,
    -
    3907 _In_ size_t end = SIZE_MAX,
    -
    3908 _In_ int flags = match_default)
    +
    3906 _In_ size_t start = 0,
    +
    3907 _In_ size_t end = SIZE_MAX,
    +
    3908 _In_ int flags = match_default)
    3909 {
    3910 _Assume_(text || start >= end);
    3911
    -
    3912 if (emoticon && emoticon->match(text, start, end, flags)) {
    +
    3912 if (emoticon && emoticon->match(text, start, end, flags)) {
    3913 if (apex) apex->invalidate();
    3914 eyes->invalidate();
    3915 if (nose) nose->invalidate();
    3916 mouth->invalidate();
    3917 this->interval.start = start;
    -
    3918 this->interval.end = emoticon->interval.end;
    +
    3918 this->interval.end = emoticon->interval.end;
    3919 return true;
    3920 }
    3921
    3922 this->interval.end = start;
    3923
    -
    3924 if (apex && apex->match(text, this->interval.end, end, flags))
    +
    3924 if (apex && apex->match(text, this->interval.end, end, flags))
    3925 this->interval.end = apex->interval.end;
    3926
    -
    3927 if (eyes->match(text, this->interval.end, end, flags)) {
    -
    3928 if (nose && nose->match(text, eyes->interval.end, end, flags) &&
    -
    3929 mouth->match(text, nose->interval.end, end, flags))
    +
    3927 if (eyes->match(text, this->interval.end, end, flags)) {
    +
    3928 if (nose && nose->match(text, eyes->interval.end, end, flags) &&
    +
    3929 mouth->match(text, nose->interval.end, end, flags))
    3930 {
    3931 size_t
    - +
    3932 start_mouth = mouth->interval.start,
    3933 hit_offset = mouth->hit_offset;
    3934 // Mouth may repeat :-)))))))
    -
    3935 for (this->interval.end = mouth->interval.end; mouth->match(text, this->interval.end, end, flags) && mouth->hit_offset == hit_offset; this->interval.end = mouth->interval.end);
    -
    3936 mouth->interval.start = start_mouth;
    -
    3937 mouth->interval.end = this->interval.end;
    +
    3935 for (this->interval.end = mouth->interval.end; mouth->match(text, this->interval.end, end, flags) && mouth->hit_offset == hit_offset; this->interval.end = mouth->interval.end);
    +
    3936 mouth->interval.start = start_mouth;
    +
    3937 mouth->interval.end = this->interval.end;
    3938 this->interval.start = start;
    3939 return true;
    3940 }
    -
    3941 if (mouth->match(text, eyes->interval.end, end, flags)) {
    +
    3941 if (mouth->match(text, eyes->interval.end, end, flags)) {
    3942 size_t
    - +
    3943 start_mouth = mouth->interval.start,
    3944 hit_offset = mouth->hit_offset;
    3945 // Mouth may repeat :-)))))))
    -
    3946 for (this->interval.end = mouth->interval.end; mouth->match(text, this->interval.end, end, flags) && mouth->hit_offset == hit_offset; this->interval.end = mouth->interval.end);
    +
    3946 for (this->interval.end = mouth->interval.end; mouth->match(text, this->interval.end, end, flags) && mouth->hit_offset == hit_offset; this->interval.end = mouth->interval.end);
    3947 if (nose) nose->invalidate();
    -
    3948 mouth->interval.start = start_mouth;
    -
    3949 mouth->interval.end = this->interval.end;
    +
    3948 mouth->interval.start = start_mouth;
    +
    3949 mouth->interval.end = this->interval.end;
    3950 this->interval.start = start;
    3951 return true;
    3952 }
    3953 }
    3954
    -
    3955 if (emoticon) emoticon->invalidate();
    +
    3955 if (emoticon) emoticon->invalidate();
    3956 if (apex) apex->invalidate();
    3957 eyes->invalidate();
    3958 if (nose) nose->invalidate();
    @@ -4019,19 +4027,19 @@ $(function() { codefold.init(0); });
    3993 {
    3994 public:
    3995 basic_date(
    -
    3996 _In_ int format_mask,
    -
    3997 _In_ const std::shared_ptr<basic_integer<T>>& _day,
    -
    3998 _In_ const std::shared_ptr<basic_integer<T>>& _month,
    -
    3999 _In_ const std::shared_ptr<basic_integer<T>>& _year,
    -
    4000 _In_ const std::shared_ptr<basic_set<T>>& separator,
    -
    4001 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    4002 _In_ const std::locale& locale = std::locale()) :
    - +
    3996 _In_ int format_mask,
    +
    3997 _In_ const std::shared_ptr<basic_integer<T>>& _day,
    +
    3998 _In_ const std::shared_ptr<basic_integer<T>>& _month,
    +
    3999 _In_ const std::shared_ptr<basic_integer<T>>& _year,
    +
    4000 _In_ const std::shared_ptr<basic_set<T>>& separator,
    +
    4001 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    4002 _In_ const std::locale& locale = std::locale()) :
    +
    4004 format(date_format_none),
    -
    4005 m_format_mask(format_mask),
    -
    4006 day(_day),
    -
    4007 month(_month),
    -
    4008 year(_year),
    +
    4005 m_format_mask(format_mask),
    +
    4006 day(_day),
    +
    4007 month(_month),
    +
    4008 year(_year),
    4009 m_separator(separator),
    4010 m_space(space)
    4011 {}
    @@ -4053,26 +4061,26 @@ $(function() { codefold.init(0); });
    4027 protected:
    4028 virtual bool do_match(
    4029 _In_reads_or_z_opt_(end) const T* text,
    -
    4030 _In_ size_t start = 0,
    -
    4031 _In_ size_t end = SIZE_MAX,
    -
    4032 _In_ int flags = match_default)
    +
    4030 _In_ size_t start = 0,
    +
    4031 _In_ size_t end = SIZE_MAX,
    +
    4032 _In_ int flags = match_default)
    4033 {
    4034 _Assume_(text || start >= end);
    4035
    -
    4036 const int space_match_flags = flags & ~match_multiline; // Spaces in dates must never be broken in new line.
    +
    4036 const int space_match_flags = flags & ~match_multiline; // Spaces in dates must never be broken in new line.
    4037 if ((m_format_mask & date_format_dmy) == date_format_dmy) {
    -
    4038 if (day->match(text, start, end, flags)) {
    -
    4039 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4040 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4038 if (day->match(text, start, end, flags)) {
    +
    4039 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4040 if (m_separator->match(text, this->interval.end, end, flags)) {
    4041 size_t hit_offset = m_separator->hit_offset;
    -
    4042 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4043 if (month->match(text, this->interval.end, end, flags)) {
    -
    4044 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4045 if (m_separator->match(text, this->interval.end, end, flags) &&
    +
    4042 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4043 if (month->match(text, this->interval.end, end, flags)) {
    +
    4044 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4045 if (m_separator->match(text, this->interval.end, end, flags) &&
    4046 m_separator->hit_offset == hit_offset) // Both separators must match.
    4047 {
    -
    4048 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4049 if (year->match(text, this->interval.end, end, flags) &&
    +
    4048 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4049 if (year->match(text, this->interval.end, end, flags) &&
    4050 is_valid(day->value, month->value))
    4051 {
    4052 this->interval.start = start;
    @@ -4087,18 +4095,18 @@ $(function() { codefold.init(0); });
    4061 }
    4062
    4063 if ((m_format_mask & date_format_mdy) == date_format_mdy) {
    -
    4064 if (month->match(text, start, end, flags)) {
    -
    4065 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4066 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4064 if (month->match(text, start, end, flags)) {
    +
    4065 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4066 if (m_separator->match(text, this->interval.end, end, flags)) {
    4067 size_t hit_offset = m_separator->hit_offset;
    -
    4068 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4069 if (day->match(text, this->interval.end, end, flags)) {
    -
    4070 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4071 if (m_separator->match(text, this->interval.end, end, flags) &&
    +
    4068 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4069 if (day->match(text, this->interval.end, end, flags)) {
    +
    4070 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4071 if (m_separator->match(text, this->interval.end, end, flags) &&
    4072 m_separator->hit_offset == hit_offset) // Both separators must match.
    4073 {
    -
    4074 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4075 if (year->match(text, this->interval.end, end, flags) &&
    +
    4074 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4075 if (year->match(text, this->interval.end, end, flags) &&
    4076 is_valid(day->value, month->value))
    4077 {
    4078 this->interval.start = start;
    @@ -4113,18 +4121,18 @@ $(function() { codefold.init(0); });
    4087 }
    4088
    4089 if ((m_format_mask & date_format_ymd) == date_format_ymd) {
    -
    4090 if (year->match(text, start, end, flags)) {
    -
    4091 for (this->interval.end = year->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4092 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4090 if (year->match(text, start, end, flags)) {
    +
    4091 for (this->interval.end = year->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4092 if (m_separator->match(text, this->interval.end, end, flags)) {
    4093 size_t hit_offset = m_separator->hit_offset;
    -
    4094 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4095 if (month->match(text, this->interval.end, end, flags)) {
    -
    4096 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4097 if (m_separator->match(text, this->interval.end, end, flags) &&
    +
    4094 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4095 if (month->match(text, this->interval.end, end, flags)) {
    +
    4096 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4097 if (m_separator->match(text, this->interval.end, end, flags) &&
    4098 m_separator->hit_offset == hit_offset) // Both separators must match.
    4099 {
    -
    4100 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4101 if (day->match(text, this->interval.end, end, flags) &&
    +
    4100 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4101 if (day->match(text, this->interval.end, end, flags) &&
    4102 is_valid(day->value, month->value))
    4103 {
    4104 this->interval.start = start;
    @@ -4139,12 +4147,12 @@ $(function() { codefold.init(0); });
    4113 }
    4114
    4115 if ((m_format_mask & date_format_ym) == date_format_ym) {
    -
    4116 if (year->match(text, start, end, flags)) {
    -
    4117 for (this->interval.end = year->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4118 if (m_separator->match(text, this->interval.end, end, flags)) {
    -
    4119 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4120 if (month->match(text, this->interval.end, end, flags) &&
    -
    4121 is_valid(SIZE_MAX, month->value))
    +
    4116 if (year->match(text, start, end, flags)) {
    +
    4117 for (this->interval.end = year->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4118 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4119 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4120 if (month->match(text, this->interval.end, end, flags) &&
    +
    4121 is_valid(SIZE_MAX, month->value))
    4122 {
    4123 if (day) day->invalidate();
    4124 this->interval.start = start;
    @@ -4157,12 +4165,12 @@ $(function() { codefold.init(0); });
    4131 }
    4132
    4133 if ((m_format_mask & date_format_my) == date_format_my) {
    -
    4134 if (month->match(text, start, end, flags)) {
    -
    4135 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4136 if (m_separator->match(text, this->interval.end, end, flags)) {
    -
    4137 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4138 if (year->match(text, this->interval.end, end, flags) &&
    -
    4139 is_valid(SIZE_MAX, month->value))
    +
    4134 if (month->match(text, start, end, flags)) {
    +
    4135 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4136 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4137 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4138 if (year->match(text, this->interval.end, end, flags) &&
    +
    4139 is_valid(SIZE_MAX, month->value))
    4140 {
    4141 if (day) day->invalidate();
    4142 this->interval.start = start;
    @@ -4175,18 +4183,18 @@ $(function() { codefold.init(0); });
    4149 }
    4150
    4151 if ((m_format_mask & date_format_dm) == date_format_dm) {
    -
    4152 if (day->match(text, start, end, flags)) {
    -
    4153 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4154 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4152 if (day->match(text, start, end, flags)) {
    +
    4153 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4154 if (m_separator->match(text, this->interval.end, end, flags)) {
    4155 size_t hit_offset = m_separator->hit_offset;
    -
    4156 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4157 if (month->match(text, this->interval.end, end, flags) &&
    +
    4156 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4157 if (month->match(text, this->interval.end, end, flags) &&
    4158 is_valid(day->value, month->value))
    4159 {
    4160 if (year) year->invalidate();
    4161 this->interval.start = start;
    -
    4162 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4163 if (m_separator->match(text, this->interval.end, end, flags) &&
    +
    4162 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4163 if (m_separator->match(text, this->interval.end, end, flags) &&
    4164 m_separator->hit_offset == hit_offset) // Both separators must match.
    4165 this->interval.end = m_separator->interval.end;
    4166 else
    @@ -4199,18 +4207,18 @@ $(function() { codefold.init(0); });
    4173 }
    4174
    4175 if ((m_format_mask & date_format_md) == date_format_md) {
    -
    4176 if (month->match(text, start, end, flags)) {
    -
    4177 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4178 if (m_separator->match(text, this->interval.end, end, flags)) {
    +
    4176 if (month->match(text, start, end, flags)) {
    +
    4177 for (this->interval.end = month->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4178 if (m_separator->match(text, this->interval.end, end, flags)) {
    4179 size_t hit_offset = m_separator->hit_offset;
    -
    4180 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4181 if (day->match(text, this->interval.end, end, flags) &&
    +
    4180 for (this->interval.end = m_separator->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4181 if (day->match(text, this->interval.end, end, flags) &&
    4182 is_valid(day->value, month->value))
    4183 {
    4184 if (year) year->invalidate();
    4185 this->interval.start = start;
    -
    4186 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    -
    4187 if (m_separator->match(text, this->interval.end, end, flags) &&
    +
    4186 for (this->interval.end = day->interval.end; m_space->match(text, this->interval.end, end, space_match_flags); this->interval.end = m_space->interval.end);
    +
    4187 if (m_separator->match(text, this->interval.end, end, flags) &&
    4188 m_separator->hit_offset == hit_offset) // Both separators must match.
    4189 this->interval.end = m_separator->interval.end;
    4190 else
    @@ -4232,11 +4240,11 @@ $(function() { codefold.init(0); });
    4206
    4207 static bool is_valid(size_t day, size_t month)
    4208 {
    -
    4209 if (month == SIZE_MAX) {
    +
    4209 if (month == SIZE_MAX) {
    4210 // Default to January. This allows validating day only, as January has all 31 days.
    4211 month = 1;
    4212 }
    -
    4213 if (day == SIZE_MAX) {
    +
    4213 if (day == SIZE_MAX) {
    4214 // Default to 1st day in month. This allows validating month only, as each month has 1st day.
    4215 day = 1;
    4216 }
    @@ -4268,14 +4276,14 @@ $(function() { codefold.init(0); });
    4242 };
    4243
    -
    4244 using date = basic_date<char>;
    -
    4245 using wdate = basic_date<wchar_t>;
    +
    4244 using date = basic_date<char>;
    +
    4245 using wdate = basic_date<wchar_t>;
    4246#ifdef _UNICODE
    -
    4247 using tdate = wdate;
    +
    4247 using tdate = wdate;
    4248#else
    -
    4249 using tdate = date;
    +
    4249 using tdate = date;
    4250#endif
    - +
    4252
    4256 template <class T>
    @@ -4283,20 +4291,20 @@ $(function() { codefold.init(0); });
    4258 {
    4259 public:
    4260 basic_time(
    -
    4261 _In_ const std::shared_ptr<basic_integer10<T>>& _hour,
    -
    4262 _In_ const std::shared_ptr<basic_integer10<T>>& _minute,
    -
    4263 _In_ const std::shared_ptr<basic_integer10<T>>& _second,
    -
    4264 _In_ const std::shared_ptr<basic_integer10<T>>& _millisecond,
    -
    4265 _In_ const std::shared_ptr<basic_set<T>>& separator,
    -
    4266 _In_ const std::shared_ptr<basic_parser<T>>& millisecond_separator,
    -
    4267 _In_ const std::locale& locale = std::locale()) :
    - -
    4269 hour(_hour),
    -
    4270 minute(_minute),
    -
    4271 second(_second),
    -
    4272 millisecond(_millisecond),
    +
    4261 _In_ const std::shared_ptr<basic_integer10<T>>& _hour,
    +
    4262 _In_ const std::shared_ptr<basic_integer10<T>>& _minute,
    +
    4263 _In_ const std::shared_ptr<basic_integer10<T>>& _second,
    +
    4264 _In_ const std::shared_ptr<basic_integer10<T>>& _millisecond,
    +
    4265 _In_ const std::shared_ptr<basic_set<T>>& separator,
    +
    4266 _In_ const std::shared_ptr<basic_parser<T>>& millisecond_separator,
    +
    4267 _In_ const std::locale& locale = std::locale()) :
    + +
    4269 hour(_hour),
    +
    4270 minute(_minute),
    +
    4271 second(_second),
    +
    4272 millisecond(_millisecond),
    4273 m_separator(separator),
    -
    4274 m_millisecond_separator(millisecond_separator)
    +
    4274 m_millisecond_separator(millisecond_separator)
    4275 {}
    4276
    4277 virtual void invalidate()
    @@ -4316,27 +4324,27 @@ $(function() { codefold.init(0); });
    4291 protected:
    4292 virtual bool do_match(
    4293 _In_reads_or_z_opt_(end) const T* text,
    -
    4294 _In_ size_t start = 0,
    -
    4295 _In_ size_t end = SIZE_MAX,
    -
    4296 _In_ int flags = match_default)
    +
    4294 _In_ size_t start = 0,
    +
    4295 _In_ size_t end = SIZE_MAX,
    +
    4296 _In_ int flags = match_default)
    4297 {
    4298 _Assume_(text || start >= end);
    4299
    -
    4300 if (hour->match(text, start, end, flags) &&
    -
    4301 m_separator->match(text, hour->interval.end, end, flags) &&
    -
    4302 minute->match(text, m_separator->interval.end, end, flags) &&
    +
    4300 if (hour->match(text, start, end, flags) &&
    +
    4301 m_separator->match(text, hour->interval.end, end, flags) &&
    +
    4302 minute->match(text, m_separator->interval.end, end, flags) &&
    4303 minute->value < 60)
    4304 {
    4305 // hh::mm
    4306 size_t hit_offset = m_separator->hit_offset;
    -
    4307 if (m_separator->match(text, minute->interval.end, end, flags) &&
    +
    4307 if (m_separator->match(text, minute->interval.end, end, flags) &&
    4308 m_separator->hit_offset == hit_offset && // Both separators must match.
    -
    4309 second && second->match(text, m_separator->interval.end, end, flags) &&
    +
    4309 second && second->match(text, m_separator->interval.end, end, flags) &&
    4310 second->value < 60)
    4311 {
    4312 // hh::mm:ss
    -
    4313 if (m_millisecond_separator && m_millisecond_separator->match(text, second->interval.end, end, flags) &&
    -
    4314 millisecond && millisecond->match(text, m_millisecond_separator->interval.end, end, flags) &&
    +
    4313 if (m_millisecond_separator && m_millisecond_separator->match(text, second->interval.end, end, flags) &&
    +
    4314 millisecond && millisecond->match(text, m_millisecond_separator->interval.end, end, flags) &&
    4315 millisecond->value < 1000)
    4316 {
    4317 // hh::mm:ss.mmmm
    @@ -4369,14 +4377,14 @@ $(function() { codefold.init(0); });
    4344 };
    4345
    -
    4346 using time = basic_time<char>;
    -
    4347 using wtime = basic_time<wchar_t>;
    +
    4346 using time = basic_time<char>;
    +
    4347 using wtime = basic_time<wchar_t>;
    4348#ifdef _UNICODE
    -
    4349 using ttime = wtime;
    +
    4349 using ttime = wtime;
    4350#else
    -
    4351 using ttime = time;
    +
    4351 using ttime = time;
    4352#endif
    - +
    4354
    4358 template <class T>
    @@ -4384,22 +4392,22 @@ $(function() { codefold.init(0); });
    4360 {
    4361 public:
    -
    4363 _In_ const std::shared_ptr<basic_integer10<T>>& _degree,
    -
    4364 _In_ const std::shared_ptr<basic_parser<T>>& _degree_separator,
    -
    4365 _In_ const std::shared_ptr<basic_integer10<T>>& _minute,
    -
    4366 _In_ const std::shared_ptr<basic_parser<T>>& _minute_separator,
    -
    4367 _In_ const std::shared_ptr<basic_integer10<T>>& _second,
    -
    4368 _In_ const std::shared_ptr<basic_parser<T>>& _second_separator,
    -
    4369 _In_ const std::shared_ptr<basic_parser<T>>& _decimal,
    -
    4370 _In_ const std::locale& locale = std::locale()) :
    - -
    4372 degree(_degree),
    -
    4373 degree_separator(_degree_separator),
    -
    4374 minute(_minute),
    -
    4375 minute_separator(_minute_separator),
    -
    4376 second(_second),
    -
    4377 second_separator(_second_separator),
    -
    4378 decimal(_decimal)
    +
    4363 _In_ const std::shared_ptr<basic_integer10<T>>& _degree,
    +
    4364 _In_ const std::shared_ptr<basic_parser<T>>& _degree_separator,
    +
    4365 _In_ const std::shared_ptr<basic_integer10<T>>& _minute,
    +
    4366 _In_ const std::shared_ptr<basic_parser<T>>& _minute_separator,
    +
    4367 _In_ const std::shared_ptr<basic_integer10<T>>& _second,
    +
    4368 _In_ const std::shared_ptr<basic_parser<T>>& _second_separator,
    +
    4369 _In_ const std::shared_ptr<basic_parser<T>>& _decimal,
    +
    4370 _In_ const std::locale& locale = std::locale()) :
    + +
    4372 degree(_degree),
    +
    4373 degree_separator(_degree_separator),
    +
    4374 minute(_minute),
    +
    4375 minute_separator(_minute_separator),
    +
    4376 second(_second),
    +
    4377 second_separator(_second_separator),
    +
    4378 decimal(_decimal)
    4379 {}
    4380
    4381 virtual void invalidate()
    @@ -4425,16 +4433,16 @@ $(function() { codefold.init(0); });
    4401 protected:
    4402 virtual bool do_match(
    4403 _In_reads_or_z_opt_(end) const T* text,
    -
    4404 _In_ size_t start = 0,
    -
    4405 _In_ size_t end = SIZE_MAX,
    -
    4406 _In_ int flags = match_default)
    +
    4404 _In_ size_t start = 0,
    +
    4405 _In_ size_t end = SIZE_MAX,
    +
    4406 _In_ int flags = match_default)
    4407 {
    4408 _Assume_(text || start >= end);
    4409
    4410 this->interval.end = start;
    4411
    -
    4412 if (degree->match(text, this->interval.end, end, flags) &&
    -
    4413 degree_separator->match(text, degree->interval.end, end, flags))
    +
    4412 if (degree->match(text, this->interval.end, end, flags) &&
    +
    4413 degree_separator->match(text, degree->interval.end, end, flags))
    4414 {
    4415 // Degrees
    4416 this->interval.end = degree_separator->interval.end;
    @@ -4444,9 +4452,9 @@ $(function() { codefold.init(0); });
    4420 degree_separator->invalidate();
    4421 }
    4422
    -
    4423 if (minute->match(text, this->interval.end, end, flags) &&
    +
    4423 if (minute->match(text, this->interval.end, end, flags) &&
    4424 minute->value < 60 &&
    -
    4425 minute_separator->match(text, minute->interval.end, end, flags))
    +
    4425 minute_separator->match(text, minute->interval.end, end, flags))
    4426 {
    4427 // Minutes
    4428 this->interval.end = minute_separator->interval.end;
    @@ -4456,12 +4464,12 @@ $(function() { codefold.init(0); });
    4432 minute_separator->invalidate();
    4433 }
    4434
    -
    4435 if (second && second->match(text, this->interval.end, end, flags) &&
    +
    4435 if (second && second->match(text, this->interval.end, end, flags) &&
    4436 second->value < 60)
    4437 {
    4438 // Seconds
    4439 this->interval.end = second->interval.end;
    -
    4440 if (second_separator && second_separator->match(text, this->interval.end, end, flags))
    +
    4440 if (second_separator && second_separator->match(text, this->interval.end, end, flags))
    4441 this->interval.end = second_separator->interval.end;
    4442 else
    4443 if (second_separator) second_separator->invalidate();
    @@ -4475,7 +4483,7 @@ $(function() { codefold.init(0); });
    4451 minute->interval.start < minute->interval.end ||
    4452 (second && second->interval.start < second->interval.end))
    4453 {
    -
    4454 if (decimal && decimal->match(text, this->interval.end, end, flags)) {
    +
    4454 if (decimal && decimal->match(text, this->interval.end, end, flags)) {
    4455 // Decimals
    4456 this->interval.end = decimal->interval.end;
    4457 }
    @@ -4491,14 +4499,14 @@ $(function() { codefold.init(0); });
    4467 };
    4468
    -
    4469 using angle = basic_angle<char>;
    - +
    4469 using angle = basic_angle<char>;
    +
    4471#ifdef _UNICODE
    -
    4472 using RRegElKot = wangle;
    +
    4472 using RRegElKot = wangle;
    4473#else
    -
    4474 using RRegElKot = angle;
    +
    4474 using RRegElKot = angle;
    4475#endif
    - +
    4477
    4481 template <class T>
    @@ -4506,18 +4514,18 @@ $(function() { codefold.init(0); });
    4483 {
    4484 public:
    -
    4486 _In_ const std::shared_ptr<basic_parser<T>>& digit,
    -
    4487 _In_ const std::shared_ptr<basic_parser<T>>& plus_sign,
    -
    4488 _In_ const std::shared_ptr<basic_set<T>>& lparenthesis,
    -
    4489 _In_ const std::shared_ptr<basic_set<T>>& rparenthesis,
    -
    4490 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    -
    4491 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    4492 _In_ const std::locale& locale = std::locale()) :
    - -
    4494 m_digit(digit),
    -
    4495 m_plus_sign(plus_sign),
    -
    4496 m_lparenthesis(lparenthesis),
    -
    4497 m_rparenthesis(rparenthesis),
    +
    4486 _In_ const std::shared_ptr<basic_parser<T>>& digit,
    +
    4487 _In_ const std::shared_ptr<basic_parser<T>>& plus_sign,
    +
    4488 _In_ const std::shared_ptr<basic_set<T>>& lparenthesis,
    +
    4489 _In_ const std::shared_ptr<basic_set<T>>& rparenthesis,
    +
    4490 _In_ const std::shared_ptr<basic_parser<T>>& separator,
    +
    4491 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    4492 _In_ const std::locale& locale = std::locale()) :
    + +
    4494 m_digit(digit),
    +
    4495 m_plus_sign(plus_sign),
    +
    4496 m_lparenthesis(lparenthesis),
    +
    4497 m_rparenthesis(rparenthesis),
    4498 m_separator(separator),
    4499 m_space(space)
    4500 {}
    @@ -4533,97 +4541,97 @@ $(function() { codefold.init(0); });
    4510 protected:
    4511 virtual bool do_match(
    4512 _In_reads_or_z_opt_(end) const T* text,
    -
    4513 _In_ size_t start = 0,
    -
    4514 _In_ size_t end = SIZE_MAX,
    -
    4515 _In_ int flags = match_default)
    +
    4513 _In_ size_t start = 0,
    +
    4514 _In_ size_t end = SIZE_MAX,
    +
    4515 _In_ int flags = match_default)
    4516 {
    4517 _Assume_(text || start >= end);
    4518
    -
    4519 size_t safe_digit_end = start, safe_value_size = 0;
    -
    4520 bool has_digits = false, after_digit = false, in_parentheses = false, after_parentheses = false;
    -
    4521 const int space_match_flags = flags & ~match_multiline; // Spaces in phone numbers must never be broken in new line.
    +
    4519 size_t safe_digit_end = start, safe_value_size = 0;
    +
    4520 bool has_digits = false, after_digit = false, in_parentheses = false, after_parentheses = false;
    +
    4521 const int space_match_flags = flags & ~match_multiline; // Spaces in phone numbers must never be broken in new line.
    4522
    4523 this->interval.end = start;
    4524 value.clear();
    4525 m_lparenthesis->invalidate();
    4526 m_rparenthesis->invalidate();
    4527
    -
    4528 if (m_plus_sign && m_plus_sign->match(text, this->interval.end, end, flags)) {
    +
    4528 if (m_plus_sign && m_plus_sign->match(text, this->interval.end, end, flags)) {
    4529 value.append(text + m_plus_sign->interval.start, text + m_plus_sign->interval.end);
    -
    4530 safe_value_size = value.size();
    +
    4530 safe_value_size = value.size();
    4531 this->interval.end = m_plus_sign->interval.end;
    4532 }
    4533
    4534 for (;;) {
    4535 _Assume_(text || this->interval.end >= end);
    -
    4536 if (this->interval.end >= end || !text[this->interval.end])
    +
    4536 if (this->interval.end >= end || !text[this->interval.end])
    4537 break;
    -
    4538 if (m_digit->match(text, this->interval.end, end, flags)) {
    +
    4538 if (m_digit->match(text, this->interval.end, end, flags)) {
    4539 // Digit
    4540 value.append(text + m_digit->interval.start, text + m_digit->interval.end);
    4541 this->interval.end = m_digit->interval.end;
    -
    4542 if (!in_parentheses) {
    -
    4543 safe_digit_end = this->interval.end;
    -
    4544 safe_value_size = value.size();
    +
    4542 if (!in_parentheses) {
    +
    4543 safe_digit_end = this->interval.end;
    +
    4544 safe_value_size = value.size();
    4545 has_digits = true;
    4546 }
    -
    4547 after_digit = true;
    -
    4548 after_parentheses = false;
    +
    4547 after_digit = true;
    +
    4548 after_parentheses = false;
    4549 }
    4550 else if (
    4551 m_lparenthesis && !m_lparenthesis->interval && // No left parenthesis yet
    4552 m_rparenthesis && !m_rparenthesis->interval && // Right parenthesis after left
    -
    4553 m_lparenthesis->match(text, this->interval.end, end, flags))
    +
    4553 m_lparenthesis->match(text, this->interval.end, end, flags))
    4554 {
    4555 // Left parenthesis
    4556 value.append(text + m_lparenthesis->interval.start, m_lparenthesis->interval.size());
    4557 this->interval.end = m_lparenthesis->interval.end;
    -
    4558 in_parentheses = true;
    -
    4559 after_digit = false;
    -
    4560 after_parentheses = false;
    +
    4558 in_parentheses = true;
    +
    4559 after_digit = false;
    +
    4560 after_parentheses = false;
    4561 }
    4562 else if (
    -
    4563 in_parentheses && // After left parenthesis
    +
    4563 in_parentheses && // After left parenthesis
    4564 m_rparenthesis && !m_rparenthesis->interval && // No right parenthesis yet
    -
    4565 m_rparenthesis->match(text, this->interval.end, end, flags) &&
    +
    4565 m_rparenthesis->match(text, this->interval.end, end, flags) &&
    4566 m_lparenthesis->hit_offset == m_rparenthesis->hit_offset) // Left and right parentheses must match
    4567 {
    4568 // Right parenthesis
    4569 value.append(text + m_rparenthesis->interval.start, text + m_rparenthesis->interval.end);
    4570 this->interval.end = m_rparenthesis->interval.end;
    -
    4571 safe_digit_end = this->interval.end;
    -
    4572 safe_value_size = value.size();
    -
    4573 in_parentheses = false;
    -
    4574 after_digit = false;
    -
    4575 after_parentheses = true;
    +
    4571 safe_digit_end = this->interval.end;
    +
    4572 safe_value_size = value.size();
    +
    4573 in_parentheses = false;
    +
    4574 after_digit = false;
    +
    4575 after_parentheses = true;
    4576 }
    4577 else if (
    -
    4578 after_digit &&
    -
    4579 !in_parentheses && // No separators inside parentheses
    -
    4580 !after_parentheses && // No separators following right parenthesis
    -
    4581 m_separator && m_separator->match(text, this->interval.end, end, flags))
    +
    4578 after_digit &&
    +
    4579 !in_parentheses && // No separators inside parentheses
    +
    4580 !after_parentheses && // No separators following right parenthesis
    +
    4581 m_separator && m_separator->match(text, this->interval.end, end, flags))
    4582 {
    4583 // Separator
    4584 this->interval.end = m_separator->interval.end;
    -
    4585 after_digit = false;
    -
    4586 after_parentheses = false;
    +
    4585 after_digit = false;
    +
    4586 after_parentheses = false;
    4587 }
    4588 else if (
    - -
    4590 m_space && m_space->match(text, this->interval.end, end, space_match_flags))
    +
    4589 (after_digit || after_parentheses) &&
    +
    4590 m_space && m_space->match(text, this->interval.end, end, space_match_flags))
    4591 {
    4592 // Space
    4593 this->interval.end = m_space->interval.end;
    -
    4594 after_digit = false;
    -
    4595 after_parentheses = false;
    +
    4594 after_digit = false;
    +
    4595 after_parentheses = false;
    4596 }
    4597 else
    4598 break;
    4599 }
    4600 if (has_digits) {
    -
    4601 value.erase(safe_value_size);
    +
    4601 value.erase(safe_value_size);
    4602 this->interval.start = start;
    -
    4603 this->interval.end = safe_digit_end;
    +
    4603 this->interval.end = safe_digit_end;
    4604 return true;
    4605 }
    4606 value.clear();
    @@ -4655,9 +4663,9 @@ $(function() { codefold.init(0); });
    4635 {
    4636 public:
    4637 basic_iban(
    -
    4638 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    4639 _In_ const std::locale& locale = std::locale()) :
    - +
    4638 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    4639 _In_ const std::locale& locale = std::locale()) :
    +
    4641 m_space(space)
    4642 {
    4643 this->country[0] = 0;
    @@ -4683,19 +4691,19 @@ $(function() { codefold.init(0); });
    4663 protected:
    4664 virtual bool do_match(
    4665 _In_reads_or_z_opt_(end) const T* text,
    -
    4666 _In_ size_t start = 0,
    -
    4667 _In_ size_t end = SIZE_MAX,
    -
    4668 _In_ int flags = match_default)
    +
    4666 _In_ size_t start = 0,
    +
    4667 _In_ size_t end = SIZE_MAX,
    +
    4668 _In_ int flags = match_default)
    4669 {
    4670 _Assume_(text || start >= end);
    -
    4671 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    4672 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    -
    4673 struct country_t {
    +
    4671 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    4672 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    +
    4673 struct country_t {
    4674 T country[2];
    4675 T check_digits[2];
    4676 size_t length;
    4677 };
    -
    4678 static const country_t s_countries[] = {
    +
    4678 static const country_t s_countries[] = {
    4679 { { 'A', 'D' }, {}, 24 }, // Andorra
    4680 { { 'A', 'E' }, {}, 23 }, // United Arab Emirates
    4681 { { 'A', 'L' }, {}, 28 }, // Albania
    @@ -4803,121 +4811,121 @@ $(function() { codefold.init(0); });
    4783 { { 'V', 'G' }, {}, 24 }, // Virgin Islands, British
    4784 { { 'X', 'K' }, {}, 20 }, // Kosovo
    4785 };
    -
    4786 const country_t* country_desc = nullptr;
    -
    4787 size_t n, available, next, bban_length;
    - +
    4786 const country_t* country_desc = nullptr;
    +
    4787 size_t n, available, next, bban_length;
    +
    4788 uint32_t nominator;
    4789
    4790 this->interval.end = start;
    4791 for (size_t i = 0; i < 2; ++i, ++this->interval.end) {
    -
    4792 if (this->interval.end >= end || !text[this->interval.end])
    -
    4793 goto error; // incomplete country code
    -
    4794 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    -
    4795 if (chr < 'A' || 'Z' < chr)
    -
    4796 goto error; // invalid country code
    -
    4797 this->country[i] = chr;
    +
    4792 if (this->interval.end >= end || !text[this->interval.end])
    +
    4793 goto error; // incomplete country code
    +
    4794 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    +
    4795 if (chr < 'A' || 'Z' < chr)
    +
    4796 goto error; // invalid country code
    +
    4797 this->country[i] = chr;
    4798 }
    -
    4799 for (size_t l = 0, r = _countof(s_countries);;) {
    -
    4800 if (l >= r)
    -
    4801 goto error; // unknown country
    -
    4802 size_t m = (l + r) / 2;
    -
    4803 const country_t& c = s_countries[m];
    -
    4804 if (c.country[0] < this->country[0] || (c.country[0] == this->country[0] && c.country[1] < this->country[1]))
    -
    4805 l = m + 1;
    -
    4806 else if (this->country[0] < c.country[0] || (this->country[0] == c.country[0] && this->country[1] < c.country[1]))
    -
    4807 r = m;
    +
    4799 for (size_t l = 0, r = _countof(s_countries);;) {
    +
    4800 if (l >= r)
    +
    4801 goto error; // unknown country
    +
    4802 size_t m = (l + r) / 2;
    +
    4803 const country_t& c = s_countries[m];
    +
    4804 if (c.country[0] < this->country[0] || (c.country[0] == this->country[0] && c.country[1] < this->country[1]))
    +
    4805 l = m + 1;
    +
    4806 else if (this->country[0] < c.country[0] || (this->country[0] == c.country[0] && this->country[1] < c.country[1]))
    +
    4807 r = m;
    4808 else {
    -
    4809 country_desc = &c;
    +
    4809 country_desc = &c;
    4810 break;
    4811 }
    4812 }
    4813 this->country[2] = 0;
    4814
    4815 for (size_t i = 0; i < 2; ++i, ++this->interval.end) {
    -
    4816 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    -
    4817 goto error; // incomplete or invalid check digits
    +
    4816 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    +
    4817 goto error; // incomplete or invalid check digits
    4818 this->check_digits[i] = text[this->interval.end];
    4819 }
    4820 this->check_digits[2] = 0;
    4821
    -
    4822 if ((country_desc->check_digits[0] && this->check_digits[0] != country_desc->check_digits[0]) ||
    -
    4823 (country_desc->check_digits[1] && this->check_digits[1] != country_desc->check_digits[1]))
    -
    4824 goto error; // unexpected check digits
    +
    4822 if ((country_desc->check_digits[0] && this->check_digits[0] != country_desc->check_digits[0]) ||
    +
    4823 (country_desc->check_digits[1] && this->check_digits[1] != country_desc->check_digits[1]))
    +
    4824 goto error; // unexpected check digits
    4825
    -
    4826 bban_length = country_desc->length - 4;
    -
    4827 for (n = 0; n < bban_length;) {
    -
    4828 if (this->interval.end >= end || !text[this->interval.end])
    -
    4829 goto error; // bban too short
    -
    4830 if (m_space && m_space->match(text, this->interval.end, end, flags)) {
    +
    4826 bban_length = country_desc->length - 4;
    +
    4827 for (n = 0; n < bban_length;) {
    +
    4828 if (this->interval.end >= end || !text[this->interval.end])
    +
    4829 goto error; // bban too short
    +
    4830 if (m_space && m_space->match(text, this->interval.end, end, flags)) {
    4831 this->interval.end = m_space->interval.end;
    4832 continue;
    4833 }
    -
    4834 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    -
    4835 if (('0' <= chr && chr <= '9') || ('A' <= chr && chr <= 'Z')) {
    -
    4836 this->bban[n++] = chr;
    +
    4834 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    +
    4835 if (('0' <= chr && chr <= '9') || ('A' <= chr && chr <= 'Z')) {
    +
    4836 this->bban[n++] = chr;
    4837 this->interval.end++;
    4838 }
    4839 else
    -
    4840 goto error; // invalid bban
    +
    4840 goto error; // invalid bban
    4841 }
    -
    4842 this->bban[n] = 0;
    +
    4842 this->bban[n] = 0;
    4843
    4844 // Normalize IBAN.
    -
    4845 T normalized[69];
    -
    4846 available = 0;
    +
    4845 T normalized[69];
    +
    4846 available = 0;
    4847 for (size_t i = 0; ; ++i) {
    4848 if (!this->bban[i]) {
    4849 for (i = 0; i < 2; ++i) {
    4850 if ('A' <= this->country[i] && this->country[i] <= 'J') {
    -
    4851 normalized[available++] = '1';
    -
    4852 normalized[available++] = '0' + this->country[i] - 'A';
    +
    4851 normalized[available++] = '1';
    +
    4852 normalized[available++] = '0' + this->country[i] - 'A';
    4853 }
    4854 else if ('K' <= this->country[i] && this->country[i] <= 'T') {
    -
    4855 normalized[available++] = '2';
    -
    4856 normalized[available++] = '0' + this->country[i] - 'K';
    +
    4855 normalized[available++] = '2';
    +
    4856 normalized[available++] = '0' + this->country[i] - 'K';
    4857 }
    4858 else if ('U' <= this->country[i] && this->country[i] <= 'Z') {
    -
    4859 normalized[available++] = '3';
    -
    4860 normalized[available++] = '0' + this->country[i] - 'U';
    +
    4859 normalized[available++] = '3';
    +
    4860 normalized[available++] = '0' + this->country[i] - 'U';
    4861 }
    4862 }
    -
    4863 normalized[available++] = this->check_digits[0];
    -
    4864 normalized[available++] = this->check_digits[1];
    -
    4865 normalized[available] = 0;
    +
    4863 normalized[available++] = this->check_digits[0];
    +
    4864 normalized[available++] = this->check_digits[1];
    +
    4865 normalized[available] = 0;
    4866 break;
    4867 }
    4868 if ('0' <= this->bban[i] && this->bban[i] <= '9')
    -
    4869 normalized[available++] = this->bban[i];
    +
    4869 normalized[available++] = this->bban[i];
    4870 else if ('A' <= this->bban[i] && this->bban[i] <= 'J') {
    -
    4871 normalized[available++] = '1';
    -
    4872 normalized[available++] = '0' + this->bban[i] - 'A';
    +
    4871 normalized[available++] = '1';
    +
    4872 normalized[available++] = '0' + this->bban[i] - 'A';
    4873 }
    4874 else if ('K' <= this->bban[i] && this->bban[i] <= 'T') {
    -
    4875 normalized[available++] = '2';
    -
    4876 normalized[available++] = '0' + this->bban[i] - 'K';
    +
    4875 normalized[available++] = '2';
    +
    4876 normalized[available++] = '0' + this->bban[i] - 'K';
    4877 }
    4878 else if ('U' <= this->bban[i] && this->bban[i] <= 'Z') {
    -
    4879 normalized[available++] = '3';
    -
    4880 normalized[available++] = '0' + this->bban[i] - 'U';
    +
    4879 normalized[available++] = '3';
    +
    4880 normalized[available++] = '0' + this->bban[i] - 'U';
    4881 }
    4882 }
    4883
    4884 // Calculate modulo 97.
    -
    4885 nominator = stdex::strtou32(normalized, 9, &next, 10);
    +
    4885 nominator = stdex::strtou32(normalized, 9, &next, 10);
    4886 for (;;) {
    -
    4887 nominator %= 97;
    -
    4888 if (!normalized[next]) {
    -
    4889 this->is_valid = nominator == 1;
    +
    4887 nominator %= 97;
    +
    4888 if (!normalized[next]) {
    +
    4889 this->is_valid = nominator == 1;
    4890 break;
    4891 }
    -
    4892 size_t digit_count = nominator == 0 ? 0 : nominator < 10 ? 1 : 2;
    -
    4893 for (; digit_count < 9 && normalized[next]; ++next, ++digit_count)
    -
    4894 nominator = nominator * 10 + static_cast<uint32_t>(normalized[next] - '0');
    +
    4892 size_t digit_count = nominator == 0 ? 0 : nominator < 10 ? 1 : 2;
    +
    4893 for (; digit_count < 9 && normalized[next]; ++next, ++digit_count)
    +
    4894 nominator = nominator * 10 + static_cast<uint32_t>(normalized[next] - '0');
    4895 }
    4896
    4897 this->interval.start = start;
    4898 return true;
    4899
    -
    4900 error:
    +
    4900 error:
    4901 invalidate();
    4902 return false;
    4903 }
    @@ -4941,9 +4949,9 @@ $(function() { codefold.init(0); });
    4924 {
    4925 public:
    -
    4927 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    4928 _In_ const std::locale& locale = std::locale()) :
    - +
    4927 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    4928 _In_ const std::locale& locale = std::locale()) :
    +
    4930 m_space(space)
    4931 {
    4932 this->check_digits[0] = 0;
    @@ -4966,103 +4974,103 @@ $(function() { codefold.init(0); });
    4949 protected:
    4950 virtual bool do_match(
    4951 _In_reads_or_z_opt_(end) const T* text,
    -
    4952 _In_ size_t start = 0,
    -
    4953 _In_ size_t end = SIZE_MAX,
    -
    4954 _In_ int flags = match_default)
    +
    4952 _In_ size_t start = 0,
    +
    4953 _In_ size_t end = SIZE_MAX,
    +
    4954 _In_ int flags = match_default)
    4955 {
    4956 _Assume_(text || start >= end);
    -
    4957 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    4958 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    -
    4959 size_t n, available, next;
    - +
    4957 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    4958 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    +
    4959 size_t n, available, next;
    +
    4960 uint32_t nominator;
    4961
    4962 this->interval.end = start;
    4963 if (this->interval.end + 1 >= end ||
    -
    4964 (case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end]) != 'R' ||
    -
    4965 (case_insensitive ? ctype.toupper(text[this->interval.end + 1]) : text[this->interval.end + 1]) != 'F')
    -
    4966 goto error; // incomplete or wrong reference ID
    +
    4964 (case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end]) != 'R' ||
    +
    4965 (case_insensitive ? ctype.toupper(text[this->interval.end + 1]) : text[this->interval.end + 1]) != 'F')
    +
    4966 goto error; // incomplete or wrong reference ID
    4967 this->interval.end += 2;
    4968
    4969 for (size_t i = 0; i < 2; ++i, ++this->interval.end) {
    -
    4970 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    -
    4971 goto error; // incomplete or invalid check digits
    +
    4970 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    +
    4971 goto error; // incomplete or invalid check digits
    4972 this->check_digits[i] = text[this->interval.end];
    4973 }
    4974 this->check_digits[2] = 0;
    4975
    -
    4976 for (n = 0;;) {
    -
    4977 if (m_space && m_space->match(text, this->interval.end, end, flags))
    +
    4976 for (n = 0;;) {
    +
    4977 if (m_space && m_space->match(text, this->interval.end, end, flags))
    4978 this->interval.end = m_space->interval.end;
    -
    4979 for (size_t j = 0; j < 4; ++j) {
    -
    4980 if (this->interval.end >= end || !text[this->interval.end])
    -
    4981 goto out;
    -
    4982 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    -
    4983 if (('0' <= chr && chr <= '9') || ('A' <= chr && chr <= 'Z')) {
    -
    4984 if (n >= _countof(reference) - 1)
    -
    4985 goto error; // reference overflow
    -
    4986 this->reference[n++] = chr;
    +
    4979 for (size_t j = 0; j < 4; ++j) {
    +
    4980 if (this->interval.end >= end || !text[this->interval.end])
    +
    4981 goto out;
    +
    4982 T chr = case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end];
    +
    4983 if (('0' <= chr && chr <= '9') || ('A' <= chr && chr <= 'Z')) {
    +
    4984 if (n >= _countof(reference) - 1)
    +
    4985 goto error; // reference overflow
    +
    4986 this->reference[n++] = chr;
    4987 this->interval.end++;
    4988 }
    4989 else
    -
    4990 goto out;
    +
    4990 goto out;
    4991 }
    4992 }
    -
    4993 out:
    -
    4994 if (!n)
    -
    4995 goto error; // reference too short
    +
    4993 out:
    +
    4994 if (!n)
    +
    4995 goto error; // reference too short
    4996 this->reference[_countof(this->reference) - 1] = 0;
    -
    4997 for (size_t i = n, j = _countof(this->reference) - 1; i;)
    -
    4998 this->reference[--j] = this->reference[--i];
    -
    4999 for (size_t j = _countof(this->reference) - 1 - n; j;)
    -
    5000 this->reference[--j] = '0';
    +
    4997 for (size_t i = n, j = _countof(this->reference) - 1; i;)
    +
    4998 this->reference[--j] = this->reference[--i];
    +
    4999 for (size_t j = _countof(this->reference) - 1 - n; j;)
    +
    5000 this->reference[--j] = '0';
    5001
    5002 // Normalize creditor reference.
    -
    5003 T normalized[47];
    -
    5004 available = 0;
    +
    5003 T normalized[47];
    +
    5004 available = 0;
    5005 for (size_t i = 0; ; ++i) {
    5006 if (!this->reference[i]) {
    -
    5007 normalized[available++] = '2'; // R
    -
    5008 normalized[available++] = '7';
    -
    5009 normalized[available++] = '1'; // F
    -
    5010 normalized[available++] = '5';
    -
    5011 normalized[available++] = this->check_digits[0];
    -
    5012 normalized[available++] = this->check_digits[1];
    -
    5013 normalized[available] = 0;
    +
    5007 normalized[available++] = '2'; // R
    +
    5008 normalized[available++] = '7';
    +
    5009 normalized[available++] = '1'; // F
    +
    5010 normalized[available++] = '5';
    +
    5011 normalized[available++] = this->check_digits[0];
    +
    5012 normalized[available++] = this->check_digits[1];
    +
    5013 normalized[available] = 0;
    5014 break;
    5015 }
    5016 if ('0' <= this->reference[i] && this->reference[i] <= '9')
    -
    5017 normalized[available++] = this->reference[i];
    +
    5017 normalized[available++] = this->reference[i];
    5018 else if ('A' <= this->reference[i] && this->reference[i] <= 'J') {
    -
    5019 normalized[available++] = '1';
    -
    5020 normalized[available++] = '0' + this->reference[i] - 'A';
    +
    5019 normalized[available++] = '1';
    +
    5020 normalized[available++] = '0' + this->reference[i] - 'A';
    5021 }
    5022 else if ('K' <= this->reference[i] && this->reference[i] <= 'T') {
    -
    5023 normalized[available++] = '2';
    -
    5024 normalized[available++] = '0' + this->reference[i] - 'K';
    +
    5023 normalized[available++] = '2';
    +
    5024 normalized[available++] = '0' + this->reference[i] - 'K';
    5025 }
    5026 else if ('U' <= this->reference[i] && this->reference[i] <= 'Z') {
    -
    5027 normalized[available++] = '3';
    -
    5028 normalized[available++] = '0' + this->reference[i] - 'U';
    +
    5027 normalized[available++] = '3';
    +
    5028 normalized[available++] = '0' + this->reference[i] - 'U';
    5029 }
    5030 }
    5031
    5032 // Calculate modulo 97.
    -
    5033 nominator = stdex::strtou32(normalized, 9, &next, 10);
    +
    5033 nominator = stdex::strtou32(normalized, 9, &next, 10);
    5034 for (;;) {
    -
    5035 nominator %= 97;
    -
    5036 if (!normalized[next]) {
    -
    5037 this->is_valid = nominator == 1;
    +
    5035 nominator %= 97;
    +
    5036 if (!normalized[next]) {
    +
    5037 this->is_valid = nominator == 1;
    5038 break;
    5039 }
    -
    5040 size_t digit_count = nominator == 0 ? 0 : nominator < 10 ? 1 : 2;
    -
    5041 for (; digit_count < 9 && normalized[next]; ++next, ++digit_count)
    -
    5042 nominator = nominator * 10 + static_cast<uint32_t>(normalized[next] - '0');
    +
    5040 size_t digit_count = nominator == 0 ? 0 : nominator < 10 ? 1 : 2;
    +
    5041 for (; digit_count < 9 && normalized[next]; ++next, ++digit_count)
    +
    5042 nominator = nominator * 10 + static_cast<uint32_t>(normalized[next] - '0');
    5043 }
    5044
    5045 this->interval.start = start;
    5046 return true;
    5047
    -
    5048 error:
    +
    5048 error:
    5049 invalidate();
    5050 return false;
    5051 }
    @@ -5085,26 +5093,26 @@ $(function() { codefold.init(0); });
    5072 {
    5073 public:
    -
    5074 basic_si_reference_part(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    5074 basic_si_reference_part(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    5075
    5076 protected:
    5077 virtual bool do_match(
    5078 _In_reads_or_z_opt_(end) const T* text,
    -
    5079 _In_ size_t start = 0,
    -
    5080 _In_ size_t end = SIZE_MAX,
    -
    5081 _In_ int flags = match_default)
    +
    5079 _In_ size_t start = 0,
    +
    5080 _In_ size_t end = SIZE_MAX,
    +
    5081 _In_ int flags = match_default)
    5082 {
    5083 _Assume_(text || start >= end);
    5084 this->interval.end = start;
    5085 for (;;) {
    -
    5086 if (this->interval.end >= end || !text[this->interval.end])
    +
    5086 if (this->interval.end >= end || !text[this->interval.end])
    5087 break;
    -
    5088 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9')
    +
    5088 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9')
    5089 this->interval.end++;
    5090 else
    5091 break;
    5092 }
    - +
    5093 if (start < this->interval.end) {
    5094 this->interval.start = start;
    5095 return true;
    5096 }
    @@ -5114,28 +5122,28 @@ $(function() { codefold.init(0); });
    5100 };
    5101
    - - + +
    5104#ifdef _UNICODE
    - +
    5106#else
    - +
    5108#endif
    - +
    5110
    5116 template <class T>
    5118 {
    5119 public:
    -
    5120 basic_si_reference_delimiter(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    +
    5120 basic_si_reference_delimiter(_In_ const std::locale& locale = std::locale()) : basic_parser<T>(locale) {}
    5121
    5122 protected:
    5123 virtual bool do_match(
    5124 _In_reads_or_z_opt_(end) const T* text,
    -
    5125 _In_ size_t start = 0,
    -
    5126 _In_ size_t end = SIZE_MAX,
    -
    5127 _In_ int flags = match_default)
    +
    5125 _In_ size_t start = 0,
    +
    5126 _In_ size_t end = SIZE_MAX,
    +
    5127 _In_ int flags = match_default)
    5128 {
    5129 _Assume_(text || start >= end);
    5130 if (start < end && text[start] == '-') {
    @@ -5148,14 +5156,14 @@ $(function() { codefold.init(0); });
    5137 };
    5138
    - - + +
    5141#ifdef _UNICODE
    - +
    5143#else
    - +
    5145#endif
    - +
    5147
    5155 template <class T>
    @@ -5163,9 +5171,9 @@ $(function() { codefold.init(0); });
    5157 {
    5158 public:
    -
    5160 _In_ const std::shared_ptr<basic_parser<T>>& space,
    -
    5161 _In_ const std::locale& locale = std::locale()) :
    - +
    5160 _In_ const std::shared_ptr<basic_parser<T>>& space,
    +
    5161 _In_ const std::locale& locale = std::locale()) :
    +
    5163 part1(locale),
    5164 part2(locale),
    5165 part3(locale),
    @@ -5187,32 +5195,32 @@ $(function() { codefold.init(0); });
    5181 }
    5182
    5183 T model[3];
    - - - + + +
    5188
    5189 protected:
    5190 virtual bool do_match(
    5191 _In_reads_or_z_opt_(end) const T* text,
    -
    5192 _In_ size_t start = 0,
    -
    5193 _In_ size_t end = SIZE_MAX,
    -
    5194 _In_ int flags = match_default)
    +
    5192 _In_ size_t start = 0,
    +
    5193 _In_ size_t end = SIZE_MAX,
    +
    5194 _In_ int flags = match_default)
    5195 {
    5196 _Assume_(text || start >= end);
    -
    5197 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    5198 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    +
    5197 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    5198 const bool case_insensitive = flags & match_case_insensitive ? true : false;
    5199
    5200 this->interval.end = start;
    5201 if (this->interval.end + 1 >= end ||
    -
    5202 (case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end]) != 'S' ||
    -
    5203 (case_insensitive ? ctype.toupper(text[this->interval.end + 1]) : text[this->interval.end + 1]) != 'I')
    -
    5204 goto error; // incomplete or wrong reference ID
    +
    5202 (case_insensitive ? ctype.toupper(text[this->interval.end]) : text[this->interval.end]) != 'S' ||
    +
    5203 (case_insensitive ? ctype.toupper(text[this->interval.end + 1]) : text[this->interval.end + 1]) != 'I')
    +
    5204 goto error; // incomplete or wrong reference ID
    5205 this->interval.end += 2;
    5206
    5207 for (size_t i = 0; i < 2; ++i, ++this->interval.end) {
    -
    5208 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    -
    5209 goto error; // incomplete or invalid model
    +
    5208 if (this->interval.end >= end || text[this->interval.end] < '0' || '9' < text[this->interval.end])
    +
    5209 goto error; // incomplete or invalid model
    5210 this->model[i] = text[this->interval.end];
    5211 }
    5212 this->model[2] = 0;
    @@ -5226,14 +5234,14 @@ $(function() { codefold.init(0); });
    5220 return true;
    5221 }
    5222
    -
    5223 if (m_space && m_space->match(text, this->interval.end, end, flags))
    +
    5223 if (m_space && m_space->match(text, this->interval.end, end, flags))
    5224 this->interval.end = m_space->interval.end;
    5225
    -
    5226 this->part1.match(text, this->interval.end, end, flags) &&
    -
    5227 this->m_delimiter.match(text, this->part1.interval.end, end, flags) &&
    -
    5228 this->part2.match(text, this->m_delimiter.interval.end, end, flags) &&
    -
    5229 this->m_delimiter.match(text, this->part2.interval.end, end, flags) &&
    -
    5230 this->part3.match(text, this->m_delimiter.interval.end, end, flags);
    +
    5226 this->part1.match(text, this->interval.end, end, flags) &&
    +
    5227 this->m_delimiter.match(text, this->part1.interval.end, end, flags) &&
    +
    5228 this->part2.match(text, this->m_delimiter.interval.end, end, flags) &&
    +
    5229 this->m_delimiter.match(text, this->part2.interval.end, end, flags) &&
    +
    5230 this->part3.match(text, this->m_delimiter.interval.end, end, flags);
    5231
    5232 this->interval.start = start;
    5233 if (this->part3.interval)
    @@ -5262,57 +5270,57 @@ $(function() { codefold.init(0); });
    5256 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5257 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    5258 check11(
    -
    5259 text + this->part1.interval.start, this->part1.interval.size(),
    -
    5260 text + this->part2.interval.start, this->part2.interval.size(),
    -
    5261 text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5259 text + this->part1.interval.start, this->part1.interval.size(),
    +
    5260 text + this->part2.interval.start, this->part2.interval.size(),
    +
    5261 text + this->part3.interval.start, this->part3.interval.size()) :
    5262 this->part2.interval ?
    5263 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5264 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    5265 check11(
    -
    5266 text + this->part1.interval.start, this->part1.interval.size(),
    -
    5267 text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5266 text + this->part1.interval.start, this->part1.interval.size(),
    +
    5267 text + this->part2.interval.start, this->part2.interval.size()) :
    5268 this->part1.interval ?
    5269 this->part1.interval.size() <= 12 &&
    -
    5270 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5270 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5271 false;
    5272 else if (this->model[0] == '0' && this->model[1] == '2')
    5273 is_valid =
    5274 this->part3.interval ?
    5275 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5276 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5277 check11(text + this->part2.interval.start, this->part2.interval.size()) &&
    -
    5278 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5277 check11(text + this->part2.interval.start, this->part2.interval.size()) &&
    +
    5278 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    5279 false;
    5280 else if (this->model[0] == '0' && this->model[1] == '3')
    5281 is_valid =
    5282 this->part3.interval ?
    5283 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5284 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5285 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    -
    5286 check11(text + this->part2.interval.start, this->part2.interval.size()) &&
    -
    5287 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5285 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5286 check11(text + this->part2.interval.start, this->part2.interval.size()) &&
    +
    5287 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    5288 false;
    5289 else if (this->model[0] == '0' && this->model[1] == '4')
    5290 is_valid =
    5291 this->part3.interval ?
    5292 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5293 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5294 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    -
    5295 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5294 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5295 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    5296 false;
    5297 else if ((this->model[0] == '0' || this->model[0] == '5') && this->model[1] == '5')
    5298 is_valid =
    5299 this->part3.interval ?
    5300 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5301 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5302 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5302 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5303 this->part2.interval ?
    5304 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5305 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5306 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5306 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5307 this->part1.interval ?
    5308 this->part1.interval.size() <= 12 &&
    -
    5309 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5309 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5310 false;
    5311 else if (this->model[0] == '0' && this->model[1] == '6')
    5312 is_valid =
    @@ -5320,23 +5328,23 @@ $(function() { codefold.init(0); });
    5314 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5315 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    5316 check11(
    -
    5317 text + this->part2.interval.start, this->part2.interval.size(),
    -
    5318 text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5317 text + this->part2.interval.start, this->part2.interval.size(),
    +
    5318 text + this->part3.interval.start, this->part3.interval.size()) :
    5319 this->part2.interval ?
    5320 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5321 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5322 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5322 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5323 false;
    5324 else if (this->model[0] == '0' && this->model[1] == '7')
    5325 is_valid =
    5326 this->part3.interval ?
    5327 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5328 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5329 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5329 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5330 this->part2.interval ?
    5331 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5332 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5333 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5333 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5334 false;
    5335 else if (this->model[0] == '0' && this->model[1] == '8')
    5336 is_valid =
    @@ -5344,9 +5352,9 @@ $(function() { codefold.init(0); });
    5338 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5339 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    5340 check11(
    -
    5341 text + this->part1.interval.start, this->part1.interval.size(),
    -
    5342 text + this->part2.interval.start, this->part2.interval.size()) &&
    -
    5343 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5341 text + this->part1.interval.start, this->part1.interval.size(),
    +
    5342 text + this->part2.interval.start, this->part2.interval.size()) &&
    +
    5343 check11(text + this->part3.interval.start, this->part3.interval.size()) :
    5344 false;
    5345 else if (this->model[0] == '0' && this->model[1] == '9')
    5346 is_valid =
    @@ -5354,32 +5362,32 @@ $(function() { codefold.init(0); });
    5348 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5349 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    5350 check11(
    -
    5351 text + this->part1.interval.start, this->part1.interval.size(),
    -
    5352 text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5351 text + this->part1.interval.start, this->part1.interval.size(),
    +
    5352 text + this->part2.interval.start, this->part2.interval.size()) :
    5353 this->part2.interval ?
    5354 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5355 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    5356 check11(
    -
    5357 text + this->part1.interval.start, this->part1.interval.size(),
    -
    5358 text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5357 text + this->part1.interval.start, this->part1.interval.size(),
    +
    5358 text + this->part2.interval.start, this->part2.interval.size()) :
    5359 this->part1.interval ?
    5360 this->part1.interval.size() <= 12 &&
    -
    5361 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5361 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5362 false;
    5363 else if (this->model[0] == '1' && this->model[1] == '0')
    5364 is_valid =
    5365 this->part3.interval ?
    5366 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5367 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5368 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5368 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    5369 check11(
    -
    5370 text + this->part2.interval.start, this->part2.interval.size(),
    -
    5371 text + this->part3.interval.start, this->part3.interval.size()) :
    +
    5370 text + this->part2.interval.start, this->part2.interval.size(),
    +
    5371 text + this->part3.interval.start, this->part3.interval.size()) :
    5372 this->part2.interval ?
    5373 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5374 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5375 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    -
    5376 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5375 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5376 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5377 false;
    5378 else if (
    5379 (this->model[0] == '1' && (this->model[1] == '1' || this->model[1] == '8' || this->model[1] == '9')) ||
    @@ -5390,50 +5398,50 @@ $(function() { codefold.init(0); });
    5384 this->part3.interval ?
    5385 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 && this->part3.interval.size() <= 12 &&
    5386 this->part1.interval.size() + this->part2.interval.size() + this->part3.interval.size() <= 20 &&
    -
    5387 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    -
    5388 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5387 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5388 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5389 this->part2.interval ?
    5390 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5391 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5392 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    -
    5393 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    +
    5392 check11(text + this->part1.interval.start, this->part1.interval.size()) &&
    +
    5393 check11(text + this->part2.interval.start, this->part2.interval.size()) :
    5394 false;
    5395 else if (this->model[0] == '1' && this->model[1] == '2')
    5396 is_valid =
    -
    5397 this->part3.interval ? false :
    -
    5398 this->part2.interval ? false :
    +
    5397 this->part3.interval ? false :
    +
    5398 this->part2.interval ? false :
    5399 this->part1.interval ?
    5400 this->part1.interval.size() <= 13 &&
    -
    5401 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5401 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5402 false;
    5403 else if ((this->model[0] == '2' || this->model[0] == '3') && this->model[1] == '1')
    5404 is_valid =
    -
    5405 this->part3.interval ? false :
    +
    5405 this->part3.interval ? false :
    5406 this->part2.interval ?
    5407 this->part1.interval.size() <= 12 && this->part2.interval.size() <= 12 &&
    5408 this->part1.interval.size() + this->part2.interval.size() <= 20 &&
    -
    5409 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    +
    5409 check11(text + this->part1.interval.start, this->part1.interval.size()) :
    5410 false;
    5411 else
    5412 is_valid = true; // Assume models we don't handle as valid
    5413 return true;
    5414
    -
    5415 error:
    +
    5415 error:
    5416 invalidate();
    5417 return false;
    5418 }
    5419
    5420 static bool check11(
    -
    5421 _In_count_(num_part1) const T* part1, _In_ size_t num_part1)
    +
    5421 _In_count_(num_part1) const T* part1, _In_ size_t num_part1)
    5422 {
    -
    5423 _Assume_(part1 && num_part1 >= 1);
    -
    5424 uint32_t nominator = 0, ponder = 2;
    -
    5425 for (size_t i = num_part1 - 1; i--; ++ponder)
    -
    5426 nominator += static_cast<uint32_t>(part1[i] - '0') * ponder;
    -
    5427 uint8_t control = 11 - static_cast<uint8_t>(nominator % 11);
    -
    5428 if (control >= 10)
    -
    5429 control = 0;
    -
    5430 return control == part1[num_part1 - 1] - '0';
    +
    5423 _Assume_(part1 && num_part1 >= 1);
    +
    5424 uint32_t nominator = 0, ponder = 2;
    +
    5425 for (size_t i = num_part1 - 1; i--; ++ponder)
    +
    5426 nominator += static_cast<uint32_t>(part1[i] - '0') * ponder;
    +
    5427 uint8_t control = 11 - static_cast<uint8_t>(nominator % 11);
    +
    5428 if (control >= 10)
    +
    5429 control = 0;
    +
    5430 return control == part1[num_part1 - 1] - '0';
    5431 }
    5432
    5433 static bool check11(
    @@ -5494,14 +5502,14 @@ $(function() { codefold.init(0); });
    5489 {
    5490 public:
    -
    5492 _In_ const std::shared_ptr<basic_parser<T>>& element,
    -
    5493 _In_ const std::shared_ptr<basic_parser<T>>& digit,
    -
    5494 _In_ const std::shared_ptr<basic_parser<T>>& sign,
    -
    5495 _In_ const std::locale& locale = std::locale()) :
    - +
    5492 _In_ const std::shared_ptr<basic_parser<T>>& element,
    +
    5493 _In_ const std::shared_ptr<basic_parser<T>>& digit,
    +
    5494 _In_ const std::shared_ptr<basic_parser<T>>& sign,
    +
    5495 _In_ const std::locale& locale = std::locale()) :
    +
    5497 m_element(element),
    -
    5498 m_digit(digit),
    -
    5499 m_sign(sign),
    +
    5498 m_digit(digit),
    +
    5499 m_sign(sign),
    5500 has_digits(false),
    5501 has_charge(false)
    5502 {}
    @@ -5519,9 +5527,9 @@ $(function() { codefold.init(0); });
    5514 protected:
    5515 virtual bool do_match(
    5516 _In_reads_or_z_opt_(end) const T* text,
    -
    5517 _In_ size_t start = 0,
    -
    5518 _In_ size_t end = SIZE_MAX,
    -
    5519 _In_ int flags = match_default)
    +
    5517 _In_ size_t start = 0,
    +
    5518 _In_ size_t end = SIZE_MAX,
    +
    5519 _In_ int flags = match_default)
    5520 {
    5521 _Assume_(text || start >= end);
    5522
    @@ -5529,17 +5537,17 @@ $(function() { codefold.init(0); });
    5524 has_charge = false;
    5525 this->interval.end = start;
    5526
    -
    5527 const int element_match_flags = flags & ~match_case_insensitive; // Chemical elements are always case-sensitive.
    +
    5527 const int element_match_flags = flags & ~match_case_insensitive; // Chemical elements are always case-sensitive.
    5528 for (;;) {
    -
    5529 if (m_element->match(text, this->interval.end, end, element_match_flags)) {
    +
    5529 if (m_element->match(text, this->interval.end, end, element_match_flags)) {
    5530 this->interval.end = m_element->interval.end;
    -
    5531 while (m_digit->match(text, this->interval.end, end, flags)) {
    +
    5531 while (m_digit->match(text, this->interval.end, end, flags)) {
    5532 this->interval.end = m_digit->interval.end;
    5533 has_digits = true;
    5534 }
    5535 }
    -
    5536 else if (start < this->interval.end) {
    -
    5537 if (m_sign->match(text, this->interval.end, end, flags)) {
    +
    5536 else if (start < this->interval.end) {
    +
    5537 if (m_sign->match(text, this->interval.end, end, flags)) {
    5538 this->interval.end = m_sign->interval.end;
    5539 has_charge = true;
    5540 }
    @@ -5559,14 +5567,14 @@ $(function() { codefold.init(0); });
    5554 };
    5555
    - - + +
    5558#ifdef _UNICODE
    - +
    5560#else
    - +
    5562#endif
    - +
    5564
    @@ -5574,18 +5582,18 @@ $(function() { codefold.init(0); });
    5570 protected:
    5571 virtual bool do_match(
    5572 _In_reads_or_z_(end) const char* text,
    -
    5573 _In_ size_t start = 0,
    -
    5574 _In_ size_t end = SIZE_MAX,
    -
    5575 _In_ int flags = match_default)
    +
    5573 _In_ size_t start = 0,
    +
    5574 _In_ size_t end = SIZE_MAX,
    +
    5575 _In_ int flags = match_default)
    5576 {
    5577 _Assume_(text || start >= end);
    5578 this->interval.end = start;
    5579
    5580 _Assume_(text || this->interval.end >= end);
    -
    5581 if (this->interval.end < end && text[this->interval.end]) {
    +
    5581 if (this->interval.end < end && text[this->interval.end]) {
    5582 if (text[this->interval.end] == '\r') {
    5583 this->interval.end++;
    -
    5584 if (this->interval.end < end && text[this->interval.end] == '\n') {
    +
    5584 if (this->interval.end < end && text[this->interval.end] == '\n') {
    5585 this->interval.start = start;
    5586 this->interval.end++;
    5587 return true;
    @@ -5609,25 +5617,25 @@ $(function() { codefold.init(0); });
    5606 protected:
    5607 virtual bool do_match(
    5608 _In_reads_or_z_(end) const char* text,
    -
    5609 _In_ size_t start = 0,
    -
    5610 _In_ size_t end = SIZE_MAX,
    -
    5611 _In_ int flags = match_default)
    +
    5609 _In_ size_t start = 0,
    +
    5610 _In_ size_t end = SIZE_MAX,
    +
    5611 _In_ int flags = match_default)
    5612 {
    5613 _Assume_(text || start >= end);
    5614 this->interval.end = start;
    -
    5615 if (m_line_break.match(text, this->interval.end, end, flags)) {
    +
    5615 if (m_line_break.match(text, this->interval.end, end, flags)) {
    5616 this->interval.end = m_line_break.interval.end;
    -
    5617 if (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) {
    +
    5617 if (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) {
    5618 this->interval.start = start;
    5619 this->interval.end++;
    -
    5620 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    5620 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    5621 return true;
    5622 }
    5623 }
    -
    5624 else if (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) {
    +
    5624 else if (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) {
    5625 this->interval.start = start;
    5626 this->interval.end++;
    -
    5627 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    5627 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    5628 return true;
    5629 }
    5630 this->interval.invalidate();
    @@ -5644,20 +5652,20 @@ $(function() { codefold.init(0); });
    5642 protected:
    5643 virtual bool do_match(
    5644 _In_reads_or_z_(end) const char* text,
    -
    5645 _In_ size_t start = 0,
    -
    5646 _In_ size_t end = SIZE_MAX,
    -
    5647 _In_ int flags = match_default)
    +
    5645 _In_ size_t start = 0,
    +
    5646 _In_ size_t end = SIZE_MAX,
    +
    5647 _In_ int flags = match_default)
    5648 {
    5649 _Assume_(text || start >= end);
    5650 this->interval.end = start;
    5651
    5652 _Assume_(text || this->interval.end >= end);
    -
    5653 if (m_space.match(text, this->interval.end, end, flags)) {
    +
    5653 if (m_space.match(text, this->interval.end, end, flags)) {
    5654 this->interval.start = start;
    5655 this->interval.end = m_space.interval.end;
    5656 return true;
    5657 }
    -
    5658 else if (this->interval.end < end && text[this->interval.end] && text[this->interval.end] >= 0x20) {
    +
    5658 else if (this->interval.end < end && text[this->interval.end] && text[this->interval.end] >= 0x20) {
    5659 this->interval.start = start;
    5660 this->interval.end++;
    5661 return true;
    @@ -5676,34 +5684,34 @@ $(function() { codefold.init(0); });
    5675 protected:
    5676 virtual bool do_match(
    5677 _In_reads_or_z_(end) const char* text,
    -
    5678 _In_ size_t start = 0,
    -
    5679 _In_ size_t end = SIZE_MAX,
    -
    5680 _In_ int flags = match_default)
    +
    5678 _In_ size_t start = 0,
    +
    5679 _In_ size_t end = SIZE_MAX,
    +
    5680 _In_ int flags = match_default)
    5681 {
    5682 _Assume_(text || start >= end);
    5683 this->interval.end = start;
    5684 for (;;) {
    -
    5685 if (this->interval.end < end && text[this->interval.end]) {
    +
    5685 if (this->interval.end < end && text[this->interval.end]) {
    5686 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    5687 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    5688 text[this->interval.end] == '(' ||
    -
    5689 text[this->interval.end] == ')' ||
    -
    5690 text[this->interval.end] == '<' ||
    -
    5691 text[this->interval.end] == '>' ||
    -
    5692 text[this->interval.end] == '@' ||
    -
    5693 text[this->interval.end] == ',' ||
    -
    5694 text[this->interval.end] == ';' ||
    -
    5695 text[this->interval.end] == ':' ||
    -
    5696 text[this->interval.end] == '\\' ||
    -
    5697 text[this->interval.end] == '\"' ||
    -
    5698 text[this->interval.end] == '/' ||
    -
    5699 text[this->interval.end] == '[' ||
    -
    5700 text[this->interval.end] == ']' ||
    -
    5701 text[this->interval.end] == '?' ||
    -
    5702 text[this->interval.end] == '=' ||
    -
    5703 text[this->interval.end] == '{' ||
    -
    5704 text[this->interval.end] == '}' ||
    -
    5705 stdex::isspace(text[this->interval.end]))
    +
    5687 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    5688 text[this->interval.end] == '(' ||
    +
    5689 text[this->interval.end] == ')' ||
    +
    5690 text[this->interval.end] == '<' ||
    +
    5691 text[this->interval.end] == '>' ||
    +
    5692 text[this->interval.end] == '@' ||
    +
    5693 text[this->interval.end] == ',' ||
    +
    5694 text[this->interval.end] == ';' ||
    +
    5695 text[this->interval.end] == ':' ||
    +
    5696 text[this->interval.end] == '\\' ||
    +
    5697 text[this->interval.end] == '\"' ||
    +
    5698 text[this->interval.end] == '/' ||
    +
    5699 text[this->interval.end] == '[' ||
    +
    5700 text[this->interval.end] == ']' ||
    +
    5701 text[this->interval.end] == '?' ||
    +
    5702 text[this->interval.end] == '=' ||
    +
    5703 text[this->interval.end] == '{' ||
    +
    5704 text[this->interval.end] == '}' ||
    +
    5705 stdex::isspace(text[this->interval.end]))
    5706 break;
    5707 else
    5708 this->interval.end++;
    @@ -5711,7 +5719,7 @@ $(function() { codefold.init(0); });
    5710 else
    5711 break;
    5712 }
    - +
    5713 if (start < this->interval.end) {
    5714 this->interval.start = start;
    5715 return true;
    5716 }
    @@ -5739,19 +5747,19 @@ $(function() { codefold.init(0); });
    5739 protected:
    5740 virtual bool do_match(
    5741 _In_reads_or_z_(end) const char* text,
    -
    5742 _In_ size_t start = 0,
    -
    5743 _In_ size_t end = SIZE_MAX,
    -
    5744 _In_ int flags = match_default)
    +
    5742 _In_ size_t start = 0,
    +
    5743 _In_ size_t end = SIZE_MAX,
    +
    5744 _In_ int flags = match_default)
    5745 {
    5746 _Assume_(text || start >= end);
    5747 this->interval.end = start;
    -
    5748 if (this->interval.end < end && text[this->interval.end] != '"')
    -
    5749 goto error;
    +
    5748 if (this->interval.end < end && text[this->interval.end] != '"')
    +
    5749 goto error;
    5750 this->interval.end++;
    5751 content.start = this->interval.end;
    5752 for (;;) {
    5753 _Assume_(text || this->interval.end >= end);
    -
    5754 if (this->interval.end < end && text[this->interval.end]) {
    +
    5754 if (this->interval.end < end && text[this->interval.end]) {
    5755 if (text[this->interval.end] == '"') {
    5756 content.end = this->interval.end;
    5757 this->interval.end++;
    @@ -5759,24 +5767,24 @@ $(function() { codefold.init(0); });
    5759 }
    5760 else if (text[this->interval.end] == '\\') {
    5761 this->interval.end++;
    -
    5762 if (this->interval.end < end && text[this->interval.end]) {
    +
    5762 if (this->interval.end < end && text[this->interval.end]) {
    5763 this->interval.end++;
    5764 }
    5765 else
    -
    5766 goto error;
    +
    5766 goto error;
    5767 }
    -
    5768 else if (m_chr.match(text, this->interval.end, end, flags))
    +
    5768 else if (m_chr.match(text, this->interval.end, end, flags))
    5769 this->interval.end++;
    5770 else
    -
    5771 goto error;
    +
    5771 goto error;
    5772 }
    5773 else
    -
    5774 goto error;
    +
    5774 goto error;
    5775 }
    5776 this->interval.start = start;
    5777 return true;
    5778
    -
    5779 error:
    +
    5779 error:
    5780 invalidate();
    5781 return false;
    5782 }
    @@ -5802,19 +5810,19 @@ $(function() { codefold.init(0); });
    5803 protected:
    5804 virtual bool do_match(
    5805 _In_reads_or_z_(end) const char* text,
    -
    5806 _In_ size_t start = 0,
    -
    5807 _In_ size_t end = SIZE_MAX,
    -
    5808 _In_ int flags = match_default)
    +
    5806 _In_ size_t start = 0,
    +
    5807 _In_ size_t end = SIZE_MAX,
    +
    5808 _In_ int flags = match_default)
    5809 {
    5810 _Assume_(text || start >= end);
    5811 this->interval.end = start;
    -
    5812 if (string.match(text, this->interval.end, end, flags)) {
    +
    5812 if (string.match(text, this->interval.end, end, flags)) {
    5813 token.invalidate();
    5814 this->interval.end = string.interval.end;
    5815 this->interval.start = start;
    5816 return true;
    5817 }
    -
    5818 else if (token.match(text, this->interval.end, end, flags)) {
    +
    5818 else if (token.match(text, this->interval.end, end, flags)) {
    5819 string.invalidate();
    5820 this->interval.end = token.interval.end;
    5821 this->interval.start = start;
    @@ -5845,32 +5853,32 @@ $(function() { codefold.init(0); });
    5847 protected:
    5848 virtual bool do_match(
    5849 _In_reads_or_z_(end) const char* text,
    -
    5850 _In_ size_t start = 0,
    -
    5851 _In_ size_t end = SIZE_MAX,
    -
    5852 _In_ int flags = match_default)
    +
    5850 _In_ size_t start = 0,
    +
    5851 _In_ size_t end = SIZE_MAX,
    +
    5852 _In_ int flags = match_default)
    5853 {
    5854 _Assume_(text || start >= end);
    5855 this->interval.end = start;
    -
    5856 if (name.match(text, this->interval.end, end, flags))
    +
    5856 if (name.match(text, this->interval.end, end, flags))
    5857 this->interval.end = name.interval.end;
    5858 else
    -
    5859 goto error;
    -
    5860 while (m_space.match(text, this->interval.end, end, flags))
    +
    5859 goto error;
    +
    5860 while (m_space.match(text, this->interval.end, end, flags))
    5861 this->interval.end = m_space.interval.end;
    5862 _Assume_(text || this->interval.end >= end);
    -
    5863 if (this->interval.end < end && text[this->interval.end] == '=')
    +
    5863 if (this->interval.end < end && text[this->interval.end] == '=')
    5864 this->interval.end++;
    5865 else
    -
    5866 while (m_space.match(text, this->interval.end, end, flags))
    +
    5866 while (m_space.match(text, this->interval.end, end, flags))
    5867 this->interval.end = m_space.interval.end;
    -
    5868 if (value.match(text, this->interval.end, end, flags))
    +
    5868 if (value.match(text, this->interval.end, end, flags))
    5869 this->interval.end = value.interval.end;
    5870 else
    -
    5871 goto error;
    +
    5871 goto error;
    5872 this->interval.start = start;
    5873 return true;
    5874
    -
    5875 error:
    +
    5875 error:
    5876 invalidate();
    5877 return false;
    5878 }
    @@ -5885,9 +5893,9 @@ $(function() { codefold.init(0); });
    5888 protected:
    5889 virtual bool do_match(
    5890 _In_reads_or_z_(end) const char* text,
    -
    5891 _In_ size_t start = 0,
    -
    5892 _In_ size_t end = SIZE_MAX,
    -
    5893 _In_ int flags = match_default)
    +
    5891 _In_ size_t start = 0,
    +
    5892 _In_ size_t end = SIZE_MAX,
    +
    5893 _In_ int flags = match_default)
    5894 {
    5895 _Assume_(text || start >= end);
    5896 if (start + 2 < end &&
    @@ -5927,32 +5935,32 @@ $(function() { codefold.init(0); });
    5931 protected:
    5932 virtual bool do_match(
    5933 _In_reads_or_z_(end) const char* text,
    -
    5934 _In_ size_t start = 0,
    -
    5935 _In_ size_t end = SIZE_MAX,
    -
    5936 _In_ int flags = match_default)
    +
    5934 _In_ size_t start = 0,
    +
    5935 _In_ size_t end = SIZE_MAX,
    +
    5936 _In_ int flags = match_default)
    5937 {
    5938 _Assume_(text || start >= end);
    5939 this->interval.end = start;
    -
    5940 if (type.match(text, this->interval.end, end, flags))
    +
    5940 if (type.match(text, this->interval.end, end, flags))
    5941 this->interval.end = type.interval.end;
    5942 else
    -
    5943 goto error;
    -
    5944 while (m_space.match(text, this->interval.end, end, flags))
    +
    5943 goto error;
    +
    5944 while (m_space.match(text, this->interval.end, end, flags))
    5945 this->interval.end = m_space.interval.end;
    -
    5946 if (this->interval.end < end && text[this->interval.end] == '/')
    +
    5946 if (this->interval.end < end && text[this->interval.end] == '/')
    5947 this->interval.end++;
    5948 else
    -
    5949 goto error;
    -
    5950 while (m_space.match(text, this->interval.end, end, flags))
    +
    5949 goto error;
    +
    5950 while (m_space.match(text, this->interval.end, end, flags))
    5951 this->interval.end = m_space.interval.end;
    -
    5952 if (subtype.match(text, this->interval.end, end, flags))
    +
    5952 if (subtype.match(text, this->interval.end, end, flags))
    5953 this->interval.end = subtype.interval.end;
    5954 else
    -
    5955 goto error;
    +
    5955 goto error;
    5956 this->interval.start = start;
    5957 return true;
    5958
    -
    5959 error:
    +
    5959 error:
    5960 invalidate();
    5961 return false;
    5962 }
    @@ -5976,24 +5984,24 @@ $(function() { codefold.init(0); });
    5981 protected:
    5982 virtual bool do_match(
    5983 _In_reads_or_z_(end) const char* text,
    -
    5984 _In_ size_t start = 0,
    -
    5985 _In_ size_t end = SIZE_MAX,
    -
    5986 _In_ int flags = match_default)
    +
    5984 _In_ size_t start = 0,
    +
    5985 _In_ size_t end = SIZE_MAX,
    +
    5986 _In_ int flags = match_default)
    5987 {
    5988 _Assume_(text || start >= end);
    -
    5989 if (!http_media_range::do_match(text, start, end, flags))
    -
    5990 goto error;
    +
    5989 if (!http_media_range::do_match(text, start, end, flags))
    +
    5990 goto error;
    5991 params.clear();
    5992 for (;;) {
    -
    5993 if (this->interval.end < end && text[this->interval.end]) {
    -
    5994 if (m_space.match(text, this->interval.end, end, flags))
    +
    5993 if (this->interval.end < end && text[this->interval.end]) {
    +
    5994 if (m_space.match(text, this->interval.end, end, flags))
    5995 this->interval.end = m_space.interval.end;
    5996 else if (text[this->interval.end] == ';') {
    5997 this->interval.end++;
    -
    5998 while (m_space.match(text, this->interval.end, end, flags))
    +
    5998 while (m_space.match(text, this->interval.end, end, flags))
    5999 this->interval.end = m_space.interval.end;
    6000 http_parameter param;
    -
    6001 if (param.match(text, this->interval.end, end, flags)) {
    +
    6001 if (param.match(text, this->interval.end, end, flags)) {
    6002 this->interval.end = param.interval.end;
    6003 params.push_back(std::move(param));
    6004 }
    @@ -6009,7 +6017,7 @@ $(function() { codefold.init(0); });
    6014 this->interval.end = params.empty() ? subtype.interval.end : params.back().interval.end;
    6015 return true;
    6016
    -
    6017 error:
    +
    6017 error:
    6018 invalidate();
    6019 return false;
    6020 }
    @@ -6022,19 +6030,19 @@ $(function() { codefold.init(0); });
    6028 protected:
    6029 virtual bool do_match(
    6030 _In_reads_or_z_(end) const char* text,
    -
    6031 _In_ size_t start = 0,
    -
    6032 _In_ size_t end = SIZE_MAX,
    -
    6033 _In_ int flags = match_default)
    +
    6031 _In_ size_t start = 0,
    +
    6032 _In_ size_t end = SIZE_MAX,
    +
    6033 _In_ int flags = match_default)
    6034 {
    6035 _Assume_(text || start >= end);
    6036 this->interval.end = start;
    6037 for (;;) {
    -
    6038 if (this->interval.end < end && text[this->interval.end]) {
    +
    6038 if (this->interval.end < end && text[this->interval.end]) {
    6039 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    6040 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    6041 text[this->interval.end] == ':' ||
    -
    6042 text[this->interval.end] == '/' ||
    -
    6043 stdex::isspace(text[this->interval.end]))
    +
    6040 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    6041 text[this->interval.end] == ':' ||
    +
    6042 text[this->interval.end] == '/' ||
    +
    6043 stdex::isspace(text[this->interval.end]))
    6044 break;
    6045 else
    6046 this->interval.end++;
    @@ -6042,7 +6050,7 @@ $(function() { codefold.init(0); });
    6048 else
    6049 break;
    6050 }
    - +
    6051 if (start < this->interval.end) {
    6052 this->interval.start = start;
    6053 return true;
    6054 }
    @@ -6056,7 +6064,7 @@ $(function() { codefold.init(0); });
    6063 class http_url_port : public parser
    6064 {
    6065 public:
    -
    6066 http_url_port(_In_ const std::locale& locale = std::locale()) :
    +
    6066 http_url_port(_In_ const std::locale& locale = std::locale()) :
    6067 parser(locale),
    6068 value(0)
    6069 {}
    @@ -6067,28 +6075,28 @@ $(function() { codefold.init(0); });
    6074 parser::invalidate();
    6075 }
    6076
    -
    6077 uint16_t value;
    +
    6077 uint16_t value;
    6078
    6079 protected:
    6080 virtual bool do_match(
    6081 _In_reads_or_z_(end) const char* text,
    -
    6082 _In_ size_t start = 0,
    -
    6083 _In_ size_t end = SIZE_MAX,
    -
    6084 _In_ int flags = match_default)
    +
    6082 _In_ size_t start = 0,
    +
    6083 _In_ size_t end = SIZE_MAX,
    +
    6084 _In_ int flags = match_default)
    6085 {
    6086 _Assume_(text || start >= end);
    6087 value = 0;
    6088 this->interval.end = start;
    6089 for (;;) {
    -
    6090 if (this->interval.end < end && text[this->interval.end]) {
    -
    6091 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    -
    6092 size_t _value = static_cast<size_t>(value) * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    -
    6093 if (_value > UINT16_MAX) {
    +
    6090 if (this->interval.end < end && text[this->interval.end]) {
    +
    6091 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    +
    6092 size_t _value = static_cast<size_t>(value) * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    +
    6093 if (_value > UINT16_MAX) {
    6094 value = 0;
    6095 this->interval.invalidate();
    6096 return false;
    6097 }
    -
    6098 value = (uint16_t)_value;
    +
    6098 value = (uint16_t)_value;
    6099 this->interval.end++;
    6100 }
    6101 else
    @@ -6097,7 +6105,7 @@ $(function() { codefold.init(0); });
    6104 else
    6105 break;
    6106 }
    - +
    6107 if (start < this->interval.end) {
    6108 this->interval.start = start;
    6109 return true;
    6110 }
    @@ -6113,19 +6121,19 @@ $(function() { codefold.init(0); });
    6121 protected:
    6122 virtual bool do_match(
    6123 _In_reads_or_z_(end) const char* text,
    -
    6124 _In_ size_t start = 0,
    -
    6125 _In_ size_t end = SIZE_MAX,
    -
    6126 _In_ int flags = match_default)
    +
    6124 _In_ size_t start = 0,
    +
    6125 _In_ size_t end = SIZE_MAX,
    +
    6126 _In_ int flags = match_default)
    6127 {
    6128 _Assume_(text || start >= end);
    6129 this->interval.end = start;
    6130 for (;;) {
    -
    6131 if (this->interval.end < end && text[this->interval.end]) {
    +
    6131 if (this->interval.end < end && text[this->interval.end]) {
    6132 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    6133 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    6134 text[this->interval.end] == '?' ||
    -
    6135 text[this->interval.end] == '/' ||
    -
    6136 stdex::isspace(text[this->interval.end]))
    +
    6133 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    6134 text[this->interval.end] == '?' ||
    +
    6135 text[this->interval.end] == '/' ||
    +
    6136 stdex::isspace(text[this->interval.end]))
    6137 break;
    6138 else
    6139 this->interval.end++;
    @@ -6154,26 +6162,26 @@ $(function() { codefold.init(0); });
    6163 protected:
    6164 virtual bool do_match(
    6165 _In_reads_or_z_(end) const char* text,
    -
    6166 _In_ size_t start = 0,
    -
    6167 _In_ size_t end = SIZE_MAX,
    -
    6168 _In_ int flags = match_default)
    +
    6166 _In_ size_t start = 0,
    +
    6167 _In_ size_t end = SIZE_MAX,
    +
    6168 _In_ int flags = match_default)
    6169 {
    6170 _Assume_(text || start >= end);
    6172 this->interval.end = start;
    6173 segments.clear();
    6174 _Assume_(text || this->interval.end >= end);
    -
    6175 if (this->interval.end < end && text[this->interval.end] != '/')
    -
    6176 goto error;
    +
    6175 if (this->interval.end < end && text[this->interval.end] != '/')
    +
    6176 goto error;
    6177 this->interval.end++;
    -
    6178 s.match(text, this->interval.end, end, flags);
    +
    6178 s.match(text, this->interval.end, end, flags);
    6179 segments.push_back(s);
    6180 this->interval.end = s.interval.end;
    6181 for (;;) {
    -
    6182 if (this->interval.end < end && text[this->interval.end]) {
    +
    6182 if (this->interval.end < end && text[this->interval.end]) {
    6183 if (text[this->interval.end] == '/') {
    6184 this->interval.end++;
    -
    6185 s.match(text, this->interval.end, end, flags);
    +
    6185 s.match(text, this->interval.end, end, flags);
    6186 segments.push_back(s);
    6187 this->interval.end = s.interval.end;
    6188 }
    @@ -6186,7 +6194,7 @@ $(function() { codefold.init(0); });
    6195 this->interval.start = start;
    6196 return true;
    6197
    -
    6198 error:
    +
    6198 error:
    6199 invalidate();
    6200 return false;
    6201 }
    @@ -6212,20 +6220,20 @@ $(function() { codefold.init(0); });
    6222 protected:
    6223 virtual bool do_match(
    6224 _In_reads_or_z_(end) const char* text,
    -
    6225 _In_ size_t start = 0,
    -
    6226 _In_ size_t end = SIZE_MAX,
    -
    6227 _In_ int flags = match_default)
    +
    6225 _In_ size_t start = 0,
    +
    6226 _In_ size_t end = SIZE_MAX,
    +
    6227 _In_ int flags = match_default)
    6228 {
    6229 _Assume_(text || start >= end);
    6230 this->interval.end = start;
    6231 name.start = this->interval.end;
    6232 for (;;) {
    -
    6233 if (this->interval.end < end && text[this->interval.end]) {
    +
    6233 if (this->interval.end < end && text[this->interval.end]) {
    6234 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    6235 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    6236 text[this->interval.end] == '&' ||
    -
    6237 text[this->interval.end] == '=' ||
    -
    6238 stdex::isspace(text[this->interval.end]))
    +
    6235 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    6236 text[this->interval.end] == '&' ||
    +
    6237 text[this->interval.end] == '=' ||
    +
    6238 stdex::isspace(text[this->interval.end]))
    6239 break;
    6240 else
    6241 this->interval.end++;
    @@ -6233,19 +6241,19 @@ $(function() { codefold.init(0); });
    6243 else
    6244 break;
    6245 }
    - +
    6246 if (start < this->interval.end)
    6247 name.end = this->interval.end;
    6248 else
    -
    6249 goto error;
    +
    6249 goto error;
    6250 if (text[this->interval.end] == '=') {
    6251 this->interval.end++;
    6252 value.start = this->interval.end;
    6253 for (;;) {
    -
    6254 if (this->interval.end < end && text[this->interval.end]) {
    +
    6254 if (this->interval.end < end && text[this->interval.end]) {
    6255 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    6256 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    6257 text[this->interval.end] == '&' ||
    -
    6258 stdex::isspace(text[this->interval.end]))
    +
    6256 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    6257 text[this->interval.end] == '&' ||
    +
    6258 stdex::isspace(text[this->interval.end]))
    6259 break;
    6260 else
    6261 this->interval.end++;
    @@ -6262,7 +6270,7 @@ $(function() { codefold.init(0); });
    6272 this->interval.start = start;
    6273 return true;
    6274
    -
    6275 error:
    +
    6275 error:
    6276 invalidate();
    6277 return false;
    6278 }
    @@ -6273,7 +6281,7 @@ $(function() { codefold.init(0); });
    6284 class http_url : public parser
    6285 {
    6286 public:
    -
    6287 http_url(_In_ const std::locale& locale = std::locale()) :
    +
    6287 http_url(_In_ const std::locale& locale = std::locale()) :
    6288 parser(locale),
    6289 port(locale)
    6290 {}
    @@ -6295,22 +6303,22 @@ $(function() { codefold.init(0); });
    6306 protected:
    6307 virtual bool do_match(
    6308 _In_reads_or_z_(end) const char* text,
    -
    6309 _In_ size_t start = 0,
    -
    6310 _In_ size_t end = SIZE_MAX,
    -
    6311 _In_ int flags = match_default)
    +
    6309 _In_ size_t start = 0,
    +
    6310 _In_ size_t end = SIZE_MAX,
    +
    6311 _In_ int flags = match_default)
    6312 {
    6313 _Assume_(text || start >= end);
    6314 this->interval.end = start;
    6315
    -
    6316 if (this->interval.end + 7 <= end && stdex::strnicmp(text + this->interval.end, 7, "http://", SIZE_MAX, m_locale) == 0) {
    +
    6316 if (this->interval.end + 7 <= end && stdex::strnicmp(text + this->interval.end, 7, "http://", SIZE_MAX, m_locale) == 0) {
    6317 this->interval.end += 7;
    -
    6318 if (server.match(text, this->interval.end, end, flags))
    +
    6318 if (server.match(text, this->interval.end, end, flags))
    6319 this->interval.end = server.interval.end;
    6320 else
    -
    6321 goto error;
    -
    6322 if (this->interval.end < end && text[this->interval.end] == ':') {
    +
    6321 goto error;
    +
    6322 if (this->interval.end < end && text[this->interval.end] == ':') {
    6323 this->interval.end++;
    -
    6324 if (port.match(text, this->interval.end, end, flags))
    +
    6324 if (port.match(text, this->interval.end, end, flags))
    6325 this->interval.end = port.interval.end;
    6326 }
    6327 else {
    @@ -6324,26 +6332,26 @@ $(function() { codefold.init(0); });
    6335 port.value = 80;
    6336 }
    6337
    -
    6338 if (path.match(text, this->interval.end, end, flags))
    +
    6338 if (path.match(text, this->interval.end, end, flags))
    6339 this->interval.end = path.interval.end;
    6340 else
    -
    6341 goto error;
    +
    6341 goto error;
    6342
    6343 params.clear();
    6344
    -
    6345 if (this->interval.end < end && text[this->interval.end] == '?') {
    +
    6345 if (this->interval.end < end && text[this->interval.end] == '?') {
    6346 this->interval.end++;
    6347 for (;;) {
    -
    6348 if (this->interval.end < end && text[this->interval.end]) {
    +
    6348 if (this->interval.end < end && text[this->interval.end]) {
    6349 if ((unsigned int)text[this->interval.end] < 0x20 ||
    -
    6350 (unsigned int)text[this->interval.end] == 0x7f ||
    -
    6351 stdex::isspace(text[this->interval.end]))
    +
    6350 (unsigned int)text[this->interval.end] == 0x7f ||
    +
    6351 stdex::isspace(text[this->interval.end]))
    6352 break;
    6353 else if (text[this->interval.end] == '&')
    6354 this->interval.end++;
    6355 else {
    6356 http_url_parameter param;
    -
    6357 if (param.match(text, this->interval.end, end, flags)) {
    +
    6357 if (param.match(text, this->interval.end, end, flags)) {
    6358 this->interval.end = param.interval.end;
    6359 params.push_back(std::move(param));
    6360 }
    @@ -6359,7 +6367,7 @@ $(function() { codefold.init(0); });
    6370 this->interval.start = start;
    6371 return true;
    6372
    -
    6373 error:
    +
    6373 error:
    6374 invalidate();
    6375 return false;
    6376 }
    @@ -6381,35 +6389,35 @@ $(function() { codefold.init(0); });
    6393 protected:
    6394 virtual bool do_match(
    6395 _In_reads_or_z_(end) const char* text,
    -
    6396 _In_ size_t start = 0,
    -
    6397 _In_ size_t end = SIZE_MAX,
    -
    6398 _In_ int flags = match_default)
    +
    6396 _In_ size_t start = 0,
    +
    6397 _In_ size_t end = SIZE_MAX,
    +
    6398 _In_ int flags = match_default)
    6399 {
    6400 _Assume_(text || start >= end);
    6401 this->interval.end = start;
    6402 components.clear();
    6403 for (;;) {
    -
    6404 if (this->interval.end < end && text[this->interval.end]) {
    - -
    6406 k.end = this->interval.end;
    +
    6404 if (this->interval.end < end && text[this->interval.end]) {
    + +
    6406 k.end = this->interval.end;
    6407 for (;;) {
    -
    6408 if (k.end < end && text[k.end]) {
    -
    6409 if (stdex::isalpha(text[k.end]))
    -
    6410 k.end++;
    +
    6408 if (k.end < end && text[k.end]) {
    +
    6409 if (stdex::isalpha(text[k.end]))
    +
    6410 k.end++;
    6411 else
    6412 break;
    6413 }
    6414 else
    6415 break;
    6416 }
    -
    6417 if (this->interval.end < k.end) {
    -
    6418 k.start = this->interval.end;
    -
    6419 this->interval.end = k.end;
    -
    6420 components.push_back(k);
    +
    6417 if (this->interval.end < k.end) {
    +
    6418 k.start = this->interval.end;
    +
    6419 this->interval.end = k.end;
    +
    6420 components.push_back(k);
    6421 }
    6422 else
    6423 break;
    -
    6424 if (this->interval.end < end && text[this->interval.end] == '-')
    +
    6424 if (this->interval.end < end && text[this->interval.end] == '-')
    6425 this->interval.end++;
    6426 else
    6427 break;
    @@ -6432,7 +6440,7 @@ $(function() { codefold.init(0); });
    6445 class http_weight : public parser
    6446 {
    6447 public:
    -
    6448 http_weight(_In_ const std::locale& locale = std::locale()) :
    +
    6448 http_weight(_In_ const std::locale& locale = std::locale()) :
    6449 parser(locale),
    6450 value(1.0f)
    6451 {}
    @@ -6448,26 +6456,26 @@ $(function() { codefold.init(0); });
    6461 protected:
    6462 virtual bool do_match(
    6463 _In_reads_or_z_(end) const char* text,
    -
    6464 _In_ size_t start = 0,
    -
    6465 _In_ size_t end = SIZE_MAX,
    -
    6466 _In_ int flags = match_default)
    +
    6464 _In_ size_t start = 0,
    +
    6465 _In_ size_t end = SIZE_MAX,
    +
    6466 _In_ int flags = match_default)
    6467 {
    6468 _Assume_(text || start >= end);
    -
    6469 size_t celi_del = 0, decimalni_del = 0, decimalni_del_n = 1;
    +
    6469 size_t celi_del = 0, decimalni_del = 0, decimalni_del_n = 1;
    6470 this->interval.end = start;
    6471 for (;;) {
    -
    6472 if (this->interval.end < end && text[this->interval.end]) {
    -
    6473 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    -
    6474 celi_del = celi_del * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    +
    6472 if (this->interval.end < end && text[this->interval.end]) {
    +
    6473 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    +
    6474 celi_del = celi_del * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    6475 this->interval.end++;
    6476 }
    6477 else if (text[this->interval.end] == '.') {
    6478 this->interval.end++;
    6479 for (;;) {
    -
    6480 if (this->interval.end < end && text[this->interval.end]) {
    -
    6481 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    -
    6482 decimalni_del = decimalni_del * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    -
    6483 decimalni_del_n *= 10;
    +
    6480 if (this->interval.end < end && text[this->interval.end]) {
    +
    6481 if ('0' <= text[this->interval.end] && text[this->interval.end] <= '9') {
    +
    6482 decimalni_del = decimalni_del * 10 + static_cast<size_t>(text[this->interval.end] - '0');
    +
    6483 decimalni_del_n *= 10;
    6484 this->interval.end++;
    6485 }
    6486 else
    @@ -6484,8 +6492,8 @@ $(function() { codefold.init(0); });
    6497 else
    6498 break;
    6499 }
    - - +
    6500 if (start < this->interval.end) {
    +
    6501 value = (float)((double)celi_del + (double)decimalni_del / decimalni_del_n);
    6502 this->interval.start = start;
    6503 return true;
    6504 }
    @@ -6502,9 +6510,9 @@ $(function() { codefold.init(0); });
    6516 protected:
    6517 virtual bool do_match(
    6518 _In_reads_or_z_(end) const char* text,
    -
    6519 _In_ size_t start = 0,
    -
    6520 _In_ size_t end = SIZE_MAX,
    -
    6521 _In_ int flags = match_default)
    +
    6519 _In_ size_t start = 0,
    +
    6520 _In_ size_t end = SIZE_MAX,
    +
    6521 _In_ int flags = match_default)
    6522 {
    6523 _Assume_(text || end <= start);
    6524 if (start < end && text[start] == '*') {
    @@ -6522,7 +6530,7 @@ $(function() { codefold.init(0); });
    6538 {
    6539 public:
    -
    6540 http_weighted_value(_In_ const std::locale& locale = std::locale()) :
    +
    6540 http_weighted_value(_In_ const std::locale& locale = std::locale()) :
    6541 parser(locale),
    6542 factor(locale)
    6543 {}
    @@ -6535,26 +6543,26 @@ $(function() { codefold.init(0); });
    6550 parser::invalidate();
    6551 }
    6552
    -
    6553 T_asterisk asterisk;
    +
    6553 T_asterisk asterisk;
    6554 T value;
    6555 http_weight factor;
    6556
    6557 protected:
    6558 virtual bool do_match(
    6559 _In_reads_or_z_(end) const char* text,
    -
    6560 _In_ size_t start = 0,
    -
    6561 _In_ size_t end = SIZE_MAX,
    -
    6562 _In_ int flags = match_default)
    +
    6560 _In_ size_t start = 0,
    +
    6561 _In_ size_t end = SIZE_MAX,
    +
    6562 _In_ int flags = match_default)
    6563 {
    6564 _Assume_(text || start >= end);
    -
    6565 size_t konec_vrednosti;
    +
    6565 size_t konec_vrednosti;
    6566 this->interval.end = start;
    -
    6567 if (asterisk.match(text, this->interval.end, end, flags)) {
    -
    6568 this->interval.end = konec_vrednosti = asterisk.interval.end;
    +
    6567 if (asterisk.match(text, this->interval.end, end, flags)) {
    +
    6568 this->interval.end = konec_vrednosti = asterisk.interval.end;
    6569 value.invalidate();
    6570 }
    -
    6571 else if (value.match(text, this->interval.end, end, flags)) {
    -
    6572 this->interval.end = konec_vrednosti = value.interval.end;
    +
    6571 else if (value.match(text, this->interval.end, end, flags)) {
    +
    6572 this->interval.end = konec_vrednosti = value.interval.end;
    6573 asterisk.invalidate();
    6574 }
    6575 else {
    @@ -6564,24 +6572,24 @@ $(function() { codefold.init(0); });
    6579 return false;
    6580 }
    6581
    -
    6582 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    -
    6583 if (this->interval.end < end && text[this->interval.end] == ';') {
    +
    6582 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    6583 if (this->interval.end < end && text[this->interval.end] == ';') {
    6584 this->interval.end++;
    -
    6585 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    -
    6586 if (this->interval.end < end && (text[this->interval.end] == 'q' || text[this->interval.end] == 'Q')) {
    +
    6585 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    6586 if (this->interval.end < end && (text[this->interval.end] == 'q' || text[this->interval.end] == 'Q')) {
    6587 this->interval.end++;
    -
    6588 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    -
    6589 if (this->interval.end < end && text[this->interval.end] == '=') {
    +
    6588 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    6589 if (this->interval.end < end && text[this->interval.end] == '=') {
    6590 this->interval.end++;
    -
    6591 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    -
    6592 if (factor.match(text, this->interval.end, end, flags))
    +
    6591 while (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])) this->interval.end++;
    +
    6592 if (factor.match(text, this->interval.end, end, flags))
    6593 this->interval.end = factor.interval.end;
    6594 }
    6595 }
    6596 }
    6597 if (!factor.interval) {
    6598 factor.invalidate();
    -
    6599 this->interval.end = konec_vrednosti;
    +
    6599 this->interval.end = konec_vrednosti;
    6600 }
    6601 this->interval.start = start;
    6602 return true;
    @@ -6606,36 +6614,36 @@ $(function() { codefold.init(0); });
    6622 protected:
    6623 virtual bool do_match(
    6624 _In_reads_or_z_(end) const char* text,
    -
    6625 _In_ size_t start = 0,
    -
    6626 _In_ size_t end = SIZE_MAX,
    -
    6627 _In_ int flags = match_default)
    +
    6625 _In_ size_t start = 0,
    +
    6626 _In_ size_t end = SIZE_MAX,
    +
    6627 _In_ int flags = match_default)
    6628 {
    6629 _Assume_(text || start >= end);
    6630 this->interval.end = start;
    -
    6631 if (this->interval.end < end && text[this->interval.end] == '$')
    +
    6631 if (this->interval.end < end && text[this->interval.end] == '$')
    6632 this->interval.end++;
    6633 else
    -
    6634 goto error;
    -
    6635 if (name.match(text, this->interval.end, end, flags))
    +
    6634 goto error;
    +
    6635 if (name.match(text, this->interval.end, end, flags))
    6636 this->interval.end = name.interval.end;
    6637 else
    -
    6638 goto error;
    -
    6639 while (m_space.match(text, this->interval.end, end, flags))
    +
    6638 goto error;
    +
    6639 while (m_space.match(text, this->interval.end, end, flags))
    6640 this->interval.end = m_space.interval.end;
    -
    6641 if (this->interval.end < end && text[this->interval.end] == '=')
    +
    6641 if (this->interval.end < end && text[this->interval.end] == '=')
    6642 this->interval.end++;
    6643 else
    -
    6644 goto error;
    -
    6645 while (m_space.match(text, this->interval.end, end, flags))
    +
    6644 goto error;
    +
    6645 while (m_space.match(text, this->interval.end, end, flags))
    6646 this->interval.end = m_space.interval.end;
    -
    6647 if (value.match(text, this->interval.end, end, flags))
    +
    6647 if (value.match(text, this->interval.end, end, flags))
    6648 this->interval.end = value.interval.end;
    6649 else
    -
    6650 goto error;
    +
    6650 goto error;
    6651 this->interval.start = start;
    6652 return true;
    6653
    -
    6654 error:
    +
    6654 error:
    6655 invalidate();
    6656 return false;
    6657 }
    @@ -6663,39 +6671,39 @@ $(function() { codefold.init(0); });
    6680 protected:
    6681 virtual bool do_match(
    6682 _In_reads_or_z_(end) const char* text,
    -
    6683 _In_ size_t start = 0,
    -
    6684 _In_ size_t end = SIZE_MAX,
    -
    6685 _In_ int flags = match_default)
    +
    6683 _In_ size_t start = 0,
    +
    6684 _In_ size_t end = SIZE_MAX,
    +
    6685 _In_ int flags = match_default)
    6686 {
    6687 _Assume_(text || start >= end);
    6688 this->interval.end = start;
    -
    6689 if (name.match(text, this->interval.end, end, flags))
    +
    6689 if (name.match(text, this->interval.end, end, flags))
    6690 this->interval.end = name.interval.end;
    6691 else
    -
    6692 goto error;
    -
    6693 while (m_space.match(text, this->interval.end, end, flags))
    +
    6692 goto error;
    +
    6693 while (m_space.match(text, this->interval.end, end, flags))
    6694 this->interval.end = m_space.interval.end;
    -
    6695 if (this->interval.end < end && text[this->interval.end] == '=')
    +
    6695 if (this->interval.end < end && text[this->interval.end] == '=')
    6696 this->interval.end++;
    6697 else
    -
    6698 goto error;
    -
    6699 while (m_space.match(text, this->interval.end, end, flags))
    +
    6698 goto error;
    +
    6699 while (m_space.match(text, this->interval.end, end, flags))
    6700 this->interval.end = m_space.interval.end;
    -
    6701 if (value.match(text, this->interval.end, end, flags))
    +
    6701 if (value.match(text, this->interval.end, end, flags))
    6702 this->interval.end = value.interval.end;
    6703 else
    -
    6704 goto error;
    +
    6704 goto error;
    6705 params.clear();
    6706 for (;;) {
    -
    6707 if (this->interval.end < end && text[this->interval.end]) {
    -
    6708 if (m_space.match(text, this->interval.end, end, flags))
    +
    6707 if (this->interval.end < end && text[this->interval.end]) {
    +
    6708 if (m_space.match(text, this->interval.end, end, flags))
    6709 this->interval.end = m_space.interval.end;
    6710 else if (text[this->interval.end] == ';') {
    6711 this->interval.end++;
    -
    6712 while (m_space.match(text, this->interval.end, end, flags))
    +
    6712 while (m_space.match(text, this->interval.end, end, flags))
    6713 this->interval.end = m_space.interval.end;
    -
    6715 if (param.match(text, this->interval.end, end, flags)) {
    +
    6715 if (param.match(text, this->interval.end, end, flags)) {
    6716 this->interval.end = param.interval.end;
    6717 params.push_back(std::move(param));
    6718 }
    @@ -6712,7 +6720,7 @@ $(function() { codefold.init(0); });
    6729 this->interval.end = params.empty() ? value.interval.end : params.back().interval.end;
    6730 return true;
    6731
    -
    6732 error:
    +
    6732 error:
    6733 invalidate();
    6734 return false;
    6735 }
    @@ -6740,21 +6748,21 @@ $(function() { codefold.init(0); });
    6758 protected:
    6759 virtual bool do_match(
    6760 _In_reads_or_z_(end) const char* text,
    -
    6761 _In_ size_t start = 0,
    -
    6762 _In_ size_t end = SIZE_MAX,
    -
    6763 _In_ int flags = match_default)
    +
    6761 _In_ size_t start = 0,
    +
    6762 _In_ size_t end = SIZE_MAX,
    +
    6763 _In_ int flags = match_default)
    6764 {
    6765 _Assume_(text || start >= end);
    6766 this->interval.end = start;
    6767 type.start = this->interval.end;
    6768 for (;;) {
    -
    6769 if (this->interval.end < end && text[this->interval.end]) {
    +
    6769 if (this->interval.end < end && text[this->interval.end]) {
    6770 if (text[this->interval.end] == '/') {
    6771 type.end = this->interval.end;
    6772 this->interval.end++;
    6773 version.start = this->interval.end;
    6774 for (;;) {
    -
    6775 if (this->interval.end < end && text[this->interval.end]) {
    +
    6775 if (this->interval.end < end && text[this->interval.end]) {
    6776 if (stdex::isspace(text[this->interval.end])) {
    6777 version.end = this->interval.end;
    6778 break;
    @@ -6781,7 +6789,7 @@ $(function() { codefold.init(0); });
    6799 break;
    6800 }
    6801 }
    - +
    6802 if (start < this->interval.end) {
    6803 this->interval.start = start;
    6804 return true;
    6805 }
    @@ -6799,7 +6807,7 @@ $(function() { codefold.init(0); });
    6818 class http_protocol : public parser
    6819 {
    6820 public:
    -
    6821 http_protocol(_In_ const std::locale& locale = std::locale()) :
    +
    6821 http_protocol(_In_ const std::locale& locale = std::locale()) :
    6822 parser(locale),
    6823 version(0x009)
    6824 {}
    @@ -6819,56 +6827,56 @@ $(function() { codefold.init(0); });
    6839 stdex::interval<size_t> version_maj;
    6840 stdex::interval<size_t> version_min;
    - +
    6841 uint16_t version;
    6842
    6843 protected:
    6844 virtual bool do_match(
    6845 _In_reads_or_z_(end) const char* text,
    -
    6846 _In_ size_t start = 0,
    -
    6847 _In_ size_t end = SIZE_MAX,
    -
    6848 _In_ int flags = match_default)
    +
    6846 _In_ size_t start = 0,
    +
    6847 _In_ size_t end = SIZE_MAX,
    +
    6848 _In_ int flags = match_default)
    6849 {
    6850 _Assume_(text || start >= end);
    6851 this->interval.end = start;
    6852 type.start = this->interval.end;
    6853 for (;;) {
    -
    6854 if (this->interval.end < end && text[this->interval.end]) {
    +
    6854 if (this->interval.end < end && text[this->interval.end]) {
    6855 if (text[this->interval.end] == '/') {
    6856 type.end = this->interval.end;
    6857 this->interval.end++;
    6858 break;
    6859 }
    6860 else if (stdex::isspace(text[this->interval.end]))
    -
    6861 goto error;
    +
    6861 goto error;
    6862 else
    6863 this->interval.end++;
    6864 }
    6865 else {
    6866 type.end = this->interval.end;
    -
    6867 goto error;
    +
    6867 goto error;
    6868 }
    6869 }
    6870 version_maj.start = this->interval.end;
    6871 for (;;) {
    -
    6872 if (this->interval.end < end && text[this->interval.end]) {
    +
    6872 if (this->interval.end < end && text[this->interval.end]) {
    6873 if (text[this->interval.end] == '.') {
    6874 version_maj.end = this->interval.end;
    6875 this->interval.end++;
    6876 version_min.start = this->interval.end;
    6877 for (;;) {
    -
    6878 if (this->interval.end < end && text[this->interval.end]) {
    +
    6878 if (this->interval.end < end && text[this->interval.end]) {
    6879 if (stdex::isspace(text[this->interval.end])) {
    6880 version_min.end = this->interval.end;
    6881 version =
    -
    6882 (uint16_t)strtoui(text + version_maj.start, version_maj.size(), nullptr, 10) * 0x100 +
    -
    6883 (uint16_t)strtoui(text + version_min.start, version_min.size(), nullptr, 10);
    +
    6882 (uint16_t)strtoui(text + version_maj.start, version_maj.size(), nullptr, 10) * 0x100 +
    +
    6883 (uint16_t)strtoui(text + version_min.start, version_min.size(), nullptr, 10);
    6884 break;
    6885 }
    6886 else
    6887 this->interval.end++;
    6888 }
    6889 else
    -
    6890 goto error;
    +
    6890 goto error;
    6891 }
    6892 break;
    6893 }
    @@ -6876,19 +6884,19 @@ $(function() { codefold.init(0); });
    6895 version_maj.end = this->interval.end;
    6896 version_min.start = 1;
    6897 version_min.end = 0;
    -
    6898 version = (uint16_t)strtoui(text + version_maj.start, version_maj.size(), nullptr, 10) * 0x100;
    +
    6898 version = (uint16_t)strtoui(text + version_maj.start, version_maj.size(), nullptr, 10) * 0x100;
    6899 break;
    6900 }
    6901 else
    6902 this->interval.end++;
    6903 }
    6904 else
    -
    6905 goto error;
    +
    6905 goto error;
    6906 }
    6907 this->interval.start = start;
    6908 return true;
    6909
    -
    6910 error:
    +
    6910 error:
    6911 invalidate();
    6912 return false;
    6913 }
    @@ -6899,9 +6907,9 @@ $(function() { codefold.init(0); });
    6919 class http_request : public parser
    6920 {
    6921 public:
    -
    6922 http_request(_In_ const std::locale& locale = std::locale()) :
    +
    6922 http_request(_In_ const std::locale& locale = std::locale()) :
    6923 parser(locale),
    -
    6924 url(locale),
    +
    6924 url(locale),
    6925 protocol(locale)
    6926 {}
    6927
    @@ -6909,42 +6917,42 @@ $(function() { codefold.init(0); });
    6929 {
    6930 verb.start = 1;
    6931 verb.end = 0;
    -
    6932 url.invalidate();
    +
    6932 url.invalidate();
    6933 protocol.invalidate();
    6934 parser::invalidate();
    6935 }
    6936
    -
    6938 http_url url;
    +
    6938 http_url url;
    6939 http_protocol protocol;
    6940
    6941 protected:
    6942 virtual bool do_match(
    6943 _In_reads_or_z_(end) const char* text,
    -
    6944 _In_ size_t start = 0,
    -
    6945 _In_ size_t end = SIZE_MAX,
    -
    6946 _In_ int flags = match_default)
    +
    6944 _In_ size_t start = 0,
    +
    6945 _In_ size_t end = SIZE_MAX,
    +
    6946 _In_ int flags = match_default)
    6947 {
    6948 _Assume_(text || start >= end);
    6949 this->interval.end = start;
    6950
    6951 for (;;) {
    -
    6952 if (m_line_break.match(text, this->interval.end, end, flags))
    -
    6953 goto error;
    -
    6954 else if (this->interval.end < end && text[this->interval.end]) {
    +
    6952 if (m_line_break.match(text, this->interval.end, end, flags))
    +
    6953 goto error;
    +
    6954 else if (this->interval.end < end && text[this->interval.end]) {
    6955 if (stdex::isspace(text[this->interval.end]))
    6956 this->interval.end++;
    6957 else
    6958 break;
    6959 }
    6960 else
    -
    6961 goto error;
    +
    6961 goto error;
    6962 }
    6963 verb.start = this->interval.end;
    6964 for (;;) {
    -
    6965 if (m_line_break.match(text, this->interval.end, end, flags))
    -
    6966 goto error;
    -
    6967 else if (this->interval.end < end && text[this->interval.end]) {
    +
    6965 if (m_line_break.match(text, this->interval.end, end, flags))
    +
    6966 goto error;
    +
    6967 else if (this->interval.end < end && text[this->interval.end]) {
    6968 if (stdex::isspace(text[this->interval.end])) {
    6969 verb.end = this->interval.end;
    6970 this->interval.end++;
    @@ -6954,33 +6962,33 @@ $(function() { codefold.init(0); });
    6974 this->interval.end++;
    6975 }
    6976 else
    -
    6977 goto error;
    +
    6977 goto error;
    6978 }
    6979
    6980 for (;;) {
    -
    6981 if (m_line_break.match(text, this->interval.end, end, flags))
    -
    6982 goto error;
    -
    6983 else if (this->interval.end < end && text[this->interval.end]) {
    +
    6981 if (m_line_break.match(text, this->interval.end, end, flags))
    +
    6982 goto error;
    +
    6983 else if (this->interval.end < end && text[this->interval.end]) {
    6984 if (stdex::isspace(text[this->interval.end]))
    6985 this->interval.end++;
    6986 else
    6987 break;
    6988 }
    6989 else
    -
    6990 goto error;
    +
    6990 goto error;
    6991 }
    -
    6992 if (url.match(text, this->interval.end, end, flags))
    -
    6993 this->interval.end = url.interval.end;
    +
    6992 if (url.match(text, this->interval.end, end, flags))
    +
    6993 this->interval.end = url.interval.end;
    6994 else
    -
    6995 goto error;
    +
    6995 goto error;
    6996
    6997 protocol.invalidate();
    6998 for (;;) {
    -
    6999 if (m_line_break.match(text, this->interval.end, end, flags)) {
    +
    6999 if (m_line_break.match(text, this->interval.end, end, flags)) {
    7000 this->interval.end = m_line_break.interval.end;
    7001 goto end;
    7002 }
    -
    7003 else if (this->interval.end < end && text[this->interval.end]) {
    +
    7003 else if (this->interval.end < end && text[this->interval.end]) {
    7004 if (stdex::isspace(text[this->interval.end]))
    7005 this->interval.end++;
    7006 else
    @@ -6990,11 +6998,11 @@ $(function() { codefold.init(0); });
    7010 goto end;
    7011 }
    7012 for (;;) {
    -
    7013 if (m_line_break.match(text, this->interval.end, end, flags)) {
    +
    7013 if (m_line_break.match(text, this->interval.end, end, flags)) {
    7014 this->interval.end = m_line_break.interval.end;
    7015 goto end;
    7016 }
    -
    7017 else if (protocol.match(text, this->interval.end, end, flags)) {
    +
    7017 else if (protocol.match(text, this->interval.end, end, flags)) {
    7018 this->interval.end = protocol.interval.end;
    7019 break;
    7020 }
    @@ -7003,11 +7011,11 @@ $(function() { codefold.init(0); });
    7023 }
    7024
    7025 for (;;) {
    -
    7026 if (m_line_break.match(text, this->interval.end, end, flags)) {
    +
    7026 if (m_line_break.match(text, this->interval.end, end, flags)) {
    7027 this->interval.end = m_line_break.interval.end;
    7028 break;
    7029 }
    -
    7030 else if (this->interval.end < end && text[this->interval.end])
    +
    7030 else if (this->interval.end < end && text[this->interval.end])
    7031 this->interval.end++;
    7032 else
    7033 goto end;
    @@ -7017,7 +7025,7 @@ $(function() { codefold.init(0); });
    7037 this->interval.start = start;
    7038 return true;
    7039
    -
    7040 error:
    +
    7040 error:
    7041 invalidate();
    7042 return false;
    7043 }
    @@ -7045,42 +7053,42 @@ $(function() { codefold.init(0); });
    7066 protected:
    7067 virtual bool do_match(
    7068 _In_reads_or_z_(end) const char* text,
    -
    7069 _In_ size_t start = 0,
    -
    7070 _In_ size_t end = SIZE_MAX,
    -
    7071 _In_ int flags = match_default)
    +
    7069 _In_ size_t start = 0,
    +
    7070 _In_ size_t end = SIZE_MAX,
    +
    7071 _In_ int flags = match_default)
    7072 {
    7073 _Assume_(text || start >= end);
    7074 this->interval.end = start;
    7075
    -
    7076 if (m_line_break.match(text, this->interval.end, end, flags) ||
    -
    7077 (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])))
    -
    7078 goto error;
    +
    7076 if (m_line_break.match(text, this->interval.end, end, flags) ||
    +
    7077 (this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end])))
    +
    7078 goto error;
    7079 name.start = this->interval.end;
    7080 for (;;) {
    -
    7081 if (m_line_break.match(text, this->interval.end, end, flags))
    -
    7082 goto error;
    -
    7083 else if (this->interval.end < end && text[this->interval.end]) {
    +
    7081 if (m_line_break.match(text, this->interval.end, end, flags))
    +
    7082 goto error;
    +
    7083 else if (this->interval.end < end && text[this->interval.end]) {
    7084 if (stdex::isspace(text[this->interval.end])) {
    7085 name.end = this->interval.end;
    7086 this->interval.end++;
    7087 for (;;) {
    -
    7088 if (m_line_break.match(text, this->interval.end, end, flags))
    -
    7089 goto error;
    -
    7090 else if (this->interval.end < end && text[this->interval.end]) {
    +
    7088 if (m_line_break.match(text, this->interval.end, end, flags))
    +
    7089 goto error;
    +
    7090 else if (this->interval.end < end && text[this->interval.end]) {
    7091 if (stdex::isspace(text[this->interval.end]))
    7092 this->interval.end++;
    7093 else
    7094 break;
    7095 }
    7096 else
    -
    7097 goto error;
    +
    7097 goto error;
    7098 }
    -
    7099 if (this->interval.end < end && text[this->interval.end] == ':') {
    +
    7099 if (this->interval.end < end && text[this->interval.end] == ':') {
    7100 this->interval.end++;
    7101 break;
    7102 }
    7103 else
    -
    7104 goto error;
    +
    7104 goto error;
    7105 break;
    7106 }
    7107 else if (text[this->interval.end] == ':') {
    @@ -7092,24 +7100,24 @@ $(function() { codefold.init(0); });
    7113 this->interval.end++;
    7114 }
    7115 else
    -
    7116 goto error;
    +
    7116 goto error;
    7117 }
    -
    7118 value.start = SIZE_MAX;
    +
    7118 value.start = SIZE_MAX;
    7119 value.end = 0;
    7120 for (;;) {
    -
    7121 if (m_line_break.match(text, this->interval.end, end, flags)) {
    +
    7121 if (m_line_break.match(text, this->interval.end, end, flags)) {
    7122 this->interval.end = m_line_break.interval.end;
    -
    7123 if (!m_line_break.match(text, this->interval.end, end, flags) &&
    -
    7124 this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end]))
    +
    7123 if (!m_line_break.match(text, this->interval.end, end, flags) &&
    +
    7124 this->interval.end < end && text[this->interval.end] && stdex::isspace(text[this->interval.end]))
    7125 this->interval.end++;
    7126 else
    7127 break;
    7128 }
    -
    7129 else if (this->interval.end < end && text[this->interval.end]) {
    +
    7129 else if (this->interval.end < end && text[this->interval.end]) {
    7130 if (stdex::isspace(text[this->interval.end]))
    7131 this->interval.end++;
    7132 else {
    -
    7133 if (value.start == SIZE_MAX) value.start = this->interval.end;
    +
    7133 if (value.start == SIZE_MAX) value.start = this->interval.end;
    7134 value.end = ++this->interval.end;
    7135 }
    7136 }
    @@ -7119,7 +7127,7 @@ $(function() { codefold.init(0); });
    7140 this->interval.start = start;
    7141 return true;
    7142
    -
    7143 error:
    +
    7143 error:
    7144 invalidate();
    7145 return false;
    7146 }
    @@ -7135,9 +7143,9 @@ $(function() { codefold.init(0); });
    7157 public:
    7158 void insert(
    7159 _In_reads_or_z_(end) const char* text,
    -
    7160 _In_ size_t start = 0,
    -
    7161 _In_ size_t end = SIZE_MAX,
    -
    7162 _In_ int flags = match_default)
    +
    7160 _In_ size_t start = 0,
    +
    7161 _In_ size_t end = SIZE_MAX,
    +
    7162 _In_ int flags = match_default)
    7163 {
    7164 while (start < end) {
    7165 while (start < end && text[start] && stdex::isspace(text[start])) start++;
    @@ -7145,10 +7153,10 @@ $(function() { codefold.init(0); });
    7167 start++;
    7168 while (start < end&& text[start] && stdex::isspace(text[start])) start++;
    7169 }
    -
    7170 KEY el;
    -
    7171 if (el.match(text, start, end, flags)) {
    -
    7172 start = el.interval.end;
    -
    7173 T::insert(std::move(el));
    +
    7170 KEY el;
    +
    7171 if (el.match(text, start, end, flags)) {
    +
    7172 start = el.interval.end;
    +
    7173 T::insert(std::move(el));
    7174 }
    7175 else
    7176 break;
    @@ -7168,7 +7176,7 @@ $(function() { codefold.init(0); });
    7188
    7192 template <class T, class AX = std::allocator<T>>
    - +
    7194
    7198 template <class T>
    @@ -7176,30 +7184,30 @@ $(function() { codefold.init(0); });
    7200 {
    7201 public:
    -
    7203 _In_ const std::shared_ptr<basic_parser<T>>& quote,
    -
    7204 _In_ const std::shared_ptr<basic_parser<T>>& chr,
    -
    7205 _In_ const std::shared_ptr<basic_parser<T>>& escape,
    -
    7206 _In_ const std::shared_ptr<basic_parser<T>>& sol,
    -
    7207 _In_ const std::shared_ptr<basic_parser<T>>& bs,
    -
    7208 _In_ const std::shared_ptr<basic_parser<T>>& ff,
    -
    7209 _In_ const std::shared_ptr<basic_parser<T>>& lf,
    -
    7210 _In_ const std::shared_ptr<basic_parser<T>>& cr,
    -
    7211 _In_ const std::shared_ptr<basic_parser<T>>& htab,
    -
    7212 _In_ const std::shared_ptr<basic_parser<T>>& uni,
    -
    7213 _In_ const std::shared_ptr<basic_integer16<T>>& hex,
    -
    7214 _In_ const std::locale& locale = std::locale()) :
    - -
    7216 m_quote(quote),
    -
    7217 m_chr(chr),
    +
    7203 _In_ const std::shared_ptr<basic_parser<T>>& quote,
    +
    7204 _In_ const std::shared_ptr<basic_parser<T>>& chr,
    +
    7205 _In_ const std::shared_ptr<basic_parser<T>>& escape,
    +
    7206 _In_ const std::shared_ptr<basic_parser<T>>& sol,
    +
    7207 _In_ const std::shared_ptr<basic_parser<T>>& bs,
    +
    7208 _In_ const std::shared_ptr<basic_parser<T>>& ff,
    +
    7209 _In_ const std::shared_ptr<basic_parser<T>>& lf,
    +
    7210 _In_ const std::shared_ptr<basic_parser<T>>& cr,
    +
    7211 _In_ const std::shared_ptr<basic_parser<T>>& htab,
    +
    7212 _In_ const std::shared_ptr<basic_parser<T>>& uni,
    +
    7213 _In_ const std::shared_ptr<basic_integer16<T>>& hex,
    +
    7214 _In_ const std::locale& locale = std::locale()) :
    + +
    7216 m_quote(quote),
    +
    7217 m_chr(chr),
    7218 m_escape(escape),
    -
    7219 m_sol(sol),
    -
    7220 m_bs(bs),
    -
    7221 m_ff(ff),
    -
    7222 m_lf(lf),
    -
    7223 m_cr(cr),
    -
    7224 m_htab(htab),
    -
    7225 m_uni(uni),
    -
    7226 m_hex(hex)
    +
    7219 m_sol(sol),
    +
    7220 m_bs(bs),
    +
    7221 m_ff(ff),
    +
    7222 m_lf(lf),
    +
    7223 m_cr(cr),
    +
    7224 m_htab(htab),
    +
    7225 m_uni(uni),
    +
    7226 m_hex(hex)
    7227 {}
    7228
    7229 virtual void invalidate()
    @@ -7213,53 +7221,53 @@ $(function() { codefold.init(0); });
    7237 protected:
    7238 virtual bool do_match(
    7239 _In_reads_or_z_opt_(end) const T* text,
    -
    7240 _In_ size_t start = 0,
    -
    7241 _In_ size_t end = SIZE_MAX,
    -
    7242 _In_ int flags = match_default)
    +
    7240 _In_ size_t start = 0,
    +
    7241 _In_ size_t end = SIZE_MAX,
    +
    7242 _In_ int flags = match_default)
    7243 {
    7244 _Assume_(text || start >= end);
    7245 this->interval.end = start;
    -
    7246 if (m_quote->match(text, this->interval.end, end, flags)) {
    +
    7246 if (m_quote->match(text, this->interval.end, end, flags)) {
    7247 this->interval.end = m_quote->interval.end;
    7248 value.clear();
    7249 for (;;) {
    -
    7250 if (m_quote->match(text, this->interval.end, end, flags)) {
    +
    7250 if (m_quote->match(text, this->interval.end, end, flags)) {
    7251 this->interval.start = start;
    7252 this->interval.end = m_quote->interval.end;
    7253 return true;
    7254 }
    -
    7255 if (m_escape->match(text, this->interval.end, end, flags)) {
    -
    7256 if (m_quote->match(text, m_escape->interval.end, end, flags)) {
    +
    7255 if (m_escape->match(text, this->interval.end, end, flags)) {
    +
    7256 if (m_quote->match(text, m_escape->interval.end, end, flags)) {
    7257 value += '"'; this->interval.end = m_quote->interval.end;
    7258 continue;
    7259 }
    -
    7260 if (m_sol->match(text, m_escape->interval.end, end, flags)) {
    +
    7260 if (m_sol->match(text, m_escape->interval.end, end, flags)) {
    7261 value += '/'; this->interval.end = m_sol->interval.end;
    7262 continue;
    7263 }
    -
    7264 if (m_bs->match(text, m_escape->interval.end, end, flags)) {
    +
    7264 if (m_bs->match(text, m_escape->interval.end, end, flags)) {
    7265 value += '\b'; this->interval.end = m_bs->interval.end;
    7266 continue;
    7267 }
    -
    7268 if (m_ff->match(text, m_escape->interval.end, end, flags)) {
    +
    7268 if (m_ff->match(text, m_escape->interval.end, end, flags)) {
    7269 value += '\f'; this->interval.end = m_ff->interval.end;
    7270 continue;
    7271 }
    -
    7272 if (m_lf->match(text, m_escape->interval.end, end, flags)) {
    +
    7272 if (m_lf->match(text, m_escape->interval.end, end, flags)) {
    7273 value += '\n'; this->interval.end = m_lf->interval.end;
    7274 continue;
    7275 }
    -
    7276 if (m_cr->match(text, m_escape->interval.end, end, flags)) {
    +
    7276 if (m_cr->match(text, m_escape->interval.end, end, flags)) {
    7277 value += '\r'; this->interval.end = m_cr->interval.end;
    7278 continue;
    7279 }
    -
    7280 if (m_htab->match(text, m_escape->interval.end, end, flags)) {
    +
    7280 if (m_htab->match(text, m_escape->interval.end, end, flags)) {
    7281 value += '\t'; this->interval.end = m_htab->interval.end;
    7282 continue;
    7283 }
    7284 if (
    -
    7285 m_uni->match(text, m_escape->interval.end, end, flags) &&
    -
    7286 m_hex->match(text, m_uni->interval.end, std::min(m_uni->interval.end + 4, end), flags | match_case_insensitive) &&
    +
    7285 m_uni->match(text, m_escape->interval.end, end, flags) &&
    +
    7286 m_hex->match(text, m_uni->interval.end, std::min(m_uni->interval.end + 4, end), flags | match_case_insensitive) &&
    7287 m_hex->interval.size() == 4 /* JSON requests 4-digit Unicode sequneces: \u.... */)
    7288 {
    7289 _Assume_(m_hex->value <= 0xffff);
    @@ -7281,12 +7289,12 @@ $(function() { codefold.init(0); });
    7305 this->interval.end = m_hex->interval.end;
    7306 continue;
    7307 }
    -
    7308 if (m_escape->match(text, m_escape->interval.end, end, flags)) {
    +
    7308 if (m_escape->match(text, m_escape->interval.end, end, flags)) {
    7309 value += '\\'; this->interval.end = m_escape->interval.end;
    7310 continue;
    7311 }
    7312 }
    -
    7313 if (m_chr->match(text, this->interval.end, end, flags)) {
    +
    7313 if (m_chr->match(text, this->interval.end, end, flags)) {
    7314 value.append(text + m_chr->interval.start, m_chr->interval.size());
    7315 this->interval.end = m_chr->interval.end;
    7316 continue;
    @@ -7313,12 +7321,12 @@ $(function() { codefold.init(0); });
    7337 };
    7338
    - - + +
    7341#ifdef _UNICODE
    -
    7342 using tjson_string = wjson_string;
    +
    7342 using tjson_string = wjson_string;
    7343#else
    -
    7344 using tjson_string = json_string;
    +
    7344 using tjson_string = json_string;
    7345#endif
    7346
    7350 template <class T>
    @@ -7337,11 +7345,11 @@ $(function() { codefold.init(0); });
    7362 protected:
    7363 virtual bool do_match(
    7364 _In_reads_or_z_opt_(end) const T* text,
    -
    7365 _In_ size_t start = 0,
    -
    7366 _In_ size_t end = SIZE_MAX,
    -
    7367 _In_ int flags = match_multiline)
    +
    7365 _In_ size_t start = 0,
    +
    7366 _In_ size_t end = SIZE_MAX,
    +
    7367 _In_ int flags = match_multiline)
    7368 {
    -
    7369 _Unreferenced_(flags);
    +
    7369 _Unreferenced_(flags);
    7370 _Assume_(text || start + 1 >= end);
    7371 if (start + 1 < end &&
    7372 text[start] == '/' &&
    @@ -7350,11 +7358,11 @@ $(function() { codefold.init(0); });
    7375 // /*
    7376 this->content.start = this->interval.end = start + 2;
    7377 for (;;) {
    -
    7378 if (this->interval.end >= end || !text[this->interval.end])
    +
    7378 if (this->interval.end >= end || !text[this->interval.end])
    7379 break;
    7380 if (this->interval.end + 1 < end &&
    -
    7381 text[this->interval.end] == '*' &&
    -
    7382 text[this->interval.end + 1] == '/')
    +
    7381 text[this->interval.end] == '*' &&
    +
    7382 text[this->interval.end + 1] == '/')
    7383 {
    7384 // /*...*/
    7385 this->content.end = this->interval.end;
    @@ -7387,11 +7395,11 @@ $(function() { codefold.init(0); });
    7413 protected:
    7414 virtual bool do_match(
    7415 _In_reads_or_z_opt_(end) const T* text,
    -
    7416 _In_ size_t start = 0,
    -
    7417 _In_ size_t end = SIZE_MAX,
    -
    7418 _In_ int flags = match_multiline)
    +
    7416 _In_ size_t start = 0,
    +
    7417 _In_ size_t end = SIZE_MAX,
    +
    7418 _In_ int flags = match_multiline)
    7419 {
    -
    7420 _Unreferenced_(flags);
    +
    7420 _Unreferenced_(flags);
    7421 _Assume_(text || start + 3 >= end);
    7422 if (start + 3 < end &&
    7423 text[start] == '<' &&
    @@ -7409,12 +7417,12 @@ $(function() { codefold.init(0); });
    7435 };
    7436
    - - + +
    7439#ifdef _UNICODE
    -
    7440 using tcss_cdo = wcss_cdo;
    +
    7440 using tcss_cdo = wcss_cdo;
    7441#else
    -
    7442 using tcss_cdo = css_cdo;
    +
    7442 using tcss_cdo = css_cdo;
    7443#endif
    7444
    7448 template <class T>
    @@ -7424,11 +7432,11 @@ $(function() { codefold.init(0); });
    7451 protected:
    7452 virtual bool do_match(
    7453 _In_reads_or_z_opt_(end) const T* text,
    -
    7454 _In_ size_t start = 0,
    -
    7455 _In_ size_t end = SIZE_MAX,
    -
    7456 _In_ int flags = match_multiline)
    +
    7454 _In_ size_t start = 0,
    +
    7455 _In_ size_t end = SIZE_MAX,
    +
    7456 _In_ int flags = match_multiline)
    7457 {
    -
    7458 _Unreferenced_(flags);
    +
    7458 _Unreferenced_(flags);
    7459 _Assume_(text || start + 2 >= end);
    7460 if (start + 2 < end &&
    7461 text[start] == '-' &&
    @@ -7445,12 +7453,12 @@ $(function() { codefold.init(0); });
    7472 };
    7473
    - - + +
    7476#ifdef _UNICODE
    -
    7477 using tcss_cdc = wcss_cdc;
    +
    7477 using tcss_cdc = wcss_cdc;
    7478#else
    -
    7479 using tcss_cdc = css_cdc;
    +
    7479 using tcss_cdc = css_cdc;
    7480#endif
    7481
    7485 template <class T>
    @@ -7469,23 +7477,23 @@ $(function() { codefold.init(0); });
    7497 protected:
    7498 virtual bool do_match(
    7499 _In_reads_or_z_opt_(end) const T* text,
    -
    7500 _In_ size_t start = 0,
    -
    7501 _In_ size_t end = SIZE_MAX,
    -
    7502 _In_ int flags = match_multiline)
    +
    7500 _In_ size_t start = 0,
    +
    7501 _In_ size_t end = SIZE_MAX,
    +
    7502 _In_ int flags = match_multiline)
    7503 {
    -
    7504 _Unreferenced_(flags);
    +
    7504 _Unreferenced_(flags);
    7505 this->interval.end = start;
    7506 _Assume_(text || this->interval.end >= end);
    7507 if (this->interval.end < end &&
    -
    7508 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    +
    7508 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    7509 {
    7510 // "Quoted...
    -
    7511 T quote = text[this->interval.end];
    +
    7511 T quote = text[this->interval.end];
    7512 this->content.start = ++this->interval.end;
    7513 for (;;) {
    -
    7514 if (this->interval.end >= end || !text[this->interval.end])
    +
    7514 if (this->interval.end >= end || !text[this->interval.end])
    7515 break;
    -
    7516 if (text[this->interval.end] == quote) {
    +
    7516 if (text[this->interval.end] == quote) {
    7517 // End quote"
    7518 this->content.end = this->interval.end;
    7519 this->interval.start = start;
    @@ -7493,8 +7501,8 @@ $(function() { codefold.init(0); });
    7521 return true;
    7522 }
    7523 if (this->interval.end + 1 < end &&
    -
    7524 text[this->interval.end] == '\\' &&
    -
    7525 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    +
    7524 text[this->interval.end] == '\\' &&
    +
    7525 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    7526 {
    7527 // Escaped quote
    7528 this->interval.end = this->interval.end + 2;
    @@ -7535,44 +7543,44 @@ $(function() { codefold.init(0); });
    7564 protected:
    7565 virtual bool do_match(
    7566 _In_reads_or_z_opt_(end) const T* text,
    -
    7567 _In_ size_t start = 0,
    -
    7568 _In_ size_t end = SIZE_MAX,
    -
    7569 _In_ int flags = match_multiline)
    +
    7567 _In_ size_t start = 0,
    +
    7568 _In_ size_t end = SIZE_MAX,
    +
    7569 _In_ int flags = match_multiline)
    7570 {
    -
    7571 _Unreferenced_(flags);
    +
    7571 _Unreferenced_(flags);
    7572 this->interval.end = start;
    7573 _Assume_(text || this->interval.end + 3 >= end);
    7574 if (this->interval.end + 3 < end &&
    -
    7575 (text[this->interval.end] == 'u' || text[this->interval.end] == 'U') &&
    -
    7576 (text[this->interval.end + 1] == 'r' || text[this->interval.end + 1] == 'R') &&
    -
    7577 (text[this->interval.end + 2] == 'l' || text[this->interval.end + 2] == 'L') &&
    -
    7578 text[this->interval.end + 3] == '(')
    +
    7575 (text[this->interval.end] == 'u' || text[this->interval.end] == 'U') &&
    +
    7576 (text[this->interval.end + 1] == 'r' || text[this->interval.end + 1] == 'R') &&
    +
    7577 (text[this->interval.end + 2] == 'l' || text[this->interval.end + 2] == 'L') &&
    +
    7578 text[this->interval.end + 3] == '(')
    7579 {
    7580 // url(
    7581 this->interval.end = this->interval.end + 4;
    7582
    7583 // Skip whitespace.
    -
    7584 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    7585 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    7584 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    7585 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    7586
    7587 if (this->interval.end < end &&
    -
    7588 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    +
    7588 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    7589 {
    7590 // url("Quoted...
    -
    7591 T quote = text[this->interval.end];
    +
    7591 T quote = text[this->interval.end];
    7592 this->content.start = ++this->interval.end;
    7593 for (;;) {
    -
    7594 if (this->interval.end >= end || !text[this->interval.end])
    -
    7595 goto error;
    -
    7596 if (text[this->interval.end] == quote) {
    +
    7594 if (this->interval.end >= end || !text[this->interval.end])
    +
    7595 goto error;
    +
    7596 if (text[this->interval.end] == quote) {
    7597 // End quote"
    7598 this->content.end = this->interval.end;
    7599 this->interval.end++;
    7600 break;
    7601 }
    7602 if (this->interval.end + 1 < end &&
    -
    7603 text[this->interval.end] == '\\' &&
    -
    7604 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    +
    7603 text[this->interval.end] == '\\' &&
    +
    7604 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    7605 {
    7606 // Escaped quote
    7607 this->interval.end = this->interval.end + 2;
    @@ -7582,10 +7590,10 @@ $(function() { codefold.init(0); });
    7611 }
    7612
    7613 // Skip whitespace.
    -
    7614 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    7614 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    7615
    7616 if (this->interval.end < end &&
    -
    7617 text[this->interval.end] == ')')
    +
    7617 text[this->interval.end] == ')')
    7618 {
    7619 // url("...")
    7620 this->interval.start = start;
    @@ -7597,15 +7605,15 @@ $(function() { codefold.init(0); });
    7626 // url(...
    7627 this->content.start = content.end = this->interval.end;
    7628 for (;;) {
    -
    7629 if (this->interval.end >= end || !text[this->interval.end])
    -
    7630 goto error;
    +
    7629 if (this->interval.end >= end || !text[this->interval.end])
    +
    7630 goto error;
    7631 if (text[this->interval.end] == ')') {
    7632 // url(...)
    7633 this->interval.start = start;
    7634 this->interval.end++;
    7635 return true;
    7636 }
    -
    7637 if (ctype.is(ctype.space, text[this->interval.end]))
    +
    7637 if (ctype.is(ctype.space, text[this->interval.end]))
    7638 this->interval.end++;
    7639 else
    7640 this->content.end = ++this->interval.end;
    @@ -7613,7 +7621,7 @@ $(function() { codefold.init(0); });
    7642 }
    7643 }
    7644
    -
    7645 error:
    +
    7645 error:
    7646 invalidate();
    7647 return false;
    7648 }
    @@ -7644,39 +7652,39 @@ $(function() { codefold.init(0); });
    7674 protected:
    7675 virtual bool do_match(
    7676 _In_reads_or_z_opt_(end) const T* text,
    -
    7677 _In_ size_t start = 0,
    -
    7678 _In_ size_t end = SIZE_MAX,
    -
    7679 _In_ int flags = match_multiline)
    +
    7677 _In_ size_t start = 0,
    +
    7678 _In_ size_t end = SIZE_MAX,
    +
    7679 _In_ int flags = match_multiline)
    7680 {
    -
    7681 _Unreferenced_(flags);
    +
    7681 _Unreferenced_(flags);
    7682 this->interval.end = start;
    7683 _Assume_(text || this->interval.end + 6 >= end);
    7684 if (this->interval.end + 6 < end &&
    -
    7685 text[this->interval.end] == '@' &&
    -
    7686 (text[this->interval.end + 1] == 'i' || text[this->interval.end + 1] == 'I') &&
    -
    7687 (text[this->interval.end + 2] == 'm' || text[this->interval.end + 2] == 'M') &&
    -
    7688 (text[this->interval.end + 3] == 'p' || text[this->interval.end + 3] == 'P') &&
    -
    7689 (text[this->interval.end + 4] == 'o' || text[this->interval.end + 4] == 'O') &&
    -
    7690 (text[this->interval.end + 5] == 'r' || text[this->interval.end + 5] == 'R') &&
    -
    7691 (text[this->interval.end + 6] == 't' || text[this->interval.end + 6] == 'T'))
    +
    7685 text[this->interval.end] == '@' &&
    +
    7686 (text[this->interval.end + 1] == 'i' || text[this->interval.end + 1] == 'I') &&
    +
    7687 (text[this->interval.end + 2] == 'm' || text[this->interval.end + 2] == 'M') &&
    +
    7688 (text[this->interval.end + 3] == 'p' || text[this->interval.end + 3] == 'P') &&
    +
    7689 (text[this->interval.end + 4] == 'o' || text[this->interval.end + 4] == 'O') &&
    +
    7690 (text[this->interval.end + 5] == 'r' || text[this->interval.end + 5] == 'R') &&
    +
    7691 (text[this->interval.end + 6] == 't' || text[this->interval.end + 6] == 'T'))
    7692 {
    7693 // @import...
    7694 this->interval.end = this->interval.end + 7;
    7695
    7696 // Skip whitespace.
    -
    7697 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    7698 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    7697 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    7698 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    7699
    7700 if (this->interval.end < end &&
    -
    7701 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    +
    7701 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    7702 {
    7703 // @import "Quoted
    -
    7704 T quote = text[this->interval.end];
    +
    7704 T quote = text[this->interval.end];
    7705 this->content.start = ++this->interval.end;
    7706 for (;;) {
    -
    7707 if (this->interval.end >= end || !text[this->interval.end])
    -
    7708 goto error;
    -
    7709 if (text[this->interval.end] == quote) {
    +
    7707 if (this->interval.end >= end || !text[this->interval.end])
    +
    7708 goto error;
    +
    7709 if (text[this->interval.end] == quote) {
    7710 // End quote"
    7711 this->content.end = this->interval.end;
    7712 this->interval.start = start;
    @@ -7684,8 +7692,8 @@ $(function() { codefold.init(0); });
    7714 return true;
    7715 }
    7716 if (this->interval.end + 1 < end &&
    -
    7717 text[this->interval.end] == '\\' &&
    -
    7718 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    +
    7717 text[this->interval.end] == '\\' &&
    +
    7718 (text[this->interval.end + 1] == '\"' || text[this->interval.end + 1] == '\''))
    7719 {
    7720 // Escaped quote
    7721 this->interval.end = this->interval.end + 2;
    @@ -7696,7 +7704,7 @@ $(function() { codefold.init(0); });
    7726 }
    7727 }
    7728
    -
    7729 error:
    +
    7729 error:
    7730 invalidate();
    7731 return false;
    7732 }
    @@ -7731,78 +7739,78 @@ $(function() { codefold.init(0); });
    7762 protected:
    7763 virtual bool do_match(
    7764 _In_reads_or_z_opt_(end) const T* text,
    -
    7765 _In_ size_t start = 0,
    -
    7766 _In_ size_t end = SIZE_MAX,
    -
    7767 _In_ int flags = match_multiline)
    +
    7765 _In_ size_t start = 0,
    +
    7766 _In_ size_t end = SIZE_MAX,
    +
    7767 _In_ int flags = match_multiline)
    7768 {
    -
    7769 _Unreferenced_(flags);
    -
    7770 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    7769 _Unreferenced_(flags);
    +
    7770 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    7771
    7772 this->interval.end = start;
    7773 this->base_type.start = this->interval.end;
    7774 for (;;) {
    7775 _Assume_(text || this->interval.end >= end);
    -
    7776 if (this->interval.end >= end || !text[this->interval.end])
    +
    7776 if (this->interval.end >= end || !text[this->interval.end])
    7777 break;
    7778 if (text[this->interval.end] == '/' ||
    -
    7779 text[this->interval.end] == ';' ||
    -
    7780 ctype.is(ctype.space, text[this->interval.end]))
    +
    7779 text[this->interval.end] == ';' ||
    +
    7780 ctype.is(ctype.space, text[this->interval.end]))
    7781 break;
    7782 this->interval.end++;
    7783 }
    -
    7784 if (this->interval.end <= this->base_type.start)
    -
    7785 goto error;
    +
    7784 if (this->interval.end <= this->base_type.start)
    +
    7785 goto error;
    7786 this->base_type.end = this->interval.end;
    7787
    -
    7788 if (end <= this->interval.end || text[this->interval.end] != '/')
    -
    7789 goto error;
    +
    7788 if (end <= this->interval.end || text[this->interval.end] != '/')
    +
    7789 goto error;
    7790
    7791 this->interval.end++;
    7792 this->sub_type.start = this->interval.end;
    7793 for (;;) {
    -
    7794 if (this->interval.end >= end || !text[this->interval.end])
    +
    7794 if (this->interval.end >= end || !text[this->interval.end])
    7795 break;
    7796 if (text[this->interval.end] == '/' ||
    -
    7797 text[this->interval.end] == ';' ||
    -
    7798 ctype.is(ctype.space, text[this->interval.end]))
    +
    7797 text[this->interval.end] == ';' ||
    +
    7798 ctype.is(ctype.space, text[this->interval.end]))
    7799 break;
    7800 this->interval.end++;
    7801 }
    -
    7802 if (this->interval.end <= this->sub_type.start)
    -
    7803 goto error;
    +
    7802 if (this->interval.end <= this->sub_type.start)
    +
    7803 goto error;
    7804
    7805 this->sub_type.end = this->interval.end;
    7806 this->charset.invalidate();
    -
    7807 if (this->interval.end < end && text[this->interval.end] == ';') {
    +
    7807 if (this->interval.end < end && text[this->interval.end] == ';') {
    7808 this->interval.end++;
    7809
    7810 // Skip whitespace.
    -
    7811 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    7811 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    7812
    7813 if (this->interval.end + 7 < end &&
    -
    7814 (text[this->interval.end] == 'c' || text[this->interval.end] == 'C') &&
    +
    7814 (text[this->interval.end] == 'c' || text[this->interval.end] == 'C') &&
    7815 (text[this->interval.end + 1] == 'h' || text[this->interval.end + 1] == 'H') &&
    -
    7816 (text[this->interval.end + 2] == 'a' || text[this->interval.end + 2] == 'A') &&
    +
    7816 (text[this->interval.end + 2] == 'a' || text[this->interval.end + 2] == 'A') &&
    7817 (text[this->interval.end + 3] == 'r' || text[this->interval.end + 3] == 'R') &&
    -
    7818 (text[this->interval.end + 4] == 's' || text[this->interval.end + 4] == 'S') &&
    +
    7818 (text[this->interval.end + 4] == 's' || text[this->interval.end + 4] == 'S') &&
    7819 (text[this->interval.end + 5] == 'e' || text[this->interval.end + 5] == 'E') &&
    -
    7820 (text[this->interval.end + 6] == 't' || text[this->interval.end + 6] == 'T') &&
    +
    7820 (text[this->interval.end + 6] == 't' || text[this->interval.end + 6] == 'T') &&
    7821 text[this->interval.end + 7] == '=')
    7822 {
    7823 this->interval.end = this->interval.end + 8;
    7824 if (this->interval.end < end &&
    -
    7825 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    +
    7825 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    7826 {
    7827 // "Quoted...
    -
    7828 T quote = text[this->interval.end];
    +
    7828 T quote = text[this->interval.end];
    7829 this->charset.start = ++this->interval.end;
    7830 for (;;) {
    -
    7831 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    7831 if (this->interval.end >= end || !text[this->interval.end]) {
    7832 // No end quote!
    7833 this->charset.invalidate();
    7834 break;
    7835 }
    -
    7836 if (text[this->interval.end] == quote) {
    +
    7836 if (text[this->interval.end] == quote) {
    7837 // End quote"
    7838 this->charset.end = this->interval.end;
    7839 this->interval.end++;
    @@ -7815,8 +7823,8 @@ $(function() { codefold.init(0); });
    7846 // Nonquoted
    7847 this->charset.start = this->interval.end;
    7848 for (;;) {
    -
    7849 if (this->interval.end >= end || !text[this->interval.end] ||
    -
    7850 ctype.is(ctype.space, text[this->interval.end])) {
    +
    7849 if (this->interval.end >= end || !text[this->interval.end] ||
    +
    7850 ctype.is(ctype.space, text[this->interval.end])) {
    7851 this->charset.end = this->interval.end;
    7852 break;
    7853 }
    @@ -7828,7 +7836,7 @@ $(function() { codefold.init(0); });
    7859 this->interval.start = start;
    7860 return true;
    7861
    -
    7862 error:
    +
    7862 error:
    7863 invalidate();
    7864 return false;
    7865 }
    @@ -7850,17 +7858,17 @@ $(function() { codefold.init(0); });
    7882 protected:
    7883 virtual bool do_match(
    7884 _In_reads_or_z_opt_(end) const T* text,
    -
    7885 _In_ size_t start = 0,
    -
    7886 _In_ size_t end = SIZE_MAX,
    -
    7887 _In_ int flags = match_default)
    +
    7885 _In_ size_t start = 0,
    +
    7886 _In_ size_t end = SIZE_MAX,
    +
    7887 _In_ int flags = match_default)
    7888 {
    -
    7889 _Unreferenced_(flags);
    -
    7890 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    7889 _Unreferenced_(flags);
    +
    7890 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    7891 this->interval.end = start;
    7892 for (;;) {
    7893 _Assume_(text || this->interval.end >= end);
    -
    7894 if (this->interval.end >= end || !text[this->interval.end]) {
    - +
    7894 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    7895 if (start < this->interval.end) {
    7896 this->interval.start = start;
    7897 return true;
    7898 }
    @@ -7868,9 +7876,9 @@ $(function() { codefold.init(0); });
    7900 return false;
    7901 }
    7902 if (text[this->interval.end] == '>' ||
    -
    7903 text[this->interval.end] == '=' ||
    -
    7904 (text[this->interval.end] == '/' && this->interval.end + 1 < end && text[this->interval.end + 1] == '>') ||
    -
    7905 ctype.is(ctype.space, text[this->interval.end]))
    +
    7903 text[this->interval.end] == '=' ||
    +
    7904 (text[this->interval.end] == '/' && this->interval.end + 1 < end && text[this->interval.end + 1] == '>') ||
    +
    7905 ctype.is(ctype.space, text[this->interval.end]))
    7906 {
    7907 this->interval.start = start;
    7908 return true;
    @@ -7881,12 +7889,12 @@ $(function() { codefold.init(0); });
    7913 };
    7914
    - - + +
    7917#ifdef _UNICODE
    -
    7918 using thtml_ident = whtml_ident;
    +
    7918 using thtml_ident = whtml_ident;
    7919#else
    -
    7920 using thtml_ident = html_ident;
    +
    7920 using thtml_ident = html_ident;
    7921#endif
    7922
    7926 template <class T>
    @@ -7905,27 +7913,27 @@ $(function() { codefold.init(0); });
    7938 protected:
    7939 virtual bool do_match(
    7940 _In_reads_or_z_opt_(end) const T* text,
    -
    7941 _In_ size_t start = 0,
    -
    7942 _In_ size_t end = SIZE_MAX,
    -
    7943 _In_ int flags = match_default)
    +
    7941 _In_ size_t start = 0,
    +
    7942 _In_ size_t end = SIZE_MAX,
    +
    7943 _In_ int flags = match_default)
    7944 {
    -
    7945 _Unreferenced_(flags);
    +
    7945 _Unreferenced_(flags);
    7946 this->interval.end = start;
    7947 _Assume_(text || this->interval.end >= end);
    7948 if (this->interval.end < end &&
    -
    7949 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    +
    7949 (text[this->interval.end] == '\"' || text[this->interval.end] == '\''))
    7950 {
    7951 // "Quoted...
    -
    7952 T quote = text[this->interval.end];
    +
    7952 T quote = text[this->interval.end];
    7953 this->content.start = ++this->interval.end;
    7954 for (;;) {
    -
    7955 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    7955 if (this->interval.end >= end || !text[this->interval.end]) {
    7956 // No end quote!
    7957 this->content.invalidate();
    7958 this->interval.invalidate();
    7959 return false;
    7960 }
    -
    7961 if (text[this->interval.end] == quote) {
    +
    7961 if (text[this->interval.end] == quote) {
    7962 // End quote"
    7963 this->content.end = this->interval.end;
    7964 this->interval.start = start;
    @@ -7938,17 +7946,17 @@ $(function() { codefold.init(0); });
    7971
    7972 // Nonquoted
    7973 this->content.start = this->interval.end;
    -
    7974 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    7974 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    7975 for (;;) {
    7976 _Assume_(text || this->interval.end >= end);
    -
    7977 if (this->interval.end >= end || !text[this->interval.end]) {
    +
    7977 if (this->interval.end >= end || !text[this->interval.end]) {
    7978 this->content.end = this->interval.end;
    7979 this->interval.start = start;
    7980 return true;
    7981 }
    7982 if (text[this->interval.end] == '>' ||
    -
    7983 (text[this->interval.end] == '/' && this->interval.end + 1 < end && text[this->interval.end + 1] == '>') ||
    -
    7984 ctype.is(ctype.space, text[this->interval.end]))
    +
    7983 (text[this->interval.end] == '/' && this->interval.end + 1 < end && text[this->interval.end + 1] == '>') ||
    +
    7984 ctype.is(ctype.space, text[this->interval.end]))
    7985 {
    7986 this->content.end = this->interval.end;
    7987 this->interval.start = start;
    @@ -7994,8 +8002,8 @@ $(function() { codefold.init(0); });
    8033 {
    8034 public:
    -
    8035 basic_html_tag(_In_ const std::locale& locale = std::locale()) :
    - +
    8035 basic_html_tag(_In_ const std::locale& locale = std::locale()) :
    +
    8037 type(html_sequence_t::unknown)
    8038 {}
    8039
    @@ -8014,40 +8022,40 @@ $(function() { codefold.init(0); });
    8052 protected:
    8053 virtual bool do_match(
    8054 _In_reads_or_z_opt_(end) const T* text,
    -
    8055 _In_ size_t start = 0,
    -
    8056 _In_ size_t end = SIZE_MAX,
    -
    8057 _In_ int flags = match_multiline)
    +
    8055 _In_ size_t start = 0,
    +
    8056 _In_ size_t end = SIZE_MAX,
    +
    8057 _In_ int flags = match_multiline)
    8058 {
    8059 _Assume_(text || start >= end);
    8060 if (start >= end || text[start] != '<')
    -
    8061 goto error;
    +
    8061 goto error;
    8062 this->interval.end = start + 1;
    -
    8063 if (this->interval.end >= end || !text[this->interval.end])
    -
    8064 goto error;
    +
    8063 if (this->interval.end >= end || !text[this->interval.end])
    +
    8064 goto error;
    8065 if (text[this->interval.end] == '/' &&
    -
    8066 this->m_ident.match(text, this->interval.end + 1, end, flags))
    +
    8066 this->m_ident.match(text, this->interval.end + 1, end, flags))
    8067 {
    8068 // </...
    8069 this->type = html_sequence_t::element_end;
    -
    8070 this->name = this->m_ident.interval;
    -
    8071 this->interval.end = this->m_ident.interval.end;
    +
    8070 this->name = this->m_ident.interval;
    +
    8071 this->interval.end = this->m_ident.interval.end;
    8072 }
    8073 else if (text[this->interval.end] == '!') {
    8074 // <!...
    8075 this->interval.end++;
    8076 if (this->interval.end + 1 < end &&
    -
    8077 text[this->interval.end] == '-' &&
    -
    8078 text[this->interval.end + 1] == '-')
    +
    8077 text[this->interval.end] == '-' &&
    +
    8078 text[this->interval.end + 1] == '-')
    8079 {
    8080 // <!--...
    8081 this->name.start = this->interval.end = this->interval.end + 2;
    8082 for (;;) {
    -
    8083 if (this->interval.end >= end || !text[this->interval.end])
    -
    8084 goto error;
    +
    8083 if (this->interval.end >= end || !text[this->interval.end])
    +
    8084 goto error;
    8085 if (this->interval.end + 2 < end &&
    -
    8086 text[this->interval.end] == '-' &&
    -
    8087 text[this->interval.end + 1] == '-' &&
    -
    8088 text[this->interval.end + 2] == '>')
    +
    8086 text[this->interval.end] == '-' &&
    +
    8087 text[this->interval.end + 1] == '-' &&
    +
    8088 text[this->interval.end + 2] == '>')
    8089 {
    8090 // <!--...-->
    8091 this->type = html_sequence_t::comment;
    @@ -8067,8 +8075,8 @@ $(function() { codefold.init(0); });
    8105 // <?...
    8106 this->name.start = ++this->interval.end;
    8107 for (;;) {
    -
    8108 if (this->interval.end >= end || !text[this->interval.end])
    -
    8109 goto error;
    +
    8108 if (this->interval.end >= end || !text[this->interval.end])
    +
    8109 goto error;
    8110 if (text[this->interval.end] == '>') {
    8111 // <?...>
    8112 this->type = html_sequence_t::instruction;
    @@ -8079,8 +8087,8 @@ $(function() { codefold.init(0); });
    8117 return true;
    8118 }
    8119 if (this->interval.end + 1 < end &&
    -
    8120 text[this->interval.end] == '?' &&
    -
    8121 text[this->interval.end + 1] == '>')
    +
    8120 text[this->interval.end] == '?' &&
    +
    8121 text[this->interval.end + 1] == '>')
    8122 {
    8123 // <?...?>
    8124 this->type = html_sequence_t::instruction;
    @@ -8093,26 +8101,26 @@ $(function() { codefold.init(0); });
    8131 this->interval.end++;
    8132 }
    8133 }
    -
    8134 else if (this->m_ident.match(text, this->interval.end, end, flags)) {
    +
    8134 else if (this->m_ident.match(text, this->interval.end, end, flags)) {
    8135 // <tag...
    8136 this->type = html_sequence_t::element_start;
    -
    8137 this->name = this->m_ident.interval;
    -
    8138 this->interval.end = this->m_ident.interval.end;
    +
    8137 this->name = this->m_ident.interval;
    +
    8138 this->interval.end = this->m_ident.interval.end;
    8139 }
    8140 else
    -
    8141 goto error;
    +
    8141 goto error;
    8142
    8143 {
    8144 // Skip whitespace.
    -
    8145 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    8146 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8145 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    8146 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8147
    8148 this->attributes.clear();
    8149 for (;;) {
    8150 if (this->type == html_sequence_t::element_start &&
    8151 this->interval.end + 1 < end &&
    -
    8152 text[this->interval.end] == '/' &&
    -
    8153 text[this->interval.end + 1] == '>')
    +
    8152 text[this->interval.end] == '/' &&
    +
    8153 text[this->interval.end + 1] == '>')
    8154 {
    8155 // <tag .../>
    8156 this->type = html_sequence_t::element;
    @@ -8120,7 +8128,7 @@ $(function() { codefold.init(0); });
    8158 break;
    8159 }
    8160 if (this->interval.end < end &&
    -
    8161 text[this->interval.end] == '>')
    +
    8161 text[this->interval.end] == '>')
    8162 {
    8163 // <tag ...>
    8164 this->interval.end++;
    @@ -8128,8 +8136,8 @@ $(function() { codefold.init(0); });
    8166 }
    8167 if (this->type == html_sequence_t::declaration &&
    8168 this->interval.end + 1 < end &&
    -
    8169 text[this->interval.end] == '!' &&
    -
    8170 text[this->interval.end + 1] == '>')
    +
    8169 text[this->interval.end] == '!' &&
    +
    8170 text[this->interval.end + 1] == '>')
    8171 {
    8172 // "<!...!>".
    8173 this->interval.end = this->interval.end + 2;
    @@ -8137,17 +8145,17 @@ $(function() { codefold.init(0); });
    8175 }
    8176 if (this->type == html_sequence_t::declaration &&
    8177 this->interval.end + 1 < end &&
    -
    8178 text[this->interval.end] == '-' &&
    -
    8179 text[this->interval.end + 1] == '-')
    +
    8178 text[this->interval.end] == '-' &&
    +
    8179 text[this->interval.end + 1] == '-')
    8180 {
    8181 // "<! ... --...".
    8182 this->interval.end = this->interval.end + 2;
    8183 for (;;) {
    -
    8184 if (this->interval.end >= end || !text[this->interval.end])
    -
    8185 goto error;
    +
    8184 if (this->interval.end >= end || !text[this->interval.end])
    +
    8185 goto error;
    8186 if (this->interval.end + 1 < end &&
    -
    8187 text[this->interval.end] == '-' &&
    -
    8188 text[this->interval.end + 1] == '-')
    +
    8187 text[this->interval.end] == '-' &&
    +
    8188 text[this->interval.end + 1] == '-')
    8189 {
    8190 // "<! ... --...--".
    8191 this->interval.end = this->interval.end + 2;
    @@ -8157,20 +8165,20 @@ $(function() { codefold.init(0); });
    8195 }
    8196
    8197 // Skip whitespace.
    -
    8198 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8198 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8199 continue;
    8200 }
    8201
    -
    8202 if (this->interval.end >= end || !text[this->interval.end])
    -
    8203 goto error;
    +
    8202 if (this->interval.end >= end || !text[this->interval.end])
    +
    8203 goto error;
    8204
    8205 // Attributes follow...
    8206 html_attribute* a = nullptr;
    -
    8207 if (this->m_ident.match(text, this->interval.end, end, flags)) {
    -
    8208 this->attributes.push_back(std::move(html_attribute{ this->m_ident.interval }));
    +
    8207 if (this->m_ident.match(text, this->interval.end, end, flags)) {
    +
    8208 this->attributes.push_back(std::move(html_attribute{ this->m_ident.interval }));
    8209 a = &this->attributes.back();
    8210 _Assume_(a);
    -
    8211 this->interval.end = this->m_ident.interval.end;
    +
    8211 this->interval.end = this->m_ident.interval.end;
    8212 }
    8213 else {
    8214 // What was that?! Skip.
    @@ -8179,21 +8187,21 @@ $(function() { codefold.init(0); });
    8217 }
    8218
    8219 // Skip whitespace.
    -
    8220 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8220 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8221
    -
    8222 if (this->interval.end < end && text[this->interval.end] == '=') {
    +
    8222 if (this->interval.end < end && text[this->interval.end] == '=') {
    8223 this->interval.end++;
    8224
    8225 // Skip whitespace.
    -
    8226 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8226 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8227
    -
    8228 if (this->m_value.match(text, this->interval.end, end, flags)) {
    +
    8228 if (this->m_value.match(text, this->interval.end, end, flags)) {
    8229 // This attribute has value.
    8230 a->value = this->m_value.content;
    -
    8231 this->interval.end = this->m_value.interval.end;
    +
    8231 this->interval.end = this->m_value.interval.end;
    8232
    8233 // Skip whitespace.
    -
    8234 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8234 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8235 }
    8236 }
    8237 else {
    @@ -8206,13 +8214,13 @@ $(function() { codefold.init(0); });
    8244 this->interval.start = start;
    8245 return true;
    8246
    -
    8247 error:
    +
    8247 error:
    8248 invalidate();
    8249 return false;
    8250 }
    8251
    -
    8252 basic_html_ident<T> m_ident;
    -
    8253 basic_html_value<T> m_value;
    +
    8252 basic_html_ident<T> m_ident;
    +
    8253 basic_html_value<T> m_value;
    8254 };
    8255
    @@ -8241,11 +8249,11 @@ $(function() { codefold.init(0); });
    8280 virtual bool do_match(
    8281 _In_reads_or_z_opt_(end) const T* text,
    -
    8282 _In_ size_t start = 0,
    -
    8283 _In_ size_t end = SIZE_MAX,
    -
    8284 _In_ int flags = match_multiline)
    +
    8282 _In_ size_t start = 0,
    +
    8283 _In_ size_t end = SIZE_MAX,
    +
    8284 _In_ int flags = match_multiline)
    8285 {
    -
    8286 _Unreferenced_(flags);
    +
    8286 _Unreferenced_(flags);
    8287 _Assume_(text || start + 2 >= end);
    8288 if (start + 2 < end &&
    8289 text[start] == '<' &&
    @@ -8255,20 +8263,20 @@ $(function() { codefold.init(0); });
    8293 this->interval.end = start + 3;
    8294
    8295 // Skip whitespace.
    -
    8296 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    -
    8297 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    +
    8296 const auto& ctype = std::use_facet<std::ctype<T>>(this->m_locale);
    +
    8297 for (; this->interval.end < end && text[this->interval.end] && ctype.is(ctype.space, text[this->interval.end]); this->interval.end++);
    8298
    8299 this->condition.start = this->condition.end = this->interval.end;
    8300
    8301 for (;;) {
    -
    8302 if (this->interval.end >= end || !text[this->interval.end])
    +
    8302 if (this->interval.end >= end || !text[this->interval.end])
    8303 break;
    8304 if (text[this->interval.end] == '[') {
    8305 this->interval.start = start;
    8306 this->interval.end++;
    8307 return true;
    8308 }
    -
    8309 if (ctype.is(ctype.space, text[this->interval.end]))
    +
    8309 if (ctype.is(ctype.space, text[this->interval.end]))
    8310 this->interval.end++;
    8311 else
    8312 this->condition.end = ++this->interval.end;
    @@ -8298,11 +8306,11 @@ $(function() { codefold.init(0); });
    8336 protected:
    8337 virtual bool do_match(
    8338 _In_reads_or_z_opt_(end) const T* text,
    -
    8339 _In_ size_t start = 0,
    -
    8340 _In_ size_t end = SIZE_MAX,
    -
    8341 _In_ int flags = match_multiline)
    +
    8339 _In_ size_t start = 0,
    +
    8340 _In_ size_t end = SIZE_MAX,
    +
    8341 _In_ int flags = match_multiline)
    8342 {
    -
    8343 _Unreferenced_(flags);
    +
    8343 _Unreferenced_(flags);
    8344 _Assume_(text || start + 2 >= end);
    8345 if (start + 2 < end &&
    8346 text[start] == ']' &&
    @@ -8319,12 +8327,12 @@ $(function() { codefold.init(0); });
    8357 };
    8358
    - - + +
    8361#ifdef _UNICODE
    - +
    8363#else
    - +
    8365#endif
    8366 }
    8367}
    @@ -8537,7 +8545,8 @@ $(function() { codefold.init(0); }); + diff --git a/pch_8hpp_source.html b/pch_8hpp_source.html index 81a8b19f5..218ad04bb 100644 --- a/pch_8hpp_source.html +++ b/pch_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: UnitTests/pch.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    pch.hpp
    @@ -212,7 +220,8 @@ $(function() { codefold.init(0); });
    + diff --git a/pool_8hpp_source.html b/pool_8hpp_source.html index e681b00b2..0a45adc5e 100644 --- a/pool_8hpp_source.html +++ b/pool_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/pool.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    pool.hpp
    @@ -189,7 +197,8 @@ $(function() { codefold.init(0); });
    + diff --git a/progress_8hpp_source.html b/progress_8hpp_source.html index f2d50b1aa..6b94e1735 100644 --- a/progress_8hpp_source.html +++ b/progress_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/progress.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    progress.hpp
    @@ -353,7 +361,7 @@ $(function() { codefold.init(0); });
    356 {
    357 public:
    -
    359 global_progress<T>(host),
    +
    359 global_progress<T>(host),
    360 m_host_ref(host)
    361 {
    362 m_host_ref = this;
    @@ -539,7 +547,8 @@ $(function() { codefold.init(0); });
    + diff --git a/resize.js b/resize.js new file mode 100644 index 000000000..7d8cdc7d4 --- /dev/null +++ b/resize.js @@ -0,0 +1,145 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ + +function initResizable(treeview) { + let sidenav,navtree,content,header,footer,barWidth=6; + const RESIZE_COOKIE_NAME = ''+'width'; + + function resizeWidth() { + const sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(sidenavWidth)+"px"}); + } + Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth); + } + + function restoreWidth(navWidth) { + content.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + } + sidenav.css({width:navWidth + "px"}); + } + + function resizeHeight(treeview) { + const headerHeight = header.outerHeight(); + const windowHeight = $(window).height(); + let contentHeight; + if (treeview) + { + const footerHeight = footer.outerHeight(); + let navtreeHeight,sideNavHeight; + if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */ + contentHeight = windowHeight - headerHeight - footerHeight; + navtreeHeight = contentHeight; + sideNavHeight = contentHeight; + } else if (page_layout==1) { /* DISABLE_INDEX=YES */ + contentHeight = windowHeight - footerHeight; + navtreeHeight = windowHeight - headerHeight; + sideNavHeight = windowHeight; + } + navtree.css({height:navtreeHeight + "px"}); + sidenav.css({height:sideNavHeight + "px"}); + } + else + { + contentHeight = windowHeight - headerHeight; + } + content.css({height:contentHeight + "px"}); + if (location.hash.slice(1)) { + (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView(); + } + } + + function collapseExpand() { + let newWidth; + if (sidenav.width()>0) { + newWidth=0; + } else { + const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250); + newWidth = (width>250 && width<$(window).width()) ? width : 250; + } + restoreWidth(newWidth); + const sidenavWidth = $(sidenav).outerWidth(); + Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth); + } + + header = $("#top"); + content = $("#doc-content"); + footer = $("#nav-path"); + sidenav = $("#side-nav"); + if (!treeview) { +// title = $("#titlearea"); +// titleH = $(title).height(); +// let animating = false; +// content.on("scroll", function() { +// slideOpts = { duration: 200, +// step: function() { +// contentHeight = $(window).height() - header.outerHeight(); +// content.css({ height : contentHeight + "px" }); +// }, +// done: function() { animating=false; } +// }; +// if (content.scrollTop()>titleH && title.css('display')!='none' && !animating) { +// title.slideUp(slideOpts); +// animating=true; +// } else if (content.scrollTop()<=titleH && title.css('display')=='none' && !animating) { +// title.slideDown(slideOpts); +// animating=true; +// } +// }); + } else { + navtree = $("#nav-tree"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(sidenav).resizable({ minWidth: 0 }); + } + $(window).resize(function() { resizeHeight(treeview); }); + if (treeview) + { + const device = navigator.userAgent.toLowerCase(); + const touch_device = device.match(/(iphone|ipod|ipad|android)/); + if (touch_device) { /* wider split bar for touch only devices */ + $(sidenav).css({ paddingRight:'20px' }); + $('.ui-resizable-e').css({ width:'20px' }); + $('#nav-sync').css({ right:'34px' }); + barWidth=20; + } + const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250); + if (width) { restoreWidth(width); } else { resizeWidth(); } + } + resizeHeight(treeview); + const url = location.href; + const i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + const _preventDefault = function(evt) { evt.preventDefault(); }; + if (treeview) + { + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(".ui-resizable-handle").dblclick(collapseExpand); + } + $(window).on('load',resizeHeight); +} +/* @license-end */ diff --git a/ring_8hpp_source.html b/ring_8hpp_source.html index 091c4ff77..6294980cc 100644 --- a/ring_8hpp_source.html +++ b/ring_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/ring.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    ring.hpp
    @@ -234,7 +242,8 @@ $(function() { codefold.init(0); });
    + diff --git a/scoped__executor_8hpp_source.html b/scoped__executor_8hpp_source.html index b0784b5aa..317cea364 100644 --- a/scoped__executor_8hpp_source.html +++ b/scoped__executor_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/scoped_executor.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    scoped_executor.hpp
    @@ -124,7 +132,8 @@ $(function() { codefold.init(0); });
    + diff --git a/search/all_2.js b/search/all_2.js index 3a48940a5..398faee0c 100644 --- a/search/all_2.js +++ b/search/all_2.js @@ -11,7 +11,7 @@ var searchData= ['chunk_5fid_8',['chunk_id',['../structstdex_1_1wav_1_1cue.html#a15ae22213cb33bc694965e97a3035342',1,'stdex::wav::cue']]], ['chunk_5foffset_9',['chunk_offset',['../structstdex_1_1wav_1_1cue.html#a9e1a1a62c1497e28161b1303c769a59f',1,'stdex::wav::cue']]], ['clear_10',['clear',['../classstdex_1_1base64__enc.html#afb6a85176589d9ce1f65ce6355592fe7',1,'stdex::base64_enc::clear()'],['../classstdex_1_1base64__dec.html#a94738b63789489022e0c16063b732305',1,'stdex::base64_dec::clear()'],['../classstdex_1_1basic__hash.html#af5e2ff7b83da5a663fa3c9766734b771',1,'stdex::basic_hash::clear()'],['../classstdex_1_1block__hash.html#a8750f9c24cd22bd879dc638256534aec',1,'stdex::block_hash::clear()'],['../classstdex_1_1crc32__hash.html#addf745566fe5a1ba3f947a70603ea235',1,'stdex::crc32_hash::clear()'],['../classstdex_1_1md5__hash.html#a0952042043c10e184d9ee8a79421cc0f',1,'stdex::md5_hash::clear()'],['../classstdex_1_1sha1__hash.html#a36f38887f8e90f88df0a420f0011b9b3',1,'stdex::sha1_hash::clear()'],['../classstdex_1_1hex__dec.html#a282bf5db0d16b29b12c71b73d3a33cc4',1,'stdex::hex_dec::clear()'],['../classstdex_1_1html_1_1document.html#aecb7a14d12137d624dfe5378f27ab70c',1,'stdex::html::document::clear()'],['../classstdex_1_1pool.html#a96acba9575913aa2c1a4179f84673c77',1,'stdex::pool::clear()'],['../classstdex_1_1vector__queue.html#a93259be5f471580d2f8d7bee41032f9b',1,'stdex::vector_queue::clear()']]], - ['close_11',['close',['../classstdex_1_1idrec_1_1record.html#a9fb4bee3afca4803a36767e3181a35b9',1,'stdex::idrec::record::close(std::ostream &stream, std::streamoff start)'],['../classstdex_1_1idrec_1_1record.html#a4d136084b846a2e1e4b95af5cb60b0dc',1,'stdex::idrec::record::close(stdex::stream::basic_file &stream, stdex::stream::fpos_t start)'],['../structstdex_1_1socket__traits.html#a76e60d49b4f28d4a0585b15fad975864',1,'stdex::socket_traits::close()'],['../classstdex_1_1stream_1_1basic.html#a5392748c19b5799da94a5fe031f7ec3b',1,'stdex::stream::basic::close()'],['../classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c',1,'stdex::stream::converter::close()'],['../classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90',1,'stdex::stream::replicator::close()'],['../classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14',1,'stdex::stream::file_window::close()'],['../classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799',1,'stdex::stream::cache::close()'],['../classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc',1,'stdex::stream::basic_sys::close()'],['../classstdex_1_1stream_1_1socket.html#a74e2f261c117cf8f20866632fb79b3c5',1,'stdex::stream::socket::close()'],['../classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6',1,'stdex::stream::memory_file::close()'],['../classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d',1,'stdex::stream::fifo::close()'],['../classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c',1,'stdex::stream::diag_file::close()'],['../classstdex_1_1basic__sys__object.html#a09e44076695b4134e877c3e6f1f29844',1,'stdex::basic_sys_object::close()'],['../structstdex_1_1sys__object__traits.html#a6e949f7cc63c3b85cf8ecdc838e7d3de',1,'stdex::sys_object_traits::close()']]], + ['close_11',['close',['../classstdex_1_1idrec_1_1record.html#a9fb4bee3afca4803a36767e3181a35b9',1,'stdex::idrec::record::close(std::ostream &stream, std::streamoff start)'],['../classstdex_1_1idrec_1_1record.html#a4d136084b846a2e1e4b95af5cb60b0dc',1,'stdex::idrec::record::close(stdex::stream::basic_file &stream, stdex::stream::fpos_t start)'],['../structstdex_1_1socket__traits.html#a76e60d49b4f28d4a0585b15fad975864',1,'stdex::socket_traits::close()'],['../classstdex_1_1stream_1_1basic.html#a5392748c19b5799da94a5fe031f7ec3b',1,'stdex::stream::basic::close()'],['../classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c',1,'stdex::stream::converter::close()'],['../classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90',1,'stdex::stream::replicator::close()'],['../classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14',1,'stdex::stream::file_window::close()'],['../classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799',1,'stdex::stream::cache::close()'],['../classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc',1,'stdex::stream::basic_sys::close()'],['../classstdex_1_1stream_1_1socket.html#a74e2f261c117cf8f20866632fb79b3c5',1,'stdex::stream::socket::close()'],['../classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6',1,'stdex::stream::memory_file::close()'],['../classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d',1,'stdex::stream::fifo::close()'],['../classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c',1,'stdex::stream::diag_file::close()'],['../structstdex_1_1sys__object__traits.html#a6e949f7cc63c3b85cf8ecdc838e7d3de',1,'stdex::sys_object_traits::close()'],['../classstdex_1_1basic__sys__object.html#a09e44076695b4134e877c3e6f1f29844',1,'stdex::basic_sys_object::close()']]], ['code_12',['code',['../classstdex_1_1html_1_1element.html#acad269ffc367d3a7df7cb42fed0ed486',1,'stdex::html::element::code'],['../classstdex_1_1html_1_1element__end.html#ae84212100b568b2ba305592b93219f5a',1,'stdex::html::element_end::code']]], ['comment_13',['comment',['../classstdex_1_1html_1_1comment.html',1,'stdex::html']]], ['components_14',['components',['../classstdex_1_1parser_1_1basic__ipv4__address.html#a0dfb21ee671894048c831edef7257931',1,'stdex::parser::basic_ipv4_address::components'],['../classstdex_1_1parser_1_1basic__ipv6__address.html#abe14c21fb1d4cb35c0121ca610e6e87e',1,'stdex::parser::basic_ipv6_address::components']]], diff --git a/search/functions_2.js b/search/functions_2.js index 7edb1df46..b299ba865 100644 --- a/search/functions_2.js +++ b/search/functions_2.js @@ -4,7 +4,7 @@ var searchData= ['cancel_1',['cancel',['../classstdex_1_1progress.html#a03380c822297092b3bb9867deee26202',1,'stdex::progress::cancel()'],['../classstdex_1_1timeout__progress.html#a50484235e76ca413565cc5ae7d6eff79',1,'stdex::timeout_progress::cancel()'],['../classstdex_1_1global__progress.html#a74a5ea9089ff7b7015ea4a2071f3113e',1,'stdex::global_progress::cancel()'],['../classstdex_1_1aggregate__progress_1_1worker__progress.html#a61defd3930ff3a62d56890c80f60086a',1,'stdex::aggregate_progress::worker_progress::cancel()']]], ['capacity_2',['capacity',['../classstdex_1_1vector__queue.html#add3d6ed93d3c1471b80351c56639bab7',1,'stdex::vector_queue']]], ['clear_3',['clear',['../classstdex_1_1base64__enc.html#afb6a85176589d9ce1f65ce6355592fe7',1,'stdex::base64_enc::clear()'],['../classstdex_1_1base64__dec.html#a94738b63789489022e0c16063b732305',1,'stdex::base64_dec::clear()'],['../classstdex_1_1basic__hash.html#af5e2ff7b83da5a663fa3c9766734b771',1,'stdex::basic_hash::clear()'],['../classstdex_1_1block__hash.html#a8750f9c24cd22bd879dc638256534aec',1,'stdex::block_hash::clear()'],['../classstdex_1_1crc32__hash.html#addf745566fe5a1ba3f947a70603ea235',1,'stdex::crc32_hash::clear()'],['../classstdex_1_1md5__hash.html#a0952042043c10e184d9ee8a79421cc0f',1,'stdex::md5_hash::clear()'],['../classstdex_1_1sha1__hash.html#a36f38887f8e90f88df0a420f0011b9b3',1,'stdex::sha1_hash::clear()'],['../classstdex_1_1hex__dec.html#a282bf5db0d16b29b12c71b73d3a33cc4',1,'stdex::hex_dec::clear()'],['../classstdex_1_1html_1_1document.html#aecb7a14d12137d624dfe5378f27ab70c',1,'stdex::html::document::clear()'],['../classstdex_1_1pool.html#a96acba9575913aa2c1a4179f84673c77',1,'stdex::pool::clear()'],['../classstdex_1_1vector__queue.html#a93259be5f471580d2f8d7bee41032f9b',1,'stdex::vector_queue::clear()']]], - ['close_4',['close',['../classstdex_1_1idrec_1_1record.html#a9fb4bee3afca4803a36767e3181a35b9',1,'stdex::idrec::record::close(std::ostream &stream, std::streamoff start)'],['../classstdex_1_1idrec_1_1record.html#a4d136084b846a2e1e4b95af5cb60b0dc',1,'stdex::idrec::record::close(stdex::stream::basic_file &stream, stdex::stream::fpos_t start)'],['../structstdex_1_1socket__traits.html#a76e60d49b4f28d4a0585b15fad975864',1,'stdex::socket_traits::close()'],['../classstdex_1_1stream_1_1basic.html#a5392748c19b5799da94a5fe031f7ec3b',1,'stdex::stream::basic::close()'],['../classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c',1,'stdex::stream::converter::close()'],['../classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90',1,'stdex::stream::replicator::close()'],['../classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14',1,'stdex::stream::file_window::close()'],['../classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799',1,'stdex::stream::cache::close()'],['../classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc',1,'stdex::stream::basic_sys::close()'],['../classstdex_1_1stream_1_1socket.html#a74e2f261c117cf8f20866632fb79b3c5',1,'stdex::stream::socket::close()'],['../classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6',1,'stdex::stream::memory_file::close()'],['../classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d',1,'stdex::stream::fifo::close()'],['../classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c',1,'stdex::stream::diag_file::close()'],['../classstdex_1_1basic__sys__object.html#a09e44076695b4134e877c3e6f1f29844',1,'stdex::basic_sys_object::close()'],['../structstdex_1_1sys__object__traits.html#a6e949f7cc63c3b85cf8ecdc838e7d3de',1,'stdex::sys_object_traits::close()']]], + ['close_4',['close',['../classstdex_1_1idrec_1_1record.html#a9fb4bee3afca4803a36767e3181a35b9',1,'stdex::idrec::record::close(std::ostream &stream, std::streamoff start)'],['../classstdex_1_1idrec_1_1record.html#a4d136084b846a2e1e4b95af5cb60b0dc',1,'stdex::idrec::record::close(stdex::stream::basic_file &stream, stdex::stream::fpos_t start)'],['../structstdex_1_1socket__traits.html#a76e60d49b4f28d4a0585b15fad975864',1,'stdex::socket_traits::close()'],['../classstdex_1_1stream_1_1basic.html#a5392748c19b5799da94a5fe031f7ec3b',1,'stdex::stream::basic::close()'],['../classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c',1,'stdex::stream::converter::close()'],['../classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90',1,'stdex::stream::replicator::close()'],['../classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14',1,'stdex::stream::file_window::close()'],['../classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799',1,'stdex::stream::cache::close()'],['../classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc',1,'stdex::stream::basic_sys::close()'],['../classstdex_1_1stream_1_1socket.html#a74e2f261c117cf8f20866632fb79b3c5',1,'stdex::stream::socket::close()'],['../classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6',1,'stdex::stream::memory_file::close()'],['../classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d',1,'stdex::stream::fifo::close()'],['../classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c',1,'stdex::stream::diag_file::close()'],['../structstdex_1_1sys__object__traits.html#a6e949f7cc63c3b85cf8ecdc838e7d3de',1,'stdex::sys_object_traits::close()'],['../classstdex_1_1basic__sys__object.html#a09e44076695b4134e877c3e6f1f29844',1,'stdex::basic_sys_object::close()']]], ['contains_5',['contains',['../structstdex_1_1interval.html#a1624ca77e8c9cb45cef61f7f8b532222',1,'stdex::interval']]], ['convert_6',['convert',['../classstdex_1_1charset__encoder.html#acf89b5fd8a42786a2f94edcff24364c6',1,'stdex::charset_encoder::convert(_In_reads_or_z_opt_(count_src) const T_from *src, size_t count_src)'],['../classstdex_1_1charset__encoder.html#a80f781d783dde0261fe272e193a3d03a',1,'stdex::charset_encoder::convert(const T_from *src)'],['../classstdex_1_1charset__encoder.html#ab8fc27f43dceed7530ae9ee05c2b2ebc',1,'stdex::charset_encoder::convert(const std::basic_string_view< T_from, std::char_traits< T_from > > src)']]], ['ctime_7',['ctime',['../classstdex_1_1stream_1_1basic__file.html#a3c02c83246c43ed868dab1dd5a5d698d',1,'stdex::stream::basic_file::ctime()'],['../classstdex_1_1stream_1_1cache.html#a0306f70f169f924f41306c71646c9276',1,'stdex::stream::cache::ctime()'],['../classstdex_1_1stream_1_1file.html#aa54131619fe782de419ed74bab377dd5',1,'stdex::stream::file::ctime()']]] diff --git a/sgml_8hpp_source.html b/sgml_8hpp_source.html index 260be6f7f..51dfca708 100644 --- a/sgml_8hpp_source.html +++ b/sgml_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/sgml.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    sgml.hpp
    @@ -796,7 +804,8 @@ $(function() { codefold.init(0); });
    + diff --git a/sgml__unicode_8hpp_source.html b/sgml__unicode_8hpp_source.html index f1a88f1da..be605431a 100644 --- a/sgml__unicode_8hpp_source.html +++ b/sgml__unicode_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/sgml_unicode.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    sgml_unicode.hpp
    @@ -3179,7 +3187,8 @@ $(function() { codefold.init(0); });
    + diff --git a/socket_8hpp_source.html b/socket_8hpp_source.html index 0c43abd39..4e81f9dc9 100644 --- a/socket_8hpp_source.html +++ b/socket_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/socket.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    socket.hpp
    @@ -144,7 +152,8 @@ $(function() { codefold.init(0); });
    + diff --git a/spinlock_8hpp_source.html b/spinlock_8hpp_source.html index bdf2e70cd..d8cfbe467 100644 --- a/spinlock_8hpp_source.html +++ b/spinlock_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/spinlock.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    spinlock.hpp
    @@ -159,7 +167,8 @@ $(function() { codefold.init(0); });
    + diff --git a/stream_8hpp_source.html b/stream_8hpp_source.html index 032b85cd5..f1aa4e968 100644 --- a/stream_8hpp_source.html +++ b/stream_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/stream.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    stream.hpp
    @@ -3782,19 +3790,19 @@ $(function() { codefold.init(0); });
    3986
    3987 public:
    -
    3988 void set(_In_ fpos_t offset, _In_ const int8_t data) { set<int8_t>(offset, data); }
    -
    3989 void set(_In_ fpos_t offset, _In_ const int16_t data) { set<int16_t>(offset, data); }
    -
    3990 void set(_In_ fpos_t offset, _In_ const int32_t data) { set<int32_t>(offset, data); }
    -
    3991 void set(_In_ fpos_t offset, _In_ const int64_t data) { set<int64_t>(offset, data); }
    -
    3992 void set(_In_ fpos_t offset, _In_ const uint8_t data) { set<uint8_t>(offset, data); }
    -
    3993 void set(_In_ fpos_t offset, _In_ const uint16_t data) { set<uint16_t>(offset, data); }
    -
    3994 void set(_In_ fpos_t offset, _In_ const uint32_t data) { set<uint32_t>(offset, data); }
    -
    3995 void set(_In_ fpos_t offset, _In_ const uint64_t data) { set<uint64_t>(offset, data); }
    -
    3996 void set(_In_ fpos_t offset, _In_ const float data) { set<float>(offset, data); }
    -
    3997 void set(_In_ fpos_t offset, _In_ const double data) { set<double>(offset, data); }
    -
    3998 void set(_In_ fpos_t offset, _In_ const char data) { set<char>(offset, data); }
    +
    3988 void set(_In_ fpos_t offset, _In_ const int8_t data) { set<int8_t>(offset, data); }
    +
    3989 void set(_In_ fpos_t offset, _In_ const int16_t data) { set<int16_t>(offset, data); }
    +
    3990 void set(_In_ fpos_t offset, _In_ const int32_t data) { set<int32_t>(offset, data); }
    +
    3991 void set(_In_ fpos_t offset, _In_ const int64_t data) { set<int64_t>(offset, data); }
    +
    3992 void set(_In_ fpos_t offset, _In_ const uint8_t data) { set<uint8_t>(offset, data); }
    +
    3993 void set(_In_ fpos_t offset, _In_ const uint16_t data) { set<uint16_t>(offset, data); }
    +
    3994 void set(_In_ fpos_t offset, _In_ const uint32_t data) { set<uint32_t>(offset, data); }
    +
    3995 void set(_In_ fpos_t offset, _In_ const uint64_t data) { set<uint64_t>(offset, data); }
    +
    3996 void set(_In_ fpos_t offset, _In_ const float data) { set<float>(offset, data); }
    +
    3997 void set(_In_ fpos_t offset, _In_ const double data) { set<double>(offset, data); }
    +
    3998 void set(_In_ fpos_t offset, _In_ const char data) { set<char>(offset, data); }
    3999#ifdef _NATIVE_WCHAR_T_DEFINED
    -
    4000 void set(_In_ fpos_t offset, _In_ const wchar_t data) { set<wchar_t>(offset, data); }
    +
    4000 void set(_In_ fpos_t offset, _In_ const wchar_t data) { set<wchar_t>(offset, data); }
    4001#endif
    4002
    4010 protected:
    @@ -3811,19 +3819,19 @@ $(function() { codefold.init(0); });
    4020
    4021 public:
    -
    4022 void get(_In_ fpos_t offset, _Out_ int8_t & data) { get<int8_t>(offset, data); }
    -
    4023 void get(_In_ fpos_t offset, _Out_ int16_t & data) { get<int16_t>(offset, data); }
    -
    4024 void get(_In_ fpos_t offset, _Out_ int32_t & data) { get<int32_t>(offset, data); }
    -
    4025 void get(_In_ fpos_t offset, _Out_ int64_t & data) { get<int64_t>(offset, data); }
    -
    4026 void get(_In_ fpos_t offset, _Out_ uint8_t & data) { get<uint8_t>(offset, data); }
    -
    4027 void get(_In_ fpos_t offset, _Out_ uint16_t & data) { get<uint16_t>(offset, data); }
    -
    4028 void get(_In_ fpos_t offset, _Out_ uint32_t & data) { get<uint32_t>(offset, data); }
    -
    4029 void get(_In_ fpos_t offset, _Out_ uint64_t & data) { get<uint64_t>(offset, data); }
    -
    4030 void get(_In_ fpos_t offset, _Out_ float& data) { get<float>(offset, data); }
    -
    4031 void get(_In_ fpos_t offset, _Out_ double& data) { get<double>(offset, data); }
    -
    4032 void get(_In_ fpos_t offset, _Out_ char& data) { get<char>(offset, data); }
    +
    4022 void get(_In_ fpos_t offset, _Out_ int8_t & data) { get<int8_t>(offset, data); }
    +
    4023 void get(_In_ fpos_t offset, _Out_ int16_t & data) { get<int16_t>(offset, data); }
    +
    4024 void get(_In_ fpos_t offset, _Out_ int32_t & data) { get<int32_t>(offset, data); }
    +
    4025 void get(_In_ fpos_t offset, _Out_ int64_t & data) { get<int64_t>(offset, data); }
    +
    4026 void get(_In_ fpos_t offset, _Out_ uint8_t & data) { get<uint8_t>(offset, data); }
    +
    4027 void get(_In_ fpos_t offset, _Out_ uint16_t & data) { get<uint16_t>(offset, data); }
    +
    4028 void get(_In_ fpos_t offset, _Out_ uint32_t & data) { get<uint32_t>(offset, data); }
    +
    4029 void get(_In_ fpos_t offset, _Out_ uint64_t & data) { get<uint64_t>(offset, data); }
    +
    4030 void get(_In_ fpos_t offset, _Out_ float& data) { get<float>(offset, data); }
    +
    4031 void get(_In_ fpos_t offset, _Out_ double& data) { get<double>(offset, data); }
    +
    4032 void get(_In_ fpos_t offset, _Out_ char& data) { get<char>(offset, data); }
    4033#ifdef _NATIVE_WCHAR_T_DEFINED
    -
    4034 void get(_In_ fpos_t offset, _Out_ wchar_t& data) { get<wchar_t>(offset, data); }
    +
    4034 void get(_In_ fpos_t offset, _Out_ wchar_t& data) { get<wchar_t>(offset, data); }
    4035#endif
    4036
    4037 memory_file& operator <<(_In_ const int8_t data) { return write_data(data); }
    @@ -4169,8 +4177,8 @@ $(function() { codefold.init(0); });
    4353#if defined(__GNUC__)
    4354#pragma GCC diagnostic pop
    4355#endif
    -
    Operating system object base class.
    Definition system.hpp:100
    -
    virtual void close()
    Closes object.
    Definition system.hpp:141
    +
    Operating system object base class.
    Definition system.hpp:143
    +
    virtual void close()
    Closes object.
    Definition system.hpp:184
    Encoding converter context.
    Definition unicode.hpp:138
    locale_t helper class to free_locale when going out of scope.
    Definition locale.hpp:74
    Provides read-ahead stream capability.
    Definition stream.hpp:1256
    @@ -4388,7 +4396,8 @@ $(function() { codefold.init(0); }); + diff --git a/string_8hpp_source.html b/string_8hpp_source.html index b982513bd..7733c0d14 100644 --- a/string_8hpp_source.html +++ b/string_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/string.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    string.hpp
    @@ -2054,7 +2062,8 @@ $(function() { codefold.init(0); });
    + diff --git a/structstdex_1_1chrono_1_1aosn__date-members.html b/structstdex_1_1chrono_1_1aosn__date-members.html index 75a86d534..61e81c6fe 100644 --- a/structstdex_1_1chrono_1_1aosn__date-members.html +++ b/structstdex_1_1chrono_1_1aosn__date-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::chrono::aosn_date Member List
    @@ -98,7 +111,8 @@ $(function() {
    + diff --git a/structstdex_1_1chrono_1_1aosn__date.html b/structstdex_1_1chrono_1_1aosn__date.html index 1bc8bbf18..b942d0ab3 100644 --- a/structstdex_1_1chrono_1_1aosn__date.html +++ b/structstdex_1_1chrono_1_1aosn__date.html @@ -3,13 +3,15 @@ - + stdex: stdex::chrono::aosn_date Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -154,7 +167,8 @@ 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 8b9626856..fd7efb89f 100644 --- a/structstdex_1_1chrono_1_1aosn__timestamp-members.html +++ b/structstdex_1_1chrono_1_1aosn__timestamp-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::chrono::aosn_timestamp Member List
    @@ -112,7 +125,8 @@ $(function() {
    + diff --git a/structstdex_1_1chrono_1_1aosn__timestamp.html b/structstdex_1_1chrono_1_1aosn__timestamp.html index c29ab1018..70a14a5c7 100644 --- a/structstdex_1_1chrono_1_1aosn__timestamp.html +++ b/structstdex_1_1chrono_1_1aosn__timestamp.html @@ -3,13 +3,15 @@ - + stdex: stdex::chrono::aosn_timestamp Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -199,7 +212,8 @@ static constexpr rep one_w
    +
    diff --git a/structstdex_1_1free__locale__delete-members.html b/structstdex_1_1free__locale__delete-members.html index ccb498a0f..5272a1aee 100644 --- a/structstdex_1_1free__locale__delete-members.html +++ b/structstdex_1_1free__locale__delete-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::free_locale_delete Member List
    @@ -86,7 +99,8 @@ $(function() {
    + diff --git a/structstdex_1_1free__locale__delete.html b/structstdex_1_1free__locale__delete.html index 37985bc8d..b182e65cc 100644 --- a/structstdex_1_1free__locale__delete.html +++ b/structstdex_1_1free__locale__delete.html @@ -3,13 +3,15 @@ - + stdex: stdex::free_locale_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -103,7 +116,8 @@ void operator() (local
    +
    diff --git a/structstdex_1_1html_1_1element__traits-members.html b/structstdex_1_1html_1_1element__traits-members.html index fdda482f2..d57821c0f 100644 --- a/structstdex_1_1html_1_1element__traits-members.html +++ b/structstdex_1_1html_1_1element__traits-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::html::element_traits Member List
    @@ -104,7 +117,8 @@ $(function() {
    + diff --git a/structstdex_1_1html_1_1element__traits.html b/structstdex_1_1html_1_1element__traits.html index c1b7f0915..1f5f23a63 100644 --- a/structstdex_1_1html_1_1element__traits.html +++ b/structstdex_1_1html_1_1element__traits.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::element_traits Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Static Public Member Functions | @@ -530,12 +543,12 @@ template<class T >
    static bool stdex::html::element_traits::is_localizable ( - element_t code, + element_t code, - const T * attr_name, + const T * attr_name, @@ -708,12 +721,12 @@ template<class T >
    static bool stdex::html::element_traits::is_uri ( - element_t code, + element_t code, - _In_reads_or_z_opt_(num_chars) const T * attr_name, + _In_reads_or_z_opt_(num_chars) const T * attr_name, @@ -752,7 +765,7 @@ template<class T >
    static bool stdex::html::element_traits::may_contain ( - element_t parent, + element_t parent, @@ -818,7 +831,8 @@ template<class T > + diff --git a/structstdex_1_1html_1_1entity-members.html b/structstdex_1_1html_1_1entity-members.html index eef02633c..81ff5daa6 100644 --- a/structstdex_1_1html_1_1entity-members.html +++ b/structstdex_1_1html_1_1entity-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::html::entity< T, TR, AX > Member List
    @@ -87,7 +100,8 @@ $(function() {
    + diff --git a/structstdex_1_1html_1_1entity.html b/structstdex_1_1html_1_1entity.html index b8b71fe16..0a425cc52 100644 --- a/structstdex_1_1html_1_1entity.html +++ b/structstdex_1_1html_1_1entity.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::entity< T, TR, AX > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -108,7 +121,8 @@ struct stdex::html::entity< T, TR, AX >

    HTML entity.

    +
    diff --git a/structstdex_1_1html_1_1inserted__token-members.html b/structstdex_1_1html_1_1inserted__token-members.html index e614f16d9..9f4240041 100644 --- a/structstdex_1_1html_1_1inserted__token-members.html +++ b/structstdex_1_1html_1_1inserted__token-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::html::inserted_token Member List
    @@ -89,7 +102,8 @@ $(function() {
    + diff --git a/structstdex_1_1html_1_1inserted__token.html b/structstdex_1_1html_1_1inserted__token.html index e0eba83ac..357b3b260 100644 --- a/structstdex_1_1html_1_1inserted__token.html +++ b/structstdex_1_1html_1_1inserted__token.html @@ -3,13 +3,15 @@ - + stdex: stdex::html::inserted_token Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -115,7 +128,8 @@ bool after_word +
    diff --git a/structstdex_1_1interval-members.html b/structstdex_1_1interval-members.html index a40dd5e86..88a83d22a 100644 --- a/structstdex_1_1interval-members.html +++ b/structstdex_1_1interval-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + +
    +
    stdex::interval< T > Member List
    @@ -107,7 +120,8 @@ $(function() {
    + diff --git a/structstdex_1_1interval.html b/structstdex_1_1interval.html index 1bc59b828..c1c012df5 100644 --- a/structstdex_1_1interval.html +++ b/structstdex_1_1interval.html @@ -3,13 +3,15 @@ - + stdex: stdex::interval< T > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -218,7 +231,7 @@ template<class T >
    stdex::interval< T >::interval ( - T _start, + T _start, @@ -295,7 +308,7 @@ template<class T >
    bool stdex::interval< T >::empty ( - ) + ) const @@ -325,7 +338,7 @@ template<class T >
    stdex::interval< T >::operator bool ( - ) + ) const @@ -463,7 +476,7 @@ template<class T > interval stdex::interval< T >::operator++ ( - ) + ) @@ -493,7 +506,7 @@ template<class T > interval stdex::interval< T >::operator++ ( - int ) + int ) @@ -631,7 +644,7 @@ template<class T > interval stdex::interval< T >::operator-- ( - ) + ) @@ -661,7 +674,7 @@ template<class T > interval stdex::interval< T >::operator-- ( - int ) + int ) @@ -763,7 +776,7 @@ template<class T > T stdex::interval< T >::size ( - ) + ) const @@ -785,7 +798,8 @@ template<class T > + diff --git a/structstdex_1_1mapping-members.html b/structstdex_1_1mapping-members.html index b478e3365..b12d79ab4 100644 --- a/structstdex_1_1mapping-members.html +++ b/structstdex_1_1mapping-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::mapping< T > Member List
    @@ -94,7 +107,8 @@ $(function() {
    + diff --git a/structstdex_1_1mapping.html b/structstdex_1_1mapping.html index 450977a03..15d0e9498 100644 --- a/structstdex_1_1mapping.html +++ b/structstdex_1_1mapping.html @@ -3,13 +3,15 @@ - + stdex: stdex::mapping< T > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -177,7 +190,7 @@ template<class T >
    stdex::mapping< T >::mapping ( - T _from, + T _from, @@ -318,7 +331,8 @@ template<class T >
    + diff --git a/structstdex_1_1no__delete-members.html b/structstdex_1_1no__delete-members.html index a63f2364d..297090a86 100644 --- a/structstdex_1_1no__delete-members.html +++ b/structstdex_1_1no__delete-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::no_delete< T > Member List
    @@ -88,7 +101,8 @@ $(function() {
    + diff --git a/structstdex_1_1no__delete.html b/structstdex_1_1no__delete.html index 70ba7772e..f9512df0d 100644 --- a/structstdex_1_1no__delete.html +++ b/structstdex_1_1no__delete.html @@ -3,13 +3,15 @@ - + stdex: stdex::no_delete< T > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -107,7 +120,8 @@ 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 9510fdff4..2ab874980 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 @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::no_delete< T[]> Member List
    @@ -88,7 +101,8 @@ $(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 9c1c84230..62efbdb93 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 @@ -3,13 +3,15 @@ - + stdex: stdex::no_delete< T[]> Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -108,7 +121,8 @@ struct stdex::no_delete< T[]>

    Noop array deleter.

    +
    diff --git a/structstdex_1_1parser_1_1html__attribute-members.html b/structstdex_1_1parser_1_1html__attribute-members.html index c2a231aa0..2f200297d 100644 --- a/structstdex_1_1parser_1_1html__attribute-members.html +++ b/structstdex_1_1parser_1_1html__attribute-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::parser::html_attribute Member List
    @@ -87,7 +100,8 @@ $(function() {
    + diff --git a/structstdex_1_1parser_1_1html__attribute.html b/structstdex_1_1parser_1_1html__attribute.html index 7be8d2b12..14d3ecdd9 100644 --- a/structstdex_1_1parser_1_1html__attribute.html +++ b/structstdex_1_1parser_1_1html__attribute.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::html_attribute Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -91,11 +104,11 @@ $(function() {

    Public Attributes

    -stdex::interval< size_tname +stdex::interval< size_t > name  attribute name position in source
      -stdex::interval< size_tvalue +stdex::interval< size_t > value  attribute value position in source
      @@ -107,7 +120,8 @@ Public Attributes
    +
    diff --git a/structstdex_1_1parser_1_1http__factor__more-members.html b/structstdex_1_1parser_1_1http__factor__more-members.html index 0720c5299..6ce2a2a93 100644 --- a/structstdex_1_1parser_1_1http__factor__more-members.html +++ b/structstdex_1_1parser_1_1http__factor__more-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::parser::http_factor_more< T > Member List
    @@ -86,7 +99,8 @@ $(function() {
    + diff --git a/structstdex_1_1parser_1_1http__factor__more.html b/structstdex_1_1parser_1_1http__factor__more.html index eec499e33..bd739c4b0 100644 --- a/structstdex_1_1parser_1_1http__factor__more.html +++ b/structstdex_1_1parser_1_1http__factor__more.html @@ -3,13 +3,15 @@ - + stdex: stdex::parser::http_factor_more< T > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -86,7 +99,7 @@ $(function() {

    Public Member Functions

    -constexpr bool operator() (const T &a, const T &b) const noexcept +constexpr bool operator() (const T &a, const T &b) const noexcept  
    The documentation for this struct was generated from the following file:
      @@ -95,7 +108,8 @@ Public Member Functions
    +
    diff --git a/structstdex_1_1socket__traits-members.html b/structstdex_1_1socket__traits-members.html index 77e0a1bbb..931bd6bd0 100644 --- a/structstdex_1_1socket__traits-members.html +++ b/structstdex_1_1socket__traits-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::socket_traits Member List
    @@ -87,7 +100,8 @@ $(function() {
    + diff --git a/structstdex_1_1socket__traits.html b/structstdex_1_1socket__traits.html index 65487090f..5df116585 100644 --- a/structstdex_1_1socket__traits.html +++ b/structstdex_1_1socket__traits.html @@ -3,13 +3,15 @@ - + stdex: stdex::socket_traits Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Static Public Member Functions | @@ -110,7 +123,8 @@ static const socket_t inva
    +
    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 2b8b7a212..079717e0b 100644 --- a/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html +++ b/structstdex_1_1stream_1_1buffer_1_1buffer__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::stream::buffer::buffer_t Member List
    @@ -91,7 +104,8 @@ $(function() {
    + diff --git a/structstdex_1_1stream_1_1buffer_1_1buffer__t.html b/structstdex_1_1stream_1_1buffer_1_1buffer__t.html index edc4a6d10..e5024df8c 100644 --- a/structstdex_1_1stream_1_1buffer_1_1buffer__t.html +++ b/structstdex_1_1stream_1_1buffer_1_1buffer__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::buffer::buffer_t Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -111,7 +124,8 @@ 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 e73ff81c0..e8e4d4622 100644 --- a/structstdex_1_1stream_1_1fifo_1_1node__t-members.html +++ b/structstdex_1_1stream_1_1fifo_1_1node__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + +
    +
    stdex::stream::fifo::node_t Member List
    @@ -88,7 +101,8 @@ $(function() {
    + diff --git a/structstdex_1_1stream_1_1fifo_1_1node__t.html b/structstdex_1_1stream_1_1fifo_1_1node__t.html index 512fedb97..3233ce24d 100644 --- a/structstdex_1_1stream_1_1fifo_1_1node__t.html +++ b/structstdex_1_1stream_1_1fifo_1_1node__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::stream::fifo::node_t Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -101,7 +114,8 @@ uint8_t data [0]<
    +
    diff --git a/structstdex_1_1sys__info__t-members.html b/structstdex_1_1sys__info__t-members.html index 288b10b53..5ac2bd9c3 100644 --- a/structstdex_1_1sys__info__t-members.html +++ b/structstdex_1_1sys__info__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::sys_info_t Member List
    @@ -92,7 +105,8 @@ $(function() {
    + diff --git a/structstdex_1_1sys__info__t.html b/structstdex_1_1sys__info__t.html index dac642153..6b1e4421e 100644 --- a/structstdex_1_1sys__info__t.html +++ b/structstdex_1_1sys__info__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::sys_info_t Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Static Public Member Functions | @@ -147,7 +160,8 @@ struct utsname m_utsn<
    +
    diff --git a/structstdex_1_1sys__object__traits-members.html b/structstdex_1_1sys__object__traits-members.html index d6a6a9b90..119b50cab 100644 --- a/structstdex_1_1sys__object__traits-members.html +++ b/structstdex_1_1sys__object__traits-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::sys_object_traits Member List
    @@ -88,7 +101,8 @@ $(function() {
    + diff --git a/structstdex_1_1sys__object__traits.html b/structstdex_1_1sys__object__traits.html index b97b6df7a..c88f97e85 100644 --- a/structstdex_1_1sys__object__traits.html +++ b/structstdex_1_1sys__object__traits.html @@ -3,13 +3,15 @@ - + stdex: stdex::sys_object_traits Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Static Public Member Functions | @@ -114,7 +127,8 @@ static const sys_handle in
    +
    diff --git a/structstdex_1_1wav_1_1cue-members.html b/structstdex_1_1wav_1_1cue-members.html index 1236a60f4..2ba034d9c 100644 --- a/structstdex_1_1wav_1_1cue-members.html +++ b/structstdex_1_1wav_1_1cue-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::cue Member List
    @@ -91,7 +104,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1cue.html b/structstdex_1_1wav_1_1cue.html index ed88aa42b..a032aee4a 100644 --- a/structstdex_1_1wav_1_1cue.html +++ b/structstdex_1_1wav_1_1cue.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::cue Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -132,7 +145,8 @@ uint32_t block_offset
    +
    diff --git a/structstdex_1_1wav_1_1cue__ex-members.html b/structstdex_1_1wav_1_1cue__ex-members.html index ed7eae0fc..b75412ea5 100644 --- a/structstdex_1_1wav_1_1cue__ex-members.html +++ b/structstdex_1_1wav_1_1cue__ex-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::cue_ex Member List
    @@ -100,7 +113,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1cue__ex.html b/structstdex_1_1wav_1_1cue__ex.html index 350311d3e..c19f2431a 100644 --- a/structstdex_1_1wav_1_1cue__ex.html +++ b/structstdex_1_1wav_1_1cue__ex.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::cue_ex Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Attributes | @@ -169,7 +182,8 @@ uint32_t block_offset
    +
    diff --git a/structstdex_1_1wav_1_1data-members.html b/structstdex_1_1wav_1_1data-members.html index 27fc7807e..7d2ba4145 100644 --- a/structstdex_1_1wav_1_1data-members.html +++ b/structstdex_1_1wav_1_1data-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::data Member List
    @@ -89,7 +102,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1data.html b/structstdex_1_1wav_1_1data.html index 4524053d2..54c24122c 100644 --- a/structstdex_1_1wav_1_1data.html +++ b/structstdex_1_1wav_1_1data.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::data Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -120,7 +133,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1format-members.html b/structstdex_1_1wav_1_1format-members.html index 31b1b3b6c..ab537a0e9 100644 --- a/structstdex_1_1wav_1_1format-members.html +++ b/structstdex_1_1wav_1_1format-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::format Member List
    @@ -96,7 +109,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1format.html b/structstdex_1_1wav_1_1format.html index cd660af7f..8e140e1a2 100644 --- a/structstdex_1_1wav_1_1format.html +++ b/structstdex_1_1wav_1_1format.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::format Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -211,7 +224,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1header-members.html b/structstdex_1_1wav_1_1header-members.html index 646ed2e5b..ca81bbf84 100644 --- a/structstdex_1_1wav_1_1header-members.html +++ b/structstdex_1_1wav_1_1header-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::header Member List
    @@ -89,7 +102,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1header.html b/structstdex_1_1wav_1_1header.html index 0c858aefb..77e0af657 100644 --- a/structstdex_1_1wav_1_1header.html +++ b/structstdex_1_1wav_1_1header.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::header Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -130,7 +143,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1label-members.html b/structstdex_1_1wav_1_1label-members.html index 5ba3cb5c8..0f4ec5e51 100644 --- a/structstdex_1_1wav_1_1label-members.html +++ b/structstdex_1_1wav_1_1label-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::label Member List
    @@ -90,7 +103,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1label.html b/structstdex_1_1wav_1_1label.html index f0124b239..d720f8341 100644 --- a/structstdex_1_1wav_1_1label.html +++ b/structstdex_1_1wav_1_1label.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::label Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -124,7 +137,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1list-members.html b/structstdex_1_1wav_1_1list-members.html index ee5bb2092..e948228b5 100644 --- a/structstdex_1_1wav_1_1list-members.html +++ b/structstdex_1_1wav_1_1list-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::list Member List
    @@ -87,7 +100,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1list.html b/structstdex_1_1wav_1_1list.html index 2c0e6fb05..f98495f97 100644 --- a/structstdex_1_1wav_1_1list.html +++ b/structstdex_1_1wav_1_1list.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::list Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -123,7 +136,8 @@ id_t type = 0 +
    diff --git a/structstdex_1_1wav_1_1ltxt-members.html b/structstdex_1_1wav_1_1ltxt-members.html index 7cd76a46e..dd0904b43 100644 --- a/structstdex_1_1wav_1_1ltxt-members.html +++ b/structstdex_1_1wav_1_1ltxt-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + +
    +
    stdex::wav::ltxt Member List
    @@ -96,7 +109,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1ltxt.html b/structstdex_1_1wav_1_1ltxt.html index 244a29581..c5f8f70cc 100644 --- a/structstdex_1_1wav_1_1ltxt.html +++ b/structstdex_1_1wav_1_1ltxt.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::ltxt Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -148,7 +161,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1note-members.html b/structstdex_1_1wav_1_1note-members.html index 7e854c92f..27b977049 100644 --- a/structstdex_1_1wav_1_1note-members.html +++ b/structstdex_1_1wav_1_1note-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::note Member List
    @@ -90,7 +103,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1note.html b/structstdex_1_1wav_1_1note.html index 14ce24561..a362e0f83 100644 --- a/structstdex_1_1wav_1_1note.html +++ b/structstdex_1_1wav_1_1note.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::note Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -124,7 +137,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1silence-members.html b/structstdex_1_1wav_1_1silence-members.html index 32256081f..00942e9e4 100644 --- a/structstdex_1_1wav_1_1silence-members.html +++ b/structstdex_1_1wav_1_1silence-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::silence Member List
    @@ -89,7 +102,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1silence.html b/structstdex_1_1wav_1_1silence.html index b21c90276..3f20c0a88 100644 --- a/structstdex_1_1wav_1_1silence.html +++ b/structstdex_1_1wav_1_1silence.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::silence Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -120,7 +133,8 @@ Friends
    +
    diff --git a/structstdex_1_1wav_1_1wave-members.html b/structstdex_1_1wav_1_1wave-members.html index a53d50b8c..1dbc627a0 100644 --- a/structstdex_1_1wav_1_1wave-members.html +++ b/structstdex_1_1wav_1_1wave-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::wav::wave Member List
    @@ -87,7 +100,8 @@ $(function() {
    + diff --git a/structstdex_1_1wav_1_1wave.html b/structstdex_1_1wav_1_1wave.html index 1062eb41f..7c0e779af 100644 --- a/structstdex_1_1wav_1_1wave.html +++ b/structstdex_1_1wav_1_1wave.html @@ -3,13 +3,15 @@ - + stdex: stdex::wav::wave Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Types | @@ -123,7 +136,8 @@ id_t type = 0 +
    diff --git a/sys__info_8hpp_source.html b/sys__info_8hpp_source.html index 613492c07..0c579ba00 100644 --- a/sys__info_8hpp_source.html +++ b/sys__info_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/sys_info.hpp Source File + + @@ -32,18 +34,23 @@
    - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); });
    +
    sys_info.hpp
    @@ -305,8 +313,8 @@ $(function() { codefold.init(0); });
    249#if defined(__GNUC__)
    250#pragma GCC diagnostic pop
    251#endif
    -
    Operating system object base class.
    Definition system.hpp:100
    -
    T get() const noexcept
    Returns object handle.
    Definition system.hpp:157
    +
    Operating system object base class.
    Definition system.hpp:143
    +
    T get() const noexcept
    Returns object handle.
    Definition system.hpp:200
    System information.
    Definition sys_info.hpp:77
    bool admin
    Is member of local group Administrators (Windows) or member of group wheel/sudoers (others)?
    Definition sys_info.hpp:113
    bool elevated
    Is elevated process (Windows) or running as root (others)?
    Definition sys_info.hpp:118
    @@ -316,7 +324,8 @@ $(function() { codefold.init(0); });
    + diff --git a/system_8hpp_source.html b/system_8hpp_source.html index 6beef4d81..4302c1b71 100644 --- a/system_8hpp_source.html +++ b/system_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/system.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    system.hpp
    @@ -152,103 +160,103 @@ $(function() { codefold.init(0); });
    89
    93 using sregex = std::basic_regex<stdex::schar_t>;
    94
    -
    98 template <class T = sys_handle, class TR = sys_object_traits>
    -
    - -
    100 {
    -
    101 public:
    -
    102 basic_sys_object(_In_opt_ T h = TR::invalid_handle) : m_h(h) {}
    -
    103
    -
    104 basic_sys_object(_In_ const basic_sys_object<T, TR>& other) : m_h(other.m_h != TR::invalid_handle ? TR::duplicate(other.m_h) : TR::invalid_handle) {}
    -
    105
    -
    106 basic_sys_object& operator =(_In_ const basic_sys_object<T, TR>& other)
    -
    107 {
    -
    108 if (this != std::addressof(other)) {
    -
    109 if (m_h != TR::invalid_handle)
    -
    110 TR::close(m_h);
    -
    111 m_h = other.m_h != TR::invalid_handle ? TR::duplicate(other.m_h) : TR::invalid_handle;
    -
    112 }
    -
    113 return *this;
    -
    114 }
    -
    115
    -
    116 basic_sys_object(_Inout_ basic_sys_object<T, TR>&& other) noexcept : m_h(other.m_h)
    -
    117 {
    -
    118 other.m_h = TR::invalid_handle;
    -
    119 }
    -
    120
    -
    121 basic_sys_object& operator =(_Inout_ basic_sys_object<T, TR>&& other) noexcept
    +
    + +
    99 {
    +
    100 static inline const sys_handle invalid_handle = stdex::invalid_handle;
    +
    101
    +
    +
    105 static void close(_In_ sys_handle h)
    +
    106 {
    +
    107#if defined(_WIN32)
    +
    108 if (CloseHandle(h) || GetLastError() == ERROR_INVALID_HANDLE)
    +
    109 return;
    +
    110 throw std::system_error(GetLastError(), std::system_category(), "CloseHandle failed");
    +
    111#else
    +
    112 if (::close(h) >= 0 || errno == EBADF)
    +
    113 return;
    +
    114 throw std::system_error(errno, std::system_category(), "close failed");
    +
    115#endif
    +
    116 }
    +
    +
    117
    +
    +
    121 static sys_handle duplicate(_In_ sys_handle h, _In_ bool inherit = false)
    122 {
    -
    123 if (this != std::addressof(other)) {
    -
    124 if (m_h != TR::invalid_handle)
    -
    125 TR::close(m_h);
    -
    126 m_h = other.m_h;
    -
    127 other.m_h = TR::invalid_handle;
    -
    128 }
    -
    129 return *this;
    -
    130 }
    -
    131
    -
    132 virtual ~basic_sys_object() noexcept(false)
    -
    133 {
    -
    134 if (m_h != TR::invalid_handle)
    -
    135 TR::close(m_h);
    -
    136 }
    +
    123 sys_handle h_new;
    +
    124#if defined(_WIN32)
    +
    125 HANDLE process = GetCurrentProcess();
    +
    126 if (DuplicateHandle(process, h, process, &h_new, 0, inherit, DUPLICATE_SAME_ACCESS))
    +
    127 return h_new;
    +
    128 throw std::system_error(GetLastError(), std::system_category(), "DuplicateHandle failed");
    +
    129#else
    +
    130 _Unreferenced_(inherit);
    +
    131 if ((h_new = dup(h)) >= 0)
    +
    132 return h_new;
    +
    133 throw std::system_error(errno, std::system_category(), "dup failed");
    +
    134#endif
    +
    135 }
    +
    +
    136 };
    +
    137
    -
    -
    141 virtual void close()
    -
    142 {
    -
    143 if (m_h != TR::invalid_handle) {
    -
    144 TR::close(m_h);
    -
    145 m_h = TR::invalid_handle;
    -
    146 }
    -
    147 }
    -
    +
    141 template <class T = sys_handle, class TR = sys_object_traits>
    +
    + +
    143 {
    +
    144 public:
    +
    145 basic_sys_object(_In_opt_ T h = TR::invalid_handle) : m_h(h) {}
    +
    146
    +
    147 basic_sys_object(_In_ const basic_sys_object<T, TR>& other) : m_h(other.m_h != TR::invalid_handle ? TR::duplicate(other.m_h) : TR::invalid_handle) {}
    148
    -
    152 operator bool() const noexcept { return m_h != TR::invalid_handle; }
    -
    153
    -
    157 T get() const noexcept { return m_h; }
    +
    149 basic_sys_object& operator =(_In_ const basic_sys_object<T, TR>& other)
    +
    150 {
    +
    151 if (this != std::addressof(other)) {
    +
    152 if (m_h != TR::invalid_handle)
    +
    153 TR::close(m_h);
    +
    154 m_h = other.m_h != TR::invalid_handle ? TR::duplicate(other.m_h) : TR::invalid_handle;
    +
    155 }
    +
    156 return *this;
    +
    157 }
    158
    -
    159 protected:
    -
    160 T m_h;
    -
    161 };
    -
    -
    162
    -
    - -
    167 {
    -
    168 static inline const sys_handle invalid_handle = stdex::invalid_handle;
    -
    169
    -
    -
    173 static void close(_In_ sys_handle h)
    -
    174 {
    -
    175#if defined(_WIN32)
    -
    176 if (CloseHandle(h) || GetLastError() == ERROR_INVALID_HANDLE)
    -
    177 return;
    -
    178 throw std::system_error(GetLastError(), std::system_category(), "CloseHandle failed");
    -
    179#else
    -
    180 if (::close(h) >= 0 || errno == EBADF)
    -
    181 return;
    -
    182 throw std::system_error(errno, std::system_category(), "close failed");
    -
    183#endif
    -
    184 }
    -
    -
    185
    -
    -
    189 static sys_handle duplicate(_In_ sys_handle h, _In_ bool inherit = false)
    -
    190 {
    -
    191 sys_handle h_new;
    -
    192#if defined(_WIN32)
    -
    193 HANDLE process = GetCurrentProcess();
    -
    194 if (DuplicateHandle(process, h, process, &h_new, 0, inherit, DUPLICATE_SAME_ACCESS))
    -
    195 return h_new;
    -
    196 throw std::system_error(GetLastError(), std::system_category(), "DuplicateHandle failed");
    -
    197#else
    -
    198 _Unreferenced_(inherit);
    -
    199 if ((h_new = dup(h)) >= 0)
    -
    200 return h_new;
    -
    201 throw std::system_error(errno, std::system_category(), "dup failed");
    -
    202#endif
    -
    203 }
    +
    159 basic_sys_object(_Inout_ basic_sys_object<T, TR>&& other) noexcept : m_h(other.m_h)
    +
    160 {
    +
    161 other.m_h = TR::invalid_handle;
    +
    162 }
    +
    163
    +
    164 basic_sys_object& operator =(_Inout_ basic_sys_object<T, TR>&& other) noexcept
    +
    165 {
    +
    166 if (this != std::addressof(other)) {
    +
    167 if (m_h != TR::invalid_handle)
    +
    168 TR::close(m_h);
    +
    169 m_h = other.m_h;
    +
    170 other.m_h = TR::invalid_handle;
    +
    171 }
    +
    172 return *this;
    +
    173 }
    +
    174
    +
    175 virtual ~basic_sys_object() noexcept(false)
    +
    176 {
    +
    177 if (m_h != TR::invalid_handle)
    +
    178 TR::close(m_h);
    +
    179 }
    +
    180
    +
    +
    184 virtual void close()
    +
    185 {
    +
    186 if (m_h != TR::invalid_handle) {
    +
    187 TR::close(m_h);
    +
    188 m_h = TR::invalid_handle;
    +
    189 }
    +
    190 }
    +
    191
    +
    195 operator bool() const noexcept { return m_h != TR::invalid_handle; }
    +
    196
    +
    200 T get() const noexcept { return m_h; }
    +
    201
    +
    202 protected:
    +
    203 T m_h;
    204 };
    205
    @@ -295,16 +303,17 @@ $(function() { codefold.init(0); });
    261 };
    262#endif
    263}
    -
    Operating system object base class.
    Definition system.hpp:100
    -
    virtual void close()
    Closes object.
    Definition system.hpp:141
    -
    T get() const noexcept
    Returns object handle.
    Definition system.hpp:157
    -
    System object operations.
    Definition system.hpp:167
    -
    static sys_handle duplicate(sys_handle h, bool inherit=false)
    Duplicates given object.
    Definition system.hpp:189
    -
    static void close(sys_handle h)
    Closes object.
    Definition system.hpp:173
    +
    Operating system object base class.
    Definition system.hpp:143
    +
    virtual void close()
    Closes object.
    Definition system.hpp:184
    +
    T get() const noexcept
    Returns object handle.
    Definition system.hpp:200
    +
    System object operations.
    Definition system.hpp:99
    +
    static sys_handle duplicate(sys_handle h, bool inherit=false)
    Duplicates given object.
    Definition system.hpp:121
    +
    static void close(sys_handle h)
    Closes object.
    Definition system.hpp:105
    +
    diff --git a/unicode_8hpp_source.html b/unicode_8hpp_source.html index 0fe1a9b38..ceebd9a71 100644 --- a/unicode_8hpp_source.html +++ b/unicode_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/unicode.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    unicode.hpp
    @@ -823,7 +831,8 @@ $(function() { codefold.init(0); });
    + diff --git a/unionstdex_1_1md2__t-members.html b/unionstdex_1_1md2__t-members.html index c22a9028e..e7240e3d9 100644 --- a/unionstdex_1_1md2__t-members.html +++ b/unionstdex_1_1md2__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@ - + + + +
    stdex::md2_t Member List
    @@ -91,7 +104,8 @@ $(function() {
    + diff --git a/unionstdex_1_1md2__t.html b/unionstdex_1_1md2__t.html index a4b16333f..a9c9b289b 100644 --- a/unionstdex_1_1md2__t.html +++ b/unionstdex_1_1md2__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::md2_t Union Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -125,7 +138,8 @@ Friends
    +
    diff --git a/unionstdex_1_1sha256__t-members.html b/unionstdex_1_1sha256__t-members.html index d722ee5a8..09d966e22 100644 --- a/unionstdex_1_1sha256__t-members.html +++ b/unionstdex_1_1sha256__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::sha256_t Member List
    @@ -91,7 +104,8 @@ $(function() {
    + diff --git a/unionstdex_1_1sha256__t.html b/unionstdex_1_1sha256__t.html index 22aec2cb3..9e5d98d8b 100644 --- a/unionstdex_1_1sha256__t.html +++ b/unionstdex_1_1sha256__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::sha256_t Union Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -125,7 +138,8 @@ Friends
    +
    diff --git a/unionstdex_1_1sha__t-members.html b/unionstdex_1_1sha__t-members.html index 9425cc8f6..7835c3076 100644 --- a/unionstdex_1_1sha__t-members.html +++ b/unionstdex_1_1sha__t-members.html @@ -3,13 +3,15 @@ - + stdex: Member List + + @@ -32,23 +34,33 @@
    - + + + +
    stdex::sha_t Member List
    @@ -91,7 +104,8 @@ $(function() {
    + diff --git a/unionstdex_1_1sha__t.html b/unionstdex_1_1sha__t.html index 56a86586f..49ad08137 100644 --- a/unionstdex_1_1sha__t.html +++ b/unionstdex_1_1sha__t.html @@ -3,13 +3,15 @@ - + stdex: stdex::sha_t Union Reference + + @@ -32,23 +34,33 @@ - + + + +
    Public Member Functions | @@ -125,7 +138,8 @@ Friends
    +
    diff --git a/uuid_8hpp_source.html b/uuid_8hpp_source.html index 8cf33526e..71ff4b9ce 100644 --- a/uuid_8hpp_source.html +++ b/uuid_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/uuid.hpp Source File + + @@ -32,18 +34,23 @@
    - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    uuid.hpp
    @@ -147,7 +155,8 @@ $(function() { codefold.init(0); });
    + diff --git a/vector__queue_8hpp_source.html b/vector__queue_8hpp_source.html index d9f702183..5557c61a1 100644 --- a/vector__queue_8hpp_source.html +++ b/vector__queue_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/vector_queue.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    vector_queue.hpp
    @@ -454,7 +462,8 @@ $(function() { codefold.init(0); });
    + diff --git a/watchdog_8hpp_source.html b/watchdog_8hpp_source.html index c8094bbe3..46ae8079a 100644 --- a/watchdog_8hpp_source.html +++ b/watchdog_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/watchdog.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    watchdog.hpp
    @@ -188,7 +196,8 @@ $(function() { codefold.init(0); });
    + diff --git a/wav_8hpp_source.html b/wav_8hpp_source.html index f6f51073a..1e758b374 100644 --- a/wav_8hpp_source.html +++ b/wav_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/wav.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    wav.hpp
    @@ -789,7 +797,8 @@ $(function() { codefold.init(0); });
    + diff --git a/windows_8h_source.html b/windows_8h_source.html index dfbf8303b..45ed7b33f 100644 --- a/windows_8h_source.html +++ b/windows_8h_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/windows.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    windows.h
    @@ -111,7 +119,8 @@ $(function() { codefold.init(0); });
    + diff --git a/zlib_8hpp_source.html b/zlib_8hpp_source.html index 9f1fbdea6..81c41c753 100644 --- a/zlib_8hpp_source.html +++ b/zlib_8hpp_source.html @@ -3,13 +3,15 @@ - + stdex: include/stdex/zlib.hpp Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ $(function() { codefold.init(0); }); +
    zlib.hpp
    @@ -275,7 +283,8 @@ $(function() { codefold.init(0); });
    +