diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/expl3/l3quark.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/expl3/l3quark.sty | 117 |
1 files changed, 98 insertions, 19 deletions
diff --git a/Master/texmf-dist/tex/latex/expl3/l3quark.sty b/Master/texmf-dist/tex/latex/expl3/l3quark.sty index a4bb2fbf985..fd88bfa9cfa 100644 --- a/Master/texmf-dist/tex/latex/expl3/l3quark.sty +++ b/Master/texmf-dist/tex/latex/expl3/l3quark.sty @@ -15,10 +15,41 @@ %% Do not distribute a modified version of this file. %% %% -%% File: l3quark.dtx Copyright (C) 1990-1998 LaTeX3 project -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{l3quark} - [1998/05/20 v1.0e L3 Experimental Quark Commands] +%% File: l3quark.dtx Copyright (C) 1990-2006 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: l3quark.dtx 573 2006-08-21 20:59:37Z morten $ + {L3 Experimental Quark Commands} \RequirePackage{l3expan}\par \def_new:Npn \quark_new:N #1{\tlp_new:Nn #1{#1}} \quark_new:N \q_stop @@ -26,21 +57,69 @@ \quark_new:N \q_nil \quark_new:N\q_error \quark_new:N\q_mark -\def_new:Npn \quark_if_no_value:NTF #1{ - \if_meaning:NN\q_no_value#1 - \exp_after:NN\use_choice_i:nn - \else: \exp_after:NN\use_choice_ii:nn \fi:} -\def_new:Npn \quark_if_no_value:NF #1{\quark_if_no_value:NTF {#1}\use_noop:} -\def_new:Npn \quark_if_no_value:nTF #1{\tlp_gset:Nn \g_testa_tlp {#1} - \quark_if_no_value:NTF\g_testa_tlp} -\def_new:Npn \quark_if_no_value:nF #1{\quark_if_no_value:nTF {#1}\use_noop:} -\def_new:Npn \quark_if_no_value:nT #1#2{\quark_if_no_value:nTF {#1} - {#2}\use_noop:} -\def_new:Npn\quark_if_nil:NTF#1{ - \if_meaning:NN#1\q_nil - \exp_after:NN\use_choice_i:nn - \else: - \exp_after:NN\use_choice_ii:nn\fi:} +\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_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 + \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 + \fi: +} +\def_long_new:Npn \quark_if_nil_p:N #1{ + \if_meaning:NN \q_nil #1 \c_true + \else: \c_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 + \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: + } +} +\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} %% %% %% End of file `l3quark.sty'. |