summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/l3skip.sty')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3skip.sty111
1 files changed, 37 insertions, 74 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty b/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty
index c9e6836ca2b..20f3c09ebcd 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3skip.sty
@@ -14,7 +14,7 @@
%% Do not distribute a modified version of this file.
%%
%% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project
-%% (C) 2012 The LaTeX3 Project
+%% (C) 2012,2013 The 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
@@ -47,7 +47,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{l3bootstrap}
-\GetIdInfo$Id: l3skip.dtx 4260 2012-11-04 17:20:25Z joseph $
+\GetIdInfo$Id: l3skip.dtx 4444 2013-01-13 20:27:20Z bruno $
{L3 Dimensions and skips}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -77,14 +77,8 @@
{ \dim_if_exist:NTF #1 { \dim_gzero:N #1 } { \dim_new:N #1 } }
\cs_generate_variant:Nn \dim_zero_new:N { c }
\cs_generate_variant:Nn \dim_gzero_new:N { c }
-\cs_new_eq:NN \dim_if_exist:NTF \cs_if_exist:NTF
-\cs_new_eq:NN \dim_if_exist:NT \cs_if_exist:NT
-\cs_new_eq:NN \dim_if_exist:NF \cs_if_exist:NF
-\cs_new_eq:NN \dim_if_exist_p:N \cs_if_exist_p:N
-\cs_new_eq:NN \dim_if_exist:cTF \cs_if_exist:cTF
-\cs_new_eq:NN \dim_if_exist:cT \cs_if_exist:cT
-\cs_new_eq:NN \dim_if_exist:cF \cs_if_exist:cF
-\cs_new_eq:NN \dim_if_exist_p:c \cs_if_exist_p:c
+\prg_new_eq_conditional:NNn \dim_if_exist:N \cs_if_exist:N { TF , T , F , p }
+\prg_new_eq_conditional:NNn \dim_if_exist:c \cs_if_exist:c { TF , T , F , p }
\cs_new_protected:Npn \dim_set:Nn #1#2
{ #1 ~ \__dim_eval:w #2 \__dim_eval_end: }
\cs_new_protected:Npn \dim_gset:Nn { \tex_global:D \dim_set:Nn }
@@ -148,40 +142,40 @@
}
\prg_new_conditional:Npnn \dim_compare:n #1 { p , T , F , TF }
{
- \exp_after:wN \__dim_compare_aux:w \dim_use:N \__dim_eval:w #1
- \__prg_compare_error: \__dim_eval_end:
- \prg_return_true:
- \else:
- \prg_return_false:
- \fi:
+ \exp_after:wN \__dim_compare:w
+ \dim_use:N \__dim_eval:w #1 \__prg_compare_error:
}
-\exp_args:Nno \use:nn
- { \cs_new:Npn \__dim_compare_aux:w #1 }
- { \tl_to_str:n { pt } }
- #2 \__prg_compare_error:
+\cs_new:Npn \__dim_compare:w #1 \__prg_compare_error:
{
- \exp_after:wN \__dim_compare_aux:NNw #2 ?? \q_mark
- #1 pt #2
+ \exp_after:wN \if_false: \tex_romannumeral:D -`0
+ \__dim_compare:wNN #1 ? { = \__dim_compare_end:w \else: } \q_stop
}
-\cs_new:Npn \__dim_compare_aux:NNw #1#2#3 \q_mark
+\exp_args:Nno \use:nn
+ { \cs_new:Npn \__dim_compare:wNN #1 }
+ { \tl_to_str:n {pt} }
+ #2#3
{
- \use:c { __dim_compare_ #1 \if_meaning:w = #2 = \fi: :NNw }
- \__prg_compare_error:Nw #1
+ \if_meaning:w = #3
+ \use:c { __dim_compare_#2:w }
+ \fi:
+ #1 pt \exp_stop_f:
+ \prg_return_false:
+ \exp_after:wN \use_none_delimit_by_q_stop:w
+ \fi:
+ \reverse_if:N \if_dim:w #1 pt #2
+ \exp_after:wN \__dim_compare:wNN
+ \dim_use:N \__dim_eval:w #3
}
-\cs_new:cpn { __dim_compare_=:NNw } #1#2#3 =
- { \if_dim:w #3 = \__dim_eval:w }
-\cs_new:cpn { __dim_compare_<:NNw } #1#2#3 <
- { \if_dim:w #3 < \__dim_eval:w }
-\cs_new:cpn { __dim_compare_>:NNw } #1#2#3 >
- { \if_dim:w #3 > \__dim_eval:w }
-\cs_new:cpn { __dim_compare_==:NNw } #1#2#3 ==
- { \if_dim:w #3 = \__dim_eval:w }
-\cs_new:cpn { __dim_compare_!=:NNw } #1#2#3 !=
- { \reverse_if:N \if_dim:w #3 = \__dim_eval:w }
-\cs_new:cpn { __dim_compare_<=:NNw } #1#2#3 <=
- { \reverse_if:N \if_dim:w #3 > \__dim_eval:w }
-\cs_new:cpn { __dim_compare_>=:NNw } #1#2#3 >=
- { \reverse_if:N \if_dim:w #3 < \__dim_eval:w }
+\cs_new:cpn { __dim_compare_ ! :w }
+ #1 \reverse_if:N #2 ! #3 = { #1 #2 = #3 }
+\cs_new:cpn { __dim_compare_ = :w }
+ #1 \__dim_eval:w = { #1 \__dim_eval:w }
+\cs_new:cpn { __dim_compare_ < :w }
+ #1 \reverse_if:N #2 < #3 = { #1 #2 > #3 }
+\cs_new:cpn { __dim_compare_ > :w }
+ #1 \reverse_if:N #2 > #3 = { #1 #2 < #3 }
+\cs_new:Npn \__dim_compare_end:w #1 \prg_return_false: #2 \q_stop
+ { #1 \prg_return_false: \else: \prg_return_true: \fi: }
\cs_new:Npn \dim_case:nnn #1
{
\tex_romannumeral:D
@@ -305,14 +299,8 @@
{ \skip_if_exist:NTF #1 { \skip_gzero:N #1 } { \skip_new:N #1 } }
\cs_generate_variant:Nn \skip_zero_new:N { c }
\cs_generate_variant:Nn \skip_gzero_new:N { c }
-\cs_new_eq:NN \skip_if_exist:NTF \cs_if_exist:NTF
-\cs_new_eq:NN \skip_if_exist:NT \cs_if_exist:NT
-\cs_new_eq:NN \skip_if_exist:NF \cs_if_exist:NF
-\cs_new_eq:NN \skip_if_exist_p:N \cs_if_exist_p:N
-\cs_new_eq:NN \skip_if_exist:cTF \cs_if_exist:cTF
-\cs_new_eq:NN \skip_if_exist:cT \cs_if_exist:cT
-\cs_new_eq:NN \skip_if_exist:cF \cs_if_exist:cF
-\cs_new_eq:NN \skip_if_exist_p:c \cs_if_exist_p:c
+\prg_new_eq_conditional:NNn \skip_if_exist:N \cs_if_exist:N { TF , T , F , p }
+\prg_new_eq_conditional:NNn \skip_if_exist:c \cs_if_exist:c { TF , T , F , p }
\cs_new_protected:Npn \skip_set:Nn #1#2
{ #1 ~ \etex_glueexpr:D #2 \scan_stop: }
\cs_new_protected:Npn \skip_gset:Nn { \tex_global:D \skip_set:Nn }
@@ -400,14 +388,8 @@
{ \muskip_if_exist:NTF #1 { \muskip_gzero:N #1 } { \muskip_new:N #1 } }
\cs_generate_variant:Nn \muskip_zero_new:N { c }
\cs_generate_variant:Nn \muskip_gzero_new:N { c }
-\cs_new_eq:NN \muskip_if_exist:NTF \cs_if_exist:NTF
-\cs_new_eq:NN \muskip_if_exist:NT \cs_if_exist:NT
-\cs_new_eq:NN \muskip_if_exist:NF \cs_if_exist:NF
-\cs_new_eq:NN \muskip_if_exist_p:N \cs_if_exist_p:N
-\cs_new_eq:NN \muskip_if_exist:cTF \cs_if_exist:cTF
-\cs_new_eq:NN \muskip_if_exist:cT \cs_if_exist:cT
-\cs_new_eq:NN \muskip_if_exist:cF \cs_if_exist:cF
-\cs_new_eq:NN \muskip_if_exist_p:c \cs_if_exist_p:c
+\prg_new_eq_conditional:NNn \muskip_if_exist:N \cs_if_exist:N { TF , T , F , p }
+\prg_new_eq_conditional:NNn \muskip_if_exist:c \cs_if_exist:c { TF , T , F , p }
\cs_new_protected:Npn \muskip_set:Nn #1#2
{ #1 ~ \etex_muexpr:D #2 \scan_stop: }
\cs_new_protected:Npn \muskip_gset:Nn { \tex_global:D \muskip_set:Nn }
@@ -443,25 +425,6 @@
\muskip_new:N \l_tmpb_muskip
\muskip_new:N \g_tmpa_muskip
\muskip_new:N \g_tmpb_muskip
-\prg_new_conditional:Npnn \skip_if_infinite_glue:n #1 { p , T , F , TF }
- { \skip_if_finite:nTF {#1} \prg_return_false: \prg_return_true: }
-\cs_new_eq:NN \prg_case_dim:nnn \dim_case:nnn
-\cs_new_eq:NN \dim_eval:w \__dim_eval:w
-\cs_new_eq:NN \dim_eval_end: \__dim_eval_end:
-\cs_new_protected_nopar:Npn \dim_set_max:Nn
- { \__dim_set_max:NNNn < \dim_set:Nn }
-\cs_new_protected_nopar:Npn \dim_gset_max:Nn
- { \__dim_set_max:NNNn < \dim_gset:Nn }
-\cs_new_protected_nopar:Npn \dim_set_min:Nn
- { \__dim_set_max:NNNn > \dim_set:Nn }
-\cs_new_protected_nopar:Npn \dim_gset_min:Nn
- { \__dim_set_max:NNNn > \dim_gset:Nn }
-\cs_new_protected:Npn \__dim_set_max:NNNn #1#2#3#4
- { \dim_compare:nNnT {#3} #1 {#4} { #2 #3 {#4} } }
-\cs_generate_variant:Nn \dim_set_max:Nn { c }
-\cs_generate_variant:Nn \dim_gset_max:Nn { c }
-\cs_generate_variant:Nn \dim_set_min:Nn { c }
-\cs_generate_variant:Nn \dim_gset_min:Nn { c }
%%
%%
%% End of file `l3skip.sty'.