summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-02-23 21:54:14 +0000
committerKarl Berry <karl@freefriends.org>2018-02-23 21:54:14 +0000
commit87d871a3d83784d48b71fa3712b9f525bfc710d2 (patch)
treef12f9ffdc697b5af9ee14c06874ec0e2f72c9f94 /Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
parentccc63194ce7813106830c8a8755c54d89de831b4 (diff)
l3 (22feb18)
git-svn-id: svn://tug.org/texlive/trunk@46720 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex2287
1 files changed, 1355 insertions, 932 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
index 7a09140568e..9aa19a4ba78 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
@@ -29,6 +29,7 @@
%% l3fp-traps.dtx (with options: `package')
%% l3fp-round.dtx (with options: `package')
%% l3fp-parse.dtx (with options: `package')
+%% l3fp-assign.dtx (with options: `package')
%% l3fp-logic.dtx (with options: `package')
%% l3fp-basics.dtx (with options: `package')
%% l3fp-extended.dtx (with options: `package')
@@ -36,20 +37,19 @@
%% l3fp-trig.dtx (with options: `package')
%% l3fp-convert.dtx (with options: `package')
%% l3fp-random.dtx (with options: `package')
-%% l3fp-assign.dtx (with options: `package')
%% l3sort.dtx (with options: `package')
%% l3tl-build.dtx (with options: `package')
%% l3tl-analysis.dtx (with options: `package')
%% l3regex.dtx (with options: `package')
%% l3box.dtx (with options: `package')
%% l3coffins.dtx (with options: `package')
-%% l3color.dtx (with options: `package')
+%% l3color-base.dtx (with options: `package')
%% l3sys.dtx (with options: `package')
%% l3deprecation.dtx (with options: `package')
%% l3candidates.dtx (with options: `package')
%% l3luatex.dtx (with options: `package,tex')
%%
-%% Copyright (C) 1990-2017 The LaTeX3 Project
+%% Copyright (C) 1990-2018 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
@@ -62,7 +62,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx Copyright (C) 1990-2017 The LaTeX3 Project
-\def\ExplFileDate{2017/12/16}%
+\def\ExplFileDate{2018/02/21}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -352,7 +352,7 @@
\tex_endlinechar:D = 32 \scan_stop:
\bool_set_true:N \l__kernel_expl_bool
}
-%% File: l3names.dtx Copyright (C) 1990-2017 The LaTeX3 project
+%% File: l3names.dtx Copyright (C) 1990-2018 The LaTeX3 project
\let \tex_global:D \global
\let \tex_let:D \let
\begingroup
@@ -936,8 +936,11 @@
\__kernel_primitive:NN \aligntab \luatex_aligntab:D
\__kernel_primitive:NN \attribute \luatex_attribute:D
\__kernel_primitive:NN \attributedef \luatex_attributedef:D
+ \__kernel_primitive:NN \automaticdiscretionary \luatex_automaticdiscretionary:D
+ \__kernel_primitive:NN \automatichyphenmode \luatex_automatichyphenmode:D
\__kernel_primitive:NN \automatichyphenpenalty \luatex_automatichyphenpenalty:D
\__kernel_primitive:NN \begincsname \luatex_begincsname:D
+ \__kernel_primitive:NN \breakafterdirmode \luatex_breakafterdirmode:D
\__kernel_primitive:NN \catcodetable \luatex_catcodetable:D
\__kernel_primitive:NN \clearmarks \luatex_clearmarks:D
\__kernel_primitive:NN \crampeddisplaystyle \luatex_crampeddisplaystyle:D
@@ -952,6 +955,7 @@
\__kernel_primitive:NN \etokspre \luatex_etokspre:D
\__kernel_primitive:NN \explicithyphenpenalty \luatex_explicithyphenpenalty:D
\__kernel_primitive:NN \expanded \luatex_expanded:D
+ \__kernel_primitive:NN \explicitdiscretionary \luatex_explicitdiscretionary:D
\__kernel_primitive:NN \firstvalidlanguage \luatex_firstvalidlanguage:D
\__kernel_primitive:NN \fontid \luatex_fontid:D
\__kernel_primitive:NN \formatname \luatex_formatname:D
@@ -968,15 +972,17 @@
\__kernel_primitive:NN \luaescapestring \luatex_luaescapestring:D
\__kernel_primitive:NN \luafunction \luatex_luafunction:D
\__kernel_primitive:NN \luatexbanner \luatex_luatexbanner:D
- \__kernel_primitive:NN \luatexdatestamp \luatex_luatexdatestamp:D
\__kernel_primitive:NN \luatexrevision \luatex_luatexrevision:D
\__kernel_primitive:NN \luatexversion \luatex_luatexversion:D
+ \__kernel_primitive:NN \mathdelimitersmode \luatex_mathdelimitersmode:D
\__kernel_primitive:NN \mathdisplayskipmode \luatex_mathdisplayskipmode:D
\__kernel_primitive:NN \matheqnogapstep \luatex_matheqnogapstep:D
\__kernel_primitive:NN \mathnolimitsmode \luatex_mathnolimitsmode:D
\__kernel_primitive:NN \mathoption \luatex_mathoption:D
+ \__kernel_primitive:NN \mathpenaltiesmode \luatex_mathpenaltiesmode:D
\__kernel_primitive:NN \mathrulesfam \luatex_mathrulesfam:D
\__kernel_primitive:NN \mathscriptsmode \luatex_mathscriptsmode:D
+ \__kernel_primitive:NN \mathscriptboxmode \luatex_mathscriptboxmode:D
\__kernel_primitive:NN \mathstyle \luatex_mathstyle:D
\__kernel_primitive:NN \mathsurroundmode \luatex_mathsurroundmode:D
\__kernel_primitive:NN \mathsurroundskip \luatex_mathsurroundskip:D
@@ -995,9 +1001,11 @@
\__kernel_primitive:NN \pdfvariable \luatex_pdfvariable:D
\__kernel_primitive:NN \postexhyphenchar \luatex_postexhyphenchar:D
\__kernel_primitive:NN \posthyphenchar \luatex_posthyphenchar:D
+ \__kernel_primitive:NN \prebinoppenalty \luatex_prebinoppenalty:D
\__kernel_primitive:NN \predisplaygapfactor \luatex_predisplaygapfactor:D
\__kernel_primitive:NN \preexhyphenchar \luatex_preexhyphenchar:D
\__kernel_primitive:NN \prehyphenchar \luatex_prehyphenchar:D
+ \__kernel_primitive:NN \prerelpenalty \luatex_prerelpenalty:D
\__kernel_primitive:NN \savecatcodetable \luatex_savecatcodetable:D
\__kernel_primitive:NN \scantextokens \luatex_scantextokens:D
\__kernel_primitive:NN \setfontid \luatex_setfontid:D
@@ -1006,6 +1014,7 @@
\__kernel_primitive:NN \suppresslongerror \luatex_suppresslongerror:D
\__kernel_primitive:NN \suppressmathparerror \luatex_suppressmathparerror:D
\__kernel_primitive:NN \suppressoutererror \luatex_suppressoutererror:D
+ \__kernel_primitive:NN \suppressprimitiveerror \luatex_suppressprimitiveerror:D
\__kernel_primitive:NN \toksapp \luatex_toksapp:D
\__kernel_primitive:NN \tokspre \luatex_tokspre:D
\__kernel_primitive:NN \tpack \luatex_tpack:D
@@ -1182,6 +1191,8 @@
\__kernel_primitive:NN \Umathunderbarvgap \utex_underbarvgap:D
\__kernel_primitive:NN \Umathunderdelimiterbgap \utex_underdelimiterbgap:D
\__kernel_primitive:NN \Umathunderdelimitervgap \utex_underdelimitervgap:D
+ \__kernel_primitive:NN \Unosubscript \utex_Unosubscript:D
+ \__kernel_primitive:NN \Unosuperscript \utex_Unosuperscript:D
\__kernel_primitive:NN \Uoverdelimiter \utex_overdelimiter:D
\__kernel_primitive:NN \Uradical \utex_radical:D
\__kernel_primitive:NN \Uroot \utex_root:D
@@ -1390,7 +1401,7 @@
\tex_let:D \tex_middle:D \normalmiddle
\tex_let:D \tex_right:D \normalright
\tex_fi:D
-%% File: l3basics.dtx Copyright (C) 1990-2017 The LaTeX3 project
+%% File: l3basics.dtx Copyright (C) 1990-2018 The LaTeX3 project
\tex_let:D \if_true: \tex_iftrue:D
\tex_let:D \if_false: \tex_iffalse:D
\tex_let:D \or: \tex_or:D
@@ -1510,18 +1521,18 @@
\cs_set:Npn \use_none:nnnnnnn #1#2#3#4#5#6#7 { }
\cs_set:Npn \use_none:nnnnnnnn #1#2#3#4#5#6#7#8 { }
\cs_set:Npn \use_none:nnnnnnnnn #1#2#3#4#5#6#7#8#9 { }
-\cs_set_protected:Npn \__debug:TF #1#2 {#2}
+\cs_set_protected:Npn \__kernel_debug:TF #1#2 {#2}
\tex_ifodd:D \l@expl@enable@debug@bool
- \cs_set_protected:Npn \__debug:TF #1#2 {#1}
+ \cs_set_protected:Npn \__kernel_debug:TF #1#2 {#1}
\fi:
-\__debug:TF
+\__kernel_debug:TF
{
\cs_set_protected:Npn \debug_on:n #1
{
\exp_args:No \clist_map_inline:nn { \tl_to_str:n {#1} }
{
\cs_if_exist_use:cF { __debug_##1_on: }
- { \__msg_kernel_error:nnn { kernel } { debug } {##1} }
+ { \__kernel_msg_error:nnn { kernel } { debug } {##1} }
}
}
\cs_set_protected:Npn \debug_off:n #1
@@ -1529,23 +1540,23 @@
\exp_args:No \clist_map_inline:nn { \tl_to_str:n {#1} }
{
\cs_if_exist_use:cF { __debug_##1_off: }
- { \__msg_kernel_error:nnn { kernel } { debug } {##1} }
+ { \__kernel_msg_error:nnn { kernel } { debug } {##1} }
}
}
}
{
\cs_set_protected:Npn \debug_on:n #1
{
- \__msg_kernel_error:nnx { kernel } { enable-debug }
+ \__kernel_msg_error:nnx { kernel } { enable-debug }
{ \tl_to_str:n { \debug_on:n {#1} } }
}
\cs_set_protected:Npn \debug_off:n #1
{
- \__msg_kernel_error:nnx { kernel } { enable-debug }
+ \__kernel_msg_error:nnx { kernel } { enable-debug }
{ \tl_to_str:n { \debug_off:n {#1} } }
}
}
-\__debug:TF
+\__kernel_debug:TF
{
\cs_set_nopar:Npn \l__debug_suspended_tl { }
\cs_set_protected:Npn \debug_suspend:
@@ -1568,56 +1579,56 @@
\cs_set_protected:Npn \debug_suspend: { }
\cs_set_protected:Npn \debug_resume: { }
}
-\__debug:TF
+\__kernel_debug:TF
{
\exp_args:Nc \cs_set_protected:Npn { __debug_check-declarations_on: }
{
- \cs_set_protected:Npn \__debug_chk_var_exist:N ##1
+ \cs_set_protected:Npn \__kernel_chk_var_exist:N ##1
{
\__debug_suspended:T \use_none:nnn
\cs_if_exist:NF ##1
{
- \__msg_kernel_error:nnx { kernel } { non-declared-variable }
+ \__kernel_msg_error:nnx { kernel } { non-declared-variable }
{ \token_to_str:N ##1 }
}
}
- \cs_set_protected:Npn \__debug_chk_cs_exist:N ##1
+ \cs_set_protected:Npn \__kernel_chk_cs_exist:N ##1
{
\__debug_suspended:T \use_none:nnn
\cs_if_exist:NF ##1
{
- \__msg_kernel_error:nnx { kernel } { command-not-defined }
+ \__kernel_msg_error:nnx { kernel } { command-not-defined }
{ \token_to_str:N ##1 }
}
}
- \cs_set_protected:Npn \__debug_chk_var_scope:NN
+ \cs_set_protected:Npn \__kernel_chk_var_scope:NN
{
\__debug_suspended:T \use_none:nnn
\__debug_chk_var_scope_aux:NN
}
- \cs_set_protected:Npn \__debug_chk_var_local:N ##1
+ \cs_set_protected:Npn \__kernel_chk_var_local:N ##1
{
\__debug_suspended:T \use_none:nnnnn
- \__debug_chk_var_exist:N ##1
+ \__kernel_chk_var_exist:N ##1
\__debug_chk_var_scope_aux:NN l ##1
}
- \cs_set_protected:Npn \__debug_chk_var_global:N ##1
+ \cs_set_protected:Npn \__kernel_chk_var_global:N ##1
{
\__debug_suspended:T \use_none:nnnnn
- \__debug_chk_var_exist:N ##1
+ \__kernel_chk_var_exist:N ##1
\__debug_chk_var_scope_aux:NN g ##1
}
}
\exp_args:Nc \cs_set_protected:Npn { __debug_check-declarations_off: }
{
- \cs_set_protected:Npn \__debug_chk_var_exist:N ##1 { }
- \cs_set_protected:Npn \__debug_chk_cs_exist:N ##1 { }
- \cs_set_protected:Npn \__debug_chk_var_local:N ##1 { }
- \cs_set_protected:Npn \__debug_chk_var_global:N ##1 { }
- \cs_set_protected:Npn \__debug_chk_var_scope:NN ##1##2 { }
+ \cs_set_protected:Npn \__kernel_chk_var_exist:N ##1 { }
+ \cs_set_protected:Npn \__kernel_chk_cs_exist:N ##1 { }
+ \cs_set_protected:Npn \__kernel_chk_var_local:N ##1 { }
+ \cs_set_protected:Npn \__kernel_chk_var_global:N ##1 { }
+ \cs_set_protected:Npn \__kernel_chk_var_scope:NN ##1##2 { }
}
- \cs_set_protected:Npn \__debug_chk_cs_exist:c
- { \exp_args:Nc \__debug_chk_cs_exist:N }
+ \cs_set_protected:Npn \__kernel_chk_cs_exist:c
+ { \exp_args:Nc \__kernel_chk_cs_exist:N }
\tex_ifodd:D \l@expl@check@declarations@bool
\use:c { __debug_check-declarations_on: }
\else:
@@ -1625,7 +1636,7 @@
\fi:
}
{ }
-\__debug:TF
+\__kernel_debug:TF
{
\cs_set_protected:Npn \__debug_chk_var_scope_aux:NN #1#2
{ \exp_args:NNf \__debug_chk_var_scope_aux:Nn #1 { \cs_to_str:N #2 } }
@@ -1648,18 +1659,18 @@
\if:w #1 \scan_stop:
\cs_gset_nopar:Npn #1 {#2}
\else:
- \__msg_kernel_error:nnxxx { kernel } { local-global }
+ \__kernel_msg_error:nnxxx { kernel } { local-global }
{#1} {#2} { \iow_char:N \\ #3 }
\fi:
\fi:
}
}
{ }
-\__debug:TF
+\__kernel_debug:TF
{
\exp_args:Nc \cs_set_protected:Npn { __debug_check-expressions_on: }
{
- \cs_set:Npn \__debug_chk_expr:nNnN ##1##2
+ \cs_set:Npn \__kernel_chk_expr:nNnN ##1##2
{
\__debug_suspended:T { ##1 \use_none:nnnnnnn }
\exp_after:wN \__debug_chk_expr_aux:nNnN
@@ -1668,7 +1679,7 @@
}
}
\exp_args:Nc \cs_set_protected:Npn { __debug_check-expressions_off: }
- { \cs_set:Npn \__debug_chk_expr:nNnN ##1##2##3##4 {##1} }
+ { \cs_set:Npn \__kernel_chk_expr:nNnN ##1##2##3##4 {##1} }
\use:c { __debug_check-expressions_off: }
\cs_set:Npn \__debug_chk_expr_aux:nNnN #1#2#3#4
{
@@ -1679,22 +1690,22 @@
\__int_value:w #3 #2 #1 \tex_relax:D
}
{
- \__msg_kernel_expandable_error:nnnn
+ \__kernel_msg_expandable_error:nnnn
{ kernel } { expr } {#4} {#1}
}
#1
}
}
{ }
-\__debug:TF
+\__kernel_debug:TF
{
\exp_args:Nc \cs_set_protected:Npn { __debug_log-functions_on: }
{
- \cs_set_protected:Npn \__debug_log:x
+ \cs_set_protected:Npn \__kernel_debug_log:x
{ \__debug_suspended:T \use_none:nn \iow_log:x }
}
\exp_args:Nc \cs_set_protected:Npn { __debug_log-functions_off: }
- { \cs_set_protected:Npn \__debug_log:x { \use_none:n } }
+ { \cs_set_protected:Npn \__kernel_debug_log:x { \use_none:n } }
\tex_ifodd:D \l@expl@log@functions@bool
\use:c { __debug_log-functions_on: }
\else:
@@ -1702,7 +1713,7 @@
\fi:
}
{ }
-\__debug:TF
+\__kernel_debug:TF
{
\cs_set_protected:Npn \__debug_deprecation_on:
{ \g__debug_deprecation_on_tl }
@@ -1710,15 +1721,22 @@
{ \g__debug_deprecation_off_tl }
\cs_set_nopar:Npn \g__debug_deprecation_on_tl { }
\cs_set_nopar:Npn \g__debug_deprecation_off_tl { }
+ \cs_set_protected:Npn \__kernel_deprecation_code:nn #1#2
+ {
+ \tl_gput_right:Nn \g__debug_deprecation_on_tl {#1}
+ \tl_gput_right:Nn \g__debug_deprecation_off_tl {#2}
+ }
}
- { }
-\__debug:TF
{
- \cs_set_protected:Npn \__debug_deprecation:nnNNpn #1#2#3#4#5#
+ \cs_set_protected:Npn \__kernel_deprecation_code:nn #1#2 { }
+ }
+\__kernel_debug:TF
+ {
+ \cs_set_protected:Npn \__kernel_patch_deprecation:nnNNpn #1#2#3#4#5#
{
\if_meaning:w \cs_new_protected:Npn #3
\else:
- \__msg_kernel_error:nnx { kernel } { debug-unpatchable }
+ \__kernel_msg_error:nnx { kernel } { debug-unpatchable }
{ \token_to_str:N #3 ~(for~deprecation) }
\fi:
\__debug_deprecation_aux:nnNnn {#1} {#2} #4 {#5}
@@ -1737,7 +1755,7 @@
}
\cs_new_protected:Npx #3
{
- \exp_not:N \__msg_kernel_warning:nnxxx
+ \exp_not:N \__kernel_msg_warning:nnxxx
{ kernel } { deprecated-command }
{#1} { \token_to_str:N #3 } { \tl_to_str:n {#2} }
\exp_not:n { \cs_gset_protected:Npn #3 #4 {#5} }
@@ -1745,12 +1763,12 @@
}
}
}
- { \cs_set_protected:Npn \__debug_deprecation:nnNNpn #1#2 { } }
-\__debug:TF
+ { \cs_set_protected:Npn \__kernel_patch_deprecation:nnNNpn #1#2 { } }
+\__kernel_debug:TF
{
- \cs_set_protected:Npn \__debug_patch:nnNNpn #1#2#3#4#5#
+ \cs_set_protected:Npn \__kernel_patch:nnNNpn #1#2#3#4#5#
{ \__debug_patch_aux:nnnn {#1} {#2} { #3 #4 #5 } }
- \cs_set_protected:Npn \__debug_patch_conditional:nNNpnn #1#2#3#4#
+ \cs_set_protected:Npn \__kernel_patch_conditional:nNNpnn #1#2#3#4#
{ \__debug_patch_auxii:nnnn {#1} { #2 #3 #4 } }
\cs_set_protected:Npn \__debug_patch_aux:nnnn #1#2#3#4
{ #3 { #1 #4 #2 } }
@@ -1758,18 +1776,18 @@
{ #2 {#3} { #1 #4 } }
}
{
- \cs_set_protected:Npn \__debug_patch:nnNNpn #1#2 { }
- \cs_set_protected:Npn \__debug_patch_conditional:nNNpnn #1 { }
+ \cs_set_protected:Npn \__kernel_patch:nnNNpn #1#2 { }
+ \cs_set_protected:Npn \__kernel_patch_conditional:nNNpnn #1 { }
}
-\cs_set_protected:Npn \__debug_patch_args:nNNpn
- { \__debug_patch_args:nnnNNpn { } { } }
-\cs_set_protected:Npn \__debug_patch_conditional_args:nNNpnn
- { \__debug_patch_conditional_args:nnnNNpnn { } { } }
-\__debug:TF
+\cs_set_protected:Npn \__kernel_patch_args:nNNpn
+ { \__kernel_patch_args:nnnNNpn { } { } }
+\cs_set_protected:Npn \__kernel_patch_conditional_args:nNNpnn
+ { \__kernel_patch_conditional_args:nnnNNpnn { } { } }
+\__kernel_debug:TF
{
- \cs_set_protected:Npn \__debug_patch_args:nnnNNpn #1#2#3#4#5#6#
+ \cs_set_protected:Npn \__kernel_patch_args:nnnNNpn #1#2#3#4#5#6#
{ \__debug_patch_args_aux:nnnNNnn {#1} {#2} {#3} #4 #5 {#6} }
- \cs_set_protected:Npn \__debug_patch_conditional_args:nnnNNpnn #1#2#3#4#5#6#
+ \cs_set_protected:Npn \__kernel_patch_conditional_args:nnnNNpnn #1#2#3#4#5#6#
{ \__debug_patch_args_aux:nnnNNnnn {#1} {#2} {#3} #4 #5 {#6} }
\cs_set_protected:Npn \__debug_patch_args_aux:nnnNNnn #1#2#3#4#5#6#7
{
@@ -1787,8 +1805,8 @@
{ #2 { #3 #1 #4 } }
}
{
- \cs_set_protected:Npn \__debug_patch_args:nnnNNpn #1#2#3 { }
- \cs_set_protected:Npn \__debug_patch_conditional_args:nnnNNpnn #1#2#3 { }
+ \cs_set_protected:Npn \__kernel_patch_args:nnnNNpn #1#2#3 { }
+ \cs_set_protected:Npn \__kernel_patch_conditional_args:nnnNNpnn #1#2#3 { }
}
\cs_set:Npn \prg_return_true:
{ \exp_after:wN \use_i:nn \exp:w }
@@ -1826,7 +1844,7 @@
{ \__prg_generate_conditional:nnNnnnnn {#1} {#2} #3 {#4} {#5} }
{ \tl_count:n {#2} }
{
- \__msg_kernel_error:nnxx { kernel } { bad-number-of-arguments }
+ \__kernel_msg_error:nnxx { kernel } { bad-number-of-arguments }
{ \token_to_str:c { #1 : #2 } }
{ \tl_count:n {#2} }
\use_none:nn
@@ -1835,7 +1853,7 @@
\cs_set_protected:Npn \__prg_generate_conditional:nnNnnnnn #1#2#3#4#5#6#7#8
{
\if_meaning:w \c_false_bool #3
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \use_none:nn
\fi:
@@ -1855,7 +1873,7 @@
\use:c { __prg_generate_ #7 _form:wnnnnnn }
\tl_if_empty:nF {#7}
{
- \__msg_kernel_error:nnxx
+ \__kernel_msg_error:nnxx
{ kernel } { conditional-form-unknown }
{#7} { \token_to_str:c { #3 : #4 } }
}
@@ -1877,7 +1895,7 @@
{ #7 \exp_end: \c_true_bool \c_false_bool }
}
{
- \__msg_kernel_error:nnx { kernel } { protected-predicate }
+ \__kernel_msg_error:nnx { kernel } { protected-predicate }
{ \token_to_str:c { #4 _p: #5 } }
}
}
@@ -1918,12 +1936,12 @@
\cs_set_protected:Npn \__prg_set_eq_conditional:nnNnnNNw #1#2#3#4#5#6
{
\if_meaning:w \c_false_bool #3
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \use_none_delimit_by_q_recursion_stop:w
\fi:
\if_meaning:w \c_false_bool #6
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:c {#4} }
\exp_after:wN \use_none_delimit_by_q_recursion_stop:w
\fi:
@@ -1937,7 +1955,7 @@
\use:c { __prg_set_eq_conditional_ #6 _form:wNnnnn }
\tl_if_empty:nF {#6}
{
- \__msg_kernel_error:nnxx
+ \__kernel_msg_error:nnxx
{ kernel } { conditional-form-unknown }
{#6} { \token_to_str:c { #1 : #2 } }
}
@@ -1946,20 +1964,20 @@
#5 {#1} {#2} {#3} {#4}
\__prg_set_eq_conditional_loop:nnnnNw {#1} {#2} {#3} {#4} #5
}
-\__debug_patch:nnNNpn
- { \__debug_chk_cs_exist:c { #5 _p : #6 } } { }
+\__kernel_patch:nnNNpn
+ { \__kernel_chk_cs_exist:c { #5 _p : #6 } } { }
\cs_set:Npn \__prg_set_eq_conditional_p_form:wNnnnn #1 \q_stop #2#3#4#5#6
{ #2 { #3 _p : #4 } { #5 _p : #6 } }
-\__debug_patch:nnNNpn
- { \__debug_chk_cs_exist:c { #5 : #6 TF } } { }
+\__kernel_patch:nnNNpn
+ { \__kernel_chk_cs_exist:c { #5 : #6 TF } } { }
\cs_set:Npn \__prg_set_eq_conditional_TF_form:wNnnnn #1 \q_stop #2#3#4#5#6
{ #2 { #3 : #4 TF } { #5 : #6 TF } }
-\__debug_patch:nnNNpn
- { \__debug_chk_cs_exist:c { #5 : #6 T } } { }
+\__kernel_patch:nnNNpn
+ { \__kernel_chk_cs_exist:c { #5 : #6 T } } { }
\cs_set:Npn \__prg_set_eq_conditional_T_form:wNnnnn #1 \q_stop #2#3#4#5#6
{ #2 { #3 : #4 T } { #5 : #6 T } }
-\__debug_patch:nnNNpn
- { \__debug_chk_cs_exist:c { #5 : #6 F } } { }
+\__kernel_patch:nnNNpn
+ { \__kernel_chk_cs_exist:c { #5 : #6 F } } { }
\cs_set:Npn \__prg_set_eq_conditional_F_form:wNnnnn #1 \q_stop #2#3#4#5#6
{ #2 { #3 : #4 F } { #5 : #6 F } }
\tex_chardef:D \c_true_bool = 1 ~
@@ -2065,7 +2083,7 @@
{ \cs_if_exist:cTF {#1} { \use:c {#1} #2 } { } }
\cs_set:Npn \cs_if_exist_use:c #1
{ \cs_if_exist:cTF {#1} { \use:c {#1} } { } }
-\cs_set_protected:Npn \__msg_kernel_error:nnxx #1#2#3#4
+\cs_set_protected:Npn \__kernel_msg_error:nnxx #1#2#3#4
{
\tex_newlinechar:D = `\^^J \tex_relax:D
\tex_errmessage:D
@@ -2078,23 +2096,23 @@
}
\tex_end:D
}
-\cs_set_protected:Npn \__msg_kernel_error:nnx #1#2#3
- { \__msg_kernel_error:nnxx {#1} {#2} {#3} { } }
-\cs_set_protected:Npn \__msg_kernel_error:nn #1#2
- { \__msg_kernel_error:nnxx {#1} {#2} { } { } }
+\cs_set_protected:Npn \__kernel_msg_error:nnx #1#2#3
+ { \__kernel_msg_error:nnxx {#1} {#2} {#3} { } }
+\cs_set_protected:Npn \__kernel_msg_error:nn #1#2
+ { \__kernel_msg_error:nnxx {#1} {#2} { } { } }
\cs_set:Npn \msg_line_context:
{ on~line~ \tex_the:D \tex_inputlineno:D }
\cs_set_protected:Npn \iow_log:x
{ \tex_immediate:D \tex_write:D -1 }
\cs_set_protected:Npn \iow_term:x
{ \tex_immediate:D \tex_write:D 16 }
-\__debug_patch:nnNNpn { }
- { \__debug_log:x { Defining~\token_to_str:N #1~ \msg_line_context: } }
+\__kernel_patch:nnNNpn { }
+ { \__kernel_debug_log:x { Defining~\token_to_str:N #1~ \msg_line_context: } }
\cs_set_protected:Npn \__chk_if_free_cs:N #1
{
\cs_if_free:NF #1
{
- \__msg_kernel_error:nnxx { kernel } { command-already-defined }
+ \__kernel_msg_error:nnxx { kernel } { command-already-defined }
{ \token_to_str:N #1 } { \token_to_meaning:N #1 }
}
}
@@ -2215,7 +2233,7 @@
{
\__cs_parm_from_arg_count:nnF { \use:nnn #2 #1 } {#3}
{
- \__msg_kernel_error:nnxx { kernel } { bad-number-of-arguments }
+ \__kernel_msg_error:nnxx { kernel } { bad-number-of-arguments }
{ \token_to_str:N #1 } { \int_eval:n {#3} }
\use_none:n
}
@@ -2245,14 +2263,14 @@
\str_if_eq_x:nnF { }
{ \tl_map_function:nN {#2} \__cs_generate_from_signature:n }
{
- \__msg_kernel_error:nnx { kernel } { non-base-function }
+ \__kernel_msg_error:nnx { kernel } { non-base-function }
{ \token_to_str:N #5 }
}
\cs_generate_from_arg_count:NNnn
#5 #4 { \tl_count:n {#2} } {#6}
}
{
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:N #5 }
}
}
@@ -2339,7 +2357,7 @@
\cs_if_exist:NTF #1
{#2}
{
- \__msg_kernel_error:nnx { kernel } { variable-not-defined }
+ \__kernel_msg_error:nnx { kernel } { variable-not-defined }
{ \token_to_str:N #1 }
}
}
@@ -2388,7 +2406,7 @@
\cs_new_eq:NN \__prg_break_point: \prg_do_nothing:
\cs_new:Npn \__prg_break: #1 \__prg_break_point: { }
\cs_new:Npn \__prg_break:n #1#2 \__prg_break_point: {#1}
-%% File: l3expan.dtx Copyright (C) 1990-2017 The LaTeX3 project
+%% File: l3expan.dtx Copyright (C) 1990-2018 The LaTeX3 project
\cs_new:Npn \__exp_arg_next:nnn #1#2#3 { #2 \::: { #3 {#1} } }
\cs_new:Npn \__exp_arg_next:Nnn #1#2#3 { #2 \::: { #3 #1 } }
\cs_new:Npn \::: #1 {#1}
@@ -2440,7 +2458,7 @@
{
\fi:
\fi:
- \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {#2}
+ \__kernel_msg_expandable_error:nnn { kernel } { bad-variable } {#2}
\exp_end:
}
\cs_new:Npn \exp_args:NNc #1#2#3
@@ -2674,10 +2692,10 @@
\tex_catcode:D `\^^@ = 13
\cs_new_protected:Npn \exp_end_continue_f:w { `^^@ }
\cs_new:Npn ^^@
- { \__msg_kernel_expandable_error:nn { kernel } { bad-exp-end-f } }
+ { \__kernel_msg_expandable_error:nn { kernel } { bad-exp-end-f } }
\cs_new:Npn \exp_end_continue_f:nw #1 { `^^@ #1 }
\group_end:
-\__debug_patch:nnNNpn { \__debug_chk_cs_exist:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_cs_exist:N #1 } { }
\cs_new_protected:Npn \cs_generate_variant:Nn #1#2
{
\__cs_generate_variant:N #1
@@ -2715,7 +2733,7 @@
\cs_new_protected:Npn \__cs_generate_variant:nnNN #1#2#3#4
{
\if_meaning:w \c_false_bool #3
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \use_none_delimit_by_q_recursion_stop:w
\fi:
@@ -2799,7 +2817,7 @@
\exp_not:n
{
\q_mark
- \__msg_kernel_error:nnxx { kernel } { variant-too-long }
+ \__kernel_msg_error:nnxx { kernel } { variant-too-long }
{#5} { \token_to_str:N #3 }
\use_none:nnn
\q_stop
@@ -2814,7 +2832,7 @@
\exp_not:n
{
\q_mark
- \__msg_kernel_error:nnxxxx { kernel } { invalid-variant }
+ \__kernel_msg_error:nnxxxx { kernel } { invalid-variant }
{#7} { \token_to_str:N #5 } {#1} {#2}
\use_none:nnn
\q_stop
@@ -2827,12 +2845,13 @@
#3 \q_stop #4 #5 {#6} {#7}
\exp_not:n
{
- \__cs_generate_variant_loop_warning:nnxxxx { kernel } { invalid-variant }
+ \__cs_generate_variant_loop_warning:nnxxxx
+ { kernel } { deprecated-variant }
{#7} { \token_to_str:N #5 } {#1} {#2}
}
}
\cs_new_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
- { \__msg_kernel_warning:nnxxxx }
+ { \__kernel_msg_warning:nnxxxx }
\cs_new:Npn \__cs_generate_variant_same:N #1
{
\if:w N #1 N \else:
@@ -2844,11 +2863,11 @@
\fi:
\fi:
}
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
\cs_if_free:NF #4
{
- \__debug_log:x
+ \__kernel_debug_log:x
{
Variant~\token_to_str:N #4~%
already~defined;~ not~ changing~ it~ \msg_line_context:
@@ -2904,7 +2923,7 @@
\cs_new_protected:Npn \__cs_generate_variant:nnNnn #1#2#3#4#5
{
\if_meaning:w \c_false_bool #3
- \__msg_kernel_error:nnx { kernel } { missing-colon }
+ \__kernel_msg_error:nnx { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\use_i_delimit_by_q_stop:nw
\fi:
@@ -2924,7 +2943,7 @@
\cs_if_exist_use:cTF { __cs_generate_variant_#1_form:nnn }
{ {#3} {#4} {#5} }
{
- \__msg_kernel_error:nnxx
+ \__kernel_msg_error:nnxx
{ kernel } { conditional-form-unknown }
{#1} { \token_to_str:c { #3 : #4 } }
}
@@ -2939,20 +2958,20 @@
{ \cs_generate_variant:cn { #1 : #2 F } }
\cs_new_protected:Npn \__cs_generate_variant_TF_form:nnn #1#2
{ \cs_generate_variant:cn { #1 : #2 TF } }
-%% File: l3tl.dtx Copyright (C) 1990-2017 The LaTeX3 Project
+%% File: l3tl.dtx Copyright (C) 1990-2018 The LaTeX3 Project
\cs_new_protected:Npn \tl_new:N #1
{
\__chk_if_free_cs:N #1
\cs_gset_eq:NN #1 \c_empty_tl
}
\cs_generate_variant:Nn \tl_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \tl_const:Nn #1#2
{
\__chk_if_free_cs:N #1
\cs_gset_nopar:Npx #1 { \exp_not:n {#2} }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \tl_const:Nx #1#2
{
\__chk_if_free_cs:N #1
@@ -2975,14 +2994,14 @@
\tex_ifodd:D \l@expl@enable@debug@bool
\cs_new_protected:Npn \tl_set_eq:NN #1#2
{
- \__debug_chk_var_local:N #1
- \__debug_chk_var_exist:N #2
+ \__kernel_chk_var_local:N #1
+ \__kernel_chk_var_exist:N #2
\cs_set_eq:NN #1 #2
}
\cs_new_protected:Npn \tl_gset_eq:NN #1#2
{
- \__debug_chk_var_global:N #1
- \__debug_chk_var_exist:N #2
+ \__kernel_chk_var_global:N #1
+ \__kernel_chk_var_exist:N #2
\cs_gset_eq:NN #1 #2
}
\else:
@@ -2991,18 +3010,18 @@
\fi:
\cs_generate_variant:Nn \tl_set_eq:NN { cN, Nc, cc }
\cs_generate_variant:Nn \tl_gset_eq:NN { cN, Nc, cc }
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
- \__debug_chk_var_exist:N #2
- \__debug_chk_var_exist:N #3
+ \__kernel_chk_var_exist:N #2
+ \__kernel_chk_var_exist:N #3
}
{ }
\cs_new_protected:Npn \tl_concat:NNN #1#2#3
{ \tl_set:Nx #1 { \exp_not:o {#2} \exp_not:o {#3} } }
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
- \__debug_chk_var_exist:N #2
- \__debug_chk_var_exist:N #3
+ \__kernel_chk_var_exist:N #2
+ \__kernel_chk_var_exist:N #3
}
{ }
\cs_new_protected:Npn \tl_gconcat:NNN #1#2#3
@@ -3022,22 +3041,22 @@
\tl_const:Nn \c_novalue_tl { ANoValue- }
}
\tl_const:Nn \c_space_tl { ~ }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_set:Nn #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:n {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_set:No #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_set:Nx #1#2
{ \cs_set_nopar:Npx #1 {#2} }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gset:Nn #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:n {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gset:No #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gset:Nx #1#2
{ \cs_gset_nopar:Npx #1 {#2} }
\cs_generate_variant:Nn \tl_set:Nn { NV , Nv , Nf }
@@ -3046,28 +3065,28 @@
\cs_generate_variant:Nn \tl_gset:Nn { NV , Nv , Nf }
\cs_generate_variant:Nn \tl_gset:Nx { c }
\cs_generate_variant:Nn \tl_gset:Nn { c, co , cV , cv , cf }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_left:Nn #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:n {#2} \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_left:NV #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:V #2 \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_left:No #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o {#2} \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_left:Nx #1#2
{ \cs_set_nopar:Npx #1 { #2 \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_left:Nn #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:n {#2} \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_left:NV #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:V #2 \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_left:No #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o {#2} \exp_not:o #1 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_left:Nx #1#2
{ \cs_gset_nopar:Npx #1 { #2 \exp_not:o {#1} } }
\cs_generate_variant:Nn \tl_put_left:Nn { c }
@@ -3078,28 +3097,28 @@
\cs_generate_variant:Nn \tl_gput_left:NV { c }
\cs_generate_variant:Nn \tl_gput_left:No { c }
\cs_generate_variant:Nn \tl_gput_left:Nx { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_right:Nn #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o #1 \exp_not:n {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_right:NV #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o #1 \exp_not:V #2 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_right:No #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o #1 \exp_not:o {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \tl_put_right:Nx #1#2
{ \cs_set_nopar:Npx #1 { \exp_not:o #1 #2 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_right:Nn #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o #1 \exp_not:n {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_right:NV #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o #1 \exp_not:V #2 } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_right:No #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o #1 \exp_not:o {#2} } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \tl_gput_right:Nx #1#2
{ \cs_gset_nopar:Npx #1 { \exp_not:o {#1} #2 } }
\cs_generate_variant:Nn \tl_put_right:Nn { c }
@@ -3230,7 +3249,7 @@
{
\tl_if_empty:nTF {#6}
{
- \__msg_kernel_error:nnx { kernel } { empty-search-pattern }
+ \__kernel_msg_error:nnx { kernel } { empty-search-pattern }
{ \tl_to_str:n {#7} }
}
{
@@ -3490,7 +3509,7 @@
{
\tl_if_exist:NTF #1 {#1}
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { bad-variable } {#1}
}
}
@@ -3840,11 +3859,11 @@
\tl_new:N \g_tmpb_tl
\tl_new:N \l_tmpa_tl
\tl_new:N \l_tmpb_tl
-\__debug_deprecation:nnNNpn { 2017-12-31 } { \tex_lowercase:D }
+\__kernel_patch_deprecation:nnNNpn { 2017-12-31 } { \tex_lowercase:D }
\cs_new_protected:Npn \tl_to_lowercase:n #1 { \tex_lowercase:D {#1} }
-\__debug_deprecation:nnNNpn { 2017-12-31 } { \tex_uppercase:D }
+\__kernel_patch_deprecation:nnNNpn { 2017-12-31 } { \tex_uppercase:D }
\cs_new_protected:Npn \tl_to_uppercase:n #1 { \tex_uppercase:D {#1} }
-%% File: l3str.dtx Copyright (C) 2011-2017 The LaTeX3 Project
+%% File: l3str.dtx Copyright (C) 2011-2018 The LaTeX3 Project
\group_begin:
\cs_set_protected:Npn \__str_tmp:n #1
{
@@ -3909,7 +3928,7 @@
{
\tl_if_empty:nTF {#4}
{
- \__msg_kernel_error:nnx { kernel } { empty-search-pattern } {#5}
+ \__kernel_msg_error:nnx { kernel } { empty-search-pattern } {#5}
}
{
\use:x
@@ -4198,7 +4217,7 @@
}
\cs_new:Npn \str_item_ignore_spaces:nn #1
{ \exp_args:No \__str_item:nn { \tl_to_str:n {#1} } }
-\__debug_patch_args:nNNpn { {#1} { \__int_eval:n {#2} } }
+\__kernel_patch_args:nNNpn { {#1} { \__int_eval:n {#2} } }
\cs_new:Npn \__str_item:nn #1#2
{
\exp_after:wN \__str_item:w
@@ -4257,7 +4276,7 @@
}
\cs_new:Npn \str_range_ignore_spaces:nnn #1
{ \exp_args:No \__str_range:nnn { \tl_to_str:n {#1} } }
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{ {#1} { \__int_eval:n {#2} } { \__int_eval:n {#3} } }
\cs_new:Npn \__str_range:nnn #1#2#3
{
@@ -4624,7 +4643,7 @@
%% File: l3seq.dtx Copyright (C) 1990-2017 The LaTeX3 Project
\cs_new:Npn \__seq_item:n
{
- \__msg_kernel_expandable_error:nn { kernel } { misused-sequence }
+ \__kernel_msg_expandable_error:nn { kernel } { misused-sequence }
\use_none:n
}
\tl_new:N \l__seq_internal_a_tl
@@ -5070,7 +5089,7 @@
}
}
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { bad-variable } {#1}
}
}
@@ -5139,21 +5158,21 @@
\seq_new:N \l_tmpb_seq
\seq_new:N \g_tmpa_seq
\seq_new:N \g_tmpb_seq
-%% File: l3int.dtx Copyright (C) 1990-2017 The LaTeX3 Project
+%% File: l3int.dtx Copyright (C) 1990-2018 The LaTeX3 Project
\cs_new_eq:NN \__int_value:w \tex_number:D
\cs_new_eq:NN \__int_eval:w \etex_numexpr:D
\cs_new_eq:NN \__int_eval_end: \tex_relax:D
\cs_new_eq:NN \if_int_odd:w \tex_ifodd:D
\cs_new_eq:NN \if_case:w \tex_ifcase:D
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_eval:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_eval:n } }
\cs_new:Npn \int_eval:n #1
{ \__int_value:w \__int_eval:w #1 \__int_eval_end: }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \__int_eval:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \__int_eval:n } }
\cs_new:Npn \__int_eval:n #1 { \__int_eval:w #1 \__int_eval_end: }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_abs:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_abs:n } }
\cs_new:Npn \int_abs:n #1
{
\__int_value:w \exp_after:wN \__int_abs:N
@@ -5162,10 +5181,10 @@
}
\cs_new:Npn \__int_abs:N #1
{ \if_meaning:w - #1 \else: \exp_after:wN #1 \fi: }
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_max:nn }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_max:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_max:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_max:nn }
}
\cs_set:Npn \int_max:nn #1#2
{
@@ -5175,10 +5194,10 @@
>
\exp_stop_f:
}
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_min:nn }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_min:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_min:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_min:nn }
}
\cs_set:Npn \int_min:nn #1#2
{
@@ -5196,10 +5215,10 @@
#2
\fi:
}
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_div_truncate:nn }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_div_truncate:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_div_truncate:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_div_truncate:nn }
}
\cs_new:Npn \int_div_truncate:nn #1#2
{
@@ -5224,10 +5243,10 @@
}
\cs_new:Npn \int_div_round:nn #1#2
{ \__int_value:w \__int_eval:w ( #1 ) / ( #2 ) \__int_eval_end: }
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_mod:nn }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_mod:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_mod:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_mod:nn }
}
\cs_new:Npn \int_mod:nn #1#2
{
@@ -5244,10 +5263,10 @@
\cs:w newcount \cs_end: #1
}
\cs_generate_variant:Nn \int_new:N { c }
-\__debug_patch_args:nnnNNpn
- { \__debug_chk_var_scope:NN c #1 }
+\__kernel_patch_args:nnnNNpn
+ { \__kernel_chk_var_scope:NN c #1 }
{ }
- { {#1} { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_const:Nn } }
+ { {#1} { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_const:Nn } }
\cs_new_protected:Npn \int_const:Nn #1#2
{
\int_compare:nNnTF {#2} < \c_zero
@@ -5282,9 +5301,9 @@
\cs_new_eq:NN \__int_constdef:Nw \tex_mathchardef:D
\tex_mathchardef:D \c__max_constdef_int 32767 ~
\fi:
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \int_zero:N #1 { #1 = \c_zero }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \int_gzero:N #1 { \tex_global:D #1 = \c_zero }
\cs_generate_variant:Nn \int_zero:N { c }
\cs_generate_variant:Nn \int_gzero:N { c }
@@ -5294,10 +5313,10 @@
{ \int_if_exist:NTF #1 { \int_gzero:N #1 } { \int_new:N #1 } }
\cs_generate_variant:Nn \int_zero_new:N { c }
\cs_generate_variant:Nn \int_gzero_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \int_set_eq:NN #1#2 { #1 = #2 }
\cs_generate_variant:Nn \int_set_eq:NN { c , Nc , cc }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \int_gset_eq:NN #1#2 { \tex_global:D #1 = #2 }
\cs_generate_variant:Nn \int_gset_eq:NN { c , Nc , cc }
\prg_new_eq_conditional:NNn \int_if_exist:N \cs_if_exist:N
@@ -5306,48 +5325,48 @@
{ TF , T , F , p }
\cs_set_protected:Npn \__int_tmp:w #1#2#3
{
- \__debug_patch_args:nnnNNpn
+ \__kernel_patch_args:nnnNNpn
{ #1 ##1 }
{ }
- { {##1} { \__debug_chk_expr:nNnN {##2} \__int_eval:w { } #3 } }
+ { {##1} { \__kernel_chk_expr:nNnN {##2} \__int_eval:w { } #3 } }
#2 #3
}
-\__int_tmp:w \__debug_chk_var_local:N
+\__int_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \int_add:Nn #1#2
{ \tex_advance:D #1 by \__int_eval:w #2 \__int_eval_end: }
-\__int_tmp:w \__debug_chk_var_local:N
+\__int_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \int_sub:Nn #1#2
{ \tex_advance:D #1 by - \__int_eval:w #2 \__int_eval_end: }
-\__int_tmp:w \__debug_chk_var_global:N
+\__int_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \int_gadd:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by \__int_eval:w #2 \__int_eval_end: }
-\__int_tmp:w \__debug_chk_var_global:N
+\__int_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \int_gsub:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by - \__int_eval:w #2 \__int_eval_end: }
\cs_generate_variant:Nn \int_add:Nn { c }
\cs_generate_variant:Nn \int_gadd:Nn { c }
\cs_generate_variant:Nn \int_sub:Nn { c }
\cs_generate_variant:Nn \int_gsub:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \int_incr:N #1
{ \tex_advance:D #1 \c_one }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \int_decr:N #1
{ \tex_advance:D #1 - \c_one }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \int_gincr:N #1
{ \tex_global:D \tex_advance:D #1 \c_one }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \int_gdecr:N #1
{ \tex_global:D \tex_advance:D #1 - \c_one }
\cs_generate_variant:Nn \int_incr:N { c }
\cs_generate_variant:Nn \int_decr:N { c }
\cs_generate_variant:Nn \int_gincr:N { c }
\cs_generate_variant:Nn \int_gdecr:N { c }
-\__int_tmp:w \__debug_chk_var_local:N
+\__int_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \int_set:Nn #1#2
{ #1 ~ \__int_eval:w #2 \__int_eval_end: }
-\__int_tmp:w \__debug_chk_var_global:N
+\__int_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \int_gset:Nn #1#2
{ \tex_global:D #1 ~ \__int_eval:w #2 \__int_eval_end: }
\cs_generate_variant:Nn \int_set:Nn { c }
@@ -5365,7 +5384,7 @@
{
{ }
\c_zero \fi:
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { unknown-comparison } {#1}
\prg_return_false:
}
@@ -5422,11 +5441,11 @@
{ \__int_compare:nnN { \if_int_compare:w } {#3} > }
\cs_new:cpn { __int_compare_>=:NNw } #1#2#3 >=
{ \__int_compare:nnN { \if_int_compare:w } {#3} < }
-\__debug_patch_conditional_args:nNNpnn
+\__kernel_patch_conditional_args:nNNpnn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_compare:nNn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_compare:nNn }
{ \__int_eval_end: #2 }
- { \__debug_chk_expr:nNnN {#3} \__int_eval:w { } \int_compare:nNn }
+ { \__kernel_chk_expr:nNnN {#3} \__int_eval:w { } \int_compare:nNn }
}
\prg_new_conditional:Npnn \int_compare:nNn #1#2#3 { p , T , F , TF }
{
@@ -5465,8 +5484,8 @@
{ \__int_case:nw {#1} }
}
\cs_new_eq:NN \__int_case_end:nw \__prg_case_end:nw
-\__debug_patch_conditional_args:nNNpnn
- { { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_if_odd:n } }
+\__kernel_patch_conditional_args:nNNpnn
+ { { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_if_odd:n } }
\prg_new_conditional:Npnn \int_if_odd:n #1 { p , T , F , TF}
{
\if_int_odd:w \__int_eval:w #1 \__int_eval_end:
@@ -5475,8 +5494,8 @@
\prg_return_false:
\fi:
}
-\__debug_patch_conditional_args:nNNpnn
- { { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_if_even:n } }
+\__kernel_patch_conditional_args:nNNpnn
+ { { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_if_even:n } }
\prg_new_conditional:Npnn \int_if_even:n #1 { p , T , F , TF}
{
\if_int_odd:w \__int_eval:w #1 \__int_eval_end:
@@ -5541,11 +5560,11 @@
\int_compare:nNnF {#1} #2 {#3}
{ \int_do_until:nNnn {#1} #2 {#3} {#4} }
}
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_step_function:nnnN }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_step_function:nnnN }
- { \__debug_chk_expr:nNnN {#3} \__int_eval:w { } \int_step_function:nnnN }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_step_function:nnnN }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_step_function:nnnN }
+ { \__kernel_chk_expr:nNnN {#3} \__int_eval:w { } \int_step_function:nnnN }
}
\cs_new:Npn \int_step_function:nnnN #1#2#3
{
@@ -5561,7 +5580,7 @@
{
\int_compare:nNnTF {#2} = \c_zero
{
- \__msg_kernel_expandable_error:nnn { kernel } { zero-step } {#4}
+ \__kernel_msg_expandable_error:nnn { kernel } { zero-step } {#4}
\use_none:nnnn
}
{ \__int_step:NnnnN < }
@@ -6005,14 +6024,9 @@
\int_new:N \g_tmpb_int
\cs_gset_eq:NN \c__deprecation_minus_one \m@ne
\cs_new_eq:NN \c_minus_one \c__deprecation_minus_one
-\__debug:TF
- {
- \tl_gput_right:Nn \g__debug_deprecation_on_tl
- { \__deprecation_error:Nnn \c_minus_one { -1 } { 2018-12-31 } }
- \tl_gput_right:Nn \g__debug_deprecation_off_tl
- { \tex_let:D \c_minus_one \c__deprecation_minus_one }
- }
- { }
+\__kernel_deprecation_code:nn
+ { \__deprecation_error:Nnn \c_minus_one { -1 } { 2018-12-31 } }
+ { \tex_let:D \c_minus_one \c__deprecation_minus_one }
%% File: l3intarray.dtx Copyright (C) 2017 The LaTeX3 Project
\int_new:N \g__intarray_font_int
\cs_new_protected:Npn \__intarray_new:Nn #1#2
@@ -6041,7 +6055,7 @@
\int_compare:nTF { - \c_max_dim <= \int_abs:n {#3} <= \c_max_dim }
{ \__intarray_gset_fast:Nnn #1 {#2} {#3} }
{
- \__msg_kernel_error:nnxxxx { kernel } { overflow }
+ \__kernel_msg_error:nnxxxx { kernel } { overflow }
{ \token_to_str:N #1 } {#2} {#3}
{ \int_compare:nNnT {#3} < 0 { - } \__int_value:w \c_max_dim }
\__intarray_gset_fast:Nnn #1 {#2}
@@ -6049,7 +6063,7 @@
}
}
{
- \__msg_kernel_error:nnxxx { kernel } { out-of-bounds }
+ \__kernel_msg_error:nnxxx { kernel } { out-of-bounds }
{ \token_to_str:N #1 } {#2} { \__intarray_count:N #1 }
}
}
@@ -6062,19 +6076,19 @@
\int_compare:nTF { 1 <= #2 <= \__intarray_count:N #1 }
{ \__intarray_item_fast:Nn #1 {#2} }
{
- \__msg_kernel_expandable_error:nnnnn { kernel } { out-of-bounds }
+ \__kernel_msg_expandable_error:nnnnn { kernel } { out-of-bounds }
{ \token_to_str:N #1 } {#2} { \__intarray_count:N #1 }
0
}
}
-%% File: l3flag.dtx Copyright (C) 2011-2017 The LaTeX3 Project
+%% File: l3flag.dtx Copyright (C) 2011-2018 The LaTeX3 Project
\cs_new_protected:Npn \flag_new:n #1
{
\cs_new:cpn { flag~#1 } ##1 ;
{ \exp_after:wN \use_none:n \cs:w flag~#1~##1 \cs_end: }
}
-\__debug_patch:nnNNpn
- { \exp_args:Nc \__debug_chk_var_exist:N { flag~#1 } } { }
+\__kernel_patch:nnNNpn
+ { \exp_args:Nc \__kernel_chk_var_exist:N { flag~#1 } } { }
\cs_new_protected:Npn \flag_clear:n #1 { \__flag_clear:wn 0 ; {#1} }
\cs_new_protected:Npn \__flag_clear:wn #1 ; #2
{
@@ -6104,7 +6118,7 @@
{
\flag_if_exist:nF {#1}
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { bad-variable } { flag~#1~ }
}
}
@@ -6114,7 +6128,7 @@
\cs_if_exist:cTF { flag~#1 }
{ \prg_return_true: } { \prg_return_false: }
}
-\__debug_patch_conditional:nNNpnn { \__flag_chk_exist:n {#1} }
+\__kernel_patch_conditional:nNNpnn { \__flag_chk_exist:n {#1} }
\prg_new_conditional:Npnn \flag_if_raised:n #1 { p , T , F , TF }
{
\if_cs_exist:w flag~#1~0 \cs_end:
@@ -6123,7 +6137,7 @@
\prg_return_false:
\fi:
}
-\__debug_patch:nnNNpn { \__flag_chk_exist:n {#1} } { }
+\__kernel_patch:nnNNpn { \__flag_chk_exist:n {#1} } { }
\cs_new:Npn \flag_height:n #1 { \__flag_height_loop:wn 0; {#1} }
\cs_new:Npn \__flag_height_loop:wn #1 ; #2
{
@@ -6140,8 +6154,8 @@
\cs:w flag~#1 \exp_after:wN \cs_end:
\__int_value:w \flag_height:n {#1} ;
}
-%% File: l3quark.dtx Copyright (C) 1990-2017 The LaTeX3 Project
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN q #1 } { }
+%% File: l3quark.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN q #1 } { }
\cs_new_protected:Npn \quark_new:N #1
{
\__chk_if_free_cs:N #1
@@ -6237,7 +6251,7 @@
{
\tl_if_in:NnTF \g__scan_marks_tl { #1 }
{
- \__msg_kernel_error:nnx { kernel } { scanmark-already-defined }
+ \__kernel_msg_error:nnx { kernel } { scanmark-already-defined }
{ \token_to_str:N #1 }
}
{
@@ -6248,21 +6262,21 @@
\__scan_new:N \s__stop
\cs_new:Npn \__use_none_delimit_by_s__stop:w #1 \s__stop { }
\__scan_new:N \s__seq
-%% File: l3prg.dtx Copyright (C) 2005-2017 The LaTeX3 Project
+%% File: l3prg.dtx Copyright (C) 2005-2018 The LaTeX3 Project
\cs_new_eq:NN \if_bool:N \tex_ifodd:D
\cs_new_eq:NN \if_predicate:w \tex_ifodd:D
\cs_new_protected:Npn \bool_new:N #1 { \cs_new_eq:NN #1 \c_false_bool }
\cs_generate_variant:Nn \bool_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \bool_set_true:N #1
{ \cs_set_eq:NN #1 \c_true_bool }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \bool_set_false:N #1
{ \cs_set_eq:NN #1 \c_false_bool }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \bool_gset_true:N #1
{ \cs_gset_eq:NN #1 \c_true_bool }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \bool_gset_false:N #1
{ \cs_gset_eq:NN #1 \c_false_bool }
\cs_generate_variant:Nn \bool_set_true:N { c }
@@ -6273,10 +6287,10 @@
\cs_new_eq:NN \bool_gset_eq:NN \tl_gset_eq:NN
\cs_generate_variant:Nn \bool_set_eq:NN { Nc, cN, cc }
\cs_generate_variant:Nn \bool_gset_eq:NN { Nc, cN, cc }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \bool_set:Nn #1#2
{ \tex_chardef:D #1 = \bool_if_p:n {#2} }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \bool_gset:Nn #1#2
{ \tex_global:D \tex_chardef:D #1 = \bool_if_p:n {#2} }
\cs_generate_variant:Nn \bool_set:Nn { c }
@@ -6478,7 +6492,7 @@
\cs_new:cpn { __prg_replicate_first_-:n } #1
{
\exp_end:
- \__msg_kernel_expandable_error:nn { kernel } { negative-replication }
+ \__kernel_msg_expandable_error:nn { kernel } { negative-replication }
}
\cs_new:cpn { __prg_replicate_first_0:n } #1 { \exp_end: }
\cs_new:cpn { __prg_replicate_first_1:n } #1 { \exp_end: #1 }
@@ -6940,7 +6954,7 @@
}
}
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { bad-variable } {#1}
}
}
@@ -7040,7 +7054,7 @@
\clist_new:N \l_tmpb_clist
\clist_new:N \g_tmpa_clist
\clist_new:N \g_tmpb_clist
-%% File: l3token.dtx Copyright (C) 2005-2017 The LaTeX3 Project
+%% File: l3token.dtx Copyright (C) 2005-2018 The LaTeX3 Project
\cs_new_protected:Npn \char_set_catcode:nn #1#2
{ \tex_catcode:D \__int_eval:n {#1} = \__int_eval:n {#2} }
\cs_new:Npn \char_value_catcode:n #1
@@ -7161,7 +7175,7 @@
\cs_generate_variant:Nn \char_gset_active_eq:NN { Nc }
\cs_generate_variant:Nn \char_set_active_eq:nN { nc }
\cs_generate_variant:Nn \char_gset_active_eq:nN { nc }
-\__debug_patch_args:nNNpn { { \__int_eval:n {#1} } { \__int_eval:n {#2} } }
+\__kernel_patch_args:nNNpn { { \__int_eval:n {#1} } { \__int_eval:n {#2} } }
\cs_new:Npn \char_generate:nn #1#2
{
\exp:w \exp_after:wN \__char_generate_aux:w
@@ -7177,13 +7191,13 @@
\cs_new:Npn \__char_generate_aux:w #1 ; #2 ;
{
\if_int_compare:w #2 = 13 \exp_stop_f:
- \__msg_kernel_expandable_error:nn { kernel } { char-active }
+ \__kernel_msg_expandable_error:nn { kernel } { char-active }
\else:
\if_int_compare:w #2 = 10 \exp_stop_f:
\if_int_compare:w #1 = 0 \exp_stop_f:
- \__msg_kernel_expandable_error:nn { kernel } { char-null-space }
+ \__kernel_msg_expandable_error:nn { kernel } { char-null-space }
\else:
- \__msg_kernel_expandable_error:nn { kernel } { char-space }
+ \__kernel_msg_expandable_error:nn { kernel } { char-space }
\fi:
\else:
\if_int_odd:w 0
@@ -7191,13 +7205,13 @@
\if_int_compare:w #2 = 5 \exp_stop_f: 1 \fi:
\if_int_compare:w #2 = 9 \exp_stop_f: 1 \fi:
\if_int_compare:w #2 > 13 \exp_stop_f: 1 \fi: \exp_stop_f:
- \__msg_kernel_expandable_error:nn { kernel }
+ \__kernel_msg_expandable_error:nn { kernel }
{ char-invalid-catcode }
\else:
\if_int_odd:w 0
\if_int_compare:w #1 < 0 \exp_stop_f: 1 \fi:
\if_int_compare:w #1 > \c__char_max_int 1 \fi: \exp_stop_f:
- \__msg_kernel_expandable_error:nn { kernel }
+ \__kernel_msg_expandable_error:nn { kernel }
{ char-out-of-range }
\else:
\__char_generate_aux:nnw {#1} {#2}
@@ -7749,12 +7763,12 @@
}
{ \scan_stop: }
}
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \cs_new_eq:NN }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \cs_new_eq:NN }
\cs_new_protected:Npn \token_new:Nn #1#2 { \cs_new_eq:NN #1 #2 }
%% File: l3prop.dtx Copyright (C) 1990-2017 The LaTeX3 Project
\__scan_new:N \s__prop
\cs_new:Npn \__prop_pair:wn #1 \s__prop #2
- { \__msg_kernel_expandable_error:nn { kernel } { misused-prop } }
+ { \__kernel_msg_expandable_error:nn { kernel } { misused-prop } }
\tl_new:N \l__prop_internal_tl
\tl_const:Nn \c_empty_prop { \s__prop }
\cs_new_protected:Npn \prop_new:N #1
@@ -7829,7 +7843,7 @@
\s__prop { \exp_not:n {#1} }
}
{
- \exp_args:Nnno \__msg_kernel_expandable_error:nnn
+ \exp_args:Nnno \__kernel_msg_expandable_error:nnn
{ kernel } { prop-keyval } {#4}
}
}
@@ -8058,7 +8072,7 @@
{ } { }
}
}
-%% File: l3msg.dtx Copyright (C) 2009-2017 The LaTeX3 Project
+%% File: l3msg.dtx Copyright (C) 2009-2018 The LaTeX3 Project
\tl_new:N \l__msg_internal_tl
\bool_new:N \l__msg_line_context_bool
\tl_const:Nn \c__msg_text_prefix_tl { msg~text~>~ }
@@ -8068,13 +8082,13 @@
\cs_if_exist:cTF { \c__msg_text_prefix_tl #1 / #2 }
{ \prg_return_true: } { \prg_return_false: }
}
-\__debug_patch:nnNNpn { }
- { \__debug_log:x { Defining~message~ #1 / #2 ~\msg_line_context: } }
+\__kernel_patch:nnNNpn { }
+ { \__kernel_debug_log:x { Defining~message~ #1 / #2 ~\msg_line_context: } }
\cs_new_protected:Npn \__chk_if_free_msg:nn #1#2
{
\msg_if_exist:nnT {#1} {#2}
{
- \__msg_kernel_error:nnxx { kernel } { message-already-defined }
+ \__kernel_msg_error:nnxx { kernel } { message-already-defined }
{#1} {#2}
}
}
@@ -8392,7 +8406,7 @@
\cs_new:Npn \__msg_class_chk_exist:nT #1
{
\cs_if_free:cTF { __msg_ #1 _code:nnnnnn }
- { \__msg_kernel_error:nnx { kernel } { message-class-unknown } {#1} }
+ { \__kernel_msg_error:nnx { kernel } { message-class-unknown } {#1} }
}
\tl_new:N \l__msg_class_tl
\tl_new:N \l__msg_current_class_tl
@@ -8417,7 +8431,7 @@
\__msg_use_redirect_name:n { #2 / #3 }
}
}
- { \__msg_kernel_error:nnxx { kernel } { message-unknown } {#2} {#3} }
+ { \__kernel_msg_error:nnxx { kernel } { message-unknown } {#2} {#3} }
}
\cs_new_protected:Npn \__msg_use_code: { }
\cs_new_protected:Npn \__msg_use_redirect_name:n #1
@@ -8504,7 +8518,7 @@
\tl_if_eq:NNTF \l__msg_class_tl \l__msg_current_class_tl
{
\prop_put:cnn { l__msg_redirect_ #2 _prop } {#3} {#2}
- \__msg_kernel_warning:nnxxxx
+ \__kernel_msg_warning:nnxxxx
{ kernel } { message-redirect-loop }
{ \seq_item:Nn \l__msg_class_loop_seq { 1 } }
{ \seq_item:Nn \l__msg_class_loop_seq { 2 } }
@@ -8521,20 +8535,20 @@
}
\cs_generate_variant:Nn \__msg_redirect_loop_chk:nnn { o }
\cs_new:Npn \__msg_redirect_loop_list:n #1 { {#1} ~ => ~ }
-\cs_new_protected:Npn \__msg_kernel_new:nnnn #1#2
+\cs_new_protected:Npn \__kernel_msg_new:nnnn #1#2
{ \msg_new:nnnn { LaTeX } { #1 / #2 } }
-\cs_new_protected:Npn \__msg_kernel_new:nnn #1#2
+\cs_new_protected:Npn \__kernel_msg_new:nnn #1#2
{ \msg_new:nnn { LaTeX } { #1 / #2 } }
-\cs_new_protected:Npn \__msg_kernel_set:nnnn #1#2
+\cs_new_protected:Npn \__kernel_msg_set:nnnn #1#2
{ \msg_set:nnnn { LaTeX } { #1 / #2 } }
-\cs_new_protected:Npn \__msg_kernel_set:nnn #1#2
+\cs_new_protected:Npn \__kernel_msg_set:nnn #1#2
{ \msg_set:nnn { LaTeX } { #1 / #2 } }
\group_begin:
\cs_set_protected:Npn \__msg_kernel_class_new:nN #1
- { \__msg_kernel_class_new_aux:nN { kernel_ #1 } }
+ { \__msg_kernel_class_new_aux:nN { __kernel_msg_ #1 } }
\cs_set_protected:Npn \__msg_kernel_class_new_aux:nN #1#2
{
- \cs_new_protected:cpn { __msg_ #1 :nnnnnn } ##1##2##3##4##5##6
+ \cs_new_protected:cpn { #1 :nnnnnn } ##1##2##3##4##5##6
{
\use:x
{
@@ -8543,39 +8557,39 @@
{ \tl_to_str:n {##5} } { \tl_to_str:n {##6} }
}
}
- \cs_new_protected:cpx { __msg_ #1 :nnnnn } ##1##2##3##4##5
- { \exp_not:c { __msg_ #1 :nnnnnn } {##1} {##2} {##3} {##4} {##5} { } }
- \cs_new_protected:cpx { __msg_ #1 :nnnn } ##1##2##3##4
- { \exp_not:c { __msg_ #1 :nnnnnn } {##1} {##2} {##3} {##4} { } { } }
- \cs_new_protected:cpx { __msg_ #1 :nnn } ##1##2##3
- { \exp_not:c { __msg_ #1 :nnnnnn } {##1} {##2} {##3} { } { } { } }
- \cs_new_protected:cpx { __msg_ #1 :nn } ##1##2
- { \exp_not:c { __msg_ #1 :nnnnnn } {##1} {##2} { } { } { } { } }
- \cs_new_protected:cpx { __msg_ #1 :nnxxxx } ##1##2##3##4##5##6
+ \cs_new_protected:cpx { #1 :nnnnn } ##1##2##3##4##5
+ { \exp_not:c { #1 :nnnnnn } {##1} {##2} {##3} {##4} {##5} { } }
+ \cs_new_protected:cpx { #1 :nnnn } ##1##2##3##4
+ { \exp_not:c { #1 :nnnnnn } {##1} {##2} {##3} {##4} { } { } }
+ \cs_new_protected:cpx { #1 :nnn } ##1##2##3
+ { \exp_not:c { #1 :nnnnnn } {##1} {##2} {##3} { } { } { } }
+ \cs_new_protected:cpx { #1 :nn } ##1##2
+ { \exp_not:c { #1 :nnnnnn } {##1} {##2} { } { } { } { } }
+ \cs_new_protected:cpx { #1 :nnxxxx } ##1##2##3##4##5##6
{
\use:x
{
\exp_not:N \exp_not:n
- { \exp_not:c { __msg_ #1 :nnnnnn } {##1} {##2} }
+ { \exp_not:c { #1 :nnnnnn } {##1} {##2} }
{##3} {##4} {##5} {##6}
}
}
- \cs_new_protected:cpx { __msg_ #1 :nnxxx } ##1##2##3##4##5
- { \exp_not:c { __msg_ #1 :nnxxxx } {##1} {##2} {##3} {##4} {##5} { } }
- \cs_new_protected:cpx { __msg_ #1 :nnxx } ##1##2##3##4
- { \exp_not:c { __msg_ #1 :nnxxxx } {##1} {##2} {##3} {##4} { } { } }
- \cs_new_protected:cpx { __msg_ #1 :nnx } ##1##2##3
- { \exp_not:c { __msg_ #1 :nnxxxx } {##1} {##2} {##3} { } { } { } }
+ \cs_new_protected:cpx { #1 :nnxxx } ##1##2##3##4##5
+ { \exp_not:c { #1 :nnxxxx } {##1} {##2} {##3} {##4} {##5} { } }
+ \cs_new_protected:cpx { #1 :nnxx } ##1##2##3##4
+ { \exp_not:c { #1 :nnxxxx } {##1} {##2} {##3} {##4} { } { } }
+ \cs_new_protected:cpx { #1 :nnx } ##1##2##3
+ { \exp_not:c { #1 :nnxxxx } {##1} {##2} {##3} { } { } { } }
}
\__msg_kernel_class_new:nN { fatal } \__msg_fatal_code:nnnnnn
- \cs_undefine:N \__msg_kernel_error:nnxx
- \cs_undefine:N \__msg_kernel_error:nnx
- \cs_undefine:N \__msg_kernel_error:nn
+ \cs_undefine:N \__kernel_msg_error:nnxx
+ \cs_undefine:N \__kernel_msg_error:nnx
+ \cs_undefine:N \__kernel_msg_error:nn
\__msg_kernel_class_new:nN { error } \__msg_error_code:nnnnnn
\__msg_kernel_class_new:nN { warning } \msg_warning:nnxxxx
\__msg_kernel_class_new:nN { info } \msg_info:nnxxxx
\group_end:
-\__msg_kernel_new:nnnn { kernel } { message-already-defined }
+\__kernel_msg_new:nnnn { kernel } { message-already-defined }
{ Message~'#2'~for~module~'#1'~already~defined. }
{
\c__msg_coding_error_text_tl
@@ -8583,7 +8597,7 @@
by~the~module~'#1':~this~message~already~exists.
\c__msg_return_text_tl
}
-\__msg_kernel_new:nnnn { kernel } { message-unknown }
+\__kernel_msg_new:nnnn { kernel } { message-unknown }
{ Unknown~message~'#2'~for~module~'#1'. }
{
\c__msg_coding_error_text_tl
@@ -8591,14 +8605,14 @@
by~the~module~'#1':~this~message~does~not~exist.
\c__msg_return_text_tl
}
-\__msg_kernel_new:nnnn { kernel } { message-class-unknown }
+\__kernel_msg_new:nnnn { kernel } { message-class-unknown }
{ Unknown~message~class~'#1'. }
{
LaTeX~has~been~asked~to~redirect~messages~to~a~class~'#1':\\
this~was~never~defined.
\c__msg_return_text_tl
}
-\__msg_kernel_new:nnnn { kernel } { message-redirect-loop }
+\__kernel_msg_new:nnnn { kernel } { message-redirect-loop }
{
Message~redirection~loop~caused~by~ {#1} ~=>~ {#2}
\tl_if_empty:nF {#3} { ~for~module~' \use_none:n #3 ' } .
@@ -8609,7 +8623,7 @@
created~an~infinite~loop\\\\
\iow_indent:n { #4 \\\\ }
}
-\__msg_kernel_new:nnnn { kernel } { bad-number-of-arguments }
+\__kernel_msg_new:nnnn { kernel } { bad-number-of-arguments }
{ Function~'#1'~cannot~be~defined~with~#2~arguments. }
{
\c__msg_coding_error_text_tl
@@ -8617,17 +8631,17 @@
#2~arguments.~
TeX~allows~between~0~and~9~arguments~for~a~single~function.
}
-\__msg_kernel_new:nnn { kernel } { char-active }
+\__kernel_msg_new:nnn { kernel } { char-active }
{ Cannot~generate~active~chars. }
-\__msg_kernel_new:nnn { kernel } { char-invalid-catcode }
+\__kernel_msg_new:nnn { kernel } { char-invalid-catcode }
{ Invalid~catcode~for~char~generation. }
-\__msg_kernel_new:nnn { kernel } { char-null-space }
+\__kernel_msg_new:nnn { kernel } { char-null-space }
{ Cannot~generate~null~char~as~a~space. }
-\__msg_kernel_new:nnn { kernel } { char-out-of-range }
+\__kernel_msg_new:nnn { kernel } { char-out-of-range }
{ Charcode~requested~out~of~engine~range. }
-\__msg_kernel_new:nnn { kernel } { char-space }
+\__kernel_msg_new:nnn { kernel } { char-space }
{ Cannot~generate~space~chars. }
-\__msg_kernel_new:nnnn { kernel } { command-already-defined }
+\__kernel_msg_new:nnnn { kernel } { command-already-defined }
{ Control~sequence~#1~already~defined. }
{
\c__msg_coding_error_text_tl
@@ -8636,33 +8650,33 @@
The~current~meaning~is:\\
\ \ #2
}
-\__msg_kernel_new:nnnn { kernel } { command-not-defined }
+\__kernel_msg_new:nnnn { kernel } { command-not-defined }
{ Control~sequence~#1~undefined. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~use~a~control~sequence~'#1':\\
this~has~not~been~defined~yet.
}
-\__msg_kernel_new:nnn { kernel } { deprecated-command }
+\__kernel_msg_new:nnn { kernel } { deprecated-command }
{
The~deprecated~command~'#2'~has~been~or~will~be~removed~on~#1.
\tl_if_empty:nF {#3} { ~Use~instead~'#3'. }
}
-\__msg_kernel_new:nnnn { kernel } { empty-search-pattern }
+\__kernel_msg_new:nnnn { kernel } { empty-search-pattern }
{ Empty~search~pattern. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~replace~an~empty~pattern~by~'#1':~that~
would~lead~to~an~infinite~loop!
}
-\__msg_kernel_new:nnnn { kernel } { out-of-registers }
+\__kernel_msg_new:nnnn { kernel } { out-of-registers }
{ No~room~for~a~new~#1. }
{
TeX~only~supports~\int_use:N \c_max_register_int \ %
of~each~type.~All~the~#1~registers~have~been~used.~
This~run~will~be~aborted~now.
}
-\__msg_kernel_new:nnnn { kernel } { non-base-function }
+\__kernel_msg_new:nnnn { kernel } { non-base-function }
{ Function~'#1'~is~not~a~base~function }
{
\c__msg_coding_error_text_tl
@@ -8671,7 +8685,7 @@
To~define~variants~use~\iow_char:N\\cs_generate_variant:Nn~
and~to~define~other~functions~use~\iow_char:N\\cs_new:Npn.
}
-\__msg_kernel_new:nnnn { kernel } { missing-colon }
+\__kernel_msg_new:nnnn { kernel } { missing-colon }
{ Function~'#1'~contains~no~':'. }
{
\c__msg_coding_error_text_tl
@@ -8680,47 +8694,47 @@
needed~when~defining~conditionals~or~variants,~or~when~building~a~
parameter~text~from~the~number~of~arguments~of~the~function.
}
-\__msg_kernel_new:nnnn { kernel } { overflow }
+\__kernel_msg_new:nnnn { kernel } { overflow }
{ Integers~larger~than~2^{30}-1~cannot~be~stored~in~arrays. }
{
An~attempt~was~made~to~store~#3~at~position~#2~in~the~array~'#1'.~
The~largest~allowed~value~#4~will~be~used~instead.
}
-\__msg_kernel_new:nnnn { kernel } { out-of-bounds }
+\__kernel_msg_new:nnnn { kernel } { out-of-bounds }
{ Access~to~an~entry~beyond~an~array's~bounds. }
{
An~attempt~was~made~to~access~or~store~data~at~position~#2~of~the~
array~'#1',~but~this~array~has~entries~at~positions~from~1~to~#3.
}
-\__msg_kernel_new:nnnn { kernel } { protected-predicate }
+\__kernel_msg_new:nnnn { kernel } { protected-predicate }
{ Predicate~'#1'~must~be~expandable. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~define~'#1'~as~a~protected~predicate.~
Only~expandable~tests~can~have~a~predicate~version.
}
-\__msg_kernel_new:nnnn { kernel } { conditional-form-unknown }
+\__kernel_msg_new:nnnn { kernel } { conditional-form-unknown }
{ Conditional~form~'#1'~for~function~'#2'~unknown. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~define~the~conditional~form~'#1'~of~
the~function~'#2',~but~only~'TF',~'T',~'F',~and~'p'~forms~exist.
}
-\__msg_kernel_new:nnnn { kernel } { scanmark-already-defined }
+\__kernel_msg_new:nnnn { kernel } { scanmark-already-defined }
{ Scan~mark~#1~already~defined. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~create~a~new~scan~mark~'#1'~
but~this~name~has~already~been~used~for~a~scan~mark.
}
-\__msg_kernel_new:nnnn { kernel } { variable-not-defined }
+\__kernel_msg_new:nnnn { kernel } { variable-not-defined }
{ Variable~#1~undefined. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~show~a~variable~#1,~but~this~has~not~
been~defined~yet.
}
-\__msg_kernel_new:nnnn { kernel } { variant-too-long }
+\__kernel_msg_new:nnnn { kernel } { variant-too-long }
{ Variant~form~'#1'~longer~than~base~signature~of~'#2'. }
{
\c__msg_coding_error_text_tl
@@ -8728,7 +8742,7 @@
with~a~signature~starting~with~'#1',~but~that~is~longer~than~
the~signature~(part~after~the~colon)~of~'#2'.
}
-\__msg_kernel_new:nnnn { kernel } { invalid-variant }
+\__kernel_msg_new:nnnn { kernel } { invalid-variant }
{ Variant~form~'#1'~invalid~for~base~form~'#2'. }
{
\c__msg_coding_error_text_tl
@@ -8736,17 +8750,28 @@
with~a~signature~starting~with~'#1',~but~cannot~change~an~argument~
from~type~'#3'~to~type~'#4'.
}
+\__kernel_msg_new:nnn { kernel } { deprecated-variant }
+ {
+ Variant~form~'#1'~deprecated~for~base~form~'#2'.~
+ One~should~not~change~an~argument~from~type~'#3'~to~type~'#4'
+ \str_case:nnF {#3}
+ {
+ { n } { :~use~a~'\token_if_eq_charcode:NNTF #4 c v V'~variant? }
+ { N } { :~base~form~only~accepts~a~single~token~argument. }
+ {#4} { :~base~form~is~already~a~variant. }
+ } { . }
+ }
\bool_if:NTF \l@expl@enable@debug@bool
{
- \__msg_kernel_new:nnnn { kernel } { debug }
+ \__kernel_msg_new:nnnn { kernel } { debug }
{ The~debugging~option~'#1'~does~not~exist~\msg_line_context:. }
{
The~functions~'\iow_char:N\\debug_on:n'~and~
'\iow_char:N\\debug_off:n'~only~accept~the~arguments~
'check-declarations',~'deprecation',~'log-functions',~not~'#1'.
}
- \__msg_kernel_new:nnn { kernel } { expr } { '#2'~in~#1 }
- \__msg_kernel_new:nnnn { kernel } { local-global }
+ \__kernel_msg_new:nnn { kernel } { expr } { '#2'~in~#1 }
+ \__kernel_msg_new:nnnn { kernel } { local-global }
{ Inconsistent~local/global~assignment }
{
\c__msg_coding_error_text_tl
@@ -8755,7 +8780,7 @@
\if:w l #1 local \else: \if:w g #1 global \else: constant \fi: \fi: \
variable~'#3'.
}
- \__msg_kernel_new:nnnn { kernel } { non-declared-variable }
+ \__kernel_msg_new:nnnn { kernel } { non-declared-variable }
{ The~variable~#1~has~not~been~declared~\msg_line_context:. }
{
Checking~is~active,~and~you~have~tried~do~so~something~like: \\
@@ -8767,7 +8792,7 @@
}
}
{
- \__msg_kernel_new:nnnn { kernel } { enable-debug }
+ \__kernel_msg_new:nnnn { kernel } { enable-debug }
{ To~use~'#1'~load~expl3~with~the~'enable-debug'~option. }
{
The~function~'#1'~will~be~ignored~because~it~can~only~work~if~
@@ -8777,44 +8802,44 @@
given~when~loading~expl3.
}
}
-\__msg_kernel_new:nnn { kernel } { bad-exp-end-f }
+\__kernel_msg_new:nnn { kernel } { bad-exp-end-f }
{ Misused~\exp_end_continue_f:w or~:nw }
-\__msg_kernel_new:nnn { kernel } { bad-variable }
+\__kernel_msg_new:nnn { kernel } { bad-variable }
{ Erroneous~variable~#1 used! }
-\__msg_kernel_new:nnn { kernel } { misused-sequence }
+\__kernel_msg_new:nnn { kernel } { misused-sequence }
{ A~sequence~was~misused. }
-\__msg_kernel_new:nnn { kernel } { misused-prop }
+\__kernel_msg_new:nnn { kernel } { misused-prop }
{ A~property~list~was~misused. }
-\__msg_kernel_new:nnn { kernel } { negative-replication }
+\__kernel_msg_new:nnn { kernel } { negative-replication }
{ Negative~argument~for~\prg_replicate:nn. }
-\__msg_kernel_new:nnn { kernel } { prop-keyval }
+\__kernel_msg_new:nnn { kernel } { prop-keyval }
{ Missing/extra~'='~in~'#1'~(in~'..._keyval:Nn') }
-\__msg_kernel_new:nnn { kernel } { unknown-comparison }
+\__kernel_msg_new:nnn { kernel } { unknown-comparison }
{ Relation~'#1'~unknown:~use~=,~<,~>,~==,~!=,~<=,~>=. }
-\__msg_kernel_new:nnn { kernel } { zero-step }
+\__kernel_msg_new:nnn { kernel } { zero-step }
{ Zero~step~size~for~step~function~#1. }
-\__msg_kernel_new:nnn { kernel } { show-clist }
+\__kernel_msg_new:nnn { kernel } { show-clist }
{
The~comma~list~ \tl_if_empty:nF {#1} { #1 ~ }
\tl_if_empty:nTF {#2}
{ is~empty \\>~ . }
{ contains~the~items~(without~outer~braces): #2 . }
}
-\__msg_kernel_new:nnn { kernel } { show-prop }
+\__kernel_msg_new:nnn { kernel } { show-prop }
{
The~property~list~#1~
\tl_if_empty:nTF {#2}
{ is~empty \\>~ . }
{ contains~the~pairs~(without~outer~braces): #2 . }
}
-\__msg_kernel_new:nnn { kernel } { show-seq }
+\__kernel_msg_new:nnn { kernel } { show-seq }
{
The~sequence~#1~
\tl_if_empty:nTF {#2}
{ is~empty \\>~ . }
{ contains~the~items~(without~outer~braces): #2 . }
}
-\__msg_kernel_new:nnn { kernel } { show-streams }
+\__kernel_msg_new:nnn { kernel } { show-streams }
{
\tl_if_empty:nTF {#2} { No~ } { The~following~ }
\str_case:nn {#1}
@@ -8842,7 +8867,7 @@
\exp_args:Ncx \__msg_tmp:w { LaTeX3~error: }
{ \char_generate:nn { `\ } { 7 } }
\group_end:
-\cs_new:Npn \__msg_kernel_expandable_error:nnnnnn #1#2#3#4#5#6
+\cs_new:Npn \__kernel_msg_expandable_error:nnnnnn #1#2#3#4#5#6
{
\exp_args:Nf \__msg_expandable_error:n
{
@@ -8851,27 +8876,27 @@
{#3} {#4} {#5} {#6}
}
}
-\cs_new:Npn \__msg_kernel_expandable_error:nnnnn #1#2#3#4#5
+\cs_new:Npn \__kernel_msg_expandable_error:nnnnn #1#2#3#4#5
{
- \__msg_kernel_expandable_error:nnnnnn
+ \__kernel_msg_expandable_error:nnnnnn
{#1} {#2} {#3} {#4} {#5} { }
}
-\cs_new:Npn \__msg_kernel_expandable_error:nnnn #1#2#3#4
+\cs_new:Npn \__kernel_msg_expandable_error:nnnn #1#2#3#4
{
- \__msg_kernel_expandable_error:nnnnnn
+ \__kernel_msg_expandable_error:nnnnnn
{#1} {#2} {#3} {#4} { } { }
}
-\cs_new:Npn \__msg_kernel_expandable_error:nnn #1#2#3
+\cs_new:Npn \__kernel_msg_expandable_error:nnn #1#2#3
{
- \__msg_kernel_expandable_error:nnnnnn
+ \__kernel_msg_expandable_error:nnnnnn
{#1} {#2} {#3} { } { } { }
}
-\cs_new:Npn \__msg_kernel_expandable_error:nn #1#2
+\cs_new:Npn \__kernel_msg_expandable_error:nn #1#2
{
- \__msg_kernel_expandable_error:nnnnnn
+ \__kernel_msg_expandable_error:nnnnnn
{#1} {#2} { } { } { } { }
}
-%% File: l3file.dtx Copyright (C) 1990-2017 The LaTeX3 Project
+%% File: l3file.dtx Copyright (C) 1990-2018 The LaTeX3 Project
\str_new:N \g_file_curr_dir_str
\str_new:N \g_file_curr_ext_str
\str_new:N \g_file_curr_name_str
@@ -8927,7 +8952,7 @@
\int_if_even:nF
{ 0 \tl_map_function:NN #2 \__file_name_quote_aux:n }
{
- \__msg_kernel_error:nnx
+ \__kernel_msg_error:nnx
{ kernel } { unbalanced-quote-in-filename } {#2}
}
\tl_remove_all:Nn #2 { " }
@@ -8983,7 +9008,7 @@
\cs_new_protected:Npn \__file_missing:n #1
{
\__file_name_sanitize:nN {#1} \l__file_base_name_str
- \__msg_kernel_error:nnx { kernel } { file-not-found }
+ \__kernel_msg_error:nnx { kernel } { file-not-found }
{ \l__file_base_name_str }
}
\cs_new_protected:Npn \file_input:n #1
@@ -9375,7 +9400,7 @@
}
\cs_new_protected:Npn \iow_indent:n #1
{
- \__msg_kernel_error:nnnnn { kernel } { iow-indent }
+ \__kernel_msg_error:nnnnn { kernel } { iow-indent }
{ \iow_wrap:nnnN } { \iow_indent:n } {#1}
#1
}
@@ -9387,7 +9412,7 @@
}
\cs_new:Npn \__iow_indent_error:n #1
{
- \__msg_kernel_expandable_error:nnnnn { kernel } { iow-indent }
+ \__kernel_msg_expandable_error:nnnnn { kernel } { iow-indent }
{ \iow_wrap:nnnN } { \iow_indent:n } {#1}
#1
}
@@ -9627,38 +9652,38 @@
\cs_new:Npn \__iow_wrap_trim:w ##1 #1 \q_stop {##1}
}
\exp_args:NV \__iow_tmp:w \c_catcode_other_space_tl
-\__msg_kernel_new:nnnn { kernel } { file-not-found }
+\__kernel_msg_new:nnnn { kernel } { file-not-found }
{ File~'#1'~not~found. }
{
The~requested~file~could~not~be~found~in~the~current~directory,~
in~the~TeX~search~path~or~in~the~LaTeX~search~path.
}
-\__msg_kernel_new:nnn { kernel } { file-list }
+\__kernel_msg_new:nnn { kernel } { file-list }
{
>~File~List~<
#1 \\
.............
}
-\__msg_kernel_new:nnnn { kernel } { input-streams-exhausted }
+\__kernel_msg_new:nnnn { kernel } { input-streams-exhausted }
{ Input~streams~exhausted }
{
TeX~can~only~open~up~to~16~input~streams~at~one~time.\\
All~16~are~currently~in~use,~and~something~wanted~to~open~
another~one.
}
-\__msg_kernel_new:nnnn { kernel } { output-streams-exhausted }
+\__kernel_msg_new:nnnn { kernel } { output-streams-exhausted }
{ Output~streams~exhausted }
{
TeX~can~only~open~up~to~16~output~streams~at~one~time.\\
All~16~are~currently~in~use,~and~something~wanted~to~open~
another~one.
}
-\__msg_kernel_new:nnnn { kernel } { unbalanced-quote-in-filename }
+\__kernel_msg_new:nnnn { kernel } { unbalanced-quote-in-filename }
{ Unbalanced~quotes~in~file~name~'#1'. }
{
File~names~must~contain~balanced~numbers~of~quotes~(").
}
-\__msg_kernel_new:nnnn { kernel } { iow-indent }
+\__kernel_msg_new:nnnn { kernel } { iow-indent }
{ Only~#1 (arg~1)~allows~#2 }
{
The~command~#2 can~only~be~used~in~messages~
@@ -9667,18 +9692,13 @@
}
\tl_new:N \g_file_current_name_tl
\tl_gset:Nn \g_file_current_name_tl { \g_file_curr_name_str }
-\__debug:TF
+\__kernel_deprecation_code:nn
{
- \tl_gput_right:Nn \g__debug_deprecation_on_tl
- {
- \__deprecation_error:Nnn \g_file_current_name_tl
- { \g_file_curr_name_str } { 2018-12-31 }
- }
- \tl_gput_right:Nn \g__debug_deprecation_off_tl
- { \tex_def:D \g_file_current_name_tl { \g_file_curr_name_str } }
+ \__deprecation_error:Nnn \g_file_current_name_tl
+ { \g_file_curr_name_str } { 2018-12-31 }
}
- { }
-\__debug_deprecation:nnNNpn { 2018-12-31 }
+ { \tex_def:D \g_file_current_name_tl { \g_file_curr_name_str } }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
{ \seq_put_right:Nn \l_file_search_path_seq }
\cs_new_protected:Npn \file_path_include:n #1
{
@@ -9686,34 +9706,34 @@
\seq_if_in:NVF \l_file_search_path_seq \l__file_full_name_str
{ \seq_put_right:NV \l_file_search_path_seq \l__file_full_name_str }
}
-\__debug_deprecation:nnNNpn { 2018-12-31 }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
{ \seq_remove_all:Nn \l_file_search_path_seq }
\cs_new_protected:Npn \file_path_remove:n #1
{
\__file_name_sanitize:nN {#1} \l__file_full_name_str
\seq_remove_all:NV \l_file_search_path_seq \l__file_full_name_str
}
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \file_get_full_name:nN }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_get_full_name:nN }
\cs_new_protected:Npn \file_add_path:nN #1#2
{
\file_get_full_name:nN {#1} #2
\str_if_empty:NT #2
{ \tl_set:Nn #2 { \q_no_value } }
}
-\__debug_deprecation:nnNNpn { 2017-12-31 } { \ior_str_get:NN }
+\__kernel_patch_deprecation:nnNNpn { 2017-12-31 } { \ior_str_get:NN }
\cs_new_protected:Npn \ior_get_str:NN { \ior_str_get:NN }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \file_log_list: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_log_list: }
\cs_new_protected:Npn \file_list: { \file_log_list: }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \ior_show_list: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_show_list: }
\cs_new_protected:Npn \ior_list_streams: { \ior_show_list: }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \ior_log_list: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_log_list: }
\cs_new_protected:Npn \ior_log_streams: { \ior_log_list: }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \iow_show_list: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_show_list: }
\cs_new_protected:Npn \iow_list_streams: { \iow_show_list: }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \iow_log_list: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_log_list: }
\cs_new_protected:Npn \iow_log_streams: { \iow_log_list: }
%% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project
-%% (C) 2012-2017 The LaTeX3 Project
+%% (C) 2012-2018 The LaTeX3 Project
\cs_new_eq:NN \if_dim:w \tex_ifdim:D
\cs_new_eq:NN \__dim_eval:w \etex_dimexpr:D
\cs_new_eq:NN \__dim_eval_end: \tex_relax:D
@@ -9723,16 +9743,16 @@
\cs:w newdimen \cs_end: #1
}
\cs_generate_variant:Nn \dim_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \dim_const:Nn #1#2
{
\dim_new:N #1
\tex_global:D #1 ~ \dim_eval:n {#2} \scan_stop:
}
\cs_generate_variant:Nn \dim_const:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \dim_zero:N #1 { #1 \c_zero_skip }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \dim_gzero:N #1
{ \tex_global:D #1 \c_zero_skip }
\cs_generate_variant:Nn \dim_zero:N { c }
@@ -9749,46 +9769,46 @@
{ TF , T , F , p }
\cs_set_protected:Npn \__dim_tmp:w #1#2#3
{
- \__debug_patch_args:nnnNNpn
+ \__kernel_patch_args:nnnNNpn
{ #1 ##1 }
{ }
- { {##1} { \__debug_chk_expr:nNnN {##2} \__dim_eval:w { } #3 } }
+ { {##1} { \__kernel_chk_expr:nNnN {##2} \__dim_eval:w { } #3 } }
#2 #3
}
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \dim_set:Nn #1#2
{ #1 ~ \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \dim_gset:Nn #1#2
{ \tex_global:D #1 ~ \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
\cs_generate_variant:Nn \dim_set:Nn { c }
\cs_generate_variant:Nn \dim_gset:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \dim_set_eq:NN #1#2
{ #1 = #2 \scan_stop: }
\cs_generate_variant:Nn \dim_set_eq:NN { c , Nc , cc }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \dim_gset_eq:NN #1#2
{ \tex_global:D #1 = #2 \scan_stop: }
\cs_generate_variant:Nn \dim_gset_eq:NN { c , Nc , cc }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \dim_add:Nn #1#2
{ \tex_advance:D #1 by \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \dim_gadd:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
\cs_generate_variant:Nn \dim_add:Nn { c }
\cs_generate_variant:Nn \dim_gadd:Nn { c }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \dim_sub:Nn #1#2
{ \tex_advance:D #1 by - \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \dim_gsub:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by - \__dim_eval:w #2 \__dim_eval_end: \scan_stop: }
\cs_generate_variant:Nn \dim_sub:Nn { c }
\cs_generate_variant:Nn \dim_gsub:Nn { c }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_abs:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_abs:n } }
\cs_new:Npn \dim_abs:n #1
{
\exp_after:wN \__dim_abs:N
@@ -9796,10 +9816,10 @@
}
\cs_new:Npn \__dim_abs:N #1
{ \if_meaning:w - #1 \else: \exp_after:wN #1 \fi: }
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_max:nn }
- { \__debug_chk_expr:nNnN {#2} \__dim_eval:w { } \dim_max:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_max:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__dim_eval:w { } \dim_max:nn }
}
\cs_new:Npn \dim_max:nn #1#2
{
@@ -9809,10 +9829,10 @@
>
\__dim_eval_end:
}
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_min:nn }
- { \__debug_chk_expr:nNnN {#2} \__dim_eval:w { } \dim_min:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_min:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__dim_eval:w { } \dim_min:nn }
}
\cs_new:Npn \dim_min:nn #1#2
{
@@ -9834,11 +9854,11 @@
{ \__dim_ratio:n {#1} / \__dim_ratio:n {#2} }
\cs_new:Npn \__dim_ratio:n #1
{ \__int_value:w \__dim_eval:w (#1) \__dim_eval_end: }
-\__debug_patch_conditional_args:nNNpnn
+\__kernel_patch_conditional_args:nNNpnn
{
- { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_compare:nNn }
+ { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_compare:nNn }
{ \__dim_eval_end: #2 }
- { \__debug_chk_expr:nNnN {#3} \__dim_eval:w { } \dim_compare:nNn }
+ { \__kernel_chk_expr:nNnN {#3} \__dim_eval:w { } \dim_compare:nNn }
}
\prg_new_conditional:Npnn \dim_compare:nNn #1#2#3 { p , T , F , TF }
{
@@ -9964,17 +9984,78 @@
\dim_compare:nNnF {#1} #2 {#3}
{ \dim_do_until:nNnn {#1} #2 {#3} {#4} }
}
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_eval:n } }
+\__kernel_patch_args:nNNpn
+ {
+ { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_step_function:nnnN }
+ { \__kernel_chk_expr:nNnN {#2} \__dim_eval:w { } \dim_step_function:nnnN }
+ { \__kernel_chk_expr:nNnN {#3} \__dim_eval:w { } \dim_step_function:nnnN }
+ }
+\cs_new:Npn \dim_step_function:nnnN #1#2#3
+ {
+ \exp_after:wN \__dim_step:wwwN
+ \tex_the:D \__dim_eval:w #1 \exp_after:wN ;
+ \tex_the:D \__dim_eval:w #2 \exp_after:wN ;
+ \tex_the:D \__dim_eval:w #3 ;
+ }
+\cs_new:Npn \__dim_step:wwwN #1; #2; #3; #4
+ {
+ \dim_compare:nNnTF {#2} > \c_zero_dim
+ { \__dim_step:NnnnN > }
+ {
+ \dim_compare:nNnTF {#2} = \c_zero_dim
+ {
+ \__kernel_msg_expandable_error:nnn { kernel } { zero-step } {#4}
+ \use_none:nnnn
+ }
+ { \__dim_step:NnnnN < }
+ }
+ {#1} {#2} {#3} #4
+ }
+\cs_new:Npn \__dim_step:NnnnN #1#2#3#4#5
+ {
+ \dim_compare:nNnF {#2} #1 {#4}
+ {
+ #5 {#2}
+ \exp_args:NNf \__dim_step:NnnnN
+ #1 { \dim_eval:n { #2 + #3 } } {#3} {#4} #5
+ }
+ }
+\cs_new_protected:Npn \dim_step_inline:nnnn
+ {
+ \int_gincr:N \g__prg_map_int
+ \exp_args:NNc \__dim_step:NNnnnn
+ \cs_gset_protected:Npn
+ { __prg_map_ \int_use:N \g__prg_map_int :w }
+ }
+\cs_new_protected:Npn \dim_step_variable:nnnNn #1#2#3#4#5
+ {
+ \int_gincr:N \g__prg_map_int
+ \exp_args:NNc \__dim_step:NNnnnn
+ \cs_gset_protected:Npx
+ { __prg_map_ \int_use:N \g__prg_map_int :w }
+ {#1}{#2}{#3}
+ {
+ \tl_set:Nn \exp_not:N #4 {##1}
+ \exp_not:n {#5}
+ }
+ }
+\cs_new_protected:Npn \__dim_step:NNnnnn #1#2#3#4#5#6
+ {
+ #1 #2 ##1 {#6}
+ \dim_step_function:nnnN {#3} {#4} {#5} #2
+ \__prg_break_point:Nn \scan_stop: { \int_gdecr:N \g__prg_map_int }
+ }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_eval:n } }
\cs_new:Npn \dim_eval:n #1
{ \dim_use:N \__dim_eval:w #1 \__dim_eval_end: }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \__dim_eval:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \__dim_eval:n } }
\cs_new:Npn \__dim_eval:n #1 { \__dim_eval:w #1 \__dim_eval_end: }
\cs_new_eq:NN \dim_use:N \tex_the:D
\cs_new:Npn \dim_use:c #1 { \tex_the:D \cs:w #1 \cs_end: }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_to_decimal:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_to_decimal:n } }
\cs_new:Npn \dim_to_decimal:n #1
{
\exp_after:wN
@@ -9992,8 +10073,8 @@
}
\cs_new:Npn \dim_to_decimal_in_bp:n #1
{ \dim_to_decimal:n { ( #1 ) * 800 / 803 } }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_to_decimal_in_sp:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \__dim_eval:w { } \dim_to_decimal_in_sp:n } }
\cs_new:Npn \dim_to_decimal_in_sp:n #1
{ \int_eval:n { \__dim_eval:w #1 \__dim_eval_end: } }
\cs_new:Npn \dim_to_decimal_in_unit:nn #1#2
@@ -10024,16 +10105,16 @@
\cs:w newskip \cs_end: #1
}
\cs_generate_variant:Nn \skip_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \skip_const:Nn #1#2
{
\skip_new:N #1
\tex_global:D #1 ~ \skip_eval:n {#2} \scan_stop:
}
\cs_generate_variant:Nn \skip_const:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \skip_zero:N #1 { #1 \c_zero_skip }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \skip_gzero:N #1 { \tex_global:D #1 \c_zero_skip }
\cs_generate_variant:Nn \skip_zero:N { c }
\cs_generate_variant:Nn \skip_gzero:N { c }
@@ -10049,16 +10130,16 @@
{ TF , T , F , p }
\cs_set_protected:Npn \__dim_tmp:w #1#2#3
{
- \__debug_patch_args:nnnNNpn
+ \__kernel_patch_args:nnnNNpn
{ #1 ##1 }
{ }
- { {##1} { \__debug_chk_expr:nNnN {##2} \etex_glueexpr:D { } #3 } }
+ { {##1} { \__kernel_chk_expr:nNnN {##2} \etex_glueexpr:D { } #3 } }
#2 #3
}
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \skip_set:Nn #1#2
{ #1 ~ \etex_glueexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \skip_gset:Nn #1#2
{ \tex_global:D #1 ~ \etex_glueexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \skip_set:Nn { c }
@@ -10067,18 +10148,18 @@
\cs_generate_variant:Nn \skip_set_eq:NN { c , Nc , cc }
\cs_new_protected:Npn \skip_gset_eq:NN #1#2 { \tex_global:D #1 = #2 }
\cs_generate_variant:Nn \skip_gset_eq:NN { c , Nc , cc }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \skip_add:Nn #1#2
{ \tex_advance:D #1 by \etex_glueexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \skip_gadd:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by \etex_glueexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \skip_add:Nn { c }
\cs_generate_variant:Nn \skip_gadd:Nn { c }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \skip_sub:Nn #1#2
{ \tex_advance:D #1 by - \etex_glueexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \skip_gsub:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by - \etex_glueexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \skip_sub:Nn { c }
@@ -10095,10 +10176,10 @@
}
\cs_set_protected:Npn \__dim_tmp:w #1
{
- \__debug_patch_conditional_args:nNNpnn
+ \__kernel_patch_conditional_args:nNNpnn
{
{
- \__debug_chk_expr:nNnN
+ \__kernel_chk_expr:nNnN
{##1} \etex_glueexpr:D { } \skip_if_finite:n
}
}
@@ -10111,20 +10192,20 @@
\cs_new:Npn \__skip_if_finite:wwNw ##1 #1 ##2 ; ##3 ##4 \q_stop {##3}
}
\exp_args:No \__dim_tmp:w { \tl_to_str:n { fil } }
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_eval:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_eval:n } }
\cs_new:Npn \skip_eval:n #1
{ \skip_use:N \etex_glueexpr:D #1 \scan_stop: }
\cs_new_eq:NN \skip_use:N \tex_the:D
\cs_new:Npn \skip_use:c #1 { \tex_the:D \cs:w #1 \cs_end: }
\cs_new_eq:NN \skip_horizontal:N \tex_hskip:D
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_horizontal:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_horizontal:n } }
\cs_new:Npn \skip_horizontal:n #1
{ \skip_horizontal:N \etex_glueexpr:D #1 \scan_stop: }
\cs_new_eq:NN \skip_vertical:N \tex_vskip:D
-\__debug_patch_args:nNNpn
- { { \__debug_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_vertical:n } }
+\__kernel_patch_args:nNNpn
+ { { \__kernel_chk_expr:nNnN {#1} \etex_glueexpr:D { } \skip_vertical:n } }
\cs_new:Npn \skip_vertical:n #1
{ \skip_vertical:N \etex_glueexpr:D #1 \scan_stop: }
\cs_generate_variant:Nn \skip_horizontal:N { c }
@@ -10149,17 +10230,17 @@
\cs:w newmuskip \cs_end: #1
}
\cs_generate_variant:Nn \muskip_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \muskip_const:Nn #1#2
{
\muskip_new:N #1
\tex_global:D #1 ~ \muskip_eval:n {#2} \scan_stop:
}
\cs_generate_variant:Nn \muskip_const:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \muskip_zero:N #1
{ #1 \c_zero_muskip }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \muskip_gzero:N #1
{ \tex_global:D #1 \c_zero_muskip }
\cs_generate_variant:Nn \muskip_zero:N { c }
@@ -10176,52 +10257,52 @@
{ TF , T , F , p }
\cs_set_protected:Npn \__dim_tmp:w #1#2#3
{
- \__debug_patch_args:nnnNNpn
+ \__kernel_patch_args:nnnNNpn
{ #1 ##1 }
{ }
{
{##1}
{
- \__debug_chk_expr:nNnN {##2}
+ \__kernel_chk_expr:nNnN {##2}
\etex_muexpr:D { \etex_mutoglue:D } #3
}
}
#2 #3
}
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \muskip_set:Nn #1#2
{ #1 ~ \etex_muexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \muskip_gset:Nn #1#2
{ \tex_global:D #1 ~ \etex_muexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \muskip_set:Nn { c }
\cs_generate_variant:Nn \muskip_gset:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \muskip_set_eq:NN #1#2 { #1 = #2 }
\cs_generate_variant:Nn \muskip_set_eq:NN { c , Nc , cc }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \muskip_gset_eq:NN #1#2 { \tex_global:D #1 = #2 }
\cs_generate_variant:Nn \muskip_gset_eq:NN { c , Nc , cc }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \muskip_add:Nn #1#2
{ \tex_advance:D #1 by \etex_muexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \muskip_gadd:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by \etex_muexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \muskip_add:Nn { c }
\cs_generate_variant:Nn \muskip_gadd:Nn { c }
-\__dim_tmp:w \__debug_chk_var_local:N
+\__dim_tmp:w \__kernel_chk_var_local:N
\cs_new_protected:Npn \muskip_sub:Nn #1#2
{ \tex_advance:D #1 by - \etex_muexpr:D #2 \scan_stop: }
-\__dim_tmp:w \__debug_chk_var_global:N
+\__dim_tmp:w \__kernel_chk_var_global:N
\cs_new_protected:Npn \muskip_gsub:Nn #1#2
{ \tex_global:D \tex_advance:D #1 by - \etex_muexpr:D #2 \scan_stop: }
\cs_generate_variant:Nn \muskip_sub:Nn { c }
\cs_generate_variant:Nn \muskip_gsub:Nn { c }
-\__debug_patch_args:nNNpn
+\__kernel_patch_args:nNNpn
{
{
- \__debug_chk_expr:nNnN {#1} \etex_muexpr:D
+ \__kernel_chk_expr:nNnN {#1} \etex_muexpr:D
{ \etex_mutoglue:D } \muskip_eval:n
}
}
@@ -10243,7 +10324,7 @@
\muskip_new:N \l_tmpb_muskip
\muskip_new:N \g_tmpa_muskip
\muskip_new:N \g_tmpb_muskip
-%% File: l3keys.dtx Copyright (C) 2006-2017 The LaTeX3 Project
+%% File: l3keys.dtx Copyright (C) 2006-2018 The LaTeX3 Project
\tl_new:N \l__keyval_key_tl
\tl_new:N \l__keyval_value_tl
\tl_new:N \l__keyval_sanitise_tl
@@ -10346,7 +10427,7 @@
}
\else:
\cs_set:Npn \__keyval_action:
- { \__msg_kernel_error:nn { kernel } { misplaced-equals-sign } }
+ { \__kernel_msg_error:nn { kernel } { misplaced-equals-sign } }
\fi:
\fi:
\__keyval_action:
@@ -10361,13 +10442,13 @@
}
\cs_new:Npn \__keyval_action: { }
\cs_new_protected:Npn \__keyval_empty_key:
- { \__msg_kernel_error:nn { kernel } { misplaced-equals-sign } }
+ { \__kernel_msg_error:nn { kernel } { misplaced-equals-sign } }
\cs_new_protected:Npn \__keyval_def:Nn #1#2
{ \tl_set:Nx #1 { \__tl_trim_spaces:nn {#2} \__keyval_def_aux:n } }
\cs_new:Npn \__keyval_def_aux:n #1
{ \exp_after:wN \__keyval_def_aux:w #1 \q_stop }
\cs_new:Npn \__keyval_def_aux:w #1 \q_stop { \exp_not:n {#1} }
-\__msg_kernel_new:nnnn { kernel } { misplaced-equals-sign }
+\__kernel_msg_new:nnnn { kernel } { misplaced-equals-sign }
{ Misplaced~equals~sign~in~key-value~input~\msg_line_number: }
{
LaTeX~is~attempting~to~parse~some~key-value~input~but~found~
@@ -10422,7 +10503,7 @@
{
\tl_if_empty:NF \l__keys_property_tl
{
- \__msg_kernel_error:nnxx { kernel } { property-unknown }
+ \__kernel_msg_error:nnxx { kernel } { property-unknown }
{ \l__keys_property_tl } { \l_keys_path_tl }
}
}
@@ -10437,7 +10518,7 @@
\tl_if_blank:nTF {#3}
{
\tl_clear:N \l__keys_property_tl
- \__msg_kernel_error:nnn { kernel } { key-no-property } {#4}
+ \__kernel_msg_error:nnn { kernel } { key-no-property } {#4}
}
{
\str_if_eq:nnTF {#3} { . }
@@ -10476,7 +10557,7 @@
\l__keys_property_tl \q_stop
{ \use:c { \c__keys_props_root_tl \l__keys_property_tl } }
{
- \__msg_kernel_error:nnxx { kernel }
+ \__kernel_msg_error:nnxx { kernel }
{ property-requires-value } { \l__keys_property_tl }
{ \l_keys_path_tl }
}
@@ -10499,7 +10580,7 @@
{ \exp_not:c { bool_ #2 set_false:N } \exp_not:N #1 }
\__keys_cmd_set:nn { \l_keys_path_tl / unknown }
{
- \__msg_kernel_error:nnx { kernel } { boolean-values-only }
+ \__kernel_msg_error:nnx { kernel } { boolean-values-only }
{ \l_keys_key_tl }
}
\__keys_default_set:n { true }
@@ -10515,7 +10596,7 @@
{ \exp_not:c { bool_ #2 set_true:N } \exp_not:N #1 }
\__keys_cmd_set:nn { \l_keys_path_tl / unknown }
{
- \__msg_kernel_error:nnx { kernel } { boolean-values-only }
+ \__kernel_msg_error:nnx { kernel } { boolean-values-only }
{ \l_keys_key_tl }
}
\__keys_default_set:n { true }
@@ -10534,7 +10615,7 @@
{ \exp_not:v { \c__keys_type_root_tl \__keys_parent:o \l_keys_path_tl } }
{ choice }
{
- \__msg_kernel_error:nnxx { kernel } { nested-choice-key }
+ \__kernel_msg_error:nnxx { kernel } { nested-choice-key }
{ \l_keys_path_tl } { \__keys_parent:o \l_keys_path_tl }
}
{ \__keys_choice_make_aux:N #1 }
@@ -10547,7 +10628,7 @@
\__keys_cmd_set:nn { \l_keys_path_tl } { #1 {##1} }
\__keys_cmd_set:nn { \l_keys_path_tl / unknown }
{
- \__msg_kernel_error:nnxx { kernel } { key-choice-unknown }
+ \__kernel_msg_error:nnxx { kernel } { key-choice-unknown }
{ \l_keys_path_tl } {##1}
}
}
@@ -10571,10 +10652,10 @@
}
}
}
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
\cs_if_exist:cF { \c__keys_code_root_tl #1 }
- { \__debug_log:x { Defining~key~#1~\msg_line_context: } }
+ { \__kernel_debug_log:x { Defining~key~#1~\msg_line_context: } }
}
{ }
\cs_new_protected:Npn \__keys_cmd_set:nn #1#2
@@ -10659,7 +10740,7 @@
}
}
{
- \__msg_kernel_error:nnx { kernel } { property-boolean-values-only }
+ \__kernel_msg_error:nnx { kernel } { property-boolean-values-only }
{ .value_ #1 :n }
}
}
@@ -10667,7 +10748,7 @@
{
\bool_if:NF \l__keys_no_value_bool
{
- \__msg_kernel_error:nnxx { kernel } { value-forbidden }
+ \__kernel_msg_error:nnxx { kernel } { value-forbidden }
{ \l_keys_path_tl } { \l_keys_value_tl }
\__keys_validate_cleanup:w
}
@@ -10676,7 +10757,7 @@
{
\bool_if:NT \l__keys_no_value_bool
{
- \__msg_kernel_error:nnx { kernel } { value-required }
+ \__kernel_msg_error:nnx { kernel } { value-required }
{ \l_keys_path_tl }
\__keys_validate_cleanup:w
}
@@ -11041,7 +11122,7 @@
\exp_after:wN \cs_end: \exp_after:wN { \l_keys_value_tl }
}
{
- \__msg_kernel_error:nnxx { kernel } { key-unknown }
+ \__kernel_msg_error:nnxx { kernel } { key-unknown }
{ \l_keys_path_tl } { \l__keys_module_tl }
}
}
@@ -11120,16 +11201,16 @@
}
{ } { }
}
-\__msg_kernel_new:nnnn { kernel } { boolean-values-only }
+\__kernel_msg_new:nnnn { kernel } { boolean-values-only }
{ Key~'#1'~accepts~boolean~values~only. }
{ The~key~'#1'~only~accepts~the~values~'true'~and~'false'. }
-\__msg_kernel_new:nnnn { kernel } { key-choice-unknown }
+\__kernel_msg_new:nnnn { kernel } { key-choice-unknown }
{ Key~'#1'~accepts~only~a~fixed~set~of~choices. }
{
The~key~'#1'~only~accepts~predefined~values,~
and~'#2'~is~not~one~of~these.
}
-\__msg_kernel_new:nnnn { kernel } { key-no-property }
+\__kernel_msg_new:nnnn { kernel } { key-no-property }
{ No~property~given~in~definition~of~key~'#1'. }
{
\c__msg_coding_error_text_tl
@@ -11138,51 +11219,51 @@
\iow_indent:n { #1 .<property> } \\ \\
LaTeX~did~not~find~a~'.'~to~indicate~the~start~of~a~property.
}
-\__msg_kernel_new:nnnn { kernel } { key-unknown }
+\__kernel_msg_new:nnnn { kernel } { key-unknown }
{ The~key~'#1'~is~unknown~and~is~being~ignored. }
{
The~module~'#2'~does~not~have~a~key~called~'#1'.\\
Check~that~you~have~spelled~the~key~name~correctly.
}
-\__msg_kernel_new:nnnn { kernel } { nested-choice-key }
+\__kernel_msg_new:nnnn { kernel } { nested-choice-key }
{ Attempt~to~define~'#1'~as~a~nested~choice~key. }
{
The~key~'#1'~cannot~be~defined~as~a~choice~as~the~parent~key~'#2'~is~
itself~a~choice.
}
-\__msg_kernel_new:nnnn { kernel } { property-boolean-values-only }
+\__kernel_msg_new:nnnn { kernel } { property-boolean-values-only }
{ The~property~'#1'~accepts~boolean~values~only. }
{
\c__msg_coding_error_text_tl
The~property~'#1'~only~accepts~the~values~'true'~and~'false'.
}
-\__msg_kernel_new:nnnn { kernel } { property-requires-value }
+\__kernel_msg_new:nnnn { kernel } { property-requires-value }
{ The~property~'#1'~requires~a~value. }
{
\c__msg_coding_error_text_tl
LaTeX~was~asked~to~set~property~'#1'~for~key~'#2'.\\
No~value~was~given~for~the~property,~and~one~is~required.
}
-\__msg_kernel_new:nnnn { kernel } { property-unknown }
+\__kernel_msg_new:nnnn { kernel } { property-unknown }
{ The~key~property~'#1'~is~unknown. }
{
\c__msg_coding_error_text_tl
LaTeX~has~been~asked~to~set~the~property~'#1'~for~key~'#2':~
this~property~is~not~defined.
}
-\__msg_kernel_new:nnnn { kernel } { value-forbidden }
+\__kernel_msg_new:nnnn { kernel } { value-forbidden }
{ The~key~'#1'~does~not~take~a~value. }
{
The~key~'#1'~should~be~given~without~a~value.\\
The~value~'#2'~was~present:~the~key~will~be~ignored.
}
-\__msg_kernel_new:nnnn { kernel } { value-required }
+\__kernel_msg_new:nnnn { kernel } { value-required }
{ The~key~'#1'~requires~a~value. }
{
The~key~'#1'~must~have~a~value.\\
No~value~was~present:~the~key~will~be~ignored.
}
-\__msg_kernel_new:nnn { kernel } { show-key }
+\__kernel_msg_new:nnn { kernel } { show-key }
{
The~key~#1~
\tl_if_empty:nTF {#2}
@@ -11190,7 +11271,7 @@
{ has~the~properties: #2 . }
}
%% File: l3fp.dtx Copyright (C) 2011-2017 The LaTeX3 Project
-%% File: l3fp-aux.dtx Copyright(C) 2011-2017 The LaTeX3 Project
+%% File: l3fp-aux.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\cs_new:Npn \__fp_use_none_stop_f:n #1 { \exp_stop_f: }
\cs_new:Npn \__fp_use_s:n #1 { #1; }
\cs_new:Npn \__fp_use_s:nn #1#2 { #1#2; }
@@ -11201,12 +11282,11 @@
\cs_new:Npn \__fp_rrot:www #1; #2; #3; { #2; #3; #1; }
\cs_new:Npn \__fp_use_i:ww #1; #2; { #1; }
\cs_new:Npn \__fp_use_i:www #1; #2; #3; { #1; }
+\cs_new_protected:Npn \__fp_misused:n #1
+ { \__kernel_msg_error:nnx { kernel } { misused-fp } { \fp_to_tl:n {#1} } }
\__scan_new:N \s__fp
\cs_new_protected:Npn \__fp_chk:w #1 ;
- {
- \__msg_kernel_error:nnx { kernel } { misused-fp }
- { \fp_to_tl:n { \s__fp \__fp_chk:w #1 ; } }
- }
+ { \__fp_misused:n { \s__fp \__fp_chk:w #1 ; } }
\__scan_new:N \s__fp_mark
\__scan_new:N \s__fp_stop
\__scan_new:N \s__fp_invalid
@@ -11305,13 +11385,103 @@
\cs_new:Npn \__fp_exp_after_normal:Nwwwww
#1 #2; 1 #3 ; 1 #4 ; 1 #5 ; 1 #6 ;
{ \s__fp \__fp_chk:w 1 #1 {#2} {#3} {#4} {#5} {#6} ; }
-\cs_new:Npn \__fp_exp_after_array_f:w #1
+\__scan_new:N \s__fp_tuple
+\cs_new_protected:Npn \__fp_tuple_chk:w #1 ;
+ { \__fp_misused:n { \s__fp_tuple \__fp_tuple_chk:w #1 ; } }
+\tl_const:Nn \c__fp_empty_tuple_fp
+ { \s__fp_tuple \__fp_tuple_chk:w { } ; }
+\cs_new:Npn \__fp_array_count:n #1
+ { \__fp_tuple_count:w \s__fp_tuple \__fp_tuple_chk:w {#1} ; }
+\cs_new:Npn \__fp_tuple_count:w \s__fp_tuple \__fp_tuple_chk:w #1 ;
{
- \cs:w __fp_exp_after \__fp_type_from_scan:N #1 _f:nw \cs_end:
- { \__fp_exp_after_array_f:w }
- #1
+ \__int_value:w \__int_eval:w 0
+ \__fp_tuple_count_loop:Nw #1 { ? \__prg_break: } ;
+ \__prg_break_point:
+ \__int_eval_end:
+ }
+\cs_new:Npn \__fp_tuple_count_loop:Nw #1#2;
+ { \use_none:n #1 + 1 \__fp_tuple_count_loop:Nw }
+\cs_new:Npn \__fp_if_type_fp:NTwFw #1 \s__fp #2 #3 \q_stop {#2}
+\cs_new:Npn \__fp_array_if_all_fp:nTF #1
+ {
+ \__fp_array_if_all_fp_loop:w #1 { \s__fp \__prg_break: } ;
+ \__prg_break_point: \use_i:nn
+ }
+\cs_new:Npn \__fp_array_if_all_fp_loop:w #1#2 ;
+ {
+ \__fp_if_type_fp:NTwFw
+ #1 \__fp_array_if_all_fp_loop:w
+ \s__fp { \__prg_break:n \use_iii:nnn }
+ \q_stop
+ }
+\cs_new:Npn \__fp_type_from_scan:N #1
+ {
+ \__fp_if_type_fp:NTwFw
+ #1 { }
+ \s__fp { \__fp_type_from_scan_other:N #1 }
+ \q_stop
+ }
+\cs_new:Npx \__fp_type_from_scan_other:N #1
+ {
+ \exp_not:N \exp_after:wN \exp_not:N \__fp_type_from_scan:w
+ \exp_not:N \token_to_str:N #1 \exp_not:N \q_mark
+ \tl_to_str:n { s__fp _? } \exp_not:N \q_mark \exp_not:N \q_stop
+ }
+\use:x
+ {
+ \cs_new:Npn \exp_not:N \__fp_type_from_scan:w
+ ##1 \tl_to_str:n { s__fp } ##2 \exp_not:N \q_mark ##3 \exp_not:N \q_stop
+ {##2}
+ }
+\cs_new:Npn \__fp_change_func_type:NNN #1#2#3
+ {
+ \__fp_if_type_fp:NTwFw
+ #1 #2
+ \s__fp
+ {
+ \exp_after:wN \__fp_change_func_type_chk:NNN
+ \cs:w
+ __fp \__fp_type_from_scan_other:N #1
+ \exp_after:wN \__fp_change_func_type_aux:w \token_to_str:N #2
+ \cs_end:
+ #2 #3
+ }
+ \q_stop
+ }
+\exp_last_unbraced:NNNNo
+ \cs_new:Npn \__fp_change_func_type_aux:w #1 { \tl_to_str:n { __fp } } { }
+\cs_new:Npn \__fp_change_func_type_chk:NNN #1#2#3
+ {
+ \if_meaning:w \scan_stop: #1
+ \exp_after:wN #3 \exp_after:wN #2
+ \else:
+ \exp_after:wN #1
+ \fi:
+ }
+\cs_new:Npn \__fp_exp_after_any_f:Nnw #1
+ { \cs:w __fp_exp_after \__fp_type_from_scan_other:N #1 _f:nw \cs_end: }
+\cs_new:Npn \__fp_exp_after_any_f:nw #1#2
+ {
+ \__fp_if_type_fp:NTwFw
+ #2 \__fp_exp_after_f:nw
+ \s__fp { \__fp_exp_after_any_f:Nnw #2 }
+ \q_stop
+ {#1} #2
}
\cs_new_eq:NN \__fp_exp_after_stop_f:nw \use_none:nn
+\cs_new:Npn \__fp_exp_after_tuple_f:nw #1 \s__fp_tuple \__fp_tuple_chk:w #2 ;
+ {
+ \exp_after:wN \s__fp_tuple
+ \exp_after:wN \__fp_tuple_chk:w
+ \exp_after:wN {
+ \exp:w \exp_end_continue_f:w
+ \__fp_exp_after_array_f:w #2 \s__fp_stop
+ \exp_after:wN }
+ \exp_after:wN ;
+ \exp:w \exp_end_continue_f:w #1
+ }
+\cs_new:Npn \__fp_exp_after_array_f:w
+ { \__fp_exp_after_any_f:nw { \__fp_exp_after_array_f:w } }
\int_const:Nn \c__fp_leading_shift_int { - 5 0000 }
\int_const:Nn \c__fp_middle_shift_int { 5 0000 * 9999 }
\int_const:Nn \c__fp_trailing_shift_int { 5 0000 * 10000 }
@@ -11462,15 +11632,6 @@
\exp_after:wN \use_ii:nn
\fi:
}
-\cs_new:Npn \__fp_array_count:n #1
- {
- \__int_value:w \__int_eval:w 0
- \__fp_array_count_loop:Nw #1 { ? \__prg_break: } ;
- \__prg_break_point:
- \__int_eval_end:
- }
-\cs_new:Npn \__fp_array_count_loop:Nw #1#2;
- { \use_none:n #1 + 1 \__fp_array_count_loop:Nw }
\cs_new:Npn \__fp_expand:n #1
{
\__fp_expand_loop:nwnN { }
@@ -11484,12 +11645,17 @@
#2
\s__fp_mark { #3 #1 } #4
}
-\__msg_kernel_new:nnnn { kernel } { misused-fp }
+\cs_new:Npn \__fp_func_to_name:N #1
+ { \exp_last_unbraced:Nf \__fp_func_to_name_aux:w { \cs_to_str:N #1 } X }
+\cs_set_protected:Npn \__fp_tmp:w #1 #2
+ { \cs_new:Npn \__fp_func_to_name_aux:w ##1 #1 ##2 #2 ##3 X {##2} }
+\exp_args:Nff \__fp_tmp:w { \tl_to_str:n { __fp_ } } { \tl_to_str:n { _o: } }
+\__kernel_msg_new:nnnn { kernel } { misused-fp }
{ A~floating~point~with~value~'#1'~was~misused. }
{
To~obtain~the~value~of~a~floating~point~variable,~use~
'\token_to_str:N \fp_to_decimal:N',~
- '\token_to_str:N \fp_to_scientific:N',~or~other~
+ '\token_to_str:N \fp_to_tl:N',~or~other~
conversion~functions.
}
%% File: l3fp-traps.dtx Copyright (C) 2011-2014,2016,2017 The LaTeX3 Project
@@ -11505,11 +11671,11 @@
{ invalid_operation , division_by_zero , overflow , underflow }
{#1}
{
- \__msg_kernel_error:nnxx { kernel }
+ \__kernel_msg_error:nnxx { kernel }
{ unknown-fpu-trap-type } {#1} {#2}
}
{
- \__msg_kernel_error:nnx
+ \__kernel_msg_error:nnx
{ kernel } { unknown-fpu-exception } {#1}
}
}
@@ -11620,9 +11786,9 @@
{ \__fp_invalid_operation:nnw { \exp_after:wN \c_nan_fp } }
\cs_generate_variant:Nn \__fp_invalid_operation_o:nw { f }
\cs_new:Npn \__fp_error:nnnn
- { \__msg_kernel_expandable_error:nnnnn { kernel } }
+ { \__kernel_msg_expandable_error:nnnnn { kernel } }
\cs_generate_variant:Nn \__fp_error:nnnn { nnf, nff }
-\__msg_kernel_new:nnnn { kernel } { unknown-fpu-exception }
+\__kernel_msg_new:nnnn { kernel } { unknown-fpu-exception }
{
The~FPU~exception~'#1'~is~not~known:~
that~trap~will~never~be~triggered.
@@ -11637,7 +11803,7 @@
* ~ underflow
}
}
-\__msg_kernel_new:nnnn { kernel } { unknown-fpu-trap-type }
+\__kernel_msg_new:nnnn { kernel } { unknown-fpu-trap-type }
{ The~FPU~trap~type~'#2'~is~not~known. }
{
The~trap~type~must~be~one~of \\
@@ -11648,19 +11814,21 @@
* ~ none
}
}
-\__msg_kernel_new:nnn { kernel } { fp-flow }
+\__kernel_msg_new:nnn { kernel } { fp-flow }
{ An ~ #3 ~ occurred. }
-\__msg_kernel_new:nnn { kernel } { fp-flow-to }
+\__kernel_msg_new:nnn { kernel } { fp-flow-to }
{ #1 ~ #3 ed ~ to ~ #2 . }
-\__msg_kernel_new:nnn { kernel } { fp-zero-div }
+\__kernel_msg_new:nnn { kernel } { fp-zero-div }
{ Division~by~zero~in~ #1 (#2) }
-\__msg_kernel_new:nnn { kernel } { fp-zero-div-ii }
+\__kernel_msg_new:nnn { kernel } { fp-zero-div-ii }
{ Division~by~zero~in~ (#1) #3 (#2) }
-\__msg_kernel_new:nnn { kernel } { fp-invalid }
+\__kernel_msg_new:nnn { kernel } { fp-invalid }
{ Invalid~operation~ #1 (#2) }
-\__msg_kernel_new:nnn { kernel } { fp-invalid-ii }
+\__kernel_msg_new:nnn { kernel } { fp-invalid-ii }
{ Invalid~operation~ (#1) #3 (#2) }
-%% File: l3fp-round.dtx Copyright(C) 2011-2017 The LaTeX3 Project
+\__kernel_msg_new:nnn { kernel } { fp-unknown-type }
+ { Unknown~type~for~'#1' }
+%% File: l3fp-round.dtx Copyright(C) 2011-2018 The LaTeX3 Project
\cs_new:Npn \__fp_parse_word_trunc:N
{ \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_zero:NNN }
\cs_new:Npn \__fp_parse_word_floor:N
@@ -11684,14 +11852,13 @@
\__fp_round_o:Nw \__fp_round_to_nearest:NNN #1
#2
}
-\__debug:TF
+\__kernel_debug:TF
{
- \tl_gput_right:Nn \g__debug_deprecation_on_tl
+ \__kernel_deprecation_code:nn
{
\cs_set_eq:NN \__fp_parse_round:Nw
\__fp_parse_round_deprecation_error:Nw
}
- \tl_gput_right:Nn \g__debug_deprecation_off_tl
{
\cs_set_eq:NN \__fp_parse_round:Nw
\__fp_parse_round_no_error:Nw
@@ -11830,7 +11997,13 @@
}
\cs_new_eq:NN \__fp_round_to_nearest_pinf_neg:NNN \__fp_round_to_nearest_ninf:NNN
\cs_new_eq:NN \__fp_round_neg:NNN \__fp_round_to_nearest_neg:NNN
-\cs_new:Npn \__fp_round_o:Nw #1#2 @
+\cs_new:Npn \__fp_round_o:Nw #1
+ {
+ \__fp_parse_function_all_fp_o:fnw
+ { \__fp_round_name_from_cs:N #1 }
+ { \__fp_round_aux_o:Nw #1 }
+ }
+\cs_new:Npn \__fp_round_aux_o:Nw #1#2 @
{
\if_case:w
\__int_eval:w \__fp_array_count:n {#2} \__int_eval_end:
@@ -11969,9 +12142,8 @@
\exp_after:wN \__fp_exp_after_o:w \exp:w \exp_end_continue_f:w
\__fp_sanitize:Nw #1#2; {1000}{0000}{0000}{0000};
}
-%% File: l3fp-parse.dtx Copyright (C) 2011-2017 The LaTeX3 Project
-\int_const:Nn \c__fp_prec_funcii_int { 16 }
-\int_const:Nn \c__fp_prec_func_int { 15 }
+%% File: l3fp-parse.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+\int_const:Nn \c__fp_prec_func_int { 16 }
\int_const:Nn \c__fp_prec_hatii_int { 14 }
\int_const:Nn \c__fp_prec_hat_int { 13 }
\int_const:Nn \c__fp_prec_not_int { 12 }
@@ -11983,23 +12155,11 @@
\int_const:Nn \c__fp_prec_quest_int { 4 }
\int_const:Nn \c__fp_prec_colon_int { 3 }
\int_const:Nn \c__fp_prec_comma_int { 2 }
-\int_const:Nn \c__fp_prec_paren_int { 1 }
+\int_const:Nn \c__fp_prec_tuple_int { 1 }
\int_const:Nn \c__fp_prec_end_int { 0 }
\cs_new:Npn \__fp_parse_expand:w #1 { \exp_end_continue_f:w #1 }
\cs_new:Npn \__fp_parse_return_semicolon:w
#1 \fi: \__fp_parse_expand:w { \fi: ; #1 }
-\cs_new:Npx \__fp_type_from_scan:N #1
- {
- \exp_not:N \exp_after:wN \exp_not:N \__fp_type_from_scan:w
- \exp_not:N \token_to_str:N #1 \exp_not:N \q_mark
- \tl_to_str:n { s__fp _? } \exp_not:N \q_mark \exp_not:N \q_stop
- }
-\use:x
- {
- \cs_new:Npn \exp_not:N \__fp_type_from_scan:w
- ##1 \tl_to_str:n { s__fp } ##2 \exp_not:N \q_mark ##3 \exp_not:N \q_stop
- {##2}
- }
\cs_set_protected:Npn \__fp_tmp:w #1 #2 #3
{
\cs_new:cpn { __fp_parse_digits_ #1 :N } ##1
@@ -12044,23 +12204,35 @@
\fi:
#1 #2
}
-\cs_new:Npn \__fp_parse_one_fp:NN #1#2
+\cs_new:Npn \__fp_parse_one_fp:NN #1
{
- \cs:w __fp_exp_after \__fp_type_from_scan:N #2 _f:nw \cs_end:
+ \__fp_exp_after_any_f:nw
{
\exp_after:wN \__fp_parse_infix:NN
\exp_after:wN #1 \exp:w \__fp_parse_expand:w
}
- #2
}
\cs_new:Npn \__fp_exp_after_mark_f:nw #1
{
- \__msg_kernel_expandable_error:nn { kernel } { fp-early-end }
- \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w #1
+ \int_case:nnF { \exp_after:wN \use_i:nnn \use_none:nnn #1 }
+ {
+ \c__fp_prec_comma_int { }
+ \c__fp_prec_tuple_int { }
+ \c__fp_prec_end_int
+ {
+ \exp_after:wN \c__fp_empty_tuple_fp
+ \exp:w \exp_end_continue_f:w
+ }
+ }
+ {
+ \__kernel_msg_expandable_error:nn { kernel } { fp-early-end }
+ \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
+ }
+ #1
}
\cs_new:cpn { __fp_exp_after_?_f:nw } #1#2
{
- \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {#2}
+ \__kernel_msg_expandable_error:nnn { kernel } { bad-variable } {#2}
\exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w #1
}
\cs_set_protected:Npn \__fp_tmp:w #1
@@ -12073,9 +12245,9 @@
\str_if_eq:nnTF {##2} { \protect }
{
\cs_if_eq:NNTF ##2 #1 { \use_i:nn } { \use:n }
- { \__msg_kernel_expandable_error:nnn { kernel } { fp-robust-cmd } }
+ { \__kernel_msg_expandable_error:nnn { kernel } { fp-robust-cmd } }
}
- { \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {##2} }
+ { \__kernel_msg_expandable_error:nnn { kernel } { bad-variable } {##2} }
}
}
}
@@ -12174,7 +12346,7 @@
{
\cs_if_exist_use:cF { __fp_parse_caseless_ \str_fold_case:n {#2} :N }
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { unknown-fp-word } {#2}
\exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
\__fp_parse_infix:NN
@@ -12213,13 +12385,13 @@
{
\cs_if_exist:cTF { __fp_parse_infix_ \token_to_str:N #1 :N }
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { fp-missing-number } {#1}
\exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
\__fp_parse_infix:NN #3 #1
}
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { fp-unknown-symbol } {#1}
\__fp_parse_one:Nw #3
}
@@ -12556,12 +12728,12 @@
\__str_if_eq_x:nn { \s__fp } { \exp_not:N #1 }
= 0 \exp_stop_f:
0
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { fp-after-e } { floating~point~ }
\prg_return_true:
\else:
0
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { bad-variable } {#1}
\prg_return_false:
\fi:
@@ -12572,24 +12744,52 @@
\__int_value:w #1
\else:
0
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { fp-after-e } { dimension~#1 }
\fi:
\prg_return_false:
\fi:
\else:
0
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { fp-missing } { exponent }
\prg_return_true:
\fi:
}
\cs_new_eq:cN { __fp_parse_prefix_+:Nw } \__fp_parse_one:Nw
+\cs_new:Npn \__fp_parse_apply_function:NNNwN #1#2#3#4@#5
+ {
+ #3 #2 #4 @
+ \exp:w \exp_end_continue_f:w #5 #1
+ }
\cs_new:Npn \__fp_parse_apply_unary:NNNwN #1#2#3#4@#5
{
+ \__fp_parse_apply_unary_chk:NwNw #4 @ ; . \q_stop
+ \__fp_parse_apply_unary_type:NNN
#3 #2 #4 @
\exp:w \exp_end_continue_f:w #5 #1
}
+\cs_new:Npn \__fp_parse_apply_unary_chk:NwNw #1#2 ; #3#4 \q_stop
+ {
+ \if_meaning:w @ #3 \else:
+ \token_if_eq_meaning:NNTF . #3
+ { \__fp_parse_apply_unary_chk:nNNNNw { no } }
+ { \__fp_parse_apply_unary_chk:nNNNNw { multi } }
+ \fi:
+ }
+\cs_new:Npn \__fp_parse_apply_unary_chk:nNNNNw #1#2#3#4#5#6 @
+ {
+ #2
+ \__fp_error:nffn { fp-#1-arg } { \__fp_func_to_name:N #4 } { } { }
+ \exp_after:wN #4 \exp_after:wN #5 \c_nan_fp @
+ }
+\cs_new:Npn \__fp_parse_apply_unary_type:NNN #1#2#3
+ {
+ \__fp_change_func_type:NNN #3 #1 \__fp_parse_apply_unary_error:NNw
+ #2 #3
+ }
+\cs_new:Npn \__fp_parse_apply_unary_error:NNw #1#2#3 @
+ { \__fp_invalid_operation_o:fw { \__fp_func_to_name:N #1 } #3 }
\cs_set_protected:Npn \__fp_tmp:w #1#2#3#4
{
\cs_new:cpn { __fp_parse_prefix_ #1 :Nw } ##1
@@ -12622,10 +12822,10 @@
\exp_after:wN \__fp_parse_lparen_after:NwN
\exp_after:wN #1
\exp:w
- \if_int_compare:w #1 = \c__fp_prec_funcii_int
+ \if_int_compare:w #1 = \c__fp_prec_func_int
\__fp_parse_operand:Nw \c__fp_prec_comma_int
\else:
- \__fp_parse_operand:Nw \c__fp_prec_paren_int
+ \__fp_parse_operand:Nw \c__fp_prec_tuple_int
\fi:
\__fp_parse_expand:w
}
@@ -12642,8 +12842,9 @@
\exp_not:N \__fp_parse_expand:w
}
{
- \exp_not:N \__msg_kernel_expandable_error:nnn
+ \exp_not:N \__kernel_msg_expandable_error:nnn
{ kernel } { fp-missing } { ) }
+ \exp_not:N \tl_if_empty:nT {#2} \exp_not:N \c__fp_empty_tuple_fp
#2 @
\exp_not:N \use_none:n #3
}
@@ -12652,9 +12853,14 @@
{
\if_int_compare:w #1 = \c__fp_prec_comma_int
\else:
- \__msg_kernel_expandable_error:nnn
- { kernel } { fp-missing-number } { ) }
- \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
+ \if_int_compare:w #1 = \c__fp_prec_tuple_int
+ \exp_after:wN \c__fp_empty_tuple_fp \exp:w
+ \else:
+ \__kernel_msg_expandable_error:nnn
+ { kernel } { fp-missing-number } { ) }
+ \exp_after:wN \c_nan_fp \exp:w
+ \fi:
+ \exp_end_continue_f:w
\fi:
\__fp_parse_infix:NN #1 )
}
@@ -12712,12 +12918,12 @@
}
\cs_new:Npn \__fp_parse_function:NNN #1#2#3
{
- \exp_after:wN \__fp_parse_apply_unary:NNNwN
+ \exp_after:wN \__fp_parse_apply_function:NNNwN
\exp_after:wN #3
\exp_after:wN #2
\exp_after:wN #1
\exp:w
- \__fp_parse_operand:Nw \c__fp_prec_funcii_int \__fp_parse_expand:w
+ \__fp_parse_operand:Nw \c__fp_prec_func_int \__fp_parse_expand:w
}
\cs_new:Npn \__fp_parse:n #1
{
@@ -12749,52 +12955,100 @@
\exp:w
}
\cs_new:Npn \__fp_parse_continue:NwN #1 #2 @ #3 { #3 #1 #2 @ }
-\cs_new:Npn \__fp_parse_apply_binary:NwNwN #1 #2@ #3 #4@ #5
+\cs_new:Npn \__fp_parse_apply_binary:NwNwN #1 #2#3@ #4 #5#6@ #7
{
\exp_after:wN \__fp_parse_continue:NwN
\exp_after:wN #1
- \exp:w \exp_end_continue_f:w \cs:w __fp_#3_o:ww \cs_end: #2 #4
- \exp:w \exp_end_continue_f:w #5 #1
+ \exp:w \exp_end_continue_f:w
+ \exp_after:wN \__fp_parse_apply_binary_chk:NN
+ \cs:w
+ __fp
+ \__fp_type_from_scan:N #2
+ _#4
+ \__fp_type_from_scan:N #5
+ _o:ww
+ \cs_end:
+ #4
+ #2#3 #5#6
+ \exp:w \exp_end_continue_f:w #7 #1
+ }
+\cs_new:Npn \__fp_parse_apply_binary_chk:NN #1#2
+ {
+ \if_meaning:w \scan_stop: #1
+ \__fp_parse_apply_binary_error:NNN #2
+ \fi:
+ #1
+ }
+\cs_new:Npn \__fp_parse_apply_binary_error:NNN #1#2#3
+ {
+ #2
+ \__fp_invalid_operation_o:Nww #1
+ }
+\cs_new:Npn \__fp_binary_type_o:Nww #1 #2#3 ; #4
+ {
+ \exp_after:wN \__fp_parse_apply_binary_chk:NN
+ \cs:w
+ __fp
+ \__fp_type_from_scan:N #2
+ _ #1
+ \__fp_type_from_scan:N #4
+ _o:ww
+ \cs_end:
+ #1
+ #2 #3 ; #4
+ }
+\cs_new:Npn \__fp_binary_rev_type_o:Nww #1 #2#3 ; #4#5 ;
+ {
+ \exp_after:wN \__fp_parse_apply_binary_chk:NN
+ \cs:w
+ __fp
+ \__fp_type_from_scan:N #4
+ _ #1
+ \__fp_type_from_scan:N #2
+ _o:ww
+ \cs_end:
+ #1
+ #4 #5 ; #2 #3 ;
}
\cs_new:Npn \__fp_parse_infix_after_operand:NwN #1 #2;
{
\__fp_exp_after_f:nw { \__fp_parse_infix:NN #1 }
#2;
}
- \cs_new:Npn \__fp_parse_infix:NN #1 #2
- {
- \if_catcode:w \scan_stop: \exp_not:N #2
- \if_int_compare:w
- \__str_if_eq_x:nn { \s__fp_mark } { \exp_not:N #2 }
- = 0 \exp_stop_f:
- \exp_after:wN \exp_after:wN
- \exp_after:wN \__fp_parse_infix_mark:NNN
- \else:
- \exp_after:wN \exp_after:wN
- \exp_after:wN \__fp_parse_infix_juxtapose:N
- \fi:
+\cs_new:Npn \__fp_parse_infix:NN #1 #2
+ {
+ \if_catcode:w \scan_stop: \exp_not:N #2
+ \if_int_compare:w
+ \__str_if_eq_x:nn { \s__fp_mark } { \exp_not:N #2 }
+ = 0 \exp_stop_f:
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \__fp_parse_infix_mark:NNN
\else:
- \if_int_compare:w
- \__int_eval:w
- ( `#2 \if_int_compare:w `#2 > `Z - 32 \fi: ) / 26
- = 3 \exp_stop_f:
- \exp_after:wN \exp_after:wN
- \exp_after:wN \__fp_parse_infix_juxtapose:N
- \else:
- \exp_after:wN \__fp_parse_infix_check:NNN
- \cs:w
- __fp_parse_infix_ \token_to_str:N #2 :N
- \exp_after:wN \exp_after:wN \exp_after:wN
- \cs_end:
- \fi:
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \__fp_parse_infix_mul:N
\fi:
- #1
- #2
- }
+ \else:
+ \if_int_compare:w
+ \__int_eval:w
+ ( `#2 \if_int_compare:w `#2 > `Z - 32 \fi: ) / 26
+ = 3 \exp_stop_f:
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \__fp_parse_infix_mul:N
+ \else:
+ \exp_after:wN \__fp_parse_infix_check:NNN
+ \cs:w
+ __fp_parse_infix_ \token_to_str:N #2 :N
+ \exp_after:wN \exp_after:wN \exp_after:wN
+ \cs_end:
+ \fi:
+ \fi:
+ #1
+ #2
+ }
\cs_new:Npx \__fp_parse_infix_check:NNN #1#2#3
{
\exp_not:N \if_meaning:w \scan_stop: #1
- \exp_not:N \__msg_kernel_expandable_error:nnn
+ \exp_not:N \__kernel_msg_expandable_error:nnn
{ kernel } { fp-missing } { * }
\exp_not:N \exp_after:wN
\exp_not:c { __fp_parse_infix_*:N }
@@ -12815,15 +13069,15 @@
{
\cs_new:Npn #1 ##1
{
- \if_int_compare:w ##1 < \c__fp_prec_paren_int
- \__msg_kernel_expandable_error:nnn { kernel } { fp-extra } { ) }
- \exp_after:wN \__fp_parse_infix:NN
- \exp_after:wN ##1
- \exp:w \exp_after:wN \__fp_parse_expand:w
- \else:
+ \if_int_compare:w ##1 > \c__fp_prec_end_int
\exp_after:wN @
\exp_after:wN \use_none:n
\exp_after:wN #1
+ \else:
+ \__kernel_msg_expandable_error:nnn { kernel } { fp-extra } { ) }
+ \exp_after:wN \__fp_parse_infix:NN
+ \exp_after:wN ##1
+ \exp:w \exp_after:wN \__fp_parse_expand:w
\fi:
}
}
@@ -12838,10 +13092,15 @@
\exp_after:wN #1
\else:
\if_int_compare:w ##1 < \c__fp_prec_comma_int
- \__fp_parse_infix_comma_error:w
+ \exp_after:wN @
+ \exp_after:wN \__fp_parse_apply_comma:NwNwN
+ \exp_after:wN ,
+ \exp:w
+ \else:
+ \exp_after:wN \__fp_parse_infix_comma:w
+ \exp:w
\fi:
- \exp_after:wN \__fp_parse_infix_comma:w
- \exp:w \__fp_parse_operand:Nw \c__fp_prec_comma_int
+ \__fp_parse_operand:Nw \c__fp_prec_comma_int
\exp_after:wN \__fp_parse_expand:w
\fi:
}
@@ -12849,28 +13108,15 @@
\exp_args:Nc \__fp_tmp:w { __fp_parse_infix_,:N }
\cs_new:Npn \__fp_parse_infix_comma:w #1 @
{ #1 @ \use_none:n }
-\cs_new:Npn \__fp_parse_infix_comma_error:w #1 \exp:w
- {
- \fi:
- \__msg_kernel_expandable_error:nn { kernel } { fp-extra-comma }
- \exp_after:wN @
- \exp_after:wN \__fp_parse_apply_binary:NwNwN
- \exp_after:wN ,
- \exp:w
- }
-\cs_set_protected:Npn \__fp_tmp:w #1
+\cs_new:Npn \__fp_parse_apply_comma:NwNwN #1 #2@ #3 #4@ #5
{
- \cs_new:Npn #1 ##1
- {
- \if_meaning:w \s__fp ##1
- \exp_after:wN \__fp_use_i_until_s:nw
- \exp_after:wN #1
- \fi:
- \exp_after:wN \c_nan_fp
- ##1
- }
+ \exp_after:wN \__fp_parse_continue:NwN
+ \exp_after:wN #1
+ \exp:w \exp_end_continue_f:w
+ \__fp_exp_after_tuple_f:nw { }
+ \s__fp_tuple \__fp_tuple_chk:w { #2 #4 } ;
+ #5 #1
}
-\exp_args:Nc \__fp_tmp:w { __fp_,_o:ww }
\cs_set_protected:Npn \__fp_tmp:w #1#2#3#4
{
\cs_new:Npn #1 ##1
@@ -12904,32 +13150,7 @@
\exp_args:Nc \__fp_tmp:w { __fp_parse_infix_or:N } |
\c__fp_prec_or_int \c__fp_prec_or_int
\cs_new:cpn { __fp_parse_infix_(:N } #1
- { \__fp_parse_infix_juxtapose:N #1 ( }
-\cs_new:Npn \__fp_parse_infix_juxtapose:N #1
- {
- \if_int_compare:w #1 < \c__fp_prec_times_int
- \exp_after:wN @
- \exp_after:wN \__fp_parse_apply_juxtapose:NwwN
- \exp:w
- \__fp_parse_operand:Nw \c__fp_prec_times_int
- \exp_after:wN \__fp_parse_expand:w
- \else:
- \exp_after:wN @
- \exp_after:wN \use_none:n
- \exp_after:wN \__fp_parse_infix_juxtapose:N
- \fi:
- }
-\cs_new:Npn \__fp_parse_apply_juxtapose:NwwN #1 #2;#3@ #4;#5@
- {
- \if_catcode:w ^ \tl_to_str:n { #3 #5 } ^
- \else:
- \__fp_error:nffn { fp-invalid-ii }
- { \__fp_array_to_clist:n { #2; #3 } }
- { \__fp_array_to_clist:n { #4; #5 } }
- { }
- \fi:
- \__fp_parse_apply_binary:NwNwN #1 #2;@ * #4;@
- }
+ { \__fp_parse_infix_mul:N #1 ( }
\cs_set_protected:Npn \__fp_tmp:w #1
{
\cs_new:cpn { __fp_parse_infix_*:N } ##1##2
@@ -12985,7 +13206,7 @@
\exp_args:Nc \__fp_tmp:w { __fp_parse_infix_::N }
\__fp_ternary_auxii:NwwN \c__fp_prec_colon_int
{
- \__msg_kernel_expandable_error:nnnn
+ \__kernel_msg_expandable_error:nnnn
{ kernel } { fp-missing } { ? } { ~for~?: }
}
\cs_new:cpn { __fp_parse_infix_<:N } #1
@@ -13006,7 +13227,7 @@
}
\cs_new:Npn \__fp_parse_excl_error:
{
- \__msg_kernel_expandable_error:nnnn
+ \__kernel_msg_expandable_error:nnnn
{ kernel } { fp-missing } { = } { ~after~!. }
}
\cs_new:Npn \__fp_parse_compare:NNNNNNN #1
@@ -13095,12 +13316,99 @@
}
\cs_new:Npn \__fp_parse_continue_compare:NNwNN #1#2 #3@ #4#5
{ #4 #2 #3@ #1 }
+\cs_new:Npn \__fp_parse_function_all_fp_o:fnw #1#2#3 @
+ {
+ \__fp_array_if_all_fp:nTF {#3}
+ { #2 #3 @ }
+ {
+ \__fp_error:nffn { fp-bad-args }
+ {#1}
+ { \fp_to_tl:n { \s__fp_tuple \__fp_tuple_chk:w {#3} ; } }
+ { }
+ \exp_after:wN \c_nan_fp
+ }
+ }
+\cs_new:Npn \__fp_parse_function_one_two:nnw #1#2#3
+ {
+ \__fp_if_type_fp:NTwFw
+ #3 { } \s__fp \__fp_parse_function_one_two_error_o:w \q_stop
+ \__fp_parse_function_one_two_aux:nnw {#1} {#2} #3
+ }
+\cs_new:Npn \__fp_parse_function_one_two_error_o:w #1#2#3#4 @
+ {
+ \__fp_error:nffn { fp-bad-args }
+ {#2}
+ { \fp_to_tl:n { \s__fp_tuple \__fp_tuple_chk:w {#4} ; } }
+ { }
+ \exp_after:wN \c_nan_fp
+ }
+\cs_new:Npn \__fp_parse_function_one_two_aux:nnw #1#2 #3; #4
+ {
+ \__fp_if_type_fp:NTwFw
+ #4 { }
+ \s__fp
+ {
+ \if_meaning:w @ #4
+ \exp_after:wN \use_iv:nnnn
+ \fi:
+ \__fp_parse_function_one_two_error_o:w
+ }
+ \q_stop
+ \__fp_parse_function_one_two_auxii:nnw {#1} {#2} #3; #4
+ }
+\cs_new:Npn \__fp_parse_function_one_two_auxii:nnw #1#2#3; #4; #5
+ {
+ \if_meaning:w @ #5 \else:
+ \exp_after:wN \__fp_parse_function_one_two_error_o:w
+ \fi:
+ \use_ii:nn {#1} { \use_none:n #2 } #3; #4; #5
+ }
+\cs_new:Npn \__fp_tuple_map_o:nw #1 \s__fp_tuple \__fp_tuple_chk:w #2 ;
+ {
+ \exp_after:wN \s__fp_tuple
+ \exp_after:wN \__fp_tuple_chk:w
+ \exp_after:wN {
+ \exp:w \exp_end_continue_f:w
+ \__fp_tuple_map_loop_o:nw {#1} #2
+ { \s__fp \__prg_break: } ;
+ \__prg_break_point:
+ \exp_after:wN } \exp_after:wN ;
+ }
+\cs_new:Npn \__fp_tuple_map_loop_o:nw #1#2#3 ;
+ {
+ \use_none:n #2
+ #1 #2 #3 ;
+ \exp:w \exp_end_continue_f:w
+ \__fp_tuple_map_loop_o:nw {#1}
+ }
+\cs_new:Npn \__fp_tuple_mapthread_o:nww #1
+ \s__fp_tuple \__fp_tuple_chk:w #2 ;
+ \s__fp_tuple \__fp_tuple_chk:w #3 ;
+ {
+ \exp_after:wN \s__fp_tuple
+ \exp_after:wN \__fp_tuple_chk:w
+ \exp_after:wN {
+ \exp:w \exp_end_continue_f:w
+ \__fp_tuple_mapthread_loop_o:nw {#1}
+ #2 { \s__fp \__prg_break: } ; @
+ #3 { \s__fp \__prg_break: } ;
+ \__prg_break_point:
+ \exp_after:wN } \exp_after:wN ;
+ }
+\cs_new:Npn \__fp_tuple_mapthread_loop_o:nw #1#2#3 ; #4 @ #5#6 ;
+ {
+ \use_none:n #2
+ \use_none:n #5
+ #1 #2 #3 ; #5 #6 ;
+ \exp:w \exp_end_continue_f:w
+ \__fp_tuple_mapthread_loop_o:nw {#1} #4 @
+ }
\cs_new:Npn \fp_function:Nw #1
{
\exp_after:wN \__fp_function_apply:nw
\exp_after:wN #1
\exp:w
- \__fp_parse_operand:Nw \c__fp_prec_funcii_int \__fp_parse_expand:w
+ \__fp_parse_operand:Nw \c__fp_prec_func_int \__fp_parse_expand:w
}
\cs_new_protected:Npn \fp_new_function:Npn #1#2#
{
@@ -13120,7 +13428,7 @@
\__int_value:w #3 \exp_after:wN ; \exp_after:wN
}
\exp:w
- \__fp_parse_operand:Nw \c__fp_prec_funcii_int \__fp_parse_expand:w
+ \__fp_parse_operand:Nw \c__fp_prec_func_int \__fp_parse_expand:w
}
\cs_new:Npn #2 #4 {#5}
}
@@ -13130,7 +13438,7 @@
\int_compare:nNnTF { \tl_count:n {#3} } = {#2}
{ #1 #3 }
{
- \__msg_kernel_expandable_error:nnnnn
+ \__kernel_msg_expandable_error:nnnnn
{ kernel } { fp-num-args } { #1() } {#2} {#2}
\c_nan_fp
}
@@ -13152,32 +13460,96 @@
\cs_new:Npn \__fp_function_store_end:wnnn
#1 \s__fp_stop #2#3#4
{ #4 {#2} }
-\__msg_kernel_new:nnn { kernel } { fp-deprecated }
+\__kernel_msg_new:nnn { kernel } { fp-deprecated }
{ '#1'~deprecated;~use~'#2' }
-\__msg_kernel_new:nnn { kernel } { unknown-fp-word }
+\__kernel_msg_new:nnn { kernel } { unknown-fp-word }
{ Unknown~fp~word~#1. }
-\__msg_kernel_new:nnn { kernel } { fp-missing }
+\__kernel_msg_new:nnn { kernel } { fp-missing }
{ Missing~#1~inserted #2. }
-\__msg_kernel_new:nnn { kernel } { fp-extra }
+\__kernel_msg_new:nnn { kernel } { fp-extra }
{ Extra~#1~ignored. }
-\__msg_kernel_new:nnn { kernel } { fp-early-end }
+\__kernel_msg_new:nnn { kernel } { fp-early-end }
{ Premature~end~in~fp~expression. }
-\__msg_kernel_new:nnn { kernel } { fp-after-e }
+\__kernel_msg_new:nnn { kernel } { fp-after-e }
{ Cannot~use~#1 after~'e'. }
-\__msg_kernel_new:nnn { kernel } { fp-missing-number }
+\__kernel_msg_new:nnn { kernel } { fp-missing-number }
{ Missing~number~before~'#1'. }
-\__msg_kernel_new:nnn { kernel } { fp-unknown-symbol }
+\__kernel_msg_new:nnn { kernel } { fp-unknown-symbol }
{ Unknown~symbol~#1~ignored. }
-\__msg_kernel_new:nnn { kernel } { fp-extra-comma }
- { Unexpected~comma:~extra~arguments~ignored. }
-\__msg_kernel_new:nnn { kernel } { fp-num-args }
+\__kernel_msg_new:nnn { kernel } { fp-extra-comma }
+ { Unexpected~comma~turned~to~nan~result. }
+\__kernel_msg_new:nnn { kernel } { fp-no-arg }
+ { #1~got~no~argument;~used~nan. }
+\__kernel_msg_new:nnn { kernel } { fp-multi-arg }
+ { #1~got~more~than~one~argument;~used~nan. }
+\__kernel_msg_new:nnn { kernel } { fp-num-args }
{ #1~expects~between~#2~and~#3~arguments. }
+\__kernel_msg_new:nnn { kernel } { fp-bad-args }
+ { Arguments~in~#1#2~are~invalid. }
\cs_if_exist:cT { @unexpandable@protect }
{
- \__msg_kernel_new:nnn { kernel } { fp-robust-cmd }
+ \__kernel_msg_new:nnn { kernel } { fp-robust-cmd }
{ Robust~command~#1 invalid~in~fp~expression! }
}
-%% File: l3fp-logic.dtx Copyright (C) 2011-2017 The LaTeX3 Project
+%% File: l3fp-assign.dtx Copyright (C) 2011-2017 The LaTeX3 project
+\cs_new_protected:Npn \fp_new:N #1
+ { \cs_new_eq:NN #1 \c_zero_fp }
+\cs_generate_variant:Nn \fp_new:N {c}
+\cs_new_protected:Npn \fp_set:Nn #1#2
+ { \tl_set:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
+\cs_new_protected:Npn \fp_gset:Nn #1#2
+ { \tl_gset:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
+\cs_new_protected:Npn \fp_const:Nn #1#2
+ { \tl_const:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
+\cs_generate_variant:Nn \fp_set:Nn {c}
+\cs_generate_variant:Nn \fp_gset:Nn {c}
+\cs_generate_variant:Nn \fp_const:Nn {c}
+\cs_new_eq:NN \fp_set_eq:NN \tl_set_eq:NN
+\cs_new_eq:NN \fp_gset_eq:NN \tl_gset_eq:NN
+\cs_generate_variant:Nn \fp_set_eq:NN { c , Nc , cc }
+\cs_generate_variant:Nn \fp_gset_eq:NN { c , Nc , cc }
+\cs_new_protected:Npn \fp_zero:N #1 { \fp_set_eq:NN #1 \c_zero_fp }
+\cs_new_protected:Npn \fp_gzero:N #1 { \fp_gset_eq:NN #1 \c_zero_fp }
+\cs_generate_variant:Nn \fp_zero:N { c }
+\cs_generate_variant:Nn \fp_gzero:N { c }
+\cs_new_protected:Npn \fp_zero_new:N #1
+ { \fp_if_exist:NTF #1 { \fp_zero:N #1 } { \fp_new:N #1 } }
+\cs_new_protected:Npn \fp_gzero_new:N #1
+ { \fp_if_exist:NTF #1 { \fp_gzero:N #1 } { \fp_new:N #1 } }
+\cs_generate_variant:Nn \fp_zero_new:N { c }
+\cs_generate_variant:Nn \fp_gzero_new:N { c }
+\cs_new_protected:Npn \fp_add:Nn { \__fp_add:NNNn \fp_set:Nn + }
+\cs_new_protected:Npn \fp_gadd:Nn { \__fp_add:NNNn \fp_gset:Nn + }
+\cs_new_protected:Npn \fp_sub:Nn { \__fp_add:NNNn \fp_set:Nn - }
+\cs_new_protected:Npn \fp_gsub:Nn { \__fp_add:NNNn \fp_gset:Nn - }
+\cs_new_protected:Npn \__fp_add:NNNn #1#2#3#4
+ { #1 #3 { #3 #2 \__fp_parse:n {#4} } }
+\cs_generate_variant:Nn \fp_add:Nn { c }
+\cs_generate_variant:Nn \fp_gadd:Nn { c }
+\cs_generate_variant:Nn \fp_sub:Nn { c }
+\cs_generate_variant:Nn \fp_gsub:Nn { c }
+\cs_new_protected:Npn \fp_show:N { \__fp_show:NN \tl_show:n }
+\cs_generate_variant:Nn \fp_show:N { c }
+\cs_new_protected:Npn \fp_log:N { \__fp_show:NN \tl_log:n }
+\cs_generate_variant:Nn \fp_log:N { c }
+\cs_new_protected:Npn \__fp_show:NN #1#2
+ {
+ \__kernel_check_defined:NT #2
+ { \exp_args:Nx #1 { \token_to_str:N #2 = \fp_to_tl:N #2 } }
+ }
+\cs_new_protected:Npn \fp_show:n
+ { \msg_show_eval:Nn \fp_to_tl:n }
+\cs_new_protected:Npn \fp_log:n
+ { \msg_log_eval:Nn \fp_to_tl:n }
+\fp_const:Nn \c_e_fp { 2.718 2818 2845 9045 }
+\fp_const:Nn \c_one_fp { 1 }
+\fp_const:Nn \c_pi_fp { 3.141 5926 5358 9793 }
+\fp_const:Nn \c_one_degree_fp { 0.0 1745 3292 5199 4330 }
+\fp_new:N \l_tmpa_fp
+\fp_new:N \l_tmpb_fp
+\fp_new:N \g_tmpa_fp
+\fp_new:N \g_tmpb_fp
+%% File: l3fp-logic.dtx Copyright (C) 2011-2018 The LaTeX3 Project
\cs_new:Npn \__fp_parse_word_max:N
{ \__fp_parse_function:NNN \__fp_minmax_o:Nw 2 }
\cs_new:Npn \__fp_parse_word_min:N
@@ -13335,7 +13707,7 @@
}
{
\token_if_eq_meaning:NNTF #2 0
- { \__msg_kernel_expandable_error:nnn { kernel } { zero-step } {#6} }
+ { \__kernel_msg_expandable_error:nnn { kernel } { zero-step } {#6} }
{
\__fp_error:nnfn { fp-bad-step } { }
{ \fp_to_tl:n { \s__fp \__fp_chk:w #2#3#4 ; } } {#6}
@@ -13386,11 +13758,17 @@
\fp_step_function:nnnN {#3} {#4} {#5} #2
\__prg_break_point:Nn \scan_stop: { \int_gdecr:N \g__prg_map_int }
}
-\__msg_kernel_new:nnn { kernel } { fp-bad-step }
+\__kernel_msg_new:nnn { kernel } { fp-bad-step }
{ Invalid~step~size~#2~in~step~function~#3. }
-\__msg_kernel_new:nnn { kernel } { fp-tiny-step }
+\__kernel_msg_new:nnn { kernel } { fp-tiny-step }
{ Tiny~step~size~(#1+#2=#1)~in~step~function~#3. }
-\cs_new:Npn \__fp_minmax_o:Nw #1#2 @
+\cs_new:Npn \__fp_minmax_o:Nw #1
+ {
+ \__fp_parse_function_all_fp_o:fnw
+ { \token_if_eq_meaning:NNTF 0 #1 { min } { max } }
+ { \__fp_minmax_aux_o:Nw #1 }
+ }
+\cs_new:Npn \__fp_minmax_aux_o:Nw #1#2 @
{
\if_meaning:w 0 #1
\exp_after:wN \__fp_minmax_loop:Nww \exp_after:wN +
@@ -13467,7 +13845,7 @@
\__fp_parse_operand:Nw \c__fp_prec_colon_int
\__fp_parse_expand:w
\else:
- \__msg_kernel_expandable_error:nnnn
+ \__kernel_msg_expandable_error:nnnn
{ kernel } { fp-missing } { : } { ~for~?: }
\exp_after:wN \__fp_parse_continue:NwN
\exp_after:wN #1
@@ -13507,7 +13885,7 @@
\__fp_exp_after_array_f:w #3 \s__fp_stop
#4 #1
}
-%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016,2017 The LaTeX3 Project
+%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016-2018 The LaTeX3 Project
\cs_new:Npn \__fp_parse_word_abs:N
{ \__fp_parse_unary_function:NNN \__fp_set_sign_o:w 0 }
\cs_new:Npn \__fp_parse_word_sign:N
@@ -14269,6 +14647,43 @@
\if_case:w #3 \exp_stop_f: #1 \or: 1 \or: 0 \fi: \exp_stop_f:
#4;
}
+\cs_new:Npn \__fp_tuple_set_sign_o:w #1
+ {
+ \if_meaning:w 2 #1
+ \exp_after:wN \__fp_tuple_set_sign_aux_o:Nnw
+ \fi:
+ \__fp_invalid_operation_o:nw { abs }
+ }
+\cs_new:Npn \__fp_tuple_set_sign_aux_o:Nnw #1#2#3 @
+ { \__fp_tuple_map_o:nw \__fp_tuple_set_sign_aux_o:w #3 }
+\cs_new:Npn \__fp_tuple_set_sign_aux_o:w #1#2 ;
+ {
+ \__fp_change_func_type:NNN #1 \__fp_set_sign_o:w
+ \__fp_parse_apply_unary_error:NNw
+ 2 #1 #2 ; @
+ }
+\cs_new:cpn { __fp_*_tuple_o:ww } #1 ;
+ { \__fp_tuple_map_o:nw { \__fp_binary_type_o:Nww * #1 ; } }
+\cs_new:cpn { __fp_tuple_*_o:ww } #1 ; #2 ;
+ { \__fp_tuple_map_o:nw { \__fp_binary_rev_type_o:Nww * #2 ; } #1 ; }
+\cs_new:cpn { __fp_tuple_/_o:ww } #1 ; #2 ;
+ { \__fp_tuple_map_o:nw { \__fp_binary_rev_type_o:Nww / #2 ; } #1 ; }
+\cs_set_protected:Npn \__fp_tmp:w #1
+ {
+ \cs_new:cpn { __fp_tuple_#1_tuple_o:ww }
+ \s__fp_tuple \__fp_tuple_chk:w ##1 ;
+ \s__fp_tuple \__fp_tuple_chk:w ##2 ;
+ {
+ \int_compare:nNnTF
+ { \__fp_array_count:n {##1} } = { \__fp_array_count:n {##2} }
+ { \__fp_tuple_mapthread_o:nww { \__fp_binary_type_o:Nww #1 } }
+ { \__fp_invalid_operation_o:nww #1 }
+ \s__fp_tuple \__fp_tuple_chk:w {##1} ;
+ \s__fp_tuple \__fp_tuple_chk:w {##2} ;
+ }
+ }
+\__fp_tmp:w +
+\__fp_tmp:w -
%% File: l3fp-extended.dtx Copyright (C) 2011-2017 The LaTeX3 Project
\tl_const:Nn \c__fp_one_fixed_tl
{ {10000} {0000} {0000} {0000} {0000} {0000} ; }
@@ -15379,7 +15794,7 @@
1
\fi:
}
-%% File: l3fp-trig.dtx Copyright (C) 2011-2017 The LaTeX3 Project
+%% File: l3fp-trig.dtx Copyright (C) 2011-2018 The LaTeX3 Project
\tl_map_inline:nn
{
{acos} {acsc} {asec} {asin}
@@ -15912,32 +16327,21 @@
}
#1
}
-\cs_new:Npn \__fp_atan_o:Nw
- {
- \__fp_atan_dispatch_o:NNnNw
- \__fp_acotii_o:Nww \__fp_atanii_o:Nww { atan }
- }
-\cs_new:Npn \__fp_acot_o:Nw
+\cs_new:Npn \__fp_atan_o:Nw #1
{
- \__fp_atan_dispatch_o:NNnNw
- \__fp_atanii_o:Nww \__fp_acotii_o:Nww { acot }
+ \__fp_parse_function_one_two:nnw
+ { #1 { atan } { atand } }
+ { \__fp_atan_default:w \__fp_atanii_o:Nww #1 }
}
-\cs_new:Npn \__fp_atan_dispatch_o:NNnNw #1#2#3#4#5@
+\cs_new:Npn \__fp_acot_o:Nw #1
{
- \if_case:w
- \__int_eval:w \__fp_array_count:n {#5} - 1 \__int_eval_end:
- \exp_after:wN #1 \exp_after:wN #4 \c_one_fp #5
- \exp:w
- \or: #2 #4 #5 \exp:w
- \else:
- \__msg_kernel_expandable_error:nnnnn
- { kernel } { fp-num-args } { #3() } { 1 } { 2 }
- \exp_after:wN \c_nan_fp \exp:w
- \fi:
- \exp_after:wN \exp_end:
+ \__fp_parse_function_one_two:nnw
+ { #1 { acot } { acotd } }
+ { \__fp_atan_default:w \__fp_acotii_o:Nww #1 }
}
+\cs_new:Npx \__fp_atan_default:w #1#2#3 @ { #1 #2 #3 \c_one_fp @ }
\cs_new:Npn \__fp_atanii_o:Nww
- #1 \s__fp \__fp_chk:w #2#3#4; \s__fp \__fp_chk:w #5
+ #1 \s__fp \__fp_chk:w #2#3#4; \s__fp \__fp_chk:w #5 #6 @
{
\if_meaning:w 3 #2 \__fp_case_return_i_o:ww \fi:
\if_meaning:w 3 #5 \__fp_case_return_ii_o:ww \fi:
@@ -15954,7 +16358,7 @@
\fi:
\__fp_atan_normal_o:NNnwNnw #1
\s__fp \__fp_chk:w #2#3#4;
- \s__fp \__fp_chk:w #5
+ \s__fp \__fp_chk:w #5 #6
}
\cs_new:Npn \__fp_acotii_o:Nww #1#2; #3;
{ \__fp_atanii_o:Nww #1#3; #2; }
@@ -16185,7 +16589,28 @@
{ \__fp_asin_auxi_o:NnNww #1 {#3} #4 }
}
}
-%% File: l3fp-convert.dtx Copyright(C) 2011-2017 The LaTeX3 Project
+%% File: l3fp-convert.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+\cs_new:Npn \__fp_tuple_convert:Nw #1 \s__fp_tuple \__fp_tuple_chk:w #2 ;
+ {
+ \int_case:nnF { \__fp_array_count:n {#2} }
+ {
+ { 0 } { ( ) }
+ { 1 } { \__fp_tuple_convert_end:w @ { #1 #2 , } }
+ }
+ {
+ \__fp_tuple_convert_loop:nNw { } #1
+ #2 { ? \__fp_tuple_convert_end:w } ;
+ @ { \use_none:nn }
+ }
+ }
+\cs_new:Npn \__fp_tuple_convert_loop:nNw #1#2#3#4; #5 @ #6
+ {
+ \use_none:n #3
+ \exp_args:Nf \__fp_tuple_convert_loop:nNw { #2 #3#4 ; } #2 #5
+ @ { #6 , ~ #1 }
+ }
+\cs_new:Npn \__fp_tuple_convert_end:w #1 @ #2
+ { \exp_after:wN ( \exp:w \exp_end_continue_f:w #2 ) }
\cs_new:Npn \__fp_trim_zeros:w #1 ;
{
\__fp_trim_zeros_loop:w #1
@@ -16202,7 +16627,20 @@
\exp_after:wN \__fp_to_scientific_dispatch:w
\exp:w \exp_end_continue_f:w \__fp_parse:n
}
-\cs_new:Npn \__fp_to_scientific_dispatch:w \s__fp \__fp_chk:w #1#2
+\cs_new:Npn \__fp_to_scientific_dispatch:w #1
+ {
+ \__fp_change_func_type:NNN
+ #1 \__fp_to_scientific:w \__fp_to_scientific_recover:w
+ #1
+ }
+\cs_new:Npn \__fp_to_scientific_recover:w #1 #2 ;
+ {
+ \__fp_error:nffn { fp-unknown-type } { \tl_to_str:n { #2 ; } } { } { }
+ nan
+ }
+\cs_new:Npn \__fp_tuple_to_scientific:w
+ { \__fp_tuple_convert:Nw \__fp_to_scientific_dispatch:w }
+\cs_new:Npn \__fp_to_scientific:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
\if_case:w #1 \exp_stop_f:
@@ -16243,7 +16681,20 @@
\exp_after:wN \__fp_to_decimal_dispatch:w
\exp:w \exp_end_continue_f:w \__fp_parse:n
}
-\cs_new:Npn \__fp_to_decimal_dispatch:w \s__fp \__fp_chk:w #1#2
+\cs_new:Npn \__fp_to_decimal_dispatch:w #1
+ {
+ \__fp_change_func_type:NNN
+ #1 \__fp_to_decimal:w \__fp_to_decimal_recover:w
+ #1
+ }
+\cs_new:Npn \__fp_to_decimal_recover:w #1 #2 ;
+ {
+ \__fp_error:nffn { fp-unknown-type } { \tl_to_str:n { #2 ; } } { } { }
+ nan
+ }
+\cs_new:Npn \__fp_tuple_to_decimal:w
+ { \__fp_tuple_convert:Nw \__fp_to_decimal_dispatch:w }
+\cs_new:Npn \__fp_to_decimal:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
\if_case:w #1 \exp_stop_f:
@@ -16308,7 +16759,16 @@
\exp_after:wN \__fp_to_tl_dispatch:w
\exp:w \exp_end_continue_f:w \__fp_parse:n
}
-\cs_new:Npn \__fp_to_tl_dispatch:w \s__fp \__fp_chk:w #1#2
+\cs_new:Npn \__fp_to_tl_dispatch:w #1
+ { \__fp_change_func_type:NNN #1 \__fp_to_tl:w \__fp_to_tl_recover:w #1 }
+\cs_new:Npn \__fp_to_tl_recover:w #1 #2 ;
+ {
+ \__fp_error:nffn { fp-unknown-type } { \tl_to_str:n { #2 ; } } { } { }
+ nan
+ }
+\cs_new:Npn \__fp_tuple_to_tl:w
+ { \__fp_tuple_convert:Nw \__fp_to_tl_dispatch:w }
+\cs_new:Npn \__fp_to_tl:w \s__fp \__fp_chk:w #1#2
{
\if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
\if_case:w #1 \exp_stop_f:
@@ -16337,10 +16797,21 @@
\cs_new:Npn \__fp_to_tl_scientific:wNw #1 ; #2#3;
{ \__fp_trim_zeros:w #2.#3 ; #1 }
\cs_new:Npn \fp_to_dim:N #1
- { \fp_to_decimal:N #1 pt }
+ { \exp_after:wN \__fp_to_dim_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_dim:N { c }
-\cs_new:Npn \fp_to_dim:n #1
- { \fp_to_decimal:n {#1} pt }
+\cs_new:Npn \fp_to_dim:n
+ {
+ \exp_after:wN \__fp_to_dim_dispatch:w
+ \exp:w \exp_end_continue_f:w \__fp_parse:n
+ }
+\cs_new:Npn \__fp_to_dim_dispatch:w #1#2 ;
+ {
+ \__fp_change_func_type:NNN #1 \__fp_to_dim:w \__fp_to_dim_recover:w
+ #1 #2 ;
+ }
+\cs_new:Npn \__fp_to_dim_recover:w #1
+ { \__fp_invalid_operation:nnw { 0pt } { fp_to_dim } }
+\cs_new:Npn \__fp_to_dim:w #1 ; { \__fp_to_decimal:w #1 ; pt }
\cs_new:Npn \fp_to_int:N #1 { \exp_after:wN \__fp_to_int_dispatch:w #1 }
\cs_generate_variant:Nn \fp_to_int:N { c }
\cs_new:Npn \fp_to_int:n
@@ -16348,12 +16819,19 @@
\exp_after:wN \__fp_to_int_dispatch:w
\exp:w \exp_end_continue_f:w \__fp_parse:n
}
-\cs_new:Npn \__fp_to_int_dispatch:w #1;
+\cs_new:Npn \__fp_to_int_dispatch:w #1#2 ;
{
- \exp_after:wN \__fp_to_decimal_dispatch:w \exp:w \exp_end_continue_f:w
+ \__fp_change_func_type:NNN #1 \__fp_to_int:w \__fp_to_int_recover:w
+ #1 #2 ;
+ }
+\cs_new:Npn \__fp_to_int_recover:w #1
+ { \__fp_invalid_operation:nnw { 0 } { fp_to_int } }
+\cs_new:Npn \__fp_to_int:w #1;
+ {
+ \exp_after:wN \__fp_to_decimal:w \exp:w \exp_end_continue_f:w
\__fp_round:Nwn \__fp_round_to_nearest:NNN #1; { 0 }
}
-\__debug_patch_args:nNNpn { { (#1) } }
+\__kernel_patch_args:nNNpn { { (#1) } }
\cs_new:Npn \dim_to_fp:n #1
{
\exp_after:wN \__fp_from_dim_test:ww
@@ -16423,18 +16901,18 @@
}
\exp_not:N \__fp_array_to_clist_loop:Nw
}
-%% File: l3fp-random.dtx Copyright (C) 2016,2017 The LaTeX3 Project
+%% File: l3fp-random.dtx Copyright (C) 2016-2018 The LaTeX3 Project
\cs_new:Npn \__fp_parse_word_rand:N
{ \__fp_parse_function:NNN \__fp_rand_o:Nw ? }
\cs_new:Npn \__fp_parse_word_randint:N
{ \__fp_parse_function:NNN \__fp_randint_o:Nw ? }
\cs_if_exist:NF \pdftex_uniformdeviate:D
{
- \__msg_kernel_new:nnn { kernel } { fp-no-random }
+ \__kernel_msg_new:nnn { kernel } { fp-no-random }
{ Random~numbers~unavailable }
\cs_new:Npn \__fp_rand_o:Nw ? #1 @
{
- \__msg_kernel_expandable_error:nn { kernel } { fp-no-random }
+ \__kernel_msg_expandable_error:nn { kernel } { fp-no-random }
\exp_after:wN \c_nan_fp
}
\cs_new_eq:NN \__fp_randint_o:Nw \__fp_rand_o:Nw
@@ -16495,26 +16973,20 @@
\tl_if_empty:nTF {#1}
{ \__fp_rand_o: }
{
- \__msg_kernel_expandable_error:nnnnn
+ \__kernel_msg_expandable_error:nnnnn
{ kernel } { fp-num-args } { rand() } { 0 } { 0 }
\exp_after:wN \c_nan_fp
}
}
\cs_new:Npn \__fp_rand_o:
{ \__fp_parse_o:n { . \__fp_rand_myriads:n { xxxx } } }
-\cs_new:Npn \__fp_randint_o:Nw ? #1 @
+\cs_new:Npn \__fp_randint_o:Nw ?
{
- \if_case:w
- \__int_eval:w \__fp_array_count:n {#1} - 1 \__int_eval_end:
- \exp_after:wN \__fp_randint_e:w \c_one_fp #1
- \or: \__fp_randint_e:w #1
- \else:
- \__msg_kernel_expandable_error:nnnnn
- { kernel } { fp-num-args } { randint() } { 1 } { 2 }
- \exp_after:wN \c_nan_fp \exp:w
- \fi:
- \exp_after:wN \exp_end:
+ \__fp_parse_function_one_two:nnw
+ { randint }
+ { \__fp_randint_default:w \__fp_randint_o:w }
}
+\cs_new:Npn \__fp_randint_default:w #1 { \exp_after:wN #1 \c_one_fp }
\cs_new:Npn \__fp_randint_badarg:w \s__fp \__fp_chk:w #1#2#3;
{
\__fp_int:wTF \s__fp \__fp_chk:w #1#2#3;
@@ -16528,7 +17000,7 @@
}
{ 1 \exp_stop_f: }
}
-\cs_new:Npn \__fp_randint_e:w #1; #2;
+\cs_new:Npn \__fp_randint_o:w #1; #2; @
{
\if_case:w
\__fp_randint_badarg:w #1;
@@ -16541,6 +17013,7 @@
{ randint } { \__fp_array_to_clist:n { #1; #2; } }
\exp:w
\fi:
+ \exp_after:wN \exp_end:
}
\cs_new:Npn \__fp_randint_e:wnn #1;
{
@@ -16585,65 +17058,7 @@
{ \__fp_exp_after_o:w #1 ; \exp:w }
}
}
-%% File: l3fp-assign.dtx Copyright (C) 2011-2017 The LaTeX3 project
-\cs_new_protected:Npn \fp_new:N #1
- { \cs_new_eq:NN #1 \c_zero_fp }
-\cs_generate_variant:Nn \fp_new:N {c}
-\cs_new_protected:Npn \fp_set:Nn #1#2
- { \tl_set:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
-\cs_new_protected:Npn \fp_gset:Nn #1#2
- { \tl_gset:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
-\cs_new_protected:Npn \fp_const:Nn #1#2
- { \tl_const:Nx #1 { \exp_not:f { \__fp_parse:n {#2} } } }
-\cs_generate_variant:Nn \fp_set:Nn {c}
-\cs_generate_variant:Nn \fp_gset:Nn {c}
-\cs_generate_variant:Nn \fp_const:Nn {c}
-\cs_new_eq:NN \fp_set_eq:NN \tl_set_eq:NN
-\cs_new_eq:NN \fp_gset_eq:NN \tl_gset_eq:NN
-\cs_generate_variant:Nn \fp_set_eq:NN { c , Nc , cc }
-\cs_generate_variant:Nn \fp_gset_eq:NN { c , Nc , cc }
-\cs_new_protected:Npn \fp_zero:N #1 { \fp_set_eq:NN #1 \c_zero_fp }
-\cs_new_protected:Npn \fp_gzero:N #1 { \fp_gset_eq:NN #1 \c_zero_fp }
-\cs_generate_variant:Nn \fp_zero:N { c }
-\cs_generate_variant:Nn \fp_gzero:N { c }
-\cs_new_protected:Npn \fp_zero_new:N #1
- { \fp_if_exist:NTF #1 { \fp_zero:N #1 } { \fp_new:N #1 } }
-\cs_new_protected:Npn \fp_gzero_new:N #1
- { \fp_if_exist:NTF #1 { \fp_gzero:N #1 } { \fp_new:N #1 } }
-\cs_generate_variant:Nn \fp_zero_new:N { c }
-\cs_generate_variant:Nn \fp_gzero_new:N { c }
-\cs_new_protected:Npn \fp_add:Nn { \__fp_add:NNNn \fp_set:Nn + }
-\cs_new_protected:Npn \fp_gadd:Nn { \__fp_add:NNNn \fp_gset:Nn + }
-\cs_new_protected:Npn \fp_sub:Nn { \__fp_add:NNNn \fp_set:Nn - }
-\cs_new_protected:Npn \fp_gsub:Nn { \__fp_add:NNNn \fp_gset:Nn - }
-\cs_new_protected:Npn \__fp_add:NNNn #1#2#3#4
- { #1 #3 { #3 #2 \__fp_parse:n {#4} } }
-\cs_generate_variant:Nn \fp_add:Nn { c }
-\cs_generate_variant:Nn \fp_gadd:Nn { c }
-\cs_generate_variant:Nn \fp_sub:Nn { c }
-\cs_generate_variant:Nn \fp_gsub:Nn { c }
-\cs_new_protected:Npn \fp_show:N { \__fp_show:NN \tl_show:n }
-\cs_generate_variant:Nn \fp_show:N { c }
-\cs_new_protected:Npn \fp_log:N { \__fp_show:NN \tl_log:n }
-\cs_generate_variant:Nn \fp_log:N { c }
-\cs_new_protected:Npn \__fp_show:NN #1#2
- {
- \__kernel_check_defined:NT #2
- { \exp_args:Nx #1 { \token_to_str:N #2 = \fp_to_tl:N #2 } }
- }
-\cs_new_protected:Npn \fp_show:n
- { \msg_show_eval:Nn \fp_to_tl:n }
-\cs_new_protected:Npn \fp_log:n
- { \msg_log_eval:Nn \fp_to_tl:n }
-\fp_const:Nn \c_e_fp { 2.718 2818 2845 9045 }
-\fp_const:Nn \c_one_fp { 1 }
-\fp_const:Nn \c_pi_fp { 3.141 5926 5358 9793 }
-\fp_const:Nn \c_one_degree_fp { 0.0 1745 3292 5199 4330 }
-\fp_new:N \l_tmpa_fp
-\fp_new:N \l_tmpb_fp
-\fp_new:N \g_tmpa_fp
-\fp_new:N \g_tmpb_fp
-%% File l3sort.dtx (C) Copyright 2012-2017 The LaTeX3 Project
+%% File l3sort.dtx (C) Copyright 2012-2018 The LaTeX3 Project
\int_new:N \l__sort_length_int
\int_new:N \l__sort_min_int
\int_new:N \l__sort_top_int
@@ -16864,14 +17279,14 @@
\cs_new_protected:Npn \__sort_return_mark:N #1 { }
\cs_new_protected:Npn \__sort_return_none_error:
{
- \__msg_kernel_error:nnxx { kernel } { return-none }
+ \__kernel_msg_error:nnxx { kernel } { return-none }
{ \tex_the:D \tex_toks:D \l__sort_A_int }
{ \tex_the:D \tex_toks:D \l__sort_C_int }
\__sort_return_same:
}
\cs_new_protected:Npn \__sort_return_two_error:w
#1 \__sort_return_none_error:
- { \__msg_kernel_error:nn { kernel } { return-two } }
+ { \__kernel_msg_error:nn { kernel } { return-two } }
\cs_new_protected:Npn \__sort_return_same:
{
\tex_toks:D \l__sort_B_int \tex_toks:D \l__sort_C_int
@@ -16993,12 +17408,12 @@
{ \cs_set_eq:NN \toksdef \__sort_disabled_toksdef:n }
\cs_new_protected:Npn \__sort_disabled_toksdef:n #1
{
- \__msg_kernel_error:nnx { kernel } { toksdef }
+ \__kernel_msg_error:nnx { kernel } { toksdef }
{ \token_to_str:N #1 }
\__sort_error:
\tex_toksdef:D #1
}
-\__msg_kernel_new:nnnn { kernel } { toksdef }
+\__kernel_msg_new:nnnn { kernel } { toksdef }
{ Allocation~of~\iow_char:N\\toks~registers~impossible~while~sorting. }
{
The~comparison~code~used~for~sorting~a~list~has~attempted~to~
@@ -17008,20 +17423,20 @@
\cs_new_protected:Npn \__sort_too_long_error:NNw #1#2 \fi:
{
\fi:
- \__msg_kernel_error:nnxxx { kernel } { too-large }
+ \__kernel_msg_error:nnxxx { kernel } { too-large }
{ \token_to_str:N #2 }
{ \int_eval:n { \l__sort_true_max_int - \l__sort_min_int } }
{ \int_eval:n { \l__sort_top_int - \l__sort_min_int } }
#1 \__sort_error:
}
-\__msg_kernel_new:nnnn { kernel } { too-large }
+\__kernel_msg_new:nnnn { kernel } { too-large }
{ The~list~#1~is~too~long~to~be~sorted~by~TeX. }
{
TeX~has~#2~toks~registers~still~available:~
this~only~allows~to~sort~with~up~to~#3~
items.~All~extra~items~will~be~deleted.
}
-\__msg_kernel_new:nnnn { kernel } { return-none }
+\__kernel_msg_new:nnnn { kernel } { return-none }
{ The~comparison~code~did~not~return. }
{
When~sorting~a~list,~the~code~to~compare~items~#1~and~#2~
@@ -17030,7 +17445,7 @@
\iow_char:N\\sort_return_swapped: .~
Exactly~one~of~these~should~be~called.
}
-\__msg_kernel_new:nnnn { kernel } { return-two }
+\__kernel_msg_new:nnnn { kernel } { return-two }
{ The~comparison~code~returned~multiple~times. }
{
When~sorting~a~list,~the~code~to~compare~items~called~
@@ -17038,9 +17453,9 @@
\iow_char:N\\sort_return_swapped: ~multiple~times.~
Exactly~one~of~these~should~be~called.
}
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \sort_return_same: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_same: }
\cs_new_protected:Npn \sort_ordered: { \sort_return_same: }
-\__debug_deprecation:nnNNpn { 2018-12-31 } { \sort_return_swapped: }
+\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_swapped: }
\cs_new_protected:Npn \sort_reversed: { \sort_return_swapped: }
%% File: l3tl-build.dtx Copyright (C) 2011-2017 The LaTeX3 Project
\int_new:N \l__tl_build_start_index_int
@@ -17519,14 +17934,14 @@
\cs_generate_variant:Nn \__tl_analysis_show_long_aux:nnnn { oof }
\tl_const:Nx \c__tl_analysis_show_etc_str % (
{ \token_to_str:N \ETC.) }
-\__msg_kernel_new:nnn { kernel } { show-tl-analysis }
+\__kernel_msg_new:nnn { kernel } { show-tl-analysis }
{
The~token~list~ \tl_if_empty:nF {#1} { #1 ~ }
\tl_if_empty:nTF {#2}
{ is~empty }
{ contains~the~tokens: #2 }
}
-%% File: l3regex.dtx Copyright (C) 2011-2017 The LaTeX3 Project
+%% File: l3regex.dtx Copyright (C) 2011-2018 The LaTeX3 Project
\cs_new_protected:Npn \__regex_standard_escapechar:
{ \int_set:Nn \tex_escapechar:D { `\\ } }
\cs_new:Npn \__regex_toks_use:w { \tex_the:D \tex_toks:D }
@@ -17785,11 +18200,11 @@
\__regex_item_caseful_range:nn { `A } { `F }
\__regex_item_caseful_range:nn { `a } { `f }
}
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
- \__debug_trace_push:nnN { regex } { 1 } \__regex_escape_use:nnnn
+ \__regex_trace_push:nnN { regex } { 1 } \__regex_escape_use:nnnn
\__tl_build:Nw \l__regex_internal_a_tl
- \__tl_build_one:n { \__debug_trace_pop:nnN { regex } { 1 } \__regex_escape_use:nnnn }
+ \__tl_build_one:n { \__regex_trace_pop:nnN { regex } { 1 } \__regex_escape_use:nnnn }
\use_none:nn
}
{ }
@@ -17830,7 +18245,7 @@
\cs_new:cpn { __regex_escape_/break:w }
{
\if_false: { \fi: }
- \__msg_kernel_error:nn { kernel } { trailing-backslash }
+ \__kernel_msg_error:nn { kernel } { trailing-backslash }
\exp_after:wN \use_none:n \exp_after:wN { \if_false: } \fi:
}
\cs_new:cpn { __regex_escape_~:w } { }
@@ -17857,7 +18272,7 @@
{
\if_false: { \fi: }
\__tl_build_one:o \l__regex_internal_b_tl
- \__msg_kernel_error:nnx { kernel } { x-overflow } {#1}
+ \__kernel_msg_error:nnx { kernel } { x-overflow } {#1}
\tl_set:Nx \l__regex_internal_b_tl
{ \if_false: } \fi:
}
@@ -17921,7 +18336,7 @@
{
\if_false: { \fi: }
\__tl_build_one:o \l__regex_internal_b_tl
- \__msg_kernel_error:nnx { kernel } { x-missing-rbrace } {#1}
+ \__kernel_msg_error:nnx { kernel } { x-missing-rbrace } {#1}
\tl_set:Nx \l__regex_internal_b_tl
{ \if_false: } \fi: \__regex_escape_loop:N #1
}
@@ -18085,7 +18500,7 @@
\if_int_compare:w \l__regex_mode_int = \c__regex_class_mode_int
\exp_after:wN \exp_after:wN \exp_after:wN \use:n
\else:
- \__msg_kernel_error:nn { kernel } { c-bad-mode }
+ \__kernel_msg_error:nn { kernel } { c-bad-mode }
\exp_after:wN \exp_after:wN \exp_after:wN \use_none:n
\fi:
\fi:
@@ -18114,13 +18529,13 @@
{
\__regex_if_in_class:TF
{
- \__msg_kernel_error:nn { kernel } { missing-rbrack }
+ \__kernel_msg_error:nn { kernel } { missing-rbrack }
\use:c { __regex_compile_]: }
\prg_do_nothing: \prg_do_nothing:
}
{ }
\if_int_compare:w \l__regex_group_level_int > 0 \exp_stop_f:
- \__msg_kernel_error:nnx { kernel } { missing-rparen }
+ \__kernel_msg_error:nnx { kernel } { missing-rparen }
{ \int_use:N \l__regex_group_level_int }
\prg_replicate:nn
{ \l__regex_group_level_int }
@@ -18156,10 +18571,10 @@
\prg_do_nothing: \prg_do_nothing:
\prg_do_nothing: \prg_do_nothing:
\int_compare:nNnT \l__regex_mode_int = \c__regex_catcode_mode_int
- { \__msg_kernel_error:nn { kernel } { c-trailing } }
+ { \__kernel_msg_error:nn { kernel } { c-trailing } }
\int_compare:nNnT \l__regex_mode_int < \c__regex_outer_mode_int
{
- \__msg_kernel_error:nn { kernel } { c-missing-rbrace }
+ \__kernel_msg_error:nn { kernel } { c-missing-rbrace }
\__regex_compile_end_cs:
\prg_do_nothing: \prg_do_nothing:
\prg_do_nothing: \prg_do_nothing:
@@ -18219,7 +18634,7 @@
\cs_new_protected:Npn \__regex_compile_quantifier_abort:xNN #1#2#3
{
\__regex_compile_quantifier_none:
- \__msg_kernel_warning:nnxx { kernel } { invalid-quantifier } {#1} {#3}
+ \__kernel_msg_warning:nnxx { kernel } { invalid-quantifier } {#1} {#3}
\__regex_compile_abort_tokens:x {#1}
#2 #3
}
@@ -18286,7 +18701,7 @@
{ #1 #2 } { \__regex_compile_special:N \c_right_brace_str }
{
\if_int_compare:w \l__regex_internal_a_int > \l__regex_internal_b_int
- \__msg_kernel_error:nnxx { kernel } { backwards-quantifier }
+ \__kernel_msg_error:nnxx { kernel } { backwards-quantifier }
{ \int_use:N \l__regex_internal_a_int }
{ \int_use:N \l__regex_internal_b_int }
\int_zero:N \l__regex_internal_b_int
@@ -18309,7 +18724,7 @@
}
\cs_new_protected:Npn \__regex_compile_raw_error:N #1
{
- \__msg_kernel_error:nnx { kernel } { bad-escape } {#1}
+ \__kernel_msg_error:nnx { kernel } { bad-escape } {#1}
\__regex_compile_raw:N #1
}
\cs_new_protected:Npn \__regex_compile_raw:N #1#2#3
@@ -18351,7 +18766,7 @@
\__regex_if_end_range:NNTF #2 #3
{
\if_int_compare:w `#1 > `#3 \exp_stop_f:
- \__msg_kernel_error:nnxx { kernel } { range-backwards } {#1} {#3}
+ \__kernel_msg_error:nnxx { kernel } { range-backwards } {#1} {#3}
\else:
\__tl_build_one:x
{
@@ -18365,7 +18780,7 @@
\fi:
}
{
- \__msg_kernel_warning:nnxx { kernel } { range-missing-end }
+ \__kernel_msg_warning:nnxx { kernel } { range-missing-end }
{#1} { \c_backslash_str #3 }
\__tl_build_one:x
{
@@ -18517,8 +18932,8 @@
\str_case:nn { #2 }
{
: { \__regex_compile_class_posix:NNNNw }
- = { \__msg_kernel_warning:nnx { kernel } { posix-unsupported } { = } }
- . { \__msg_kernel_warning:nnx { kernel } { posix-unsupported } { . } }
+ = { \__kernel_msg_warning:nnx { kernel } { posix-unsupported } { = } }
+ . { \__kernel_msg_warning:nnx { kernel } { posix-unsupported } { . } }
}
}
\__regex_compile_raw:N [ #1 #2
@@ -18557,7 +18972,7 @@
}
}
{
- \__msg_kernel_warning:nnx { kernel } { posix-unknown }
+ \__kernel_msg_warning:nnx { kernel } { posix-unknown }
{ \l__regex_internal_a_tl }
\__regex_compile_abort_tokens:x
{
@@ -18567,7 +18982,7 @@
}
}
{
- \__msg_kernel_error:nnxx { kernel } { posix-missing-close }
+ \__kernel_msg_error:nnxx { kernel } { posix-missing-close }
{ [: \l__regex_internal_a_tl } { #2 #4 }
\__regex_compile_abort_tokens:x { [: \l__regex_internal_a_tl }
#1 #2 #3 #4
@@ -18591,7 +19006,7 @@
\__tl_build_one:o \l__regex_internal_regex
\exp_after:wN \__regex_compile_quantifier:w
\else:
- \__msg_kernel_warning:nn { kernel } { extra-rparen }
+ \__kernel_msg_warning:nn { kernel } { extra-rparen }
\exp_after:wN \__regex_compile_raw:N \exp_after:wN )
\fi:
}
@@ -18607,7 +19022,7 @@
\cs_if_exist_use:cF
{ __regex_compile_special_group_\token_to_str:N #4 :w }
{
- \__msg_kernel_warning:nnx { kernel } { special-group-unknown }
+ \__kernel_msg_warning:nnx { kernel } { special-group-unknown }
{ (? #4 }
\__regex_compile_group_begin:N \__regex_group:nnnN
\__regex_compile_raw:N ? #3 #4
@@ -18643,7 +19058,7 @@
\cs_set:Npn \__regex_item_range:nn { \__regex_item_caseless_range:nn }
}
{
- \__msg_kernel_warning:nnx { kernel } { unknown-option } { (?i #2 }
+ \__kernel_msg_warning:nnx { kernel } { unknown-option } { (?i #2 }
\__regex_compile_raw:N (
\__regex_compile_raw:N ?
\__regex_compile_raw:N i
@@ -18659,7 +19074,7 @@
\cs_set:Npn \__regex_item_range:nn { \__regex_item_caseful_range:nn }
}
{
- \__msg_kernel_warning:nnx { kernel } { unknown-option } { (?-#2#4 }
+ \__kernel_msg_warning:nnx { kernel } { unknown-option } { (?-#2#4 }
\__regex_compile_raw:N (
\__regex_compile_raw:N ?
\__regex_compile_raw:N -
@@ -18686,7 +19101,7 @@
}
{ \cs_if_exist_use:cF { __regex_compile_c_#2:w } }
{
- \__msg_kernel_error:nnx { kernel } { c-missing-category } {#2}
+ \__kernel_msg_error:nnx { kernel } { c-missing-category } {#2}
#1 #2
}
}
@@ -18699,7 +19114,7 @@
{ \token_if_eq_charcode:NNF #2 ( } % )
}
{ \use:n }
- { \__msg_kernel_error:nnn { kernel } { c-C-invalid } {#2} }
+ { \__kernel_msg_error:nnn { kernel } { c-C-invalid } {#2} }
#1 #2
}
\cs_new_protected:cpn { __regex_compile_c_[:w } #1#2
@@ -18738,7 +19153,7 @@
{ \__regex_compile_c_lbrack_end: }
}
{
- \__msg_kernel_error:nnx { kernel } { c-missing-rbrack } {#2}
+ \__kernel_msg_error:nnx { kernel } { c-missing-rbrack } {#2}
\__regex_compile_c_lbrack_end:
#1 #2
}
@@ -18840,7 +19255,7 @@
\__regex_compile_u_loop:NN
}
{
- \__msg_kernel_error:nn { kernel } { u-missing-lbrace }
+ \__kernel_msg_error:nn { kernel } { u-missing-lbrace }
\__regex_compile_raw:N u #1 #2
}
}
@@ -18858,7 +19273,7 @@
}
{
\if_false: { \fi: }
- \__msg_kernel_error:nnx { kernel } { u-missing-rbrace } {#2}
+ \__kernel_msg_error:nnx { kernel } { u-missing-rbrace } {#2}
\__regex_compile_u_end:
#1 #2
}
@@ -19078,11 +19493,11 @@
\__regex_compile:n {#1}
\__regex_build:N \l__regex_internal_regex
}
-\__debug_patch:nnNNpn
- { \__debug_trace_push:nnN { regex } { 1 } \__regex_build:N }
+\__kernel_patch:nnNNpn
+ { \__regex_trace_push:nnN { regex } { 1 } \__regex_build:N }
{
\__regex_trace_states:n { 2 }
- \__debug_trace_pop:nnN { regex } { 1 } \__regex_build:N
+ \__regex_trace_pop:nnN { regex } { 1 } \__regex_build:N
}
\cs_new_protected:Npn \__regex_build:N #1
{
@@ -19097,11 +19512,11 @@
\__regex_toks_put_right:Nn \l__regex_right_state_int
{ \__regex_action_success: }
}
-\__debug_patch:nnNNpn
- { \__debug_trace_push:nnN { regex } { 1 } \__regex_build_for_cs:n }
+\__kernel_patch:nnNNpn
+ { \__regex_trace_push:nnN { regex } { 1 } \__regex_build_for_cs:n }
{
\__regex_trace_states:n { 2 }
- \__debug_trace_pop:nnN { regex } { 1 } \__regex_build_for_cs:n
+ \__regex_trace_pop:nnN { regex } { 1 } \__regex_build_for_cs:n
}
\cs_new_protected:Npn \__regex_build_for_cs:n #1
{
@@ -19136,9 +19551,9 @@
{ \__regex_toks_put_left:Nx #2 { #1 { \int_eval:n { #3 - #2 } } } }
\cs_new_protected:Npn \__regex_build_transition_right:nNn #1#2#3
{ \__regex_toks_put_right:Nx #2 { #1 { \int_eval:n { #3 - #2 } } } }
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
- \__debug_trace:nnx { regex } { 2 }
+ \__regex_trace:nnx { regex } { 2 }
{
regex~new~state~
L=\int_use:N \l__regex_left_state_int ~ -> ~
@@ -19220,9 +19635,9 @@
\__regex_tests_action_cost:n \l__regex_right_state_int
}
}
-\__debug_patch:nnNNpn
- { \__debug_trace_push:nnN { regex } { 1 } \__regex_group_aux:nnnnN }
- { \__debug_trace_pop:nnN { regex } { 1 } \__regex_group_aux:nnnnN }
+\__kernel_patch:nnNNpn
+ { \__regex_trace_push:nnN { regex } { 1 } \__regex_group_aux:nnnnN }
+ { \__regex_trace_pop:nnN { regex } { 1 } \__regex_group_aux:nnnnN }
\cs_new_protected:Npn \__regex_group_aux:nnnnN #1#2#3#4#5
{
\if_int_compare:w #3 = 0 \exp_stop_f:
@@ -19272,9 +19687,9 @@
{ \int_max:nn {#1} { \l__regex_capturing_group_int } }
{#2}
}
-\__debug_patch:nnNNpn
- { \__debug_trace_push:nnN { regex } { 1 } \__regex_branch:n }
- { \__debug_trace_pop:nnN { regex } { 1 } \__regex_branch:n }
+\__kernel_patch:nnNNpn
+ { \__regex_trace_push:nnN { regex } { 1 } \__regex_branch:n }
+ { \__regex_trace_pop:nnN { regex } { 1 } \__regex_branch:n }
\cs_new_protected:Npn \__regex_branch:n #1
{
\__regex_build_new_state:
@@ -19461,12 +19876,12 @@
\bool_new:N \g__regex_success_bool
\bool_new:N \l__regex_saved_success_bool
\bool_new:N \l__regex_match_success_bool
-\__debug_patch:nnNNpn
+\__kernel_patch:nnNNpn
{
- \__debug_trace_push:nnN { regex } { 1 } \__regex_match:n
- \__debug_trace:nnx { regex } { 1 } { analyzing~query~token~list }
+ \__regex_trace_push:nnN { regex } { 1 } \__regex_match:n
+ \__regex_trace:nnx { regex } { 1 } { analyzing~query~token~list }
}
- { \__debug_trace_pop:nnN { regex } { 1 } \__regex_match:n }
+ { \__regex_trace_pop:nnN { regex } { 1 } \__regex_match:n }
\cs_new_protected:Npn \__regex_match:n #1
{
\int_zero:N \l__regex_balance_int
@@ -19480,8 +19895,8 @@
\__regex_match_init:
\__regex_match_once:
}
-\__debug_patch:nnNNpn
- { \__debug_trace:nnx { regex } { 1 } { initializing } }
+\__kernel_patch:nnNNpn
+ { \__regex_trace:nnx { regex } { 1 } { initializing } }
{ }
\cs_new_protected:Npn \__regex_match_init:
{
@@ -19586,8 +20001,8 @@
= \__intarray_item_fast:Nn \g__regex_catcode_intarray
{ \l__regex_curr_pos_int } \scan_stop:
}
-\__debug_patch:nnNNpn
- { \__debug_trace:nnx { regex } { 2 } { state~\int_use:N \l__regex_curr_state_int } }
+\__kernel_patch:nnNNpn
+ { \__regex_trace:nnx { regex } { 2 } { state~\int_use:N \l__regex_curr_state_int } }
{ }
\cs_new_protected:Npn \__regex_use_state:
{
@@ -19737,9 +20152,9 @@
}
}
}
-\__debug_patch:nnNNpn
- { \__debug_trace_push:nnN { regex } { 1 } \__regex_replacement:n }
- { \__debug_trace_pop:nnN { regex } { 1 } \__regex_replacement:n }
+\__kernel_patch:nnNNpn
+ { \__regex_trace_push:nnN { regex } { 1 } \__regex_replacement:n }
+ { \__regex_trace_pop:nnN { regex } { 1 } \__regex_replacement:n }
\cs_new_protected:Npn \__regex_replacement:n #1
{
\__tl_build:Nw \l__regex_internal_a_tl
@@ -19759,14 +20174,14 @@
{#1}
\prg_do_nothing: \prg_do_nothing:
\if_int_compare:w \l__regex_replacement_csnames_int > 0 \exp_stop_f:
- \__msg_kernel_error:nnx { kernel } { replacement-missing-rbrace }
+ \__kernel_msg_error:nnx { kernel } { replacement-missing-rbrace }
{ \int_use:N \l__regex_replacement_csnames_int }
\__tl_build_one:x
{ \prg_replicate:nn \l__regex_replacement_csnames_int \cs_end: }
\fi:
\seq_if_empty:NF \l__regex_replacement_category_seq
{
- \__msg_kernel_error:nnx { kernel } { replacement-missing-rparen }
+ \__kernel_msg_error:nnx { kernel } { replacement-missing-rparen }
{ \seq_count:N \l__regex_replacement_category_seq }
\seq_clear:N \l__regex_replacement_category_seq
}
@@ -19901,11 +20316,11 @@
\cs_new_protected:Npn \__regex_replacement_cat:NNN #1#2#3
{
\token_if_eq_meaning:NNTF \prg_do_nothing: #3
- { \__msg_kernel_error:nn { kernel } { replacement-catcode-end } }
+ { \__kernel_msg_error:nn { kernel } { replacement-catcode-end } }
{
\int_compare:nNnTF { \l__regex_replacement_csnames_int } > 0
{
- \__msg_kernel_error:nnnn
+ \__kernel_msg_error:nnnn
{ kernel } { replacement-catcode-in-cs } {#1} {#3}
#2 #3
}
@@ -19921,7 +20336,7 @@
{
\__regex_char_if_alphanumeric:NTF #3
{
- \__msg_kernel_error:nnnn
+ \__kernel_msg_error:nnnn
{ kernel } { replacement-catcode-escaped }
{#1} {#3}
}
@@ -19982,7 +20397,7 @@
\cs_new_protected:Npn \__regex_replacement_c_S:w #1#2
{
\if_int_compare:w `#2 = 0 \exp_stop_f:
- \__msg_kernel_error:nn { kernel } { replacement-null-space }
+ \__kernel_msg_error:nn { kernel } { replacement-null-space }
\fi:
\tex_lccode:D `\ = `#2 \scan_stop:
\tex_lowercase:D { \__tl_build_one:n {~} }
@@ -19996,7 +20411,7 @@
\group_end:
\cs_new_protected:Npn \__regex_replacement_error:NNN #1#2#3
{
- \__msg_kernel_error:nnx { kernel } { replacement-#1 } {#3}
+ \__kernel_msg_error:nnx { kernel } { replacement-#1 } {#3}
#2 #3
}
\cs_new_protected:Npn \regex_new:N #1
@@ -20181,7 +20596,7 @@
{ \flag_height:n { __regex_begin } + \flag_height:n { __regex_end } }
= 0
{
- \__msg_kernel_error:nnxxx { kernel } { result-unbalanced }
+ \__kernel_msg_error:nnxxx { kernel } { result-unbalanced }
{ splitting~or~extracting~submatches }
{ \flag_height:n { __regex_end } }
{ \flag_height:n { __regex_begin } }
@@ -20304,7 +20719,7 @@
{
\if_int_compare:w \l__regex_balance_int = 0 \exp_stop_f:
\else:
- \__msg_kernel_error:nnxxx { kernel } { result-unbalanced }
+ \__kernel_msg_error:nnxxx { kernel } { result-unbalanced }
{ replacing }
{ \int_max:nn { - \l__regex_balance_int } { 0 } }
{ \int_max:nn { \l__regex_balance_int } { 0 } }
@@ -20326,20 +20741,20 @@
}
}
}
-\__msg_kernel_new:nnnn { kernel } { trailing-backslash }
+\__kernel_msg_new:nnnn { kernel } { trailing-backslash }
{ Trailing~escape~character~'\iow_char:N\\'. }
{
A~regular~expression~or~its~replacement~text~ends~with~
the~escape~character~'\iow_char:N\\'.~It~will~be~ignored.
}
-\__msg_kernel_new:nnnn { kernel } { x-missing-rbrace }
+\__kernel_msg_new:nnnn { kernel } { x-missing-rbrace }
{ Missing~closing~brace~in~'\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
'\iow_char:N\\x\{...#1'.~
The~closing~brace~is~missing.
}
-\__msg_kernel_new:nnnn { kernel } { x-overflow }
+\__kernel_msg_new:nnnn { kernel } { x-overflow }
{ Character~code~'#1'~too~large~in~'\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
@@ -20347,20 +20762,20 @@
The~character~code~#1~is~larger~than~
the~maximum~value~\int_use:N \c_max_char_int.
}
-\__msg_kernel_new:nnnn { kernel } { invalid-quantifier }
+\__kernel_msg_new:nnnn { kernel } { invalid-quantifier }
{ Braced~quantifier~'#1'~may~not~be~followed~by~'#2'. }
{
The~character~'#2'~is~invalid~in~the~braced~quantifier~'#1'.~
The~only~valid~quantifiers~are~'*',~'?',~'+',~'{<int>}',~
'{<min>,}'~and~'{<min>,<max>}',~optionally~followed~by~'?'.
}
-\__msg_kernel_new:nnnn { kernel } { missing-rbrack }
+\__kernel_msg_new:nnnn { kernel } { missing-rbrack }
{ Missing~right~bracket~inserted~in~regular~expression. }
{
LaTeX~was~given~a~regular~expression~where~a~character~class~
was~started~with~'[',~but~the~matching~']'~is~missing.
}
-\__msg_kernel_new:nnnn { kernel } { missing-rparen }
+\__kernel_msg_new:nnnn { kernel } { missing-rparen }
{
Missing~right~
\int_compare:nTF { #1 = 1 } { parenthesis } { parentheses } ~
@@ -20370,13 +20785,13 @@
LaTeX~was~given~a~regular~expression~with~\int_eval:n {#1} ~
more~left~parentheses~than~right~parentheses.
}
-\__msg_kernel_new:nnnn { kernel } { extra-rparen }
+\__kernel_msg_new:nnnn { kernel } { extra-rparen }
{ Extra~right~parenthesis~ignored~in~regular~expression. }
{
LaTeX~came~across~a~closing~parenthesis~when~no~submatch~group~
was~open.~The~parenthesis~will~be~ignored.
}
-\__msg_kernel_new:nnnn { kernel } { bad-escape }
+\__kernel_msg_new:nnnn { kernel } { bad-escape }
{
Invalid~escape~'\iow_char:N\\#1'~
\__regex_if_in_cs:TF { within~a~control~sequence. }
@@ -20400,14 +20815,14 @@
because~it~does~not~match~exactly~one~character.
}
}
-\__msg_kernel_new:nnnn { kernel } { range-missing-end }
+\__kernel_msg_new:nnnn { kernel } { range-missing-end }
{ Invalid~end-point~for~range~'#1-#2'~in~character~class. }
{
The~end-point~'#2'~of~the~range~'#1-#2'~may~not~serve~as~an~
end-point~for~a~range:~alphanumeric~characters~should~not~be~
escaped,~and~non-alphanumeric~characters~should~be~escaped.
}
-\__msg_kernel_new:nnnn { kernel } { range-backwards }
+\__kernel_msg_new:nnnn { kernel } { range-backwards }
{ Range~'[#1-#2]'~out~of~order~in~character~class. }
{
In~ranges~of~characters~'[x-y]'~appearing~in~character~classes,~
@@ -20415,34 +20830,34 @@
Here,~'#1'~has~character~code~\int_eval:n {`#1},~while~
'#2'~has~character~code~\int_eval:n {`#2}.
}
-\__msg_kernel_new:nnnn { kernel } { c-bad-mode }
+\__kernel_msg_new:nnnn { kernel } { c-bad-mode }
{ Invalid~nested~'\iow_char:N\\c'~escape~in~regular~expression. }
{
The~'\iow_char:N\\c'~escape~cannot~be~used~within~
a~control~sequence~test~'\iow_char:N\\c{...}'.~
To~combine~several~category~tests,~use~'\iow_char:N\\c[...]'.
}
-\__msg_kernel_new:nnnn { kernel } { c-C-invalid }
+\__kernel_msg_new:nnnn { kernel } { c-C-invalid }
{ '\iow_char:N\\cC'~should~be~followed~by~'.'~or~'(',~not~'#1'. }
{
The~'\iow_char:N\\cC'~construction~restricts~the~next~item~to~be~a~
control~sequence~or~the~next~group~to~be~made~of~control~sequences.~
It~only~makes~sense~to~follow~it~by~'.'~or~by~a~group.
}
-\__msg_kernel_new:nnnn { kernel } { c-missing-rbrace }
+\__kernel_msg_new:nnnn { kernel } { c-missing-rbrace }
{ Missing~right~brace~inserted~for~'\iow_char:N\\c'~escape. }
{
LaTeX~was~given~a~regular~expression~where~a~
'\iow_char:N\\c\iow_char:N\{...'~construction~was~not~ended~
with~a~closing~brace~'\iow_char:N\}'.
}
-\__msg_kernel_new:nnnn { kernel } { c-missing-rbrack }
+\__kernel_msg_new:nnnn { kernel } { c-missing-rbrack }
{ Missing~right~bracket~inserted~for~'\iow_char:N\\c'~escape. }
{
A~construction~'\iow_char:N\\c[...'~appears~in~a~
regular~expression,~but~the~closing~']'~is~not~present.
}
-\__msg_kernel_new:nnnn { kernel } { c-missing-category }
+\__kernel_msg_new:nnnn { kernel } { c-missing-category }
{ Invalid~character~'#1'~following~'\iow_char:N\\c'~escape. }
{
In~regular~expressions,~the~'\iow_char:N\\c'~escape~sequence~
@@ -20450,19 +20865,19 @@
capital~letter~representing~a~character~category,~namely~
one~of~'ABCDELMOPSTU'.
}
-\__msg_kernel_new:nnnn { kernel } { c-trailing }
+\__kernel_msg_new:nnnn { kernel } { c-trailing }
{ Trailing~category~code~escape~'\iow_char:N\\c'... }
{
A~regular~expression~ends~with~'\iow_char:N\\c'~followed~
by~a~letter.~It~will~be~ignored.
}
-\__msg_kernel_new:nnnn { kernel } { u-missing-lbrace }
+\__kernel_msg_new:nnnn { kernel } { u-missing-lbrace }
{ Missing~left~brace~following~'\iow_char:N\\u'~escape. }
{
The~'\iow_char:N\\u'~escape~sequence~must~be~followed~by~
a~brace~group~with~the~name~of~the~variable~to~use.
}
-\__msg_kernel_new:nnnn { kernel } { u-missing-rbrace }
+\__kernel_msg_new:nnnn { kernel } { u-missing-rbrace }
{ Missing~right~brace~inserted~for~'\iow_char:N\\u'~escape. }
{
LaTeX~
@@ -20471,14 +20886,14 @@
{ encountered~an~escaped~alphanumeric~character '\iow_char:N\\#2'~ }
when~parsing~the~argument~of~an~'\iow_char:N\\u\iow_char:N\{...\}'~escape.
}
-\__msg_kernel_new:nnnn { kernel } { posix-unsupported }
+\__kernel_msg_new:nnnn { kernel } { posix-unsupported }
{ POSIX~collating~element~'[#1 ~ #1]'~not~supported. }
{
The~'[.foo.]'~and~'[=bar=]'~syntaxes~have~a~special~meaning~
in~POSIX~regular~expressions.~This~is~not~supported~by~LaTeX.~
Maybe~you~forgot~to~escape~a~left~bracket~in~a~character~class?
}
-\__msg_kernel_new:nnnn { kernel } { posix-unknown }
+\__kernel_msg_new:nnnn { kernel } { posix-unknown }
{ POSIX~class~'[:#1:]'~unknown. }
{
'[:#1:]'~is~not~among~the~known~POSIX~classes~
@@ -20487,10 +20902,10 @@
'[:print:]',~'[:punct:]',~'[:space:]',~'[:upper:]',~
'[:word:]',~and~'[:xdigit:]'.
}
-\__msg_kernel_new:nnnn { kernel } { posix-missing-close }
+\__kernel_msg_new:nnnn { kernel } { posix-missing-close }
{ Missing~closing~':]'~for~POSIX~class. }
{ The~POSIX~syntax~'#1'~must~be~followed~by~':]',~not~'#2'. }
-\__msg_kernel_new:nnnn { kernel } { result-unbalanced }
+\__kernel_msg_new:nnnn { kernel } { result-unbalanced }
{ Missing~brace~inserted~when~#1. }
{
LaTeX~was~asked~to~do~some~regular~expression~operation,~
@@ -20498,33 +20913,33 @@
of~begin-group~and~end-group~tokens.~Braces~were~inserted:~
#2~left,~#3~right.
}
-\__msg_kernel_new:nnnn { kernel } { unknown-option }
+\__kernel_msg_new:nnnn { kernel } { unknown-option }
{ Unknown~option~'#1'~for~regular~expressions. }
{
The~only~available~option~is~'case-insensitive',~toggled~by~
'(?i)'~and~'(?-i)'.
}
-\__msg_kernel_new:nnnn { kernel } { special-group-unknown }
+\__kernel_msg_new:nnnn { kernel } { special-group-unknown }
{ Unknown~special~group~'#1~...'~in~a~regular~expression. }
{
The~only~valid~constructions~starting~with~'(?'~are~
'(?:~...~)',~'(?|~...~)',~'(?i)',~and~'(?-i)'.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-c }
+\__kernel_msg_new:nnnn { kernel } { replacement-c }
{ Misused~'\iow_char:N\\c'~command~in~a~replacement~text. }
{
In~a~replacement~text,~the~'\iow_char:N\\c'~escape~sequence~
can~be~followed~by~one~of~the~letters~'ABCDELMOPSTU'~
or~a~brace~group,~not~by~'#1'.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-u }
+\__kernel_msg_new:nnnn { kernel } { replacement-u }
{ Misused~'\iow_char:N\\u'~command~in~a~replacement~text. }
{
In~a~replacement~text,~the~'\iow_char:N\\u'~escape~sequence~
must~be~~followed~by~a~brace~group~holding~the~name~of~the~
variable~to~use.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-g }
+\__kernel_msg_new:nnnn { kernel } { replacement-g }
{
Missing~brace~for~the~'\iow_char:N\\g'~construction~
in~a~replacement~text.
@@ -20534,7 +20949,7 @@
submatches~are~represented~either~as~'\iow_char:N \\g{dd..d}',~
or~'\\d',~where~'d'~are~single~digits.~Here,~a~brace~is~missing.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-catcode-end }
+\__kernel_msg_new:nnnn { kernel } { replacement-catcode-end }
{
Missing~character~for~the~'\iow_char:N\\c<category><character>'~
construction~in~a~replacement~text.
@@ -20545,7 +20960,7 @@
the~character~category.~Then,~a~character~must~follow.~LaTeX~
reached~the~end~of~the~replacement~when~looking~for~that.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-catcode-escaped }
+\__kernel_msg_new:nnnn { kernel } { replacement-catcode-escaped }
{
Escaped~letter~or~digit~after~category~code~in~replacement~text.
}
@@ -20555,7 +20970,7 @@
the~character~category.~Then,~a~character~must~follow,~not~
'\iow_char:N\\#2'.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-catcode-in-cs }
+\__kernel_msg_new:nnnn { kernel } { replacement-catcode-in-cs }
{
Category~code~'\iow_char:N\\c#1#3'~ignored~inside~
'\iow_char:N\\c\{...\}'~in~a~replacement~text.
@@ -20565,7 +20980,7 @@
'\iow_char:N\\c\{...\}'~are~ignored~when~building~the~control~
sequence~name.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-null-space }
+\__kernel_msg_new:nnnn { kernel } { replacement-null-space }
{ TeX~cannot~build~a~space~token~with~character~code~0. }
{
You~asked~for~a~character~token~with~category~space,~
@@ -20574,19 +20989,19 @@
This~specific~case~is~impossible~and~will~be~replaced~
by~a~normal~space.
}
-\__msg_kernel_new:nnnn { kernel } { replacement-missing-rbrace }
+\__kernel_msg_new:nnnn { kernel } { replacement-missing-rbrace }
{ Missing~right~brace~inserted~in~replacement~text. }
{
There~ \int_compare:nTF { #1 = 1 } { was } { were } ~ #1~
missing~right~\int_compare:nTF { #1 = 1 } { brace } { braces } .
}
-\__msg_kernel_new:nnnn { kernel } { replacement-missing-rparen }
+\__kernel_msg_new:nnnn { kernel } { replacement-missing-rparen }
{ Missing~right~parenthesis~inserted~in~replacement~text. }
{
There~ \int_compare:nTF { #1 = 1 } { was } { were } ~ #1~
missing~right~\int_compare:nTF { #1 = 1 } { parenthesis } { parentheses } .
}
-\__msg_kernel_new:nnn { kernel } { show-regex }
+\__kernel_msg_new:nnn { kernel } { show-regex }
{
>~Compiled~regex~
\tl_if_empty:nTF {#1} { variable~ #2 } { {#1} } :
@@ -20608,22 +21023,22 @@
}
}
}
-\__debug:TF
+\__kernel_debug:TF
{
- \cs_new_protected:Npn \__debug_trace_push:nnN #1#2#3
- { \__debug_trace:nnx {#1} {#2} { entering~ \token_to_str:N #3 } }
- \cs_new_protected:Npn \__debug_trace_pop:nnN #1#2#3
- { \__debug_trace:nnx {#1} {#2} { leaving~ \token_to_str:N #3 } }
- \cs_new_protected:Npn \__debug_trace:nnx #1#2#3
+ \cs_new_protected:Npn \__regex_trace_push:nnN #1#2#3
+ { \__regex_trace:nnx {#1} {#2} { entering~ \token_to_str:N #3 } }
+ \cs_new_protected:Npn \__regex_trace_pop:nnN #1#2#3
+ { \__regex_trace:nnx {#1} {#2} { leaving~ \token_to_str:N #3 } }
+ \cs_new_protected:Npn \__regex_trace:nnx #1#2#3
{
\int_compare:nNnF
- { \int_use:c { g__debug_trace_#1_int } } < {#2}
+ { \int_use:c { g__regex_trace_#1_int } } < {#2}
{ \iow_term:x { Trace:~#3 } }
}
}
{ }
-\int_new:N \g__debug_trace_regex_int
-\__debug:TF
+\int_new:N \g__regex_trace_regex_int
+\__kernel_debug:TF
{
\cs_new_protected:Npn \__regex_trace_states:n #1
{
@@ -20632,13 +21047,13 @@
{ 1 }
{ \l__regex_max_state_int - 1 }
{
- \__debug_trace:nnx { regex } {#1}
+ \__regex_trace:nnx { regex } {#1}
{ \iow_char:N \\toks ##1 = { \__regex_toks_use:w ##1 } }
}
}
}
{ }
-%% File: l3box.dtx Copyright (C) 2005-2017 The LaTeX3 Project
+%% File: l3box.dtx Copyright (C) 2005-2018 The LaTeX3 Project
\cs_new_protected:Npn \box_new:N #1
{
\__chk_if_free_cs:N #1
@@ -20657,18 +21072,18 @@
{ \box_if_exist:NTF #1 { \box_gclear:N #1 } { \box_new:N #1 } }
\cs_generate_variant:Nn \box_clear_new:N { c }
\cs_generate_variant:Nn \box_gclear_new:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \box_set_eq:NN #1#2
{ \tex_setbox:D #1 \tex_copy:D #2 }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \box_gset_eq:NN #1#2
{ \tex_global:D \tex_setbox:D #1 \tex_copy:D #2 }
\cs_generate_variant:Nn \box_set_eq:NN { c , Nc , cc }
\cs_generate_variant:Nn \box_gset_eq:NN { c , Nc , cc }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \box_set_eq_clear:NN #1#2
{ \tex_setbox:D #1 \tex_box:D #2 }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \box_gset_eq_clear:NN #1#2
{ \tex_global:D \tex_setbox:D #1 \tex_box:D #2 }
\cs_generate_variant:Nn \box_set_eq_clear:NN { c , Nc , cc }
@@ -20719,10 +21134,10 @@
{ \if_box_empty:N #1 \prg_return_true: \else: \prg_return_false: \fi: }
\prg_generate_conditional_variant:Nnn \box_if_empty:N
{ c } { p , T , F , TF }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \box_set_to_last:N #1
{ \tex_setbox:D #1 \tex_lastbox:D }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \box_gset_to_last:N #1
{ \tex_global:D \tex_setbox:D #1 \tex_lastbox:D }
\cs_generate_variant:Nn \box_set_to_last:N { c }
@@ -20763,28 +21178,28 @@
\group_end:
}
{
- \__msg_kernel_error:nnx { kernel } { variable-not-defined }
+ \__kernel_msg_error:nnx { kernel } { variable-not-defined }
{ \token_to_str:N #2 }
}
}
\cs_generate_variant:Nn \__box_show:NNnn { NNff }
\cs_new_protected:Npn \hbox:n #1
{ \tex_hbox:D \scan_stop: { \group_begin: #1 \group_end: } }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \hbox_set:Nn #1#2
{ \tex_setbox:D #1 \tex_hbox:D { \group_begin: #2 \group_end: } }
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \hbox_gset:Nn #1#2
{ \tex_global:D \tex_setbox:D #1 \tex_hbox:D { \group_begin: #2 \group_end: } }
\cs_generate_variant:Nn \hbox_set:Nn { c }
\cs_generate_variant:Nn \hbox_gset:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \hbox_set_to_wd:Nnn #1#2#3
{
\tex_setbox:D #1 \tex_hbox:D to \__dim_eval:n {#2}
{ \group_begin: #3 \group_end: }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \hbox_gset_to_wd:Nnn #1#2#3
{
\tex_global:D \tex_setbox:D #1 \tex_hbox:D to \__dim_eval:n {#2}
@@ -20792,14 +21207,14 @@
}
\cs_generate_variant:Nn \hbox_set_to_wd:Nnn { c }
\cs_generate_variant:Nn \hbox_gset_to_wd:Nnn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \hbox_set:Nw #1
{
\tex_setbox:D #1 \tex_hbox:D
\c_group_begin_token
\group_begin:
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \hbox_gset:Nw #1
{
\tex_global:D \tex_setbox:D #1 \tex_hbox:D
@@ -20814,14 +21229,14 @@
\c_group_end_token
}
\cs_new_eq:NN \hbox_gset_end: \hbox_set_end:
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \hbox_set_to_wd:Nnw #1#2
{
\tex_setbox:D #1 \tex_hbox:D to \__dim_eval:n {#2}
\c_group_begin_token
\group_begin:
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \hbox_gset_to_wd:Nnw #1#2
{
\tex_global:D \tex_setbox:D #1 \tex_hbox:D to \__dim_eval:n {#2}
@@ -20859,13 +21274,13 @@
\tex_vbox:D to \c_zero_dim
{ \group_begin: #1 \par \group_end: }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set:Nn #1#2
{
\tex_setbox:D #1 \tex_vbox:D
{ \group_begin: #2 \par \group_end: }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \vbox_gset:Nn #1#2
{
\tex_global:D \tex_setbox:D #1 \tex_vbox:D
@@ -20873,13 +21288,13 @@
}
\cs_generate_variant:Nn \vbox_set:Nn { c }
\cs_generate_variant:Nn \vbox_gset:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set_top:Nn #1#2
{
\tex_setbox:D #1 \tex_vtop:D
{ \group_begin: #2 \par \group_end: }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \vbox_gset_top:Nn #1#2
{
\tex_global:D \tex_setbox:D #1 \tex_vtop:D
@@ -20887,13 +21302,13 @@
}
\cs_generate_variant:Nn \vbox_set_top:Nn { c }
\cs_generate_variant:Nn \vbox_gset_top:Nn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set_to_ht:Nnn #1#2#3
{
\tex_setbox:D #1 \tex_vbox:D to \__dim_eval:n {#2}
{ \group_begin: #3 \par \group_end: }
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \vbox_gset_to_ht:Nnn #1#2#3
{
\tex_global:D \tex_setbox:D #1 \tex_vbox:D to \__dim_eval:n {#2}
@@ -20901,14 +21316,14 @@
}
\cs_generate_variant:Nn \vbox_set_to_ht:Nnn { c }
\cs_generate_variant:Nn \vbox_gset_to_ht:Nnn { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set:Nw #1
{
\tex_setbox:D #1 \tex_vbox:D
\c_group_begin_token
\group_begin:
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \vbox_gset:Nw #1
{
\tex_global:D \tex_setbox:D #1 \tex_vbox:D
@@ -20924,14 +21339,14 @@
\c_group_end_token
}
\cs_new_eq:NN \vbox_gset_end: \vbox_set_end:
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set_to_ht:Nnw #1#2
{
\tex_setbox:D #1 \tex_vbox:D to \__dim_eval:n {#2}
\c_group_begin_token
\group_begin:
}
-\__debug_patch:nnNNpn { \__debug_chk_var_global:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
\cs_new_protected:Npn \vbox_gset_to_ht:Nnw #1#2
{
\tex_global:D \tex_setbox:D #1 \tex_vbox:D to \__dim_eval:n {#2}
@@ -20944,7 +21359,7 @@
\cs_new_eq:NN \vbox_unpack_clear:N \tex_unvbox:D
\cs_generate_variant:Nn \vbox_unpack:N { c }
\cs_generate_variant:Nn \vbox_unpack_clear:N { c }
-\__debug_patch:nnNNpn { \__debug_chk_var_local:N #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
\cs_new_protected:Npn \vbox_set_split_to_ht:NNn #1#2#3
{ \tex_setbox:D #1 \tex_vsplit:D #2 to \__dim_eval:n {#3} }
\fp_new:N \l__box_angle_fp
@@ -21246,19 +21661,19 @@
}
}
}
-\__debug_deprecation:nnNNpn
+\__kernel_patch_deprecation:nnNNpn
{ 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:Nnn }
\cs_new_protected:Npn \box_resize:Nnn
{ \box_resize_to_wd_and_ht_plus_dp:Nnn }
-\__debug_deprecation:nnNNpn
+\__kernel_patch_deprecation:nnNNpn
{ 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:cnn }
\cs_new_protected:Npn \box_resize:cnn
{ \box_resize_to_wd_and_ht_plus_dp:cnn }
-\__debug_deprecation:nnNNpn
- { 2018-12-31 } { \box_use_clear:N }
+\__kernel_patch_deprecation:nnNNpn
+ { 2018-12-31 } { \box_use_drop:N }
\cs_new_protected:Npn \box_use_clear:N { \box_use_drop:N }
-\__debug_deprecation:nnNNpn
- { 2018-12-31 } { \box_use_clear:c }
+\__kernel_patch_deprecation:nnNNpn
+ { 2018-12-31 } { \box_use_drop:c }
\cs_new_protected:Npn \box_use_clear:c { \box_use_drop:c }
%% File: l3coffins.dtx Copyright(C) 2010-2017 The LaTeX3 Project
\box_new:N \l__coffin_internal_box
@@ -21311,7 +21726,7 @@
\coffin_if_exist:NTF #1
{ #2 }
{
- \__msg_kernel_error:nnx { kernel } { unknown-coffin }
+ \__kernel_msg_error:nnx { kernel } { unknown-coffin }
{ \token_to_str:N #1 }
}
}
@@ -21456,7 +21871,7 @@
\prop_get:cnNF
{ l__coffin_poles_ \__int_value:w #1 _prop } {#2} #3
{
- \__msg_kernel_error:nnxx { kernel } { unknown-coffin-pole }
+ \__kernel_msg_error:nnxx { kernel } { unknown-coffin-pole }
{#2} { \token_to_str:N #1 }
\tl_set:Nn #3 { { 0pt } { 0pt } { 0pt } { 0pt } }
}
@@ -21564,7 +21979,7 @@
\l__coffin_pole_a_tl \l__coffin_pole_b_tl
\bool_if:NT \l__coffin_error_bool
{
- \__msg_kernel_error:nn { kernel } { no-pole-intersection }
+ \__kernel_msg_error:nn { kernel } { no-pole-intersection }
\dim_zero:N \l__coffin_x_dim
\dim_zero:N \l__coffin_y_dim
}
@@ -22039,7 +22454,7 @@
{ }
}
}
-\__msg_kernel_new:nnnn { kernel } { no-pole-intersection }
+\__kernel_msg_new:nnnn { kernel } { no-pole-intersection }
{ No~intersection~between~coffin~poles. }
{
\c__msg_coding_error_text_tl
@@ -22047,22 +22462,22 @@
but~they~do~not~have~a~unique~meeting~point:~
the~value~(0~pt,~0~pt)~will~be~used.
}
-\__msg_kernel_new:nnnn { kernel } { unknown-coffin }
+\__kernel_msg_new:nnnn { kernel } { unknown-coffin }
{ Unknown~coffin~'#1'. }
{ The~coffin~'#1'~was~never~defined. }
-\__msg_kernel_new:nnnn { kernel } { unknown-coffin-pole }
+\__kernel_msg_new:nnnn { kernel } { unknown-coffin-pole }
{ Pole~'#1'~unknown~for~coffin~'#2'. }
{
\c__msg_coding_error_text_tl
LaTeX~was~asked~to~find~a~typesetting~pole~for~a~coffin,~
but~either~the~coffin~does~not~exist~or~the~pole~name~is~wrong.
}
-\__msg_kernel_new:nnn { kernel } { show-coffin }
+\__kernel_msg_new:nnn { kernel } { show-coffin }
{
Size~of~coffin~#1 : #2 \\
Poles~of~coffin~#1 : #3 .
}
-%% File: l3color.dtx Copyright(C) 2011,2012,2014,2016,2017 The LaTeX3 Project
+%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2018 The LaTeX3 Project
\cs_new_eq:NN \color_group_begin: \group_begin:
\cs_new_protected:Npn \color_group_end:
{
@@ -22071,10 +22486,23 @@
}
\cs_new_protected:Npn \color_ensure_current:
{
- \__driver_color_pickup:N \l__color_current_tl
- \__driver_color_select:V \l__color_current_tl
- \group_insert_after:N \__driver_color_reset:
- }
+ \driver_color_pickup:N \l__color_current_tl
+ \__color_select:V \l__color_current_tl
+ \group_insert_after:N \driver_color_reset:
+ }
+\cs_new_protected:Npn \__color_select:n #1
+ { \__color_select:w #1 \q_stop }
+\cs_generate_variant:Nn \__color_select:n { V }
+\cs_new_protected:Npn \__color_select:w #1 ~ #2 \q_stop
+ { \use:c { __color_select_ #1 :w } #2 \q_stop }
+\cs_new_protected:Npn \__color_select_cmyk:w #1 ~ #2 ~ #3 ~ #4 \q_stop
+ { \driver_color_cmyk:nnnn {#1} {#2} {#3} {#4} }
+\cs_new_protected:Npn \__color_select_gray:w #1 \q_stop
+ { \driver_color_gray:n {#1} }
+\cs_new_protected:Npn \__color_select_rgb:w #1 ~ #2 ~ #3 \q_stop
+ { \driver_color_rgb:nnn {#1} {#2} {#3} }
+\cs_new_protected:Npn \__color_select_spot:w #1 ~ #2 \q_stop
+ { \driver_color_spot:nn {#1} {#2} }
\tl_new:N \l__color_current_tl
\tl_set:Nn \l__color_current_tl { gray~0 }
%% File: l3sys.dtx Copyright (C) 2015-2017 The LaTeX3 Project
@@ -22161,15 +22589,15 @@
\cs_new_eq:NN \sys_if_output_pdf_p: \c_false_bool
\str_const:Nn \c_sys_output_str { dvi }
}
-%% File: l3deprecation.dtx (C) Copyright 2017 The LaTeX3 Project
+%% File: l3deprecation.dtx (C) Copyright 2017-2018 The LaTeX3 Project
\cs_new_protected:Npn \__deprecation_error:Nnn #1#2#3
{
\etex_protected:D \tex_outer:D \tex_edef:D #1
{
- \exp_not:N \__msg_kernel_expandable_error:nnnnn
+ \exp_not:N \__kernel_msg_expandable_error:nnnnn
{ kernel } { deprecated-command }
{ \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
- \exp_not:N \__msg_kernel_error:nnxxx
+ \exp_not:N \__kernel_msg_error:nnxxx
{ kernel } { deprecated-command }
{ \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
}
@@ -22205,21 +22633,16 @@
\__deprecation_error:Nnn \xetex_if_engine:F { \sys_if_engine_xetex:F } { 2017-01-01 }
\__deprecation_error:Nnn \xetex_if_engine:T { \sys_if_engine_xetex:T } { 2017-01-01 }
\__deprecation_error:Nnn \xetex_if_engine:TF { \sys_if_engine_xetex:TF } { 2017-01-01 }
-\__debug:TF
+\__kernel_deprecation_code:nn
{
- \tl_gput_right:Nn \g__debug_deprecation_on_tl
- {
- \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
- { \__msg_kernel_error:nnxxxx }
- }
- \tl_gput_right:Nn \g__debug_deprecation_off_tl
- {
- \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
- { \__msg_kernel_warning:nnxxxx }
- }
+ \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
+ { \__kernel_msg_error:nnxxxx }
}
- { }
-%% File: l3candidates.dtx Copyright (C) 2012-2017 The LaTeX3 Project
+ {
+ \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
+ { \__kernel_msg_warning:nnxxxx }
+ }
+%% File: l3candidates.dtx Copyright (C) 2012-2018 The LaTeX3 Project
\cs_new_protected:Npx \mode_leave_vertical:
{
\cs_if_exist:NTF \pdftex_quitvmode:D
@@ -22615,13 +23038,13 @@
\cs_set_protected:Npn \__file_get_details:nnN #1#2#3
{
\tl_clear:N #3
- \__msg_kernel_error:nnx
+ \__kernel_msg_error:nnx
{ kernel } { xetex-primitive-not-available }
{ \exp_not:c { pdffile #2 } }
}
}
}
-\__msg_kernel_new:nnnn { kernel } { xetex-primitive-not-available }
+\__kernel_msg_new:nnnn { kernel } { xetex-primitive-not-available }
{ Primitive~\token_to_str:N #1 not~available }
{
XeTeX~does~not~currently~provide~functionality~equivalent~to~the~
@@ -22640,7 +23063,7 @@
{#2}
{ \__file_input:V \l__file_full_name_str }
}
-\__debug_deprecation:nnNNpn { 2017-12-31 }
+\__kernel_patch_deprecation:nnNNpn { 2017-12-31 }
{ \file_if_exist:nTF and~ \file_input:n }
\cs_new_protected:Npn \file_if_exist_input:nTF #1#2#3
{
@@ -22648,7 +23071,7 @@
\str_if_empty:NTF \l__file_full_name_str
{#3} { #2 \__file_input:V \l__file_full_name_str }
}
-\__debug_deprecation:nnNNpn { 2017-12-31 }
+\__kernel_patch_deprecation:nnNNpn { 2017-12-31 }
{ \file_if_exist:nT and~ \file_input:n }
\cs_new_protected:Npn \file_if_exist_input:nT #1#2
{
@@ -22659,10 +23082,10 @@
\cs_new_protected:Npn \file_input_stop: { \tex_endinput:D }
\cs_if_exist:NTF \pdftex_uniformdeviate:D
{
- \__debug_patch_args:nNNpn
+ \__kernel_patch_args:nNNpn
{
- { \__debug_chk_expr:nNnN {#1} \__int_eval:w { } \int_rand:nn }
- { \__debug_chk_expr:nNnN {#2} \__int_eval:w { } \int_rand:nn }
+ { \__kernel_chk_expr:nNnN {#1} \__int_eval:w { } \int_rand:nn }
+ { \__kernel_chk_expr:nNnN {#2} \__int_eval:w { } \int_rand:nn }
}
\cs_new:Npn \int_rand:nn #1#2
{
@@ -22674,7 +23097,7 @@
{
\int_compare:nNnTF {#1} > {#2}
{
- \__msg_kernel_expandable_error:nnnn
+ \__kernel_msg_expandable_error:nnnn
{ kernel } { backward-range } {#1} {#2}
\__int_rand:ww #2; #1;
}
@@ -22709,13 +23132,13 @@
{
\cs_new:Npn \int_rand:nn #1#2
{
- \__msg_kernel_expandable_error:nn { kernel } { fp-no-random }
+ \__kernel_msg_expandable_error:nn { kernel } { fp-no-random }
\int_eval:n {#1}
}
}
\cs_if_exist:NT \pdftex_uniformdeviate:D
{
- \__msg_kernel_new:nnn { kernel } { backward-range }
+ \__kernel_msg_new:nnn { kernel } { backward-range }
{ Bounds~ordered~backwards~in~\int_rand:nn {#1}~{#2}. }
}
\cs_new:Npn \msg_expandable_error:nnnnnn #1#2#3#4#5#6
@@ -22768,7 +23191,7 @@
\use:nn { ~ } { ~ } => \use:nn { ~ } { ~ }
\exp_not:N \tl_to_str:n {#2}
}
-\__debug_patch:nnNNpn { \__debug_chk_var_scope:NN c #1 } { }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN c #1 } { }
\cs_new_protected:Npn \bool_const:Nn #1#2
{
\__chk_if_free_cs:N #1
@@ -24200,7 +24623,7 @@
{
\cs_set:Npn #1 ##1
{
- \__msg_kernel_expandable_error:nnn
+ \__kernel_msg_expandable_error:nnn
{ kernel } { luatex-required } { #1 }
}
}
@@ -24209,12 +24632,12 @@
{
\cs_set_protected:Npn #1 ##1
{
- \__msg_kernel_error:nnn
+ \__kernel_msg_error:nnn
{ kernel } { luatex-required } { #1 }
}
}
}
-\__msg_kernel_new:nnnn { kernel } { luatex-required }
+\__kernel_msg_new:nnnn { kernel } { luatex-required }
{ LuaTeX~engine~not~in~use!~Ignoring~#1. }
{
The~feature~you~are~using~is~only~available~