[latex3-commits] [git/LaTeX3-latex3-latex3] scan-quark: Replace quarks by scan marks in l3str-convert (5c940323e)
PhelypeOleinik
tex.phelype at gmail.com
Sat Mar 21 02:05:28 CET 2020
Repository : https://github.com/latex3/latex3
On branch : scan-quark
Link : https://github.com/latex3/latex3/commit/5c940323e32707e31f3651075e519a9944b2c9ef
>---------------------------------------------------------------
commit 5c940323e32707e31f3651075e519a9944b2c9ef
Author: PhelypeOleinik <tex.phelype at gmail.com>
Date: Fri Mar 20 22:05:28 2020 -0300
Replace quarks by scan marks in l3str-convert
>---------------------------------------------------------------
5c940323e32707e31f3651075e519a9944b2c9ef
l3kernel/l3str-convert.dtx | 79 +++++++++++++++++++++++----------------
l3kernel/testfiles/m3quark001.tlg | 2 +-
2 files changed, 48 insertions(+), 33 deletions(-)
diff --git a/l3kernel/l3str-convert.dtx b/l3kernel/l3str-convert.dtx
index b5c46d509..0c6f1722f 100644
--- a/l3kernel/l3str-convert.dtx
+++ b/l3kernel/l3str-convert.dtx
@@ -293,6 +293,21 @@
% \end{macrocode}
% \end{variable}
%
+% \begin{variable}{\q_@@_nil,\q_@@_stop}
+% Internal quarks.
+% \begin{macrocode}
+\quark_new:N \q_@@_nil
+\quark_new:N \q_@@_stop
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{macro}[EXP]{\@@_use_none_delimit_by_q_stop:w}
+% Functions to gobble up to a quark.
+% \begin{macrocode}
+\cs_new:Npn \@@_use_none_delimit_by_q_stop:w #1 \q_@@_stop { }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{variable}{\g_@@_alias_prop}
% To avoid needing one file per encoding/escaping alias, we keep track
% of those in a property list.
@@ -564,13 +579,13 @@
{
\exp_after:wN \@@_convert_gmap_internal_loop:Nww
\exp_after:wN #1
- \g_@@_result_tl \s_@@ \q_stop \prg_break: \s_@@
+ \g_@@_result_tl \s_@@ \s_@@_stop \prg_break: \s_@@
\prg_break_point:
}
}
\cs_new:Npn \@@_convert_gmap_internal_loop:Nww #1 #2 \s_@@ #3 \s_@@
{
- \use_none_delimit_by_q_stop:w #3 \q_stop
+ \@@_use_none_delimit_by_s_stop:w #3 \s_@@_stop
#1 {#3}
\@@_convert_gmap_internal_loop:Nww #1
}
@@ -686,12 +701,12 @@
#1
\tl_gset:Nx \g_@@_result_tl { \__kernel_str_to_other_fast:n {#4} }
\exp_after:wN \@@_convert:wwwnn
- \tl_to_str:n {#5} /// \q_stop
+ \tl_to_str:n {#5} /// \s_@@_stop
{ decode } { unescape }
\prg_do_nothing:
\@@_convert_decode_:
\exp_after:wN \@@_convert:wwwnn
- \tl_to_str:n {#6} /// \q_stop
+ \tl_to_str:n {#6} /// \s_@@_stop
{ encode } { escape }
\use_ii_i:nn
\@@_convert_encode_:
@@ -728,7 +743,7 @@
% was given, and only the encoding, |#1|, should be performed.
% \begin{macrocode}
\cs_new_protected:Npn \@@_convert:wwwnn
- #1 / #2 // #3 \q_stop #4#5
+ #1 / #2 // #3 \s_@@_stop #4#5
{
\@@_convert:nnn {enc} {#4} {#1}
\@@_convert:nnn {esc} {#5} {#2}
@@ -1122,11 +1137,11 @@
\int_zero:N \l_@@_internal_int
\exp_last_unbraced:Nx \@@_decode_eight_bit_load:nn
{ \tl_use:c { c_@@_encoding_#1_tl } }
- { \q_stop \prg_break: } { }
+ { \s_@@_stop \prg_break: } { }
\prg_break_point:
\exp_last_unbraced:Nx \@@_decode_eight_bit_load_missing:n
{ \tl_use:c { c_@@_encoding_#1_missing_tl } }
- { \q_stop \prg_break: }
+ { \s_@@_stop \prg_break: }
\prg_break_point:
\flag_clear:n { str_error }
\@@_convert_gmap:N \@@_decode_eight_bit_char:N
@@ -1135,7 +1150,7 @@
}
\cs_new_protected:Npn \@@_decode_eight_bit_load:nn #1#2
{
- \use_none_delimit_by_q_stop:w #1 \q_stop
+ \@@_use_none_delimit_by_s_stop:w #1 \s_@@_stop
\tex_dimen:D "#1 = \l_@@_internal_int sp \scan_stop:
\tex_skip:D \l_@@_internal_int = "#1 sp \scan_stop:
\tex_toks:D \l_@@_internal_int \exp_after:wN { \int_value:w "#2 }
@@ -1144,7 +1159,7 @@
}
\cs_new_protected:Npn \@@_decode_eight_bit_load_missing:n #1
{
- \use_none_delimit_by_q_stop:w #1 \q_stop
+ \@@_use_none_delimit_by_s_stop:w #1 \s_@@_stop
\tex_dimen:D "#1 = \l_@@_internal_int sp \scan_stop:
\tex_skip:D \l_@@_internal_int = "#1 sp \scan_stop:
\tex_toks:D \l_@@_internal_int \exp_after:wN
@@ -1180,7 +1195,7 @@
\int_zero:N \l_@@_internal_int
\exp_last_unbraced:Nx \@@_encode_eight_bit_load:nn
{ \tl_use:c { c_@@_encoding_#1_tl } }
- { \q_stop \prg_break: } { }
+ { \s_@@_stop \prg_break: } { }
\prg_break_point:
\flag_clear:n { str_error }
\@@_convert_gmap_internal:N \@@_encode_eight_bit_char:n
@@ -1189,7 +1204,7 @@
}
\cs_new_protected:Npn \@@_encode_eight_bit_load:nn #1#2
{
- \use_none_delimit_by_q_stop:w #1 \q_stop
+ \@@_use_none_delimit_by_s_stop:w #1 \s_@@_stop
\tex_dimen:D "#2 = \l_@@_internal_int sp \scan_stop:
\tex_skip:D \l_@@_internal_int = "#2 sp \scan_stop:
\exp_args:NNf \tex_toks:D \l_@@_internal_int
@@ -1769,17 +1784,17 @@
{ 32 } { 192 }
{ 16 } { 224 }
{ 8 } { 240 }
- \q_stop
+ \s_@@_stop
}
-\cs_new:Npn \@@_encode_utf_viii_loop:wwnnw #1; #2; #3#4 #5 \q_stop
+\cs_new:Npn \@@_encode_utf_viii_loop:wwnnw #1; #2; #3#4 #5 \s_@@_stop
{
\if_int_compare:w #1 < #3 \exp_stop_f:
\@@_output_byte:n { #1 + #4 }
- \exp_after:wN \use_none_delimit_by_q_stop:w
+ \exp_after:wN \@@_use_none_delimit_by_s_stop:w
\fi:
\exp_after:wN \@@_encode_utf_viii_loop:wwnnw
\int_value:w \int_div_truncate:nn {#1} {64} ; #1 ;
- #5 \q_stop
+ #5 \s_@@_stop
\@@_output_byte:n { #2 - 64 * ( #1 - 2 ) }
}
% \end{macrocode}
@@ -1969,7 +1984,7 @@
\int_value:w \int_eval:n { `#1 - "C0 } \exp_after:wN
\fi:
\s_@@
- \use_none_delimit_by_q_stop:w {"80} {"800} {"10000} {"110000} \q_stop
+ \@@_use_none_delimit_by_q_stop:w {"80} {"800} {"10000} {"110000} \q_@@_stop
\@@_decode_utf_viii_start:N
}
\cs_new:Npn \@@_decode_utf_viii_continuation:wwN
@@ -2005,7 +2020,7 @@
#1
\fi:
\else:
- \if_meaning:w \q_stop #5
+ \if_meaning:w \q_@@_stop #5
\@@_decode_utf_viii_overflow:w #1
\fi:
\exp_after:wN \@@_decode_utf_viii_continuation:wwN
@@ -2209,13 +2224,13 @@
% \cs{@@_decode_utf_xvi_pair:NN} described below.
% \begin{macrocode}
\cs_new_protected:cpn { @@_convert_decode_utf16be: }
- { \@@_decode_utf_xvi:Nw 1 \g_@@_result_tl \s_stop }
+ { \@@_decode_utf_xvi:Nw 1 \g_@@_result_tl \s_@@_stop }
\cs_new_protected:cpn { @@_convert_decode_utf16le: }
- { \@@_decode_utf_xvi:Nw 2 \g_@@_result_tl \s_stop }
+ { \@@_decode_utf_xvi:Nw 2 \g_@@_result_tl \s_@@_stop }
\cs_new_protected:cpn { @@_convert_decode_utf16: }
{
\exp_after:wN \@@_decode_utf_xvi_bom:NN
- \g_@@_result_tl \s_stop \s_stop \s_stop
+ \g_@@_result_tl \s_@@_stop \s_@@_stop \s_@@_stop
}
\cs_new_protected:Npn \@@_decode_utf_xvi_bom:NN #1#2
{
@@ -2227,7 +2242,7 @@
{ \@@_decode_utf_xvi:Nw 1 #1#2 }
}
}
- \cs_new_protected:Npn \@@_decode_utf_xvi:Nw #1#2 \s_stop
+ \cs_new_protected:Npn \@@_decode_utf_xvi:Nw #1#2 \s_@@_stop
{
\flag_clear:n { str_error }
\flag_clear:n { str_missing }
@@ -2237,7 +2252,7 @@
\tl_gset:Nx \g_@@_result_tl
{
\exp_after:wN \@@_decode_utf_xvi_pair:NN
- #2 \q_nil \q_nil
+ #2 \q_@@_nil \q_@@_nil
\prg_break_point:
}
\@@_if_flag_error:nnx { str_error } { utf16-decode } { }
@@ -2294,7 +2309,7 @@
% \begin{macrocode}
\cs_new:Npn \@@_decode_utf_xvi_pair:NN #1#2
{
- \if_meaning:w \q_nil #2
+ \if_meaning:w \q_@@_nil #2
\@@_decode_utf_xvi_pair_end:Nw #1
\fi:
\if_case:w
@@ -2309,7 +2324,7 @@
\cs_new:Npn \@@_decode_utf_xvi_quad:NNwNN
#1#2 #3 \@@_decode_utf_xvi_pair:NN #4#5
{
- \if_meaning:w \q_nil #5
+ \if_meaning:w \q_@@_nil #5
\@@_decode_utf_xvi_error:nNN { missing } #1#2
\@@_decode_utf_xvi_pair_end:Nw #4
\fi:
@@ -2336,7 +2351,7 @@
\cs_new:Npn \@@_decode_utf_xvi_pair_end:Nw #1 \fi:
{
\fi:
- \if_meaning:w \q_nil #1
+ \if_meaning:w \q_@@_nil #1
\else:
\@@_decode_utf_xvi_error:nNN { end } #1 \prg_do_nothing:
\fi:
@@ -2498,13 +2513,13 @@
% should be nothing left until the first \cs{s_stop}. Break the map.
% \begin{macrocode}
\cs_new_protected:cpn { @@_convert_decode_utf32be: }
- { \@@_decode_utf_xxxii:Nw 1 \g_@@_result_tl \s_stop }
+ { \@@_decode_utf_xxxii:Nw 1 \g_@@_result_tl \s_@@_stop }
\cs_new_protected:cpn { @@_convert_decode_utf32le: }
- { \@@_decode_utf_xxxii:Nw 2 \g_@@_result_tl \s_stop }
+ { \@@_decode_utf_xxxii:Nw 2 \g_@@_result_tl \s_@@_stop }
\cs_new_protected:cpn { @@_convert_decode_utf32: }
{
\exp_after:wN \@@_decode_utf_xxxii_bom:NNNN \g_@@_result_tl
- \s_stop \s_stop \s_stop \s_stop \s_stop
+ \s_@@_stop \s_@@_stop \s_@@_stop \s_@@_stop \s_@@_stop
}
\cs_new_protected:Npn \@@_decode_utf_xxxii_bom:NNNN #1#2#3#4
{
@@ -2516,7 +2531,7 @@
{ \@@_decode_utf_xxxii:Nw 1 #1#2#3#4 }
}
}
- \cs_new_protected:Npn \@@_decode_utf_xxxii:Nw #1#2 \s_stop
+ \cs_new_protected:Npn \@@_decode_utf_xxxii:Nw #1#2 \s_@@_stop
{
\flag_clear:n { str_overflow }
\flag_clear:n { str_end }
@@ -2525,14 +2540,14 @@
\tl_gset:Nx \g_@@_result_tl
{
\exp_after:wN \@@_decode_utf_xxxii_loop:NNNN
- #2 \s_stop \s_stop \s_stop \s_stop
+ #2 \s_@@_stop \s_@@_stop \s_@@_stop \s_@@_stop
\prg_break_point:
}
\@@_if_flag_error:nnx { str_error } { utf32-decode } { }
}
\cs_new:Npn \@@_decode_utf_xxxii_loop:NNNN #1#2#3#4
{
- \if_meaning:w \s_stop #4
+ \if_meaning:w \s_@@_stop #4
\exp_after:wN \@@_decode_utf_xxxii_end:w
\fi:
#1#2#3#4 \s_@@
@@ -2553,7 +2568,7 @@
\s_@@
\@@_decode_utf_xxxii_loop:NNNN
}
- \cs_new:Npn \@@_decode_utf_xxxii_end:w #1 \s_stop
+ \cs_new:Npn \@@_decode_utf_xxxii_end:w #1 \s_@@_stop
{
\tl_if_empty:nF {#1}
{
diff --git a/l3kernel/testfiles/m3quark001.tlg b/l3kernel/testfiles/m3quark001.tlg
index 85e64d816..09ef8947f 100644
--- a/l3kernel/testfiles/m3quark001.tlg
+++ b/l3kernel/testfiles/m3quark001.tlg
@@ -88,7 +88,7 @@ already been used for a scan mark.
\s__skip_stop \s__keyval_nil \s__keyval_mark \s__keyval_stop \s__keyval_tail
\s__keys_stop \s__fp \s__fp_expr_mark \s__fp_expr_stop \s__fp_mark \s__fp_stop
\s__fp_invalid \s__fp_underflow \s__fp_overflow \s__fp_division \s__fp_exact
-\s__fp_tuple \s__sort_mark \s__sort_stop \s__sort_scan_stop \s__tl
+\s__fp_tuple \s__sort_mark \s__sort_stop \s__sort_scan_stop \s__str \s__tl
\s__color_stop \s__text_stop \s__bool_mark \s__bool_stop \s__deprecation_mark
\s__deprecation_stop \s__expl_stop \s__foo .
============================================================
More information about the latex3-commits
mailing list.