diff options
author | Karl Berry <karl@freefriends.org> | 2007-05-22 17:46:23 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-05-22 17:46:23 +0000 |
commit | f4eb27d3314d15838f674a3872000159d029f88b (patch) | |
tree | 6e9ab33c5a2d702912b4a969ade4e4e2ac586d62 /Master/texmf-dist/tex/latex/expl3/l3precom.sty | |
parent | 14af3f447439750920f754792b89f113d019076a (diff) |
update expl3
git-svn-id: svn://tug.org/texlive/trunk@4335 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/expl3/l3precom.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/expl3/l3precom.sty | 143 |
1 files changed, 84 insertions, 59 deletions
diff --git a/Master/texmf-dist/tex/latex/expl3/l3precom.sty b/Master/texmf-dist/tex/latex/expl3/l3precom.sty index f1ccdd9086d..9f67483781a 100644 --- a/Master/texmf-dist/tex/latex/expl3/l3precom.sty +++ b/Master/texmf-dist/tex/latex/expl3/l3precom.sty @@ -15,80 +15,106 @@ %% Do not distribute a modified version of this file. %% %% -%% File: l3precom.dtx Copyright (C) 1990-1998 LaTeX3 project -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{l3precom} - [1998/04/20 v1.0b L3 Experimental precompilation module] -\RequirePackage{l3int} +%% File: l3precom.dtx Copyright (C) 1990-2006 Frank Mittelbach, 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/cgi-bin/cvsweb.cgi/ +%% +%% 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 LaTeX Project Team. +%% +%% ----------------------------------------------------------------------- +\RequirePackage{l3names} +\GetIdInfo$Id: l3precom.dtx 573 2006-08-21 20:59:37Z morten $ + {L3 Experimental precompilation module} +\RequirePackage{l3num} \RequirePackage{l3io} \RequirePackage{l3seq} +\RequirePackage{l3int} \iow_new:N\c_cs_dump_stream \tlp_new:Nn\g_cs_dump_name_tlp{} \seq_new:N\g_cs_dump_seq \def_new:Npn\cs_record_name:N#1{ - \seq_gput_left:Nn - \g_cs_trace_seq#1 - \seq_gput_left:Nn - \g_cs_dump_seq#1} +\seq_gput_left:Nn + \g_cs_trace_seq#1 +\seq_gput_left:Nn + \g_cs_dump_seq#1} \def_new:Npn\cs_record_name:c{\exp_args:Nc\cs_record_name:N} \def_new:Npn\cs_dump:{ - \iow_expanded_term:n{Precompiling~style~into~(\g_cs_dump_name_tlp)} - \iow_open:Nn\c_cs_dump_stream{\g_cs_dump_name_tlp} - \iow_expanded:Nn\c_cs_dump_stream - {\group_begin: - \tex_catcode:D`\token_to_string:N\*=11\scan_stop: - \token_to_string:N\CodeStart - } - \seq_map_inline:Nn - \g_cs_dump_seq - {\tex_message:D{.} - \iow_expanded:Nn\c_cs_dump_stream - {\token_to_string:N\gdef:Npn - \token_to_string:N##1 - {\tlp_to_str:N##1}} - } - \iow_expanded:Nn - \c_cs_dump_stream - {\token_to_string:N\fint_gset:Nn - \g_gen_sym_fint - {\fint_use:N\g_gen_sym_fint}^^J - \token_to_string:N\fint_gset:Nn - \g_ggen_sym_fint - {\fint_use:N\g_ggen_sym_fint}} - \iow_expanded:Nn - \c_cs_dump_stream - {\group_end:} - \iow_close:N\c_cs_dump_stream - \tex_message:D{~finished} +\iow_expanded_term:n{Precompiling~style~into~(\g_cs_dump_name_tlp)} +\iow_open:Nn\c_cs_dump_stream{\g_cs_dump_name_tlp} +\iow_expanded:Nn\c_cs_dump_stream +{\group_begin: +\tex_catcode:D`\token_to_string:N\*=11\scan_stop: +\token_to_string:N\CodeStart +} +\seq_map_inline:Nn +\g_cs_dump_seq +{\tex_message:D{.} +\iow_expanded:Nn\c_cs_dump_stream + {\exp_not:n{\gdef:Npn ##1} + {\tlp_to_str:N##1}} +} +\iow_expanded:Nn \c_cs_dump_stream {\exp_not:n{\num_gset:Nn + \g_gen_sym_num} + {\num_use:N\g_gen_sym_num}^^J +\exp_not:n{\num_gset:Nn \g_ggen_sym_num} + {\num_use:N\g_ggen_sym_num}} +\iow_expanded:Nn +\c_cs_dump_stream +{\group_end:} +\iow_close:N\c_cs_dump_stream +\tex_message:D{~finished} } \def_new:Npn\cs_load_dump:n#1{ - \file_not_found:nTF{#1.cmp} - {\tlp_gset:Nn\g_cs_dump_name_tlp{#1.cmp}} - {\input{#1.cmp} - \let:NN\cs_dump:\fi: - \if_false:}} -\fint_new:N\g_gen_sym_fint -\fint_gset:Nn\g_gen_sym_fint{0} -\fint_new:N\g_ggen_sym_fint -\fint_gset:Nn\g_ggen_sym_fint{0} +\file_not_found:nTF{#1.cmp} +{\tlp_gset:Nn\g_cs_dump_name_tlp{#1.cmp}} +{\input{#1.cmp} +\let:NN\cs_dump:\fi: +\if_false:}} +\num_new:N\g_gen_sym_num \num_gset:Nn\g_gen_sym_num{0} +\num_new:N\g_ggen_sym_num \num_gset:Nn\g_ggen_sym_num{0} \def_new:Npn\cs_gen_sym:N#1{ - \fint_gincr:N\g_gen_sym_fint - \tlp_set:Nc#1{l*\tex_romannumeral:D\fint_use:N\g_gen_sym_fint} - \exp_after:NN\cs_record_name:N#1 - \exp_after:NN\tlp_clear_new:N#1} +\num_gincr:N\g_gen_sym_num +\tlp_set:Nc#1{l*\tex_romannumeral:D\num_use:N\g_gen_sym_num} +\exp_after:NN\cs_record_name:N#1 +\exp_after:NN\tlp_clear_new:N#1} \def_new:Npn\cs_ggen_sym:N#1{ - \fint_gincr:N\g_ggen_sym_fint - \tlp_set:Nc#1{g*\tex_romannumeral:D\fint_use:N\g_ggen_sym_fint} - \exp_after:NN\cs_record_name:N#1 - \exp_after:NN\tlp_clear_new:N#1} +\num_gincr:N\g_ggen_sym_num +\tlp_set:Nc#1{g*\tex_romannumeral:D\num_use:N\g_ggen_sym_num} +\exp_after:NN\cs_record_name:N#1 +\exp_after:NN\tlp_clear_new:N#1} \seq_new:N\g_cs_trace_seq \seq_new:N\g_register_trace_seq \def:Npn\cs_record_meaning:N#1{ - \seq_gput_left:Nn - \g_cs_trace_seq#1} +\seq_gput_left:Nn + \g_cs_trace_seq#1} \def:Npn\register_record_name:N#1{ - \seq_gput_left:Nn - \g_register_trace_seq#1} +\seq_gput_left:Nn + \g_register_trace_seq#1} \def_new:Npn\dumpLaTeXstate#1{ \iow_expanded_term:n{Dumping~commands~into~(#1.dmp)} \iow_open:Nn\c_cs_dump_stream{#1.dmp} @@ -109,7 +135,6 @@ } \tex_message:D{~finished} } - %% %% %% End of file `l3precom.sty'. |