diff options
author | Karl Berry <karl@freefriends.org> | 2009-06-09 23:31:15 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-06-09 23:31:15 +0000 |
commit | 215b9a864d5829070bdc66ba736986eb72e5143e (patch) | |
tree | fe0882c81fc4ec945cee4b512f72eaa21ea5f791 /Master/texmf-dist/tex/latex/expl3/l3quark.sty | |
parent | df90ec06321940c2f066b05e12f1b5ab099105da (diff) |
expl3 1407 (9jun09)
git-svn-id: svn://tug.org/texlive/trunk@13686 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/expl3/l3quark.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/expl3/l3quark.sty | 143 |
1 files changed, 63 insertions, 80 deletions
diff --git a/Master/texmf-dist/tex/latex/expl3/l3quark.sty b/Master/texmf-dist/tex/latex/expl3/l3quark.sty index 1b44ce2ab2d..8302f07306a 100644 --- a/Master/texmf-dist/tex/latex/expl3/l3quark.sty +++ b/Master/texmf-dist/tex/latex/expl3/l3quark.sty @@ -15,7 +15,7 @@ %% Do not distribute a modified version of this file. %% %% -%% File: l3quark.dtx Copyright (C) 1990-2006 LaTeX3 project +%% File: l3quark.dtx Copyright (C) 1990-2009 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 @@ -33,7 +33,7 @@ %% %% The development version of the bundle can be found at %% -%% http://www.latex-project.org/cgi-bin/cvsweb.cgi/ +%% http://www.latex-project.org/svnroot/experimental/trunk/ %% %% for those people who are interested. %% @@ -48,12 +48,12 @@ %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} -\GetIdInfo$Id: l3quark.dtx 761 2008-08-04 21:35:13Z morten $ +\GetIdInfo$Id: l3quark.dtx 1365 2009-05-31 17:26:17Z mittelba $ {L3 Experimental Quark Commands} \ProvidesExplPackage {\filename}{\filedate}{\fileversion}{\filedescription} -\RequirePackage{l3expan}\par -\def_new:Npn \quark_new:N #1{\tlp_new:Nn #1{#1}} +\package_check_loaded_expl: +\cs_new_nopar:Npn \quark_new:N #1{\tl_new:Nn #1{#1}} \quark_new:N \q_stop \quark_new:N \q_no_value \quark_new:N \q_nil @@ -61,109 +61,92 @@ \quark_new:N\q_mark \quark_new:N\q_recursion_tail \quark_new:N\q_recursion_stop -\def_long_new:Npn \quark_if_recursion_tail_stop:n #1 { - \exp_after:NN\if_meaning:NN +\cs_new:Npn \quark_if_recursion_tail_stop:n #1 { + \exp_after:wN\if_meaning:w \quark_if_recursion_tail_aux:w #1?\q_nil\q_recursion_tail\q_recursion_tail - \exp_after:NN \use_none_delimit_by_q_recursion_stop:w + \exp_after:wN \use_none_delimit_by_q_recursion_stop:w \fi: } -\def_long_new:Npn \quark_if_recursion_tail_stop:N #1 { - \if_meaning:NN#1\q_recursion_tail - \exp_after:NN \use_none_delimit_by_q_recursion_stop:w +\cs_new:Npn \quark_if_recursion_tail_stop:N #1 { + \if_meaning:w#1\q_recursion_tail + \exp_after:wN \use_none_delimit_by_q_recursion_stop:w \fi: } -\def_new:Npn \quark_if_recursion_tail_stop:o{ - \exp_args:No\quark_if_recursion_tail_stop:n -} -\def_long_new:Npn \quark_if_recursion_tail_stop_do:nn #1#2 { - \exp_after:NN\if_meaning:NN +\cs_generate_variant:Nn \quark_if_recursion_tail_stop:n {o} +\cs_new:Npn \quark_if_recursion_tail_stop_do:nn #1#2 { + \exp_after:wN\if_meaning:w \quark_if_recursion_tail_aux:w #1?\q_nil\q_recursion_tail\q_recursion_tail - \exp_after:NN \use_arg_i_delimit_by_q_recursion_stop:nw + \exp_after:wN \use_i_delimit_by_q_recursion_stop:nw \else: - \exp_after:NN\use_none:n + \exp_after:wN\use_none:n \fi: {#2} } -\def_long_new:Npn \quark_if_recursion_tail_stop_do:Nn #1#2 { - \if_meaning:NN #1\q_recursion_tail - \exp_after:NN \use_arg_i_delimit_by_q_recursion_stop:nw +\cs_new:Npn \quark_if_recursion_tail_stop_do:Nn #1#2 { + \if_meaning:w #1\q_recursion_tail + \exp_after:wN \use_i_delimit_by_q_recursion_stop:nw \else: - \exp_after:NN\use_none:n + \exp_after:wN\use_none:n \fi: {#2} } -\def_new:Npn \quark_if_recursion_tail_stop_do:on{ - \exp_args:No\quark_if_recursion_tail_stop_do:nn -} -\def_long_new:Npn \quark_if_recursion_tail_aux:w - #1#2\q_nil\q_recursion_tail{#1} -\def_long_new:Npn\use_none_delimit_by_q_recursion_stop:w - #1\q_recursion_stop {} -\def_long_new:Npn\use_arg_i_delimit_by_q_recursion_stop:nw - #1#2\q_recursion_stop {#1} -\def_long_test_function_new:npn {quark_if_no_value:N} #1 { - \if_meaning:NN\q_no_value#1} -\def_long_new:Npn \quark_if_no_value_p:N #1{ - \if_meaning:NN \q_no_value #1 \c_true - \else: \c_false \fi: +\cs_generate_variant:Nn \quark_if_recursion_tail_stop_do:nn {on} +\cs_new:Npn \quark_if_recursion_tail_aux:w #1#2 \q_nil \q_recursion_tail {#1} +\prg_new_conditional:Nnn \quark_if_no_value:N {p,TF,T,F} { + \if_meaning:w \q_no_value #1 + \prg_return_true: \else: \prg_return_false: \fi: } -\cs_if_really_free:cTF{pdf_strcmp:D}{ - \def_long_new:Npn \quark_if_no_value_p:n #1{ - \if:w \exp_args:No \str_if_eq_var_p:nf - {\token_to_string:N\q_no_value\space} - {\tlist_to_str:n{#1}} - \c_true - \else: - \c_false +\cs_if_exist:cTF {pdf_strcmp:D} +{ + \prg_new_conditional:Nnn \quark_if_no_value:n {p,TF,T,F} { + \if_num:w \pdf_strcmp:D + {\exp_not:N \q_no_value} + {\exp_not:n{#1}} = \c_zero + \prg_return_true: \else: \prg_return_false: \fi: } } { - \def_long_new:Npn \quark_if_no_value_p:n #1{ - \if_num:w - \pdf_strcmp:D {\exp_not:N \q_no_value}{\exp_not:n{#1}}=\c_zero - \c_true \else: \c_false \fi: - } -} -\def_long_test_function_new:npn {quark_if_no_value:n} #1 { - \if:w \quark_if_no_value_p:n{#1}} -\def_long:Npn \quark_if_no_value:nFT #1{ - \if:w \quark_if_no_value_p:n{#1} - \exp_after:NN\use_arg_ii:nn - \else: - \exp_after:NN\use_arg_i:nn + \prg_new_conditional:Nnn \quark_if_no_value:n {p,TF,T,F} { + \exp_args:NNo + \if_predicate:w \str_if_eq_var_p:nf + {\token_to_str:N\q_no_value\iow_space:} + {\tl_to_str:n{#1}} + \prg_return_true: \else: \prg_return_false: \fi: + } } -\def_long_new:Npn \quark_if_nil_p:N #1{ - \if_meaning:NN \q_nil #1 \c_true - \else: \c_false \fi: +\prg_new_conditional:Nnn \quark_if_nil:N {p,TF,T,F} { + \if_meaning:w \q_nil #1 \prg_return_true: \else: \prg_return_false: \fi: } -\def_long_test_function_new:npn {quark_if_nil:N}#1{ - \if_meaning:NN\q_nil#1} -\cs_if_really_free:cTF{pdf_strcmp:D}{ - \def_long_new:Npn \quark_if_nil_p:n #1{ - \if:w \exp_args:No \str_if_eq_var_p:nf - {\token_to_string:N\q_nil\space} - {\tlist_to_str:n{#1}} - \c_true - \else: - \c_false +\cs_if_exist:cTF {pdf_strcmp:D} { + \prg_new_conditional:Nnn \quark_if_nil:n {p,TF,T,F} { + \if_num:w \pdf_strcmp:D + {\exp_not:N \q_nil} + {\exp_not:n{#1}} = \c_zero + \prg_return_true: \else: \prg_return_false: \fi: } } { - \def_long_new:Npn \quark_if_nil_p:n #1{ - \if_num:w - \pdf_strcmp:D {\exp_not:N \q_nil}{\exp_not:n{#1}}=\c_zero - \c_true \else: \c_false \fi: + \prg_new_conditional:Nnn \quark_if_nil:n {p,TF,T,F} { + \exp_args:NNo + \if_predicate:w \str_if_eq_var_p:nf + {\token_to_str:N\q_nil\iow_space:} + {\tl_to_str:n{#1}} + \prg_return_true: \else: \prg_return_false: + \fi: } } -\def_long_test_function_new:npn {quark_if_nil:n} #1 { - \if:w \quark_if_nil_p:n{#1}} -\def_new:Npn \quark_if_nil_p:o{\exp_args:No\quark_if_nil_p:n} -\def_new:Npn \quark_if_nil:oTF{\exp_args:No\quark_if_nil:nTF} -\def_new:Npn \quark_if_nil:oT {\exp_args:No\quark_if_nil:nT} -\def_new:Npn \quark_if_nil:oF {\exp_args:No\quark_if_nil:nF} +\cs_generate_variant:Nn \quark_if_nil_p:n {V} +\cs_generate_variant:Nn \quark_if_nil:nTF {V} +\cs_generate_variant:Nn \quark_if_nil:nT {V} +\cs_generate_variant:Nn \quark_if_nil:nF {V} +\cs_generate_variant:Nn \quark_if_nil_p:n {o} +\cs_generate_variant:Nn \quark_if_nil:nTF {o} +\cs_generate_variant:Nn \quark_if_nil:nT {o} +\cs_generate_variant:Nn \quark_if_nil:nF {o} + %% %% %% End of file `l3quark.sty'. |