[latex3-commits] [l3svn] branch master updated: New approach to validating l3keys
noreply at latex-project.org
noreply at latex-project.org
Tue Sep 20 08:20:06 CEST 2016
This is an automated email from the git hooks/post-receive script.
joseph pushed a commit to branch master
in repository l3svn.
The following commit(s) were added to refs/heads/master by this push:
new f48208b New approach to validating l3keys
f48208b is described below
commit f48208b4cdde787abac160cb6461f52481d093f2
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Tue Sep 20 07:19:22 2016 +0100
New approach to validating l3keys
Switching from a prop makes this much faster. There are other parts of the
code that still need attention: the prop data will vanish in an upcoming
commit.
---
l3kernel/l3keys.dtx | 142 +++++++++++++++++--------------
l3kernel/testfiles/m3expl001.luatex.tlg | 11 +--
l3kernel/testfiles/m3expl001.ptex.tlg | 11 +--
l3kernel/testfiles/m3expl001.tlg | 11 +--
l3kernel/testfiles/m3expl001.uptex.tlg | 11 +--
l3kernel/testfiles/m3expl001.xetex.tlg | 11 +--
l3kernel/testfiles/m3expl003.luatex.tlg | 11 +--
l3kernel/testfiles/m3expl003.ptex.tlg | 11 +--
l3kernel/testfiles/m3expl003.tlg | 11 +--
l3kernel/testfiles/m3expl003.uptex.tlg | 11 +--
l3kernel/testfiles/m3expl003.xetex.tlg | 11 +--
11 files changed, 140 insertions(+), 112 deletions(-)
diff --git a/l3kernel/l3keys.dtx b/l3kernel/l3keys.dtx
index 5fb19cc..ff6d5bc 100644
--- a/l3kernel/l3keys.dtx
+++ b/l3kernel/l3keys.dtx
@@ -1111,11 +1111,21 @@
%<@@=keys>
% \end{macrocode}
%
-% \begin{variable}{\c_@@_code_root_tl, \c_@@_info_root_tl}
-% The prefixes for the code and variables of the keys themselves.
+% \begin{variable}
+% {
+% \c_@@_code_root_tl ,
+% \c_@@_default_root_tl ,
+% \c_@@_groups_root_tl,
+% \c_@@_info_root_tl ,
+% \c_@@_validate_root_tl
+% }
+% Various storage areas for the different data which make up keys.
% \begin{macrocode}
-\tl_const:Nn \c_@@_code_root_tl { key~code~>~ }
-\tl_const:Nn \c_@@_info_root_tl { key~info~>~ }
+\tl_const:Nn \c_@@_code_root_tl { key~code~>~ }
+\tl_const:Nn \c_@@_default_root_tl { key~default~>~ }
+\tl_const:Nn \c_@@_groups_root_tl { key~groups~>~ }
+\tl_const:Nn \c_@@_info_root_tl { key~info~>~ }
+\tl_const:Nn \c_@@_validate_root_tl { key~validate~>~ }
% \end{macrocode}
% \end{variable}
%
@@ -1384,6 +1394,7 @@
{
\prop_set_eq:cN { \c_@@_info_root_tl #1 } \c_empty_prop
}
+
\cs_if_exist:cF { \c_@@_code_root_tl #1 }
{
\__chk_log:x { Defining~key~#1~ \msg_line_context: }
@@ -1624,38 +1635,76 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_undefine:
{
- \cs_set_eq:cN { \c_@@_code_root_tl \l_keys_path_tl } \tex_undefined:D
- \cs_set_eq:cN { \c_@@_info_root_tl \l_keys_path_tl } \tex_undefined:D
+ \clist_map_inline:nn
+ { code , default , groups , info , validate }
+ {
+ \cs_set_eq:cN
+ { \tl_use:c { c_@@_ ##1 _root_tl } \l_keys_path_tl }
+ \tex_undefined:D
+ }
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[int]{\@@_value_requirement:nn}
-% Values can be required or forbidden by having the appropriate marker
-% set. First, both the required and forbidden ones are clear, just in case!
+% \begin{macro}[aux]{\@@_validate_forbidden:, \@@_validate_required:}
+% \begin{macro}[aux]{\@@_validate_cleanup:w}
+% Validating key input is done using a second function which runs before
+% the main key code. Setting that up means setting it equal to a generic
+% stub which does the check. This approach makes the lookup very fast at
+% the cost of one additional csname per key that needs it. The cleanup here
+% has to know the structure of the following code.
% \begin{macrocode}
\cs_new_protected:Npn \@@_value_requirement:nn #1#2
{
- \@@_ensure_exist:V \l_keys_path_tl
- \prop_remove:cn { \c_@@_info_root_tl \l_keys_path_tl }
- { required }
- \prop_remove:cn { \c_@@_info_root_tl \l_keys_path_tl }
- { forbidden }
- \str_if_eq:nnTF {#2} { true }
+ \str_case:nnF {#2}
{
- \prop_put:cnn { \c_@@_info_root_tl \l_keys_path_tl }
- {#1} { true }
- }
- {
- \str_if_eq:nnF {#2} { false }
+ { true }
+ {
+ \cs_set_eq:cc
+ { \c_@@_validate_root_tl \l_keys_path_tl }
+ { @@_validate_ #1 : }
+ }
+ { false }
{
- \__msg_kernel_error:nnx { kernel } { property-boolean-values-only }
- { .value_ #1 :n }
+ \cs_if_eq:ccT
+ { \c_@@_validate_root_tl \l_keys_path_tl }
+ { @@_validate_ #1 : }
+ {
+ \cs_set_eq:cN
+ { \c_@@_validate_root_tl \l_keys_path_tl }
+ \tex_undefined:D
+ }
}
}
+ {
+ \__msg_kernel_error:nnx { kernel } { property-boolean-values-only }
+ { .value_ #1 :n }
+ }
+ }
+\cs_new_protected:Npn \@@_validate_forbidden:
+ {
+ \bool_if:NF \l_@@_no_value_bool
+ {
+ \__msg_kernel_error:nnxx { kernel } { value-forbidden }
+ { \l_keys_path_tl } { \l_keys_value_tl }
+ \@@_validate_cleanup:w
+ }
+ }
+\cs_new_protected:Npn \@@_validate_required:
+ {
+ \bool_if:NT \l_@@_no_value_bool
+ {
+ \__msg_kernel_error:nnx { kernel } { value-required }
+ { \l_keys_path_tl }
+ \@@_validate_cleanup:w
+ }
}
+\cs_new_protected:Npn \@@_validate_cleanup:w #1 \cs_end: #2#3 { }
% \end{macrocode}
% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}[int]{\@@_variable_set:NnnN, \@@_variable_set:cnnN}
% Setting a variable takes the type and scope separately so that
@@ -2124,27 +2173,13 @@
}
\cs_new_protected:Npn \@@_set_aux:
{
- \bool_if:nTF
- {
- \@@_if_value_p:n { required } &&
- \l_@@_no_value_bool
- }
- {
- \__msg_kernel_error:nnx { kernel } { value-required }
- { \l_keys_path_tl }
- }
+ \cs_if_exist:cTF { \c_@@_code_root_tl \l_keys_path_tl }
{
- \bool_if:nTF
- {
- \@@_if_value_p:n { forbidden } &&
- ! \l_@@_no_value_bool
- }
- {
- \__msg_kernel_error:nnxx { kernel } { value-forbidden }
- { \l_keys_path_tl } { \l_keys_value_tl }
- }
- { \@@_execute: }
+ \cs_if_exist_use:c { \c_@@_validate_root_tl \l_keys_path_tl }
+ \cs:w \c_@@_code_root_tl \l_keys_path_tl \exp_after:wN \cs_end:
+ \exp_after:wN { \l_keys_value_tl }
}
+ { \@@_execute_unknown: }
}
% \end{macrocode}
% If selective setting is active, there are a number of possible sub-cases
@@ -2226,24 +2261,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}[int]{\@@_if_value_p:n}
-% To test if a value is required or forbidden. A simple check for
-% the existence of the appropriate marker.
-% \begin{macrocode}
-\prg_new_conditional:Npnn \@@_if_value:n #1 { p , T, TF, F }
- {
- \prop_if_exist:cTF { \c_@@_info_root_tl \l_keys_path_tl }
- {
- \prop_if_in:cnTF { \c_@@_info_root_tl \l_keys_path_tl } {#1}
- { \prg_return_true: }
- { \prg_return_false: }
- }
- { \prg_return_false: }
- }
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}[int]{\@@_execute:}
% \begin{macro}[aux]{\@@_execute_unknown:}
% \begin{macro}[aux, EXP]{\@@_execute:nn}
% \begin{macro}[aux]{\@@_store_unused:}
@@ -2253,14 +2270,16 @@
% is unknown depends on whether unknown keys are being skipped or if
% an error should be raised.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_execute:
- { \@@_execute:nn { \l_keys_path_tl } { \@@_execute_unknown: } }
\cs_new_protected:Npn \@@_execute_unknown:
{
\bool_if:NTF \l_@@_only_known_bool
{ \@@_store_unused: }
{
- \@@_execute:nn { \l_@@_module_tl / unknown }
+ \cs_if_exist:cTF { \c_@@_code_root_tl \l_@@_module_tl / unknown }
+ {
+ \cs:w \c_@@_code_root_tl \l_@@_module_tl / unknown \exp_after:wN
+ \cs_end: \exp_after:wN { \l_keys_value_tl }
+ }
{
\__msg_kernel_error:nnxx { kernel } { key-unknown }
{ \l_keys_path_tl } { \l_@@_module_tl }
@@ -2289,7 +2308,6 @@
% \end{macro}
% \end{macro}
% \end{macro}
-% \end{macro}
%
% \begin{macro}[int, EXP]{\@@_choice_find:n}
% \begin{macro}[int, EXP]{\@@_multichoice_find:n}
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index 9e1be7c..59aac2a 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -3129,7 +3129,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3187,6 +3190,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3291,11 +3297,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index 8ee0c0d..84a1794 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -3120,7 +3120,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count124
@@ -3178,6 +3181,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3282,11 +3288,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index 86a9270..cd977eb 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -3120,7 +3120,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3178,6 +3181,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3282,11 +3288,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index d55188b..ba39b5c 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -3120,7 +3120,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count124
@@ -3178,6 +3181,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3282,11 +3288,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index 3eb9cc9..53b051e 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -3127,7 +3127,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3185,6 +3188,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3289,11 +3295,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index 7e3cbe9..6f5561f 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -3130,7 +3130,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3188,6 +3191,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3292,11 +3298,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index b8677e0..cc83ed4 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -3121,7 +3121,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count124
@@ -3179,6 +3182,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3283,11 +3289,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index 706d02b..e063a7e 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -3121,7 +3121,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3179,6 +3182,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3283,11 +3289,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index 1807911..f601af8 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -3121,7 +3121,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count124
@@ -3179,6 +3182,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3283,11 +3289,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index c9276e0..82a05f4 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -3128,7 +3128,10 @@ Defining \__keyval_def_aux:n on line ...
Defining \__keyval_def_aux:w on line ...
Defining message LaTeX/kernel/misplaced-equals-sign on line ...
Defining \c__keys_code_root_tl on line ...
+Defining \c__keys_default_root_tl on line ...
+Defining \c__keys_groups_root_tl on line ...
Defining \c__keys_info_root_tl on line ...
+Defining \c__keys_validate_root_tl on line ...
Defining \c__keys_props_root_tl on line ...
Defining \l_keys_choice_int on line ...
\l_keys_choice_int=\count123
@@ -3186,6 +3189,9 @@ Defining \__keys_meta_make:n on line ...
Defining \__keys_meta_make:nn on line ...
Defining \__keys_undefine: on line ...
Defining \__keys_value_requirement:nn on line ...
+Defining \__keys_validate_forbidden: on line ...
+Defining \__keys_validate_required: on line ...
+Defining \__keys_validate_cleanup:w on line ...
Defining \__keys_variable_set:NnnN on line ...
Defining \__keys_variable_set:cnnN on line ...
Defining \key prop > .bool_set:N on line ...
@@ -3290,11 +3296,6 @@ Defining \__keys_set_aux: on line ...
Defining \__keys_set_selective: on line ...
Defining \__keys_check_groups: on line ...
Defining \__keys_value_or_default:n on line ...
-Defining \__keys_if_value_p:n on line ...
-Defining \__keys_if_value:nT on line ...
-Defining \__keys_if_value:nTF on line ...
-Defining \__keys_if_value:nF on line ...
-Defining \__keys_execute: on line ...
Defining \__keys_execute_unknown: on line ...
Defining \__keys_execute:nn on line ...
Defining \__keys_store_unused: on line ...
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the latex3-commits
mailing list