diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3regex.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/l3kernel/l3regex.dtx | 101 |
1 files changed, 15 insertions, 86 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx index 88c06cf6606..13faf8fc865 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-09-19} +% \date{Released 2019-09-28} % % \maketitle % @@ -1472,15 +1472,6 @@ % |#2|, or |#3| as relevant to each character (after de-escaping % it). % \begin{macrocode} -\__kernel_patch:nnNNpn - { - \@@_trace_push:nnN { regex } { 1 } \@@_escape_use:nnnn - \group_begin: - \tl_set:Nx \l_@@_internal_a_tl - { \@@_trace_pop:nnN { regex } { 1 } \@@_escape_use:nnnn } - \use_none:nnn - } - { } \cs_new_protected:Npn \@@_escape_use:nnnn #1#2#3#4 { \group_begin: @@ -3779,12 +3770,6 @@ \@@_compile:n {#1} \@@_build:N \l_@@_internal_regex } -\__kernel_patch:nnNNpn - { \@@_trace_push:nnN { regex } { 1 } \@@_build:N } - { - \@@_trace_states:n { 2 } - \@@_trace_pop:nnN { regex } { 1 } \@@_build:N - } \cs_new_protected:Npn \@@_build:N #1 { \@@_standard_escapechar: @@ -3825,12 +3810,6 @@ % work properly at the outer level, we need to put the appropriate % \texttt{left} and \texttt{right} states in their sequence. % \begin{macrocode} -\__kernel_patch:nnNNpn - { \@@_trace_push:nnN { regex } { 1 } \@@_build_for_cs:n } - { - \@@_trace_states:n { 2 } - \@@_trace_pop:nnN { regex } { 1 } \@@_build_for_cs:n - } \cs_new_protected:Npn \@@_build_for_cs:n #1 { \int_set_eq:NN \l_@@_min_state_int \l_@@_max_active_int @@ -3898,18 +3877,6 @@ % \texttt{right} state is the new empty state, and the \texttt{left} % state points to the previously \enquote{current} state. % \begin{macrocode} -\__kernel_patch:nnNNpn - { - \@@_trace:nnx { regex } { 2 } - { - regex~new~state~ - L=\int_use:N \l_@@_left_state_int ~ -> ~ - R=\int_use:N \l_@@_right_state_int ~ -> ~ - M=\int_use:N \l_@@_max_state_int ~ -> ~ - \int_eval:n { \l_@@_max_state_int + 1 } - } - } - { } \cs_new_protected:Npn \@@_build_new_state: { \@@_toks_clear:N \l_@@_max_state_int @@ -4064,9 +4031,6 @@ % auxiliaries expects \texttt{left_state} and \texttt{right_state} to % be set properly. % \begin{macrocode} -\__kernel_patch:nnNNpn - { \@@_trace_push:nnN { regex } { 1 } \@@_group_aux:nnnnN } - { \@@_trace_pop:nnN { regex } { 1 } \@@_group_aux:nnnnN } \cs_new_protected:Npn \@@_group_aux:nnnnN #1#2#3#4#5 { \if_int_compare:w #3 = 0 \exp_stop_f: @@ -4147,9 +4111,6 @@ % the group. The left and right states of the group are extracted from % the relevant sequences. % \begin{macrocode} -\__kernel_patch:nnNNpn - { \@@_trace_push:nnN { regex } { 1 } \@@_branch:n } - { \@@_trace_pop:nnN { regex } { 1 } \@@_branch:n } \cs_new_protected:Npn \@@_branch:n #1 { \@@_build_new_state: @@ -4648,12 +4609,6 @@ % smothering an empty match at the start). Once all this is set up, we % are ready for the ride. Find the first match. % \begin{macrocode} -\__kernel_patch:nnNNpn - { - \@@_trace_push:nnN { regex } { 1 } \@@_match:n - \@@_trace:nnx { regex } { 1 } { analyzing~query~token~list } - } - { \@@_trace_pop:nnN { regex } { 1 } \@@_match:n } \cs_new_protected:Npn \@@_match:n #1 { \int_zero:N \l_@@_balance_int @@ -4667,12 +4622,6 @@ \@@_match_init: \@@_match_once: } -\__kernel_patch:nnNNpn - { - \@@_trace_push:nnN { regex } { 1 } \@@_match_cs:n - \@@_trace:nnx { regex } { 1 } { analyzing~query~token~list } - } - { \@@_trace_pop:nnN { regex } { 1 } \@@_match_cs:n } \cs_new_protected:Npn \@@_match_cs:n #1 { \int_zero:N \l_@@_balance_int @@ -4695,9 +4644,6 @@ \@@_match_init: \@@_match_once: } -\__kernel_patch:nnNNpn - { \@@_trace:nnx { regex } { 1 } { initializing } } - { } \cs_new_protected:Npn \@@_match_init: { \bool_gset_false:N \g_@@_success_bool @@ -4885,12 +4831,6 @@ % state is marked as $\texttt{step}+1$: any thread hitting it at that % point will be terminated. % \begin{macrocode} -\__kernel_patch:nnNNpn - { - \@@_trace:nnx { regex } { 2 } - { state~\int_use:N \l_@@_curr_state_int } - } - { } \cs_new_protected:Npn \@@_use_state: { \__kernel_intarray_gset:Nnn \g_@@_state_active_intarray @@ -5267,9 +5207,6 @@ % parsed, make sure that there is no open csname. Finally, define the % \texttt{balance_one_match} and \texttt{do_one_match} functions. % \begin{macrocode} -\__kernel_patch:nnNNpn - { \@@_trace_push:nnN { regex } { 1 } \@@_replacement:n } - { \@@_trace_pop:nnN { regex } { 1 } \@@_replacement:n } \cs_new_protected:Npn \@@_replacement:n #1 { \group_begin: @@ -6704,20 +6641,16 @@ % typically~1. If the module's current tracing level is less than % |#2| show nothing, otherwise write |#3| to the terminal. % \begin{macrocode} -\__kernel_if_debug:TF +\cs_new_protected:Npn \@@_trace_push:nnN #1#2#3 + { \@@_trace:nnx {#1} {#2} { entering~ \token_to_str:N #3 } } +\cs_new_protected:Npn \@@_trace_pop:nnN #1#2#3 + { \@@_trace:nnx {#1} {#2} { leaving~ \token_to_str:N #3 } } +\cs_new_protected:Npn \@@_trace:nnx #1#2#3 { - \cs_new_protected:Npn \@@_trace_push:nnN #1#2#3 - { \@@_trace:nnx {#1} {#2} { entering~ \token_to_str:N #3 } } - \cs_new_protected:Npn \@@_trace_pop:nnN #1#2#3 - { \@@_trace:nnx {#1} {#2} { leaving~ \token_to_str:N #3 } } - \cs_new_protected:Npn \@@_trace:nnx #1#2#3 - { - \int_compare:nNnF - { \int_use:c { g_@@_trace_#1_int } } < {#2} - { \iow_term:x { Trace:~#3 } } - } + \int_compare:nNnF + { \int_use:c { g_@@_trace_#1_int } } < {#2} + { \iow_term:x { Trace:~#3 } } } - { } % \end{macrocode} % \end{macro} % @@ -6733,20 +6666,16 @@ % stored in \tn{toks} from $0$ to \cs{l_@@_max_state_int} % (excluded). % \begin{macrocode} -\__kernel_if_debug:TF +\cs_new_protected:Npn \@@_trace_states:n #1 { - \cs_new_protected:Npn \@@_trace_states:n #1 + \int_step_inline:nnn + \l_@@_min_state_int + { \l_@@_max_state_int - 1 } { - \int_step_inline:nnn - \l_@@_min_state_int - { \l_@@_max_state_int - 1 } - { - \@@_trace:nnx { regex } {#1} - { \iow_char:N \\toks ##1 = { \@@_toks_use:w ##1 } } - } + \@@_trace:nnx { regex } {#1} + { \iow_char:N \\toks ##1 = { \@@_toks_use:w ##1 } } } } - { } % \end{macrocode} % \end{macro} % |