summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3basics.dtx')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3basics.dtx28
1 files changed, 22 insertions, 6 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
index c5581d46850..90f6d3c80ec 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2018-06-14}
+% \date{Released 2018-08-23}
%
% \maketitle
%
@@ -939,6 +939,20 @@
% (\emph{i.e.}~an \texttt{N} argument).
% \end{function}
%
+% \begin{function}[EXP, added = 2018-06-18]{\use:e}
+% \begin{syntax}
+% \cs{use:e} \Arg{expandable tokens}
+% \end{syntax}
+% Fully expands the \meta{token list} in an \texttt{x}-type manner,
+% \emph{but} the function remains fully expandable, and parameter
+% character (usually~|#|) need not be doubled.
+% \begin{texnote}
+% \cs{use:e} the a wrapper around the primitive \tn{expanded}
+% where it is available:
+% it requires two expansions to complete its action.
+% \end{texnote}
+% \end{function}
+%
% \begin{function}[updated = 2011-12-31]{\use:x}
% \begin{syntax}
% \cs{use:x} \Arg{expandable tokens}
@@ -1454,11 +1468,13 @@
%<@@=use>
% \end{macrocode}
%
-% \begin{macro}[EXP]{\use_x:n}
-% A candidate, but needed early as it links to string comparisons.
-% Currently \LuaTeX-only.
+% \begin{macro}[EXP]{\use:e}
+% Currently \LuaTeX-only: emulated for older engines.
% \begin{macrocode}
-\cs_set:Npn \use_x:n #1 { \tex_expanded:D {#1} }
+\cs_set:Npn \use:e #1 { \tex_expanded:D {#1} }
+\tex_ifdefined:D \tex_expanded:D \tex_else:D
+ \cs_set:Npn \use:e #1 { \exp_args:Ne \use:n {#1} }
+\tex_fi:D
% \end{macrocode}
% \end{macro}
%
@@ -3240,7 +3256,7 @@
{
\bool_if:NTF #3
{
- \str_if_eq_x:nnF { }
+ \str_if_eq:eeF { }
{ \tl_map_function:nN {#2} \@@_generate_from_signature:n }
{
\__kernel_msg_error:nnx { kernel } { non-base-function }