summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3str.dtx')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3str.dtx36
1 files changed, 16 insertions, 20 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
index 2c1d4158c55..f192b81948d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2017/12/05}
+% \date{Released 2017/12/16}
%
% \maketitle
%
@@ -1163,14 +1163,8 @@
= 0 \exp_stop_f:
\prg_return_true: \else: \prg_return_false: \fi:
}
-\cs_generate_variant:Nn \str_if_eq_p:nn { V , o }
-\cs_generate_variant:Nn \str_if_eq_p:nn { nV , no , VV }
-\cs_generate_variant:Nn \str_if_eq:nnT { V , o }
-\cs_generate_variant:Nn \str_if_eq:nnT { nV , no , VV }
-\cs_generate_variant:Nn \str_if_eq:nnF { V , o }
-\cs_generate_variant:Nn \str_if_eq:nnF { nV , no , VV }
-\cs_generate_variant:Nn \str_if_eq:nnTF { V , o }
-\cs_generate_variant:Nn \str_if_eq:nnTF { nV , no , VV }
+\prg_generate_conditional_variant:Nnn \str_if_eq:nn
+ { V , o , nV , no , VV } { p , T , F , TF }
\prg_new_conditional:Npnn \str_if_eq_x:nn #1#2 { p , T , F , TF }
{
\if_int_compare:w \@@_if_eq_x:nn {#1} {#2} = 0 \exp_stop_f:
@@ -1189,14 +1183,12 @@
\if_int_compare:w \@@_if_eq_x:nn { \tl_to_str:N #1 } { \tl_to_str:N #2 }
= 0 \exp_stop_f: \prg_return_true: \else: \prg_return_false: \fi:
}
-\cs_generate_variant:Nn \str_if_eq:NNT { c , Nc , cc }
-\cs_generate_variant:Nn \str_if_eq:NNF { c , Nc , cc }
-\cs_generate_variant:Nn \str_if_eq:NNTF { c , Nc , cc }
-\cs_generate_variant:Nn \str_if_eq_p:NN { c , Nc , cc }
+\prg_generate_conditional_variant:Nnn \str_if_eq:NN
+ { c , Nc , cc } { T , F , TF , p }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}[TF]{\str_if_in:Nn, \str_if_in:cn \str_if_in:nn}
+% \begin{macro}[TF]{\str_if_in:Nn, \str_if_in:cn, \str_if_in:nn}
% Everything here needs to be detokenized but beyond that it is a
% simple token list test. It would be faster to fine-tune the |T|,
% |F|, |TF| variants by calling the appropriate variant of
@@ -1208,9 +1200,8 @@
{ \tl_if_in:nnTF { \tl_to_str:N #1 } { \tl_to_str:n {#2} } }
{ \prg_return_true: } { \prg_return_false: }
}
-\cs_generate_variant:Nn \str_if_in:NnT { c }
-\cs_generate_variant:Nn \str_if_in:NnF { c }
-\cs_generate_variant:Nn \str_if_in:NnTF { c }
+\prg_generate_conditional_variant:Nnn \str_if_in:Nn
+ { c } { T , F , TF }
\prg_new_protected_conditional:Npnn \str_if_in:nn #1#2 { T , F , TF }
{
\use:x
@@ -1251,9 +1242,8 @@
\cs_new:Npn \@@_case:nnTF #1#2#3#4
{ \@@_case:nw {#1} #2 {#1} { } \q_mark {#3} \q_mark {#4} \q_stop }
\cs_generate_variant:Nn \str_case:nn { o , nV , nv }
-\cs_generate_variant:Nn \str_case:nnT { o , nV , nv }
-\cs_generate_variant:Nn \str_case:nnF { o , nV , nv }
-\cs_generate_variant:Nn \str_case:nnTF { o , nV , nv }
+\prg_generate_conditional_variant:Nnn \str_case:nn
+ { o , nV , nv } { T , F , TF }
\cs_new:Npn \@@_case:nw #1#2#3
{
\str_if_eq:nnTF {#1} {#2}
@@ -1297,8 +1287,11 @@
% \subsection{Mapping to strings}
%
% \begin{macro}[rEXP]{\str_map_function:NN, \str_map_function:cN}
+% \begin{macro}[rEXP]{\str_map_function:nN}
% \begin{macro}{\str_map_inline:Nn, \str_map_inline:cn}
+% \begin{macro}{\str_map_inline:nn}
% \begin{macro}{\str_map_variable:NNn, \str_map_variable:cNn}
+% \begin{macro}{\str_map_variable:nNn}
% \begin{macro}{\str_map_break:}
% \begin{macro}{\str_map_break:n}
% \begin{macro}[rEXP]{\@@_map_function:w, \@@_map_function:Nn}
@@ -1395,6 +1388,9 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \subsection{Accessing specific characters in a string}
%