%% %% 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 "l3kernel 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} \def\ExplFileName{expl3} \def\ExplFileDescription{L3 Experimental code bundle wrapper} \def\ExplFileDate{2011/10/09} \def\ExplFileVersion{2900} \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 } \newcommand* \l@expl@native@drivers@bool { 0 } \DeclareOption { check-declarations } { \def \l@expl@check@declarations@bool { 1 } } \DeclareOption { log-functions } { \def \l@expl@log@functions@bool { 1 } } \DeclareOption { native-drivers } { \def \l@expl@native@drivers@bool { 1 } } \ProcessOptions \relax \ifodd \l@expl@native@drivers@bool \relax \else \RequirePackage { color , graphics } \fi \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, l3keys, l3fp, l3box, l3coffins, l3color, l3luatex } \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. } } \bool_if:nTF { \l@expl@native@drivers@bool } { \xetex_if_engine:TF { \file_input:n { l3xdvipdfmx.def } } { \RequirePackage { ifpdf } \ifpdf \file_input:n { l3pdfmode.def } \else \file_input:n { l3dvips.def } \fi } \AtBeginDocument { \cs_if_free:NT \color { \DeclareRobustCommand \color [2] [ ] { } } } } { \cs_set_protected_nopar:Npn \box_rotate:Nn #1#2 { \hbox_set:Nn #1 { \rotatebox {#2} { \box_use:N #1 } } } \cs_set_protected_nopar:Npn \box_resize:Nnn #1#2#3 { \hbox_set:Nn #1 { \resizebox * { \etex_dimexpr:D #2 \scan_stop: } { \etex_dimexpr:D #3 \scan_stop: } { \box_use:N #1 } } } \cs_set_protected_nopar:Npn \box_resize_to_ht_plus_dp:Nn #1#2 { \hbox_set:Nn #1 { \resizebox * { ! } { \etex_dimexpr:D #2 \scan_stop: } { \box_use:N #1 } } } \cs_set_protected_nopar:Npn \box_resize_to_wd:Nn #1#2 { \hbox_set:Nn #1 { \resizebox * { \etex_dimexpr:D #2 \scan_stop: } { ! } { \box_use:N #1 } } } \cs_set_protected_nopar:Npn \box_scale:Nnn #1#2#3 { \hbox_set:Nn #1 { \scalebox {#2} [#3] { \box_use:N #1 } } } } \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'.