summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx36
1 files changed, 27 insertions, 9 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
index f0fd4227077..c5586a9a0d5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2021-02-18}
+% \date{Released 2021-05-07}
%
% \maketitle
%
@@ -53,7 +53,9 @@
%
% \begin{implementation}
%
-% \section{Internal kernel functions}
+% \section{\pkg{l3kernel-functions}: kernel-reserved functions}
+%
+% \subsection{Internal kernel functions}
%
% \begin{function}{\__kernel_chk_cs_exist:N, \__kernel_chk_cs_exist:c}
% \begin{syntax}
@@ -90,6 +92,19 @@
% purposes.
% \end{function}
%
+% \begin{function}{\__kernel_chk_tl_type:NnnT}
+% \begin{syntax}
+% \cs{__kernel_chk_tl_type:NnnT} \meta{control sequence} \Arg{specific type} \\
+% \ \ \Arg{reconstruction} \Arg{true code}
+% \end{syntax}
+% Helper to test that the \meta{control sequence} is a variable of the
+% given \meta{specific type} of token list. Produces suitable error
+% messages if the \meta{control sequence} does not exist, or if it is
+% not a token list variable at all, or if the \meta{control sequence}
+% differs from the result of |x|-expanding \meta{reconstruction}. If
+% all of these tests succeed then the \meta{true code} is run.
+% \end{function}
+%
% \begin{function}{\__kernel_cs_parm_from_arg_count:nnF}
% \begin{syntax}
% \cs{__kernel_cs_parm_from_arg_count:nnF} \Arg{follow-on} \Arg{args} \Arg{false code}
@@ -147,16 +162,19 @@
% \begin{syntax}
% \cs{__kernel_file_missing:n} \Arg{name}
% \end{syntax}
-% Expands the \meta{name} as per \cs{__kernel_file_name_sanitize:nN} then
+% Expands the \meta{name} as per \cs{__kernel_file_name_sanitize:n} then
% produces an error message indicating that this file was not found.
% \end{function}
%
-% \begin{function}{\__kernel_file_name_sanitize:nN}
+% \begin{function}[EXP,updated = 2021-04-17]{\__kernel_file_name_sanitize:n}
% \begin{syntax}
-% \cs{__kernel_file_name_sanitize:nN} \Arg{name} \meta{str var}
+% \cs{__kernel_file_name_sanitize:n} \Arg{name}
% \end{syntax}
-% For converting a \meta{name} to a string where active characters are treated
-% as strings.
+% Expands the file name using a \tn{csname}-based approach, and
+% relies on active characters (for example from UTF-8 characters)
+% being properly set up to expand to a expansion-safe version using
+% \cs{ifcsname}. This is less conservative than the token-by-token
+% approach used before, but it is much faster.
% \end{function}
%
% \begin{function}{\__kernel_file_input_push:n, \__kernel_file_input_pop:}
@@ -511,7 +529,7 @@
% The function \cs{__kernel_quark_new_conditional:Nn} can define $2$
% different types of quark conditionals. Which one is defined depends
% on the \meta{arg spec}, which \emph{must} be one of the following
-% options, modeled after \cs[no-index]{quark_if_nil:(N|n)(TF)}.
+% options, modeled after \cs[index=quark_if_nil:NTF]{quark_if_nil:(N|n)(TF)}.
% \begin{description}
% \def\makelabel#1{\texttt{#1}}
% \item[n] defines \cs[no-index]{__\meta{namespace}_quark_if_\meta{name}:n(TF)} such that it
@@ -610,7 +628,7 @@
% \meta{tl~var} and \meta{tokens}.
% \end{function}
%
-% \section{Kernel backend functions}
+% \subsection{Kernel backend functions}
%
% These functions are required to pass information to the backend. The nature
% of these means that they are defined only when the relevant backend is in