summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty')
-rw-r--r--Master/texmf-dist/tex/latex-dev/l3kernel/expl3.sty227
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'.