summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/l3packages/xtemplate.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/l3packages/xtemplate.dtx')
-rw-r--r--macros/latex/contrib/l3packages/xtemplate.dtx17
1 files changed, 11 insertions, 6 deletions
diff --git a/macros/latex/contrib/l3packages/xtemplate.dtx b/macros/latex/contrib/l3packages/xtemplate.dtx
index d80d348070..3344621dc5 100644
--- a/macros/latex/contrib/l3packages/xtemplate.dtx
+++ b/macros/latex/contrib/l3packages/xtemplate.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2021-03-12}
+% \date{Released 2021-05-07}
%
% \maketitle
%
@@ -682,7 +682,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xtemplate}{2021-03-12}{}
+\ProvidesExplPackage{xtemplate}{2021-05-07}{}
{L3 Experimental prototype document functions}
% \end{macrocode}
%
@@ -1574,12 +1574,12 @@
\cs_new_protected:Npn \@@_store_key_implementation:nnn #1#2#3
{
\@@_recover_defaults:n { #1 / #2 }
+ \@@_recover_restrictions:n { #1 / #2 }
\@@_recover_keytypes:n { #1 / #2 }
\prop_clear:N \l_@@_vars_prop
\keyval_parse:NNn
\@@_parse_vars_elt:n \@@_parse_vars_elt:nn {#3}
\@@_store_vars:n { #1 / #2 }
- \clist_clear:N \l_@@_restrict_clist
\@@_store_restrictions:n { #1 / #2 }
\prop_map_inline:Nn \l_@@_keytypes_prop
{
@@ -1855,15 +1855,19 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_parse_values:nn}
+% \begin{macro}{\@@_parse_values:nn, \@@_parse_values_aux:nn}
% The routine to parse values is the same for both editing a
% template and setting up an instance. So the code here does only the
% minimum necessary for reading the values.
% \begin{macrocode}
\cs_new_protected:Npn \@@_parse_values:nn #1#2
{
- \@@_recover_keytypes:n {#1}
\clist_clear:N \l_@@_restrict_clist
+ \@@_parse_values_aux:nn {#1} {#2}
+ }
+\cs_new_protected:Npn \@@_parse_values_aux:nn #1#2
+ {
+ \@@_recover_keytypes:n {#1}
\keyval_parse:NNn
\@@_parse_values_elt:n \@@_parse_values_elt:nn {#2}
}
@@ -1954,6 +1958,7 @@
\@@_execute_if_code_exist:nnT {#1} {#2}
{
\@@_recover_defaults:n { #1 / #2 }
+ \@@_recover_restrictions:n { #1 / #2 }
\@@_recover_vars:n { #1 / #2 }
\@@_declare_instance_aux:nnnnn {#1} {#2} {#3} {#4} {#5}
}
@@ -1961,7 +1966,7 @@
\cs_new_protected:Npn \@@_declare_instance_aux:nnnnn #1#2#3#4#5
{
\bool_set_false:N \l_@@_error_bool
- \@@_parse_values:nn { #1 / #2 } {#5}
+ \@@_parse_values_aux:nn { #1 / #2 } {#5}
\bool_if:NF \l_@@_error_bool
{
\prop_put:Nnn \l_@@_values_prop { from~template } {#2}