summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/expl3.sty')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty179
1 files changed, 179 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
new file mode 100644
index 00000000000..d0ac38f18e1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -0,0 +1,179 @@
+%%
+%% This is file `expl3.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% expl3.dtx (with options: `package')
+%%
+%% EXPERIMENTAL CODE
+%%
+%% Do not distribute this file without also distributing the
+%% source files specified above.
+%%
+%% Do not distribute a modified version of this file.
+%%
+%% File: expl3.dtx Copyright (C) 1990-2011 The LaTeX3 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
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This file is part of the "expl3 bundle" (The Work in LPPL)
+%% and all files in that bundle must be distributed together.
+%%
+%% The released version of this bundle is available from CTAN.
+%%
+%% -----------------------------------------------------------------------
+%%
+%% The development version of the bundle can be found at
+%%
+%% http://www.latex-project.org/svnroot/experimental/trunk/
+%%
+%% for those people who are interested.
+%%
+%%%%%%%%%%%
+%% NOTE: %%
+%%%%%%%%%%%
+%%
+%% Snapshots taken from the repository represent work in progress and may
+%% not work or may contain conflicting material! We therefore ask
+%% people _not_ to put them into distributions, archives, etc. without
+%% prior consultation with the LaTeX3 Project.
+%%
+%% -----------------------------------------------------------------------
+\RequirePackage{l3names}
+\GetIdInfo$Id: expl3.dtx 2478 2011-06-19 21:34:23Z joseph $
+ {L3 Experimental code bundle wrapper}
+ %\subsubsection{Variables: scope and type}
+\RequirePackage{etex}
+\reserveinserts{32}
+\RequirePackage{calc}
+\ProvidesExplPackage
+ {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
+\newcommand* \@l@expl@check@declarations@bool { 0 }
+\newcommand*\@l@expl@log@functions@bool { 0 }
+\DeclareOption { check-declarations }
+ { \def \@l@expl@check@declarations@bool { 1 } }
+\DeclareOption { log-functions }
+ {\def \@l@expl@log@functions@bool { 1 } }
+\ProcessOptions \relax
+\RequirePackage{ l3basics, l3expan, l3tl }
+\ifodd \@l@expl@check@declarations@bool \relax
+ \cs_new_protected:Npn \tl_check_exists:N #1
+ {
+ \cs_if_exist:NF #1
+ {
+ \msg_kernel_error:nnx { check } { non-declared-variable }
+ { \token_to_str:N #1 }
+ }
+ }
+ \cs_set_protected:Npn \tl_set:Nn #1#2
+ {
+ \tl_check_exists:N #1
+ \cs_set_nopar:Npx #1 { \exp_not:n {#2} }
+ }
+ \cs_set_protected:Npn \tl_set:Nx #1#2
+ {
+ \tl_check_exists:N #1
+ \cs_set_nopar:Npx #1 {#2}
+ }
+ \cs_set_protected:Npn \tl_gset:Nn #1#2
+ {
+ \tl_check_exists:N #1
+ \cs_gset_nopar:Npx #1 { \exp_not:n {#2} }
+ }
+ \cs_set_protected:Npn \tl_gset:Nx #1#2
+ {
+ \tl_check_exists:N #1
+ \cs_gset_nopar:Npx #1 {#2}
+ }
+ \cs_set_protected:Npn \tl_set_eq:NN #1#2
+ {
+ \tl_check_exists:N #1
+ \tl_check_exists:N #2
+ \cs_set_eq:NN #1 #2
+ }
+ \cs_set_protected:Npn \tl_gset_eq:NN #1#2
+ {
+ \tl_check_exists:N #1
+ \tl_check_exists:N #2
+ \cs_gset_eq:NN #1 #2
+ }
+\fi
+\RequirePackage{
+ l3seq,
+ l3int,
+ l3quark,
+ l3prg,
+ l3clist,
+ l3token,
+ l3prop,
+ l3msg,
+ l3io,
+ l3file,
+ l3skip,
+ l3box,
+ l3keyval,
+ l3keys,
+ l3fp,
+ l3luatex
+}
+\RequirePackage{l3toks}
+\bool_if:nT { \@l@expl@check@declarations@bool }
+ {
+ \msg_kernel_new:nnnn { check } { non-declared-variable }
+ { The~variable~#1~has~not~been~declared~\msg_line_context:. }
+ {
+ Checking~is~active,~and~you~have~tried~do~so~something~like: \\
+ \ \ \tl_set:Nn #1 ~
+ \iow_char:N \{ ~ ... ~ \iow_char:N \} \\
+ without~first~having: \\
+ \ \ \tl_new:N #1 \\
+ \\
+ LaTeX~will~create~the~variable~and~continue.
+ }
+ }
+\cs_set_protected_nopar:Npn \ExplSyntaxOn
+ {
+ \bool_if:NF \l_expl_status_bool
+ {
+ \cs_set_protected_nopar:Npx \ExplSyntaxOff
+ {
+ \char_set_catcode:nn { 9 } { \char_value_catcode:n { 9 } }
+ \char_set_catcode:nn { 32 } { \char_value_catcode:n { 32 } }
+ \char_set_catcode:nn { 34 } { \char_value_catcode:n { 34 } }
+ \char_set_catcode:nn { 38 } { \char_value_catcode:n { 38 } }
+ \char_set_catcode:nn { 58 } { \char_value_catcode:n { 58 } }
+ \char_set_catcode:nn { 94 } { \char_value_catcode:n { 94 } }
+ \char_set_catcode:nn { 95 } { \char_value_catcode:n { 95 } }
+ \char_set_catcode:nn { 124 } { \char_value_catcode:n { 124 } }
+ \char_set_catcode:nn { 126 } { \char_value_catcode:n { 126 } }
+ \tex_endlinechar:D = \tex_the:D \tex_endlinechar:D \scan_stop:
+ \bool_set_false:N \l_expl_status_bool
+ \cs_set_protected_nopar:Npn \ExplSyntaxOff { }
+ }
+ }
+ \char_set_catcode_ignore:n { 9 } % tab
+ \char_set_catcode_ignore:n { 32 } % space
+ \char_set_catcode_other:n { 34 } % double quote
+ \char_set_catcode_alignment:n { 38 } % ampersand
+ \char_set_catcode_letter:n { 58 } % colon
+ \char_set_catcode_math_superscript:n { 94 } % circumflex
+ \char_set_catcode_letter:n { 95 } % underscore
+ \char_set_catcode_other:n { 124 } % pipe
+ \char_set_catcode_space:n { 126 } % tilde
+ \tex_endlinechar:D = 32 \scan_stop:
+ \bool_set_true:N \l_expl_status_bool
+ }
+\cs_set_protected_nopar:Npx \ExplSyntaxOff
+ {
+ \exp_not:o \ExplSyntaxOff
+ \cs_set_protected_nopar:Npn \ExplSyntaxOff { }
+ }
+%%
+%%
+%% End of file `expl3.sty'.