diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/expl3/l3tlp.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/expl3/l3tlp.sty | 506 |
1 files changed, 0 insertions, 506 deletions
diff --git a/Master/texmf-dist/tex/latex/expl3/l3tlp.sty b/Master/texmf-dist/tex/latex/expl3/l3tlp.sty deleted file mode 100644 index 1867f9e2e0e..00000000000 --- a/Master/texmf-dist/tex/latex/expl3/l3tlp.sty +++ /dev/null @@ -1,506 +0,0 @@ -%% -%% This is file `l3tlp.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% l3tlp.dtx (with options: `package,trace') -%% -%% -%% EXPERIMENTAL CODE -%% -%% Do not distribute this file without also distributing the -%% source files specified above. -%% -%% Do not distribute a modified version of this file. -%% -%% -%% File: l3tlp.dtx Copyright (C) 1990-2008 LaTeX3 project -%% -%% It may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License (LPPL), either version 1.3c of this -%% license or (at your option) any later version. The latest version -%% of this license is in the file -%% -%% http://www.latex-project.org/lppl.txt -%% -%% This file is part of the ``expl3 bundle'' (The Work in LPPL) -%% and all files in that bundle must be distributed together. -%% -%% The released version of this bundle is available from CTAN. -%% -%% ----------------------------------------------------------------------- -%% -%% The development version of the bundle can be found at -%% -%% http://www.latex-project.org/cgi-bin/cvsweb.cgi/ -%% -%% for those people who are interested. -%% -%%%%%%%%%%% -%% NOTE: %% -%%%%%%%%%%% -%% -%% Snapshots taken from the repository represent work in progress and may -%% not work or may contain conflicting material! We therefore ask -%% people _not_ to put them into distributions, archives, etc. without -%% prior consultation with the LaTeX Project Team. -%% -%% ----------------------------------------------------------------------- -\RequirePackage{l3names} -\GetIdInfo$Id: l3tlp.dtx 767 2008-08-05 19:44:21Z morten $ - {L3 Experimental Token List Pointers} -\ProvidesExplPackage - {\filename}{\filedate}{\fileversion}{\filedescription} -\RequirePackage{l3basics} -\def_long_new:Npn \tlp_new:Nn #1#2{ - \chk_new_cs:N #1 - \gdef:Npn #1{#2} -} -\def_new:Npn \tlp_new:cn {\exp_args:Nc \tlp_new:Nn } -\def_long_new:Npn \tlp_new:Nx #1#2{ - \chk_new_cs:N #1 - \gdef:Npx #1{#2} -} -\def_new:Npn \tlp_new:N #1{\tlp_new:Nn #1{}} -\def_new:Npn \tlp_new:c #1{\tlp_new:cn {#1}{}} -\def_new:Npn \tlp_use:N #1 { - \if_meaning:NN #1 \scan_stop: - \err_latex_bug:x {Token~list~pointer~ `\token_to_string:N #1'~ - has~ an~ erroneous~ structure!} - \else: - \exp_after:NN #1 - \fi: -} -\def_new:Npn \tlp_use:c {\exp_args:Nc \tlp_use:N} -\def_long_new:Npn\tlp_set:Nn#1#2{\def:Npn#1{#2}} -\def_long_new:Npn\tlp_set:Nx#1#2{\def:Npx#1{#2}} -\def_long_new:Npn\tlp_gset:Nn#1#2{\gdef:Npn#1{#2}} -\def_long_new:Npn\tlp_gset:Nx#1#2{\gdef:Npx#1{#2}} -\def_new:Npn \tlp_set:No {\exp_args:NNo \tlp_set:Nn} -\def_new:Npn \tlp_set:Nd {\exp_args:NNd \tlp_set:Nn} -\def_new:Npn \tlp_set:Nf {\exp_args:NNf \tlp_set:Nn} -\def_new:Npn \tlp_set:cn {\exp_args:Nc \tlp_set:Nn} -\def_new:Npn \tlp_set:co {\exp_args:Nco \tlp_set:Nn} -\def_new:Npn \tlp_set:cx {\exp_args:Nc \tlp_set:Nx} -\def_new:Npn \tlp_gset:No {\exp_args:NNo \tlp_gset:Nn} -\def_new:Npn \tlp_gset:Nd {\exp_args:NNd \tlp_gset:Nn} -\def_new:Npn \tlp_gset:cn {\exp_args:Nc \tlp_gset:Nn} -\def_new:Npn \tlp_gset:cx {\exp_args:Nc \tlp_gset:Nx} -\let_new:NN \tlp_set_eq:NN \let:NN -\let_new:NN \tlp_gset_eq:NN \glet:NN -\def_new:Npn \tlp_set_eq:Nc {\exp_args:NNc \tlp_set_eq:NN} -\def_new:Npn \tlp_set_eq:cN {\exp_args:Nc \tlp_set_eq:NN} -\def_new:Npn \tlp_set_eq:cc {\exp_args:Ncc \tlp_set_eq:NN} -\def_new:Npn \tlp_gset_eq:Nc {\exp_args:NNc \tlp_gset_eq:NN} -\def_new:Npn \tlp_gset_eq:cN {\exp_args:Nc \tlp_gset_eq:NN} -\def_new:Npn \tlp_gset_eq:cc {\exp_args:Ncc \tlp_gset_eq:NN} -\def_new:Npn \tlp_clear:N #1{\tlp_set_eq:NN #1\c_empty_tlp} -\def_new:Npn \tlp_clear:c {\exp_args:Nc \tlp_clear:N} -\def_new:Npn \tlp_gclear:N #1{\tlp_gset_eq:NN #1\c_empty_tlp} -\def_new:Npn \tlp_gclear:c {\exp_args:Nc \tlp_gclear:N} -\let_new:NN \tlp_clear_new:N \tlp_clear:N -\def_new:Npn \tlp_clear_new:c {\exp_args:Nc \tlp_clear_new:N} -\let_new:NN \tlp_gclear_new:N \tlp_gclear:N -\def_new:Npn \tlp_gclear_new:c {\exp_args:Nc \tlp_gclear_new:N} -\def_long_new:Npn \tlp_put_left:Nn #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_set:Nx #1{\exp_not:o{\l_exp_tlp}\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_put_left:No #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_set:Nx #1{\exp_not:d{\l_exp_tlp}\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_put_left:Nx #1#2{ - \tlp_set:Nx #1{#2\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_gput_left:Nn #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_gset:Nx #1{\exp_not:o{\l_exp_tlp}\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_gput_left:No #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_gset:Nx #1{\exp_not:d{\l_exp_tlp}\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_gput_left:Nx #1#2{ - \tlp_gset:Nx #1{#2\exp_not:o{#1}} -} -\def_long_new:Npn \tlp_put_left:cn{\exp_args:Nc\tlp_put_left:Nn} -\def_long_new:Npn \tlp_put_left:co{\exp_args:Nc\tlp_put_left:No} -\def_long_new:Npn \tlp_put_left:cx{\exp_args:Nc\tlp_put_left:Nx} -\def_long_new:Npn \tlp_gput_left:cn{\exp_args:Nc\tlp_gput_left:Nn} -\def_long_new:Npn \tlp_gput_left:co{\exp_args:Nc\tlp_gput_left:No} -\def_long_new:Npn \tlp_gput_left:cx{\exp_args:Nc\tlp_gput_left:Nx} -\def_long_new:Npn \tlp_put_right:Nn #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_set:Nx #1{\exp_not:o{#1}\exp_not:o{\l_exp_tlp}} -} -\def_long_new:Npn \tlp_gput_right:Nn #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_gset:Nx #1{\exp_not:o{#1}\exp_not:o{\l_exp_tlp}} -} -\def_long_new:Npn \tlp_put_right:No #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_set:Nx #1{\exp_not:o{#1}\exp_not:d{\l_exp_tlp}} -} -\def_long_new:Npn \tlp_gput_right:No #1#2{ - \tlp_set:Nn \l_exp_tlp{#2} - \tlp_gset:Nx #1{\exp_not:o{#1}\exp_not:d{\l_exp_tlp}} -} -\def_long:Npn \tlp_put_right:Nx #1#2{ - \tlp_set:Nx #1{\exp_not:o{#1}#2} -} -\def_long:Npn \tlp_gput_right:Nx #1#2{ - \tlp_gset:Nx #1{\exp_not:o{#1}#2} -} -\def_new:Npn \tlp_gput_right:cn {\exp_args:Nc \tlp_gput_right:Nn} -\def_new:Npn \tlp_gput_right:co {\exp_args:Nc \tlp_gput_right:No} -\def_new:Npn \tlp_put_right:cc {\exp_args:Ncc \tlp_put_right:Nn} -\def_new:Npn \tlp_gset:Nc { - \pref_global:D - \tlp_set:Nc} -\def_new:Npn \tlp_set:Nc #1#2{\tlp_set:No #1{\cs:w#2\cs_end:}} -\def_new:Npn \tlp_if_empty_p:N #1{ - \if_meaning:NN#1\c_empty_tlp \c_true \else: \c_false \fi:} -\def_new:Npn \tlp_if_empty_p:c {\exp_args:Nc\tlp_if_empty_p:N} -\def_test_function_new:npn {tlp_if_empty:N} #1{ - \if_meaning:NN#1\c_empty_tlp} -\def_new:Npn \tlp_if_empty:cTF {\exp_args:Nc \tlp_if_empty:NTF} -\def_new:Npn \tlp_if_empty:cT {\exp_args:Nc \tlp_if_empty:NT} -\def_new:Npn \tlp_if_empty:cF {\exp_args:Nc \tlp_if_empty:NF} -\def_new:Npn \tlp_if_eq_p:NN #1#2{ - \if_meaning:NN#1#2 \c_true \else: \c_false \fi:} -\def_new:Npn \tlp_if_eq_p:Nc {\exp_args:NNc\tlp_if_empty_p:NN} -\def_new:Npn \tlp_if_eq_p:cN {\exp_args:Nc\tlp_if_empty_p:NN} -\def_new:Npn \tlp_if_eq_p:cc {\exp_args:Ncc\tlp_if_empty_p:NN} -\def_test_function_new:npn {tlp_if_eq:NN} #1#2{\if_meaning:NN#1#2} -\def_new:Npn \tlp_if_eq:cNTF{\exp_args:Nc \tlp_if_eq:NNTF} -\def_new:Npn \tlp_if_eq:cNT {\exp_args:Nc \tlp_if_eq:NNT} -\def_new:Npn \tlp_if_eq:cNF {\exp_args:Nc \tlp_if_eq:NNF} -\def_new:Npn \tlp_if_eq:NcTF{\exp_args:NNc \tlp_if_eq:NNTF} -\def_new:Npn \tlp_if_eq:NcT {\exp_args:NNc \tlp_if_eq:NNT} -\def_new:Npn \tlp_if_eq:NcF {\exp_args:NNc \tlp_if_eq:NNF} -\def_new:Npn \tlp_if_eq:ccTF{\exp_args:Ncc \tlp_if_eq:NNTF} -\def_new:Npn \tlp_if_eq:ccT {\exp_args:Ncc \tlp_if_eq:NNT} -\def_new:Npn \tlp_if_eq:ccF {\exp_args:Ncc \tlp_if_eq:NNF} -\tlp_new:Nn \c_empty_tlp {} -\tlp_new:Nn \c_relax_tlp {\scan_stop:} -\tlp_new:Nn \g_tmpa_tlp{} -\tlp_new:Nn \g_tmpb_tlp{} -\tlp_new:Nn \l_testa_tlp {} -\tlp_new:Nn \l_testb_tlp {} -\tlp_new:Nn \g_testa_tlp {} -\tlp_new:Nn \g_testb_tlp {} -\tlp_new:Nn \l_tmpa_tlp{} -\tlp_new:Nn \l_tmpb_tlp{} -\def_new:Npn \tlp_to_str:N {\exp_after:NN\tlp_to_str_aux:w - \token_to_meaning:N} -\def_new:Npn \tlp_to_str_aux:w #1>{} -\def_new:Npn\tlp_to_str:c{\exp_args:Nc\tlp_to_str:N} -\def_long_new:Npn \tlist_if_empty_p:n #1{ - \exp_after:NN\if_meaning:NN\exp_after:NN\q_nil\tlist_to_str:n{#1}\q_nil - \c_true - \else: - \c_false - \fi: -} -\def_new:Npn \tlist_if_empty_p:o {\exp_args:No\tlist_if_empty_p:n} -\def_long_test_function_new:npn{tlist_if_empty:n}#1{ - \if:w\tlist_if_empty_p:n{#1}} -\def_long_test_function_new:npn{tlist_if_empty:o}#1{ - \if:w\tlist_if_empty_p:o{#1}} -\def_long_new:Npn \tlist_if_blank_p:n #1{ - \exp_after:NN\tlist_if_blank_p_aux:w\tlist_to_str:n{#1}aa..\q_nil -} -\def_new:Npn \tlist_if_blank_p_aux:w #1#2a#3#4\q_nil{ - \if_meaning:NN #3#4\c_true\else:\c_false\fi:} -\def_long_test_function_new:npn{tlist_if_blank:n}#1{ - \if:w\tlist_if_blank_p:n{#1}} -\def:Npn \tlist_if_blank_p:o{\exp_args:No\tlist_if_blank_p:n} -\def_long_test_function_new:npn{tlist_if_blank:o}#1{ - \if:w\tlist_if_blank_p:o{#1}} -\let_new:NN \tlist_to_lowercase:n \tex_lowercase:D -\let_new:NN \tlist_to_uppercase:n \tex_uppercase:D -\let_new:NN \tlist_to_str:n \etex_detokenize:D -\def_long_new:Npn \tlist_map_function:nN #1#2{ - \tlist_map_function_aux:Nn #2 #1 \q_recursion_tail \q_recursion_stop -} -\def_new:Npn \tlp_map_function:NN #1#2{ - \exp_after:NN \tlist_map_function_aux:Nn - \exp_after:NN #2 #1 \q_recursion_tail \q_recursion_stop -} -\def_long_new:Npn \tlist_map_function_aux:Nn #1#2{ - \quark_if_recursion_tail_stop:n{#2} - #1{#2} \tlist_map_function_aux:Nn #1 -} -\def_new:Npn\tlp_map_function:cN{\exp_args:Nc\tlp_map_function:NN} -\def_long_new:Npn \tlist_map_inline:nn #1#2{ - \num_gincr:N \g_tlp_inline_level_num - \gdef_long:cpn {tlist_map_inline_ \num_use:N \g_tlp_inline_level_num :n} - ##1{#2} - \exp_args:Nc \tlist_map_function_aux:Nn - {tlist_map_inline_ \num_use:N \g_tlp_inline_level_num :n} - #1 \q_recursion_tail\q_recursion_stop - \num_gdecr:N \g_tlp_inline_level_num -} -\def_long_new:Npn \tlp_map_inline:Nn #1#2{ - \num_gincr:N \g_tlp_inline_level_num - \gdef_long:cpn {tlist_map_inline_ \num_use:N \g_tlp_inline_level_num :n} - ##1{#2} - \exp_args:NcE \tlist_map_function_aux:Nn - {tlist_map_inline_ \num_use:N \g_tlp_inline_level_num :n} - #1 \q_recursion_tail\q_recursion_stop - \num_gdecr:N \g_tlp_inline_level_num -} -\def_new:Npn\tlp_map_inline:cN{\exp_args:Nc\tlp_map_inline:NN} -\tlp_new:Nn \g_tlp_inline_level_num{0} -\def_long_new:Npn \tlist_map_variable:nNn #1#2#3{ - \tlist_map_variable_aux:Nnn #2 {#3} #1 \q_recursion_tail \q_recursion_stop -} -\def_new:Npn \tlp_map_variable:NNn {\exp_args:No \tlist_map_variable:nNn} -\def_new:Npn \tlp_map_variable:cNn {\exp_args:Nc \tlp_map_variable:NNn} -\def_long_new:Npn \tlist_map_variable_aux:Nnn #1#2#3{ - \tlp_set:Nn #1{#3} - \quark_if_recursion_tail_stop:N #1 - #2 \tlist_map_variable_aux:Nnn #1{#2} -} -\let_new:NN \tlist_map_break:w \use_none_delimit_by_q_recursion_stop:w -\let_new:NN \tlp_map_break:w \tlist_map_break:w -\def_long_new:Npn \tlist_elt_count:n #1{ - \num_value:w \num_eval:w 0 - \tlist_map_function:nN {#1}\num_elt_count:n - \num_eval_end: -} -\def_new:Npn \tlist_elt_count:o {\exp_args:No\tlist_elt_count:n} -\def_new:Npn \tlp_elt_count:N #1{ - \num_value:w \num_eval:w 0 - \tlp_map_function:NN #1 \num_elt_count:n - \num_eval_end: -} -\let_new:NN \tlist_compare:xx \pdfstrcmp -\def_long_new:NNn \tlist_compare:nn 2{ - \tlist_compare:xx{\exp_not:n{#1}}{\exp_not:n{#2}} -} -\def_long_new:NNn \tlist_compare:nx 1{ - \tlist_compare:xx{\exp_not:n{#1}} -} -\def_long_new:NNn \tlist_compare:xn 2{ - \tlist_compare:xx{#1}{\exp_not:n{#2}} -} -\def_long_new:NNn \tlist_compare:no 2{ - \tlist_compare:xx{\exp_not:n{#1}}{\exp_not:n\exp_after:NN{#2}} -} -\def_long_new:NNn \tlist_compare:on 2{ - \tlist_compare:xx{\exp_not:n\exp_after:NN{#1}}{\exp_not:n{#2}} -} -\def_long_new:NNn \tlist_compare:oo 2{ - \tlist_compare:xx{\exp_not:n\exp_after:NN{#1}}{\exp_not:n\exp_after:NN{#2}} -} -\def_long_new:NNn \tlist_compare:xo 2{ - \tlist_compare:xx{#1}{\exp_not:n\exp_after:NN{#2}} -} -\def_long_new:NNn \tlist_compare:ox 2{ - \tlist_compare:xx{\exp_not:n\exp_after:NN{#1}}{\exp_not:n{#2}} -} -\def:Npn \tmp:w #1{ - \def_long_new:cNx {tlist_if_eq_p:#1} 2{ - \exp_not:N \if_num:w - \exp_after:NN \exp_not:N \cs:w tlist_compare:#1\cs_end:{##1}{##2} - \exp_not:n{ =\c_zero \c_true \else: \c_false \fi: } - } - \def_long_test_function_new:npx{tlist_if_eq:#1}##1##2{ - \exp_not:N \if_num:w - \exp_after:NN \exp_not:N \cs:w tlist_compare:#1\cs_end:{##1}{##2} - \exp_not:n{ =\c_zero } - } -} -\tmp:w{xx} \tmp:w{nn} \tmp:w{oo} \tmp:w{xn} \tmp:w{nx} -\tmp:w{on} \tmp:w{no} \tmp:w{xo} \tmp:w{ox} -\cs_if_really_free:cT{pdf_strcmp:D}{ - \def_long_test_function:npn{tlist_if_eq:nn}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:n{#1}} - \tlp_set:Nx \l_testb_tlp {\exp_not:n{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:no}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:n{#1}} - \tlp_set:Nx \l_testb_tlp {\exp_not:o{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:nx}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:n{#1}} - \tlp_set:Nx \l_testb_tlp {#2} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:on}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:o{#1}} - \tlp_set:Nx \l_testb_tlp {\exp_not:n{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:oo}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:o{#1}} - \tlp_set:Nx \l_testb_tlp {\exp_not:o{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:ox}#1#2{ - \tlp_set:Nx \l_testa_tlp {\exp_not:o{#1}} - \tlp_set:Nx \l_testb_tlp {#2} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:xn}#1#2{ - \tlp_set:Nx \l_testa_tlp {#1} - \tlp_set:Nx \l_testb_tlp {\exp_not:n{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:xo}#1#2{ - \tlp_set:Nx \l_testa_tlp {#1} - \tlp_set:Nx \l_testb_tlp {\exp_not:o{#2}} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } - \def_long_test_function:npn{tlist_if_eq:xx}#1#2{ - \tlp_set:Nx \l_testa_tlp {#1} - \tlp_set:Nx \l_testb_tlp {#2} - \if_meaning:NN\l_testa_tlp \l_testb_tlp - } -} -\def_long:Npn \tlp_if_in:NnTF #1#2{ - \def_long:Npn\tmp:w ##1 #2 ##2\q_stop{ - \quark_if_no_value:nFT{##2} - } - \exp_after:NN \tmp:w #1 #2 \q_no_value \q_stop -} -\def_new:Npn \tlp_if_in:cnTF {\exp_args:Nc\tlp_if_in:NnTF} -\def_long:Npn \tlp_if_in:NnT #1#2{ - \def_long:Npn\tmp:w ##1 #2 ##2\q_stop{ - \quark_if_no_value:nF{##2} - } - \exp_after:NN \tmp:w #1 #2 \q_no_value \q_stop -} -\def_new:Npn \tlp_if_in:cnT {\exp_args:Nc\tlp_if_in:NnT} -\def_long:Npn \tlp_if_in:NnF #1#2{ - \def_long:Npn\tmp:w ##1 #2 ##2\q_stop{ - \quark_if_no_value:nT{##2} - } - \exp_after:NN \tmp:w #1 #2 \q_no_value \q_stop -} -\def_new:Npn \tlp_if_in:cnF {\exp_args:Nc\tlp_if_in:NnF} -\def_long_new:Npn \tlist_if_in:nnTF #1#2{ - \def_long:Npn\tmp:w ##1 #2 ##2\q_stop{ - \quark_if_no_value:nFT{##2} - } - \tmp:w #1 #2 \q_no_value \q_stop -} -\def_new:Npn \tlist_if_in:onTF {\exp_args:No\tlist_if_in:nnTF} -\tlp_new:Nn\l_tlp_replace_tlp{} -\def_long_new:NNn \tlp_replace_in_aux:NNnn 4{ - \def_long:Npn \tmp:w ##1#3##2\q_stop{ - \quark_if_no_value:nF{##2} - { - \tlp_set:Nx\l_tlp_replace_tlp{\exp_not:o{\use_none:n##1#4}} - \def_long:Npn \tmp:w ####1#3\q_no_value{ - \tlp_put_right:Nx \l_tlp_replace_tlp {\exp_not:o{\use_none:n ####1}} - } - \tmp:w \q_mark ##2 - } - #1#2\l_tlp_replace_tlp - } - \use_arg_i:n{\exp_after:NN \tmp:w\exp_after:NN\q_mark} - #2#3 \q_no_value\q_stop -} -\def_new:Npn \tlp_replace_in:Nnn {\tlp_replace_in_aux:NNnn \tlp_set_eq:NN} -\def_new:Npn \tlp_replace_in:cnn{\exp_args:Nc\tlp_replace_in:Nnn} -\def_new:Npn \tlp_greplace_in:Nnn {\tlp_replace_in_aux:NNnn \tlp_gset_eq:NN} -\def_new:Npn \tlp_greplace_in:cnn{\exp_args:Nc\tlp_greplace_in:Nnn} -\def_long:NNn \tlp_replace_all_in_aux:NNnn 4{ - \tlp_clear:N \l_tlp_replace_tlp - \def_long:Npn \tmp:w ##1#3##2\q_stop{ - \quark_if_no_value:nTF{##2} - { - \tlp_put_right:Nx \l_tlp_replace_tlp {\exp_not:o{\use_none:n##1}} - } - { - \tlp_put_right:Nx \l_tlp_replace_tlp {\exp_not:o{\use_none:n##1 #4}} - \tmp:w \q_mark##2 \q_stop - } - } - \use_arg_i:n{\exp_after:NN \tmp:w\exp_after:NN\q_mark} - #2#3 \q_no_value\q_stop - #1#2\l_tlp_replace_tlp -} -\def_new:Npn \tlp_replace_all_in:Nnn { - \tlp_replace_all_in_aux:NNnn \tlp_set_eq:NN} -\def_new:Npn \tlp_replace_all_in:cnn{\exp_args:Nc\tlp_replace_all_in:Nnn} -\def_new:Npn \tlp_greplace_all_in:Nnn { - \tlp_replace_all_in_aux:NNnn \tlp_gset_eq:NN} -\def_new:Npn \tlp_greplace_all_in:cnn{\exp_args:Nc\tlp_greplace_all_in:Nnn} -\def_long_new:NNn \tlp_remove_in:Nn 2{\tlp_replace_in:Nnn #1{#2}{}} -\def_long_new:NNn \tlp_gremove_in:Nn 2{\tlp_greplace_in:Nnn #1{#2}{}} -\def_new:Npn \tlp_remove_in:cn{\exp_args:Nc\tlp_remove_in:Nn} -\def_new:Npn \tlp_gremove_in:cn{\exp_args:Nc\tlp_gremove_in:Nn} -\def_long_new:Npn \tlp_remove_all_in:Nn #1#2{ - \tlp_replace_all_in:Nnn #1{#2}{} -} -\def_long_new:Npn \tlp_gremove_all_in:Nn #1#2{ - \tlp_greplace_all_in:Nnn #1{#2}{} -} -\def_new:Npn \tlp_remove_all_in:cn{\exp_args:Nc\tlp_remove_all_in:Nn} -\def_new:Npn \tlp_gremove_all_in:cn{\exp_args:Nc\tlp_gremove_all_in:Nn} -\def_long_new:Npn \tlist_head:n #1{\tlist_head:w #1\q_nil} -\let_new:NN \tlist_head_i:n \tlist_head:n -\def_long_new:Npn \tlist_tail:n #1{\tlist_tail:w #1\q_nil} -\def_new:Npn \tlist_tail:f {\exp_args:Nf \tlist_tail:n} -\def_long_new:Npn \tlist_head_iii:n #1{\tlist_head_iii:w #1\q_nil} -\def_new:Npn \tlist_head_iii:f {\exp_args:Nf \tlist_head_iii:n} -\let_new:NN \tlist_head:w \use_arg_i_delimit_by_q_nil:nw -\def_long_new:Npn \tlist_tail:w #1#2\q_nil{#2} -\def_long_new:Npn \tlist_head_iii:w #1#2#3#4\q_nil{#1#2#3} -\def_long_new:Npn \tlist_if_head_eq_meaning_p:nN #1#2{ - \exp_after:NN \if_meaning:NN \tlist_head:w #1\q_nil#2 - \c_true - \else: - \c_false - \fi: -} -\def_long_test_function_new:npn {tlist_if_head_eq_meaning:nN}#1#2{ - \if:w \tlist_if_head_eq_meaning_p:nN{#1}#2} -\def_long_new:Npn \tlist_if_head_eq_charcode_p:nN #1#2{ - \exp_after:NN\if_charcode:w \exp_after:NN\exp_not:N - \tlist_head:w #1\q_nil\exp_not:N#2 - \c_true - \else: - \c_false - \fi: -} -\def_long_test_function_new:npn {tlist_if_head_eq_charcode:nN}#1#2{ - \if:w\tlist_if_head_eq_charcode_p:nN{#1}#2} -\def_long_new:Npn \tlist_if_head_eq_charcode_p:fN #1#2{ - \exp_after:NN\if_charcode:w \tlist_head:w #1\q_nil\exp_not:N#2 - \c_true - \else: - \c_false - \fi: -} -\def_long_test_function_new:npn {tlist_if_head_eq_charcode:fN}#1#2{ - \if:w\tlist_if_head_eq_charcode_p:fN{#1}#2} -\def_long_new:Npn \tlist_if_head_eq_catcode_p:nN #1#2{ - \exp_after:NN\if_charcode:w \exp_after:NN\exp_not:N - \tlist_head:w #1\q_nil\exp_not:N#2 - \c_true - \else: - \c_false - \fi: -} -\def_long_test_function_new:npn {tlist_if_head_eq_catcode:nN}#1#2{ - \if:w\tlist_if_head_eq_catcode_p:nN{#1}#2} -\def_long_new:Npn \tlist_reverse:n #1{ - \tlist_reverse_aux:nN {} #1 \q_recursion_tail\q_recursion_stop -} -\def_long_new:Npn \tlist_reverse_aux:nN #1#2{ - \quark_if_recursion_tail_stop_do:nn {#2}{ #1 } - \tlist_reverse_aux:nN {#2#1} -} -\RequirePackage{l3expan} -\RequirePackage{l3num}\par -%% -%% -%% End of file `l3tlp.sty'. |