diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty | 227 |
1 files changed, 227 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty new file mode 100644 index 00000000000..17f9599acdb --- /dev/null +++ b/Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty @@ -0,0 +1,227 @@ +%% +%% This is file `expl3.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% expl3.dtx (with options: `package,loader') +%% +%% Copyright (C) 1990-2024 The LaTeX Project +%% +%% It may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License (LPPL), either version 1.3c of +%% this license or (at your option) any later version. The latest +%% version of this license is in the file: +%% +%% https://www.latex-project.org/lppl.txt +%% +%% This file is part of the "l3kernel bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% File: expl3.dtx +\def\ExplFileDate{2024-04-11}% +\let\ExplLoaderFileDate\ExplFileDate +\ProvidesPackage{expl3} + [% + \ExplFileDate\space + L3 programming layer (loader) + ]% +\protected\def\ProvidesExplPackage + {\@expl@provides@file@@Nnnnnn\ProvidesPackage{Package}} +\protected\def\ProvidesExplClass + {\@expl@provides@file@@Nnnnnn\ProvidesClass{Document Class}} +\protected\def\ProvidesExplFile + {\@expl@provides@file@@Nnnnnn\ProvidesFile{File}} +\protected\long\def\@expl@provides@file@@Nnnnnn#1#2#3#4#5#6% + {% + \ifnum0% + \ifdefined#11\fi + \ifx\relax#1\else1\fi + =11 + \expandafter#1% + \else + \@expl@provides@generic@@wnnw{#2}% + \fi + {#3}[{#4 \ifx\relax#5\relax\else\@expl@provides@file@@N#5\space\fi #6}]% + \ExplSyntaxOn + } +\long\def\@expl@provides@file@@N#1{v\if#1v\else#1\fi} +\protected\long\def\@expl@provides@generic@@wnnw#1\fi#2[#3]% + {% + \immediate\write-1{#1: #2 #3}% + } +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname tex\string _let:D\endcsname\relax + \expandafter\@firstofone +\else + \expandafter\@gobble +\fi + {\input expl3-code.tex }% +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname tex\string _let:D\endcsname\relax + \expandafter\endinput +\fi +\ifcsname\detokenize{c__kernel_expl_date_tl}\endcsname + \expandafter\@firstofone +\else + \ifodd\csname\detokenize{l__kernel_expl_bool}\endcsname + \global\expandafter\let\csname\detokenize + {c__kernel_expl_date_tl}\endcsname\ExplLoaderFileDate + \expandafter\expandafter + \expandafter\@gobble + \else + \expandafter\expandafter + \expandafter\@firstofone + \fi +\fi + {\csname\detokenize{__kernel_dependency_version_check:Nn}\endcsname + \ExplLoaderFileDate{expl3.sty}}% +\ifcsname\detokenize{g__expl_reload_bool}\endcsname + \ExplSyntaxOn + \bool_gset_true:N \g__expl_reload_bool +\else + \bool_new:N \g__expl_reload_bool +\fi +\tl_if_exist:NF \c__expl_def_ext_tl + { \tl_const:Nn \c__expl_def_ext_tl { def } } +\cs_gset_protected:Npn \__kernel_sys_configuration_load:n #1 + { + \ExplSyntaxOff + \cs_undefine:c { ver@ #1 .def } + \@onefilewithoptions {#1} [ ] [ ] + \c__expl_def_ext_tl + \ExplSyntaxOn + } +\cs_gset_protected:Npn \__kernel_sys_configuration_load_std:n #1 + { + \cs_undefine:c { ver@ #1 .def } + \@onefilewithoptions {#1} [ ] [ ] + \c__expl_def_ext_tl + } +\clist_if_exist:NF \l__expl_options_clist + { \clist_new:N \l__expl_options_clist } +\DeclareOption* + { \clist_put_right:NV \l__expl_options_clist \CurrentOption } +\ProcessOptions \relax +\keys_define:nn { sys } + { + backend .choices:nn = + { dvipdfmx , dvips , dvisvgm , luatex , pdftex , pdfmode , xdvipdfmx , xetex } + { \sys_load_backend:n {#1} } , + check-declarations .choice: , + check-declarations / true .code:n = + { \debug_on:n { check-declarations } } , + check-declarations / false .code:n = + { + \__kernel_if_debug:TF + { \debug_off:n { check-declarations } } + { } + } , + check-declarations .default:n = true , + driver .meta:n = { backend = #1 } , + enable-debug .code:n = {} , % A stub + log-functions .choice: , + log-functions / true .code:n = + { \debug_on:n { log-functions } } , + log-functions / false .code:n = + { + \__kernel_if_debug:TF + { \debug_off:n { log-functions } } + { } + } , + log-functions .default:n = true , + suppress-backend-headers .bool_gset_inverse:N + = \g__kernel_backend_header_bool , + suppress-backend-headers .initial:n = false , + undo-recent-deprecations .code:n = {} % A stub + } +\cs_if_exist:NF \@expl@sys@load@backend@@ + { + \tl_put_left:Nn \document + { + \endgroup + \@expl@sys@load@backend@@ + \begingroup + } + } +\cs_gset_protected:Npn \@expl@sys@load@backend@@ + { + \str_if_exist:NF \c_sys_backend_str + { \sys_load_backend:n { } } + } +\keys_set:nV { sys } \l__expl_options_clist +\str_if_exist:NF \c_sys_backend_str + { \sys_load_backend:n { } } +\bool_if:NT \g__expl_reload_bool + { + \cs_gset_eq:NN \__kernel_sys_configuration_load:n + \__kernel_sys_configuration_load_std:n + \ExplSyntaxOff + \file_input_stop: + } +\cs_if_free:cTF { ver@expl3.sty } + { + \tex_everyjob:D \exp_after:wN + { + \tex_the:D \tex_everyjob:D + \__kernel_sys_everyjob: + } + } + { \__kernel_sys_everyjob: } +\reverse_if:N \if_cs_exist:N \s__expl_stop + \scan_new:N \s__expl_stop +\fi: +\cs_if_exist:NF \@expl@push@filename@@ + { + \tl_put_left:Nn \@pushfilename { \@expl@push@filename@@ } + \tl_put_right:Nn \@pushfilename { \@expl@push@filename@aux@@ } + } +\cs_gset_protected:Npn \@expl@push@filename@@ + { + \exp_args:Ne \__kernel_file_input_push:n + { + \tl_to_str:N \@currname . + \tl_to_str:N \@currext + } + \tl_put_left:Ne \l__expl_status_stack_tl + { + \bool_if:NTF \l__kernel_expl_bool + { 1 } + { 0 } + } + \ExplSyntaxOff + } +\cs_gset_protected:Npn \@expl@push@filename@aux@@ #1#2#3 + { + \str_gset:Nn \g_file_curr_name_str {#3} + #1 #2 {#3} + } +\cs_if_exist:NF \@expl@pop@filename@@ + { + \tl_put_right:Nn \@popfilename + { \@expl@pop@filename@@ } + } +\cs_gset_protected:Npn \@expl@pop@filename@@ + { + \__kernel_file_input_pop: + \tl_if_empty:NTF \l__expl_status_stack_tl + { \ExplSyntaxOff } + { \exp_after:wN \__expl_status_pop:w \l__expl_status_stack_tl \s__expl_stop } + } +\cs_gset_protected:Npn \__expl_status_pop:w #1#2 \s__expl_stop + { + \tl_set:Nn \l__expl_status_stack_tl {#2} + \int_if_odd:nTF {#1} + { \ExplSyntaxOn } + { \ExplSyntaxOff } + } +\tl_if_exist:NF \l__expl_status_stack_tl + { + \tl_new:N \l__expl_status_stack_tl + \tl_set:Nn \l__expl_status_stack_tl { 0 } + } +\cs_gset_eq:NN \__kernel_sys_configuration_load:n + \__kernel_sys_configuration_load_std:n +%% +%% +%% End of file `expl3.sty'. |