summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/expl3/l3quark.sty
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-29 11:23:34 +0000
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-29 11:23:34 +0000
commitef285e6a49a93af098150d0b3125a34d3477ba55 (patch)
tree124a55595390d358e0cda8ae26f78e9a263e9a21 /Master/texmf-dist/tex/latex/expl3/l3quark.sty
parente7477f362711cc9d05dfa1ee71301fb34cce2d94 (diff)
expl3 update (2008/06/20)
git-svn-id: svn://tug.org/texlive/trunk@9869 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.sty46
1 files changed, 45 insertions, 1 deletions
diff --git a/Master/texmf-dist/tex/latex/expl3/l3quark.sty b/Master/texmf-dist/tex/latex/expl3/l3quark.sty
index fd88bfa9cfa..c766400bcbb 100644
--- a/Master/texmf-dist/tex/latex/expl3/l3quark.sty
+++ b/Master/texmf-dist/tex/latex/expl3/l3quark.sty
@@ -48,8 +48,10 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3names}
-\GetIdInfo$Id: l3quark.dtx 573 2006-08-21 20:59:37Z morten $
+\GetIdInfo$Id: l3quark.dtx 705 2007-12-02 22:14:25Z morten $
{L3 Experimental Quark Commands}
+\ProvidesExplPackage
+ {\filename}{\filedate}{\fileversion}{\filedescription}
\RequirePackage{l3expan}\par
\def_new:Npn \quark_new:N #1{\tlp_new:Nn #1{#1}}
\quark_new:N \q_stop
@@ -57,6 +59,48 @@
\quark_new:N \q_nil
\quark_new:N\q_error
\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
+ \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
+ \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
+ \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
+ \quark_if_recursion_tail_aux:w #1?\q_nil\q_recursion_tail
+ \exp_after:NN \use_arg_i_delimit_by_q_recursion_stop:nw
+ \else:
+ \exp_after:NN\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
+ \else:
+ \exp_after:NN\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{