[latex3-commits] [l3svn] r5893 - changed \exp_continue_f:w to \exp_end_continue_f:w

noreply at latex-project.org noreply at latex-project.org
Wed Aug 26 18:16:52 CEST 2015


Author: mittelba
Date: 2015-08-26 18:16:52 +0200 (Wed, 26 Aug 2015)
New Revision: 5893

Modified:
   trunk/l3kernel/l3basics.dtx
   trunk/l3kernel/l3candidates.dtx
   trunk/l3kernel/l3expan.dtx
   trunk/l3kernel/l3fp-aux.dtx
   trunk/l3kernel/l3fp-convert.dtx
   trunk/l3kernel/l3fp-expo.dtx
   trunk/l3kernel/l3fp-extended.dtx
   trunk/l3kernel/l3fp-logic.dtx
   trunk/l3kernel/l3fp-parse.dtx
   trunk/l3kernel/l3fp-round.dtx
   trunk/l3kernel/l3fp-trig.dtx
   trunk/l3kernel/l3skip.dtx
   trunk/l3kernel/l3token.dtx
   trunk/l3kernel/testfiles/m3expl001.luatex.tlg
   trunk/l3kernel/testfiles/m3expl001.tlg
   trunk/l3kernel/testfiles/m3expl001.xetex.tlg
   trunk/l3kernel/testfiles/m3expl003.luatex.tlg
   trunk/l3kernel/testfiles/m3expl003.tlg
   trunk/l3kernel/testfiles/m3expl003.xetex.tlg
   trunk/l3leftovers/l3toks.dtx
   trunk/l3leftovers/tl-act.dtx
   trunk/l3trial/l3bigint/l3bigint.dtx
   trunk/l3trial/l3fp-extras/l3fp-functions.dtx
   trunk/l3trial/l3fp-extras/l3fp-symbolic.dtx
   trunk/l3trial/l3fp-extras/l3fp-types.dtx
   trunk/l3trial/l3htoks/l3htoks.dtx
Log:
changed \exp_continue_f:w to \exp_end_continue_f:w
added \exp_end_continue_f:wn

Modified: trunk/l3kernel/l3basics.dtx
===================================================================
--- trunk/l3kernel/l3basics.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3basics.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -2092,38 +2092,40 @@
 %   The character codes are different, thus the \cs{if:w} test is false,
 %   and \TeX{} reads \cs{__cs_to_str:N} after turning the following
 %   control sequence into a string; this auxiliary removes the escape
-%   character, and stops the expansion of the initial \cs{exp:w}.
+%   character, and stops the expansion of the initial \cs{tex_romannumeral:D}.
 %   The second case is that the escape character is not printable. Then
 %   the \cs{if:w} test is unfinished after reading a the space from
 %   \verb*|\token_to_str:N \ |, and the auxiliary \cs{__cs_to_str:w}
 %   is expanded, feeding |-| as a second character for the test;
 %   the test is false, and \TeX{} skips to \cs{fi:}, then performs
-%   \cs{token_to_str:N}, and stops the \cs{exp:w} with \cs{exp_end:}.
+%   \cs{token_to_str:N}, and stops the \cs{tex_romannumeral:D} with \cs{c_zero}.
 %   The last case is that the escape character is itself a space. In this
 %   case, the \cs{if:w} test is true, and the auxiliary \cs{__cs_to_str:w}
-%   comes into play, inserting |-\__int_value:w|, which expands \cs{exp_end:}
-%   to the character |0|. The initial \cs{exp:w} then sees
+%   comes into play, inserting |-\__int_value:w|, which expands \cs{c_zero}
+%   to the character |0|. The initial \cs{tex_romannumeral:D} then sees
 %   |0|, which is not a terminated number, followed by the escape character,
 %   a space, which is removed, terminating the expansion of
-%   \cs{exp:w}.
+%   \cs{tex_romannumeral:D}.
 %   In all three cases, \cs{cs_to_str:N} takes two expansion steps
-%   to be fully expanded.\footnote{Frank: fix documentation}
+%   to be fully expanded.
 %    \begin{macrocode}
 \cs_set_nopar:Npn \cs_to_str:N
   {
-    \exp:w
+%    \end{macrocode}
+%    We implement the expansion scheme using \cs{tex_romannumeral:D}
+%    terminating it with \cs{c_zero} rather than using \cs{exp:w} and
+%    \cs{exp_end:} as we normally do. The reason is that the code
+%    heavily depends on terminating the expansion with \cs{c_zero} so
+%    we make this dependency explicit.
+%    \begin{macrocode}
+    \tex_romannumeral:D
       \if:w \token_to_str:N \ \__cs_to_str:w \fi:
       \exp_after:wN \__cs_to_str:N \token_to_str:N
   }
-\cs_set:Npn \__cs_to_str:N #1 { \exp_end: }
+\cs_set:Npn \__cs_to_str:N #1 { \c_zero }
 \cs_set:Npn \__cs_to_str:w #1 \__cs_to_str:N
-  { \exp_continue_f:w \exp_after:wN \use_none:nn \fi: \exp_after:wN \exp_end: }
+  { - \__int_value:w \fi: \exp_after:wN \c_zero }
 %    \end{macrocode}
-%    A slightly more compact coding would be using the fact that we
-%    know how \cs{exp_end:} is implemented.
-%    \begin{macrocode}
-%  { - \__int_value:w \fi: \exp_after:wN \exp_end: }
-%    \end{macrocode}
 % \end{macro}
 % \end{macro}
 %

Modified: trunk/l3kernel/l3candidates.dtx
===================================================================
--- trunk/l3kernel/l3candidates.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3candidates.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -2748,7 +2748,7 @@
       {
         \tl_if_empty:nTF {#1}
           { \prg_return_false: }
-          { \@@_if_empty_return:o { \exp:w \exp_continue_f:w #1 } }
+          { \@@_if_empty_return:o { \exp:w \exp_end_continue_f:w #1 } }
       }
   }
 %    \end{macrocode}

Modified: trunk/l3kernel/l3expan.dtx
===================================================================
--- trunk/l3kernel/l3expan.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3expan.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -657,6 +657,7 @@
 %   \end{syntax}
 %   Expands \meta{expandable-tokens} until reaching \cs{exp_end:} at
 %   which point expansion stops.
+%   The full expansion of \meta{expandable-tokens} has to be empty.
 %   If any token in \meta{expandable-tokens} or any token generated by
 %   expanding the tokens therein is not expandable the expansion will end
 %   prematurely and as a result \cs{exp_end:} will be misinterpreted
@@ -679,28 +680,29 @@
 % \begin{function}[added=2015-08-23,EXP]
 %       {
 %         \exp:w ,
-%         \exp_continue_f:w 
+%         \exp_end_continue_f:w 
 %       }
 %   \begin{syntax}
-%     \cs{exp:w} \meta{expandable-tokens} \cs{exp_continue_f:w} \meta{further-tokens}
+%     \cs{exp:w} \meta{expandable-tokens} \cs{exp_end_continue_f:w} \meta{further-tokens}
 %   \end{syntax}
-%   Expands \meta{expandable-tokens} until reaching \cs{exp_continue_f:} at
+%   Expands \meta{expandable-tokens} until reaching \cs{exp_end_continue_f:w} at
 %   which point expansion continues as an f-type expansion expanding
 %   \meta{further-tokens} until an unexpandable token is encountered (or
 %   the f-type expansion is explicitly terminated by
 %   \cs{exp_stop_f:}). As with all f-type expansions a space ending
 %   the expansion will get removed.
 %
+%   The full expansion of \meta{expandable-tokens} has to be empty.
 %   If any token in \meta{expandable-tokens} or any token generated by
 %   expanding the tokens therein is not expandable the expansion will end
-%   prematurely and as a result \cs{exp_continue_f:w} will be misinterpreted
+%   prematurely and as a result \cs{exp_end_continue_f:w} will be misinterpreted
 %   later on.\footnotemark
 %
 %
-%   In typical use cases  \meta{expandable-tokens} is empty,
+%   In typical use cases  \meta{expandable-tokens} contains no tokens at all,
 %   e.g., you will see code such as 
 %\begin{verbatim}
-%    \exp_after:wN { \exp:w \exp_continue_f:w #2 }
+%    \exp_after:wN { \exp:w \exp_end_continue_f:w #2 }
 %\end{verbatim}
 %   where the \cs{exp_after:wN} triggers an f-expansion of the tokens
 %   in |#2|. For technical reasons this has to happen using two tokens
@@ -716,7 +718,7 @@
 %   can be alternatively achieved through an f-type expansion by using
 %   \cs{exp_stop_f:}, i.e.
 %   \begin{quote}
-%     \cs{exp:w} \cs{exp_continue_f:w} \meta{expandable-tokens} \cs{exp_stop_f:}
+%     \cs{exp:w} \cs{exp_end_continue_f:w} \meta{expandable-tokens} \cs{exp_stop_f:}
 %   \end{quote}
 %   The reason is simply that the first approach is slightly faster
 %   (one less token to parse and less expansion internally)
@@ -727,6 +729,21 @@
 % \footnotetext{In this particular case you may get a character into
 %    the output as well as an error message.}
 %
+% \begin{function}[added=2015-08-23,EXP]
+%       {
+%         \exp:w ,
+%         \exp_end_continue_f:nw 
+%       }
+%   \begin{syntax}
+%     \cs{exp:w} \meta{expandable-tokens} \cs{exp_end_continue_f:nw} \meta{further-tokens}
+%   \end{syntax}
+%   The difference to \cs{exp_end_continue_f:w} is that we first we pick
+%   up an argument which is then returned to the input stream. If
+%   \meta{further-tokens} starts with a brace group then the braces
+%   are removed. If on the other hand it starts with space tokens then
+%   these space tokens are removed while searching for the
+%   argument. Thus such space tokens will not terminate the f-type expansion.
+% \end{function}
 %
 % \section{Internal functions and variables}
 %
@@ -870,7 +887,7 @@
 % \begin{macro}{\exp_stop_f:}
 %   This function is used to expand a token list until the first
 %   unexpandable token is found. This is achieved through \cs{exp:w} 
-%   \cs{exp_continue_f:w} that
+%   \cs{exp_end_continue_f:w} that
 %   expands everything in its way following it. This
 %   scanning procedure is terminated once the expansion hits
 %   something non-expandable or a space. We introduce \cs{exp_stop_f:}
@@ -879,7 +896,7 @@
 %   once \TeX{} had fully expanded |\cs_set_eq:Nc \aaa { b \l_tmpa_tl b }|
 %   into |\cs_set_eq:NN \aaa = \blurb| which then turned out to contain
 %   the non-expandable token \cs{cs_set_eq:NN}.  Since the expansion of
-%   \cs{exp:w} \cs{exp_continue_f:w} is \meta{null}, we wind up with a fully
+%   \cs{exp:w} \cs{exp_end_continue_f:w} is \meta{null}, we wind up with a fully
 %   expanded list, only \TeX{} has not tried to execute any of the
 %   non-expandable tokens. This is what differentiates this function
 %   from the |x| argument type.
@@ -887,7 +904,7 @@
 \cs_new:Npn \::f #1 \::: #2#3
   {
     \exp_after:wN \@@_arg_next:nnn
-      \exp_after:wN { \exp:w \exp_continue_f:w #3 }
+      \exp_after:wN { \exp:w \exp_end_continue_f:w #3 }
       {#1} {#2}
   }
 \use:nn { \cs_new_eq:NN \exp_stop_f: } { ~ }
@@ -1051,7 +1068,7 @@
 % \begin{macro}[EXP]{\exp_args:Nf, \exp_args:NV, \exp_args:Nv}
 %    \begin{macrocode}
 \cs_new:Npn \exp_args:Nf #1#2
-  { \exp_after:wN #1 \exp_after:wN { \exp:w \exp_continue_f:w #2 } }
+  { \exp_after:wN #1 \exp_after:wN { \exp:w \exp_end_continue_f:w #2 } }
 \cs_new:Npn \exp_args:Nv #1#2
   {
     \exp_after:wN #1 \exp_after:wN
@@ -1080,7 +1097,7 @@
   {
     \exp_after:wN #1
     \exp_after:wN #2
-    \exp_after:wN { \exp:w \exp_continue_f:w #3 }
+    \exp_after:wN { \exp:w \exp_end_continue_f:w #3 }
   }
 \cs_new:Npn \exp_args:NNv #1#2#3
   {
@@ -1104,7 +1121,7 @@
   {
     \exp_after:wN #1
     \cs:w #2 \exp_after:wN \cs_end:
-    \exp_after:wN { \exp:w \exp_continue_f:w #3 }
+    \exp_after:wN { \exp:w \exp_end_continue_f:w #3 }
   }
 \cs_new:Npn \exp_args:NVV #1#2#3
   {
@@ -1244,7 +1261,7 @@
 \cs_new:Npn \::f_unbraced \::: #1#2
   {
     \exp_after:wN \@@_arg_last_unbraced:nn
-      \exp_after:wN { \exp:w \exp_continue_f:w #2 } {#1}
+      \exp_after:wN { \exp:w \exp_end_continue_f:w #2 } {#1}
   }
 \cs_new:Npn \::o_unbraced \::: #1#2
   { \exp_after:wN \@@_arg_last_unbraced:nn \exp_after:wN {#2} {#1} }
@@ -1295,7 +1312,7 @@
   { \exp_after:wN #1 \exp:w \@@_eval_register:c {#2} }
 \cs_new:Npn \exp_last_unbraced:No #1#2 { \exp_after:wN #1 #2 }
 \cs_new:Npn \exp_last_unbraced:Nf #1#2
-  { \exp_after:wN #1 \exp:w \exp_continue_f:w #2 }
+  { \exp_after:wN #1 \exp:w \exp_end_continue_f:w #2 }
 \cs_new:Npn \exp_last_unbraced:Nco #1#2#3
   { \exp_after:wN #1 \cs:w #2 \exp_after:wN \cs_end: #3 }
 \cs_new:Npn \exp_last_unbraced:NcV #1#2#3
@@ -1372,7 +1389,7 @@
 \cs_new:Npn \exp_not:o #1 { \etex_unexpanded:D \exp_after:wN {#1} }
 \cs_new:Npn \exp_not:c #1 { \exp_after:wN \exp_not:N \cs:w #1 \cs_end: }
 \cs_new:Npn \exp_not:f #1
-  { \etex_unexpanded:D \exp_after:wN { \exp:w \exp_continue_f:w #1 } }
+  { \etex_unexpanded:D \exp_after:wN { \exp:w \exp_end_continue_f:w #1 } }
 \cs_new:Npn \exp_not:V #1
   {
     \etex_unexpanded:D \exp_after:wN
@@ -1394,7 +1411,8 @@
 %
 % \begin{macro}{\exp:w}
 % \begin{macro}{\exp_end:}
-% \begin{macro}{\exp_continue_f:w}
+% \begin{macro}{\exp_end_continue_f:w}
+% \begin{macro}{\exp_end_continue_f:nw}
 %
 %    To trigger a sequence of ``arbitrary'' many expansions we need a
 %    method to invoke \TeX's expansion mechanism in such a way that a)
@@ -1434,18 +1452,23 @@
 %    see \TeX{}book page~269 for details.
 %    \begin{macrocode}
 \tex_catcode:D `\^^@=13
-\cs_new_protected:Npn \exp_continue_f:w {`^^@}
+\cs_new_protected:Npn \exp_end_continue_f:w {`^^@}
 %    \end{macrocode}
 %    If the above definition ever appears outside its proper context
 %    the active character |^^@| will be executed so we turn this into an
 %    error.\footnote{Need to get a real error message.}
 %    \begin{macrocode}
 \cs_new:Npn ^^@{\expansionERROR}
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\cs_new:Npn \exp_end_continue_f:nw #1 { `^^@ #1 }
 \tex_catcode:D `\^^@=15
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \end{macro}
+% \end{macro}
 %
 %
 %

Modified: trunk/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/l3kernel/l3fp-aux.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-aux.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -465,7 +465,7 @@
     \else:
       \exp_after:wN \@@_exp_after_special:nNNw
     \fi:
-    { \exp:w \exp_continue_f:w #1 }
+    { \exp:w \exp_end_continue_f:w #1 }
     #2
   }
 %    \end{macrocode}
@@ -1056,7 +1056,7 @@
   }
 \cs_new:Npn \@@_expand_loop:nwnN #1#2 \s_@@_mark #3 #4
   {
-    \exp_after:wN #4 \exp:w \exp_continue_f:w
+    \exp_after:wN #4 \exp:w \exp_end_continue_f:w
     #2
     \s_@@_mark { #3 #1 } #4
   }

Modified: trunk/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/l3kernel/l3fp-convert.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-convert.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -116,7 +116,7 @@
 \cs_new_nopar:Npn \fp_to_scientific:n
   {
     \exp_after:wN \@@_to_scientific_dispatch:w
-    \exp:w \exp_continue_f:w \@@_parse:n
+    \exp:w \exp_end_continue_f:w \@@_parse:n
   }
 %    \end{macrocode}
 % \end{macro}
@@ -149,7 +149,7 @@
     \group_end:
     \cs_new:Npn \@@_to_scientific_dispatch:w \s_@@ \@@_chk:w #1#2
       {
-        \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_continue_f:w \fi:
+        \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
         \if_case:w #1 \exp_stop_f:
              \@@_case_return:nw { 0 }
         \or: \exp_after:wN \@@_to_scientific_normal:wnnnnn
@@ -206,7 +206,7 @@
 \cs_new_nopar:Npn \fp_to_decimal:n
   {
     \exp_after:wN \@@_to_decimal_dispatch:w
-    \exp:w \exp_continue_f:w \@@_parse:n
+    \exp:w \exp_end_continue_f:w \@@_parse:n
   }
 %    \end{macrocode}
 % \end{macro}
@@ -234,7 +234,7 @@
 %    \begin{macrocode}
 \cs_new:Npn \@@_to_decimal_dispatch:w \s_@@ \@@_chk:w #1#2
   {
-    \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_continue_f:w \fi:
+    \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
     \if_case:w #1 \exp_stop_f:
          \@@_case_return:nw { 0 }
     \or: \exp_after:wN \@@_to_decimal_normal:wnnnnn
@@ -279,7 +279,7 @@
         \exp_after:wN \@@_trim_zeros:w
         \exp_after:wN 0
         \exp_after:wN .
-        \exp:w \exp_continue_f:w \prg_replicate:nn { - #2 } { 0 }
+        \exp:w \exp_end_continue_f:w \prg_replicate:nn { - #2 } { 0 }
         #3#4#5#6 ;
       }
   }
@@ -307,7 +307,7 @@
 \cs_new_nopar:Npn \fp_to_tl:n
   {
     \exp_after:wN \@@_to_tl_dispatch:w
-    \exp:w \exp_continue_f:w \@@_parse:n
+    \exp:w \exp_end_continue_f:w \@@_parse:n
   }
 %    \end{macrocode}
 % \end{macro}
@@ -321,7 +321,7 @@
 %    \begin{macrocode}
 \cs_new:Npn \@@_to_tl_dispatch:w \s_@@ \@@_chk:w #1#2
   {
-    \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_continue_f:w \fi:
+    \if_meaning:w 2 #2 \exp_after:wN - \exp:w \exp_end_continue_f:w \fi:
     \if_case:w #1 \exp_stop_f:
            \@@_case_return:nw { 0 }
     \or:   \exp_after:wN \@@_to_tl_normal:nnnnn
@@ -377,7 +377,7 @@
 \cs_new_nopar:Npn \fp_to_int:n
   {
     \exp_after:wN \@@_to_int_dispatch:w
-    \exp:w \exp_continue_f:w \@@_parse:n
+    \exp:w \exp_end_continue_f:w \@@_parse:n
   }
 %    \end{macrocode}
 % \end{macro}
@@ -390,7 +390,7 @@
 %    \begin{macrocode}
 \cs_new:Npn \@@_to_int_dispatch:w #1;
   {
-    \exp_after:wN \@@_to_decimal_dispatch:w \exp:w \exp_continue_f:w
+    \exp_after:wN \@@_to_decimal_dispatch:w \exp:w \exp_end_continue_f:w
     \@@_round:Nwn \@@_round_to_nearest:NNN #1; { 0 }
   }
 %    \end{macrocode}
@@ -528,7 +528,7 @@
     \exp_not:N     \exp_after:wN ,
     \exp_not:N     \exp_after:wN \c_space_tl
     \exp_not:N     \exp:w 
-    \exp_not:N     \exp_continue_f:w
+    \exp_not:N     \exp_end_continue_f:w
     \exp_not:N     \@@_to_tl_dispatch:w #1 #2 ;
                  }
     \exp_not:N \@@_array_to_clist_loop:Nw

Modified: trunk/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/l3kernel/l3fp-expo.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-expo.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -927,7 +927,7 @@
       \@@_case_return_o:Nw \c_nan_fp
     \else:
       \exp_after:wN \@@_pow_neg:www
-      \exp:w \exp_continue_f:w \exp_after:wN \use:nn
+      \exp:w \exp_end_continue_f:w \exp_after:wN \use:nn
     \fi:
     {
       \if_meaning:w 1 #1
@@ -1169,7 +1169,7 @@
     \or:
       \if_int_compare:w \__int_eval:w #1 / \c_two = \c_one
         \@@_invalid_operation_o:Nww ^ #3; #4;
-        \exp:w \exp_continue_f:w
+        \exp:w \exp_end_continue_f:w
         \exp_after:wN \exp_after:wN
         \exp_after:wN \@@_use_none_until_s:w
       \fi:

Modified: trunk/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/l3kernel/l3fp-extended.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-extended.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -652,7 +652,7 @@
   {
     \exp_after:wN \@@_ep_to_fixed_auxi:www
     \int_use:N \__int_eval:w 1 0000 0000 + #2 \exp_after:wN ;
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \prg_replicate:nn { \c_four - \int_max:nn {#1} { -32 } } { 0 } ;
   }
 \cs_new:Npn \@@_ep_to_fixed_auxi:www 1#1; #2; #3#4#5#6#7;

Modified: trunk/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/l3kernel/l3fp-logic.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-logic.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -109,7 +109,7 @@
 \prg_new_conditional:Npnn \fp_compare:n #1 { p , T , F , TF }
   {
     \exp_after:wN \@@_compare_return:w
-    \exp:w \exp_continue_f:w \@@_parse:n {#1}
+    \exp:w \exp_end_continue_f:w \@@_parse:n {#1}
   }
 \cs_new:Npn \@@_compare_return:w \s_@@ \@@_chk:w #1#2;
   {
@@ -134,7 +134,7 @@
   {
     \if_int_compare:w
         \exp_after:wN \@@_compare_aux:wn
-          \exp:w \exp_continue_f:w \@@_parse:n {#1} {#3}
+          \exp:w \exp_end_continue_f:w \@@_parse:n {#1} {#3}
         = \__int_eval:w `#2 - `= \__int_eval_end:
       \prg_return_true:
     \else:
@@ -144,7 +144,7 @@
 \cs_new:Npn \@@_compare_aux:wn #1; #2
   {
     \exp_after:wN \@@_compare_back:ww
-      \exp:w \exp_continue_f:w \@@_parse:n {#2} #1;
+      \exp:w \exp_end_continue_f:w \@@_parse:n {#2} #1;
   }
 %    \end{macrocode}
 % \end{macro}
@@ -473,7 +473,7 @@
         \s_@@ \@@_chk:w { \@@_ternary_loop_break:w } ;
       \@@_ternary_break_point:n { \exp_after:wN \@@_ternary_auxi:NwwN }
       \exp_after:wN #1
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
       \@@_exp_after_array_f:w #3 \s_@@_stop
       \exp_after:wN @
       \exp:w
@@ -484,7 +484,7 @@
         { kernel } { fp-missing } { : } { ~for~?: }
       \exp_after:wN \@@_parse_continue:NwN
       \exp_after:wN #1
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
       \@@_exp_after_array_f:w #3 \s_@@_stop
       \exp_after:wN #4
       \exp_after:wN #1
@@ -508,7 +508,7 @@
   {
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \@@_exp_after_array_f:w #2 \s_@@_stop
     #4 #1
   }
@@ -516,7 +516,7 @@
   {
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \@@_exp_after_array_f:w #3 \s_@@_stop
     #4 #1
   }

Modified: trunk/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/l3kernel/l3fp-parse.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-parse.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -311,7 +311,7 @@
 % \begin{quote}
 %   \cs{exp_after:wN} \cs{@@_parse_continue:NwN} \newline
 %   \cs{exp_after:wN} \meta{precedence} \newline
-%   \cs{exp:w} \cs{exp_continue_f:w} \newline
+%   \cs{exp:w} \cs{exp_end_continue_f:w} \newline
 %   ~~\cs{@@_parse_one:Nw} \meta{precedence}
 % \end{quote}
 % This expands \cs{@@_parse_one:Nw} \meta{precedence} completely, which
@@ -354,9 +354,9 @@
 % \begin{quote}
 %   \cs{exp_after:wN} \cs{@@_parse_continue:NwN} \newline
 %   \cs{exp_after:wN} \meta{precedence} \newline
-%   \cs{exp:w} \cs{exp_continue_f:w} \newline
+%   \cs{exp:w} \cs{exp_end_continue_f:w} \newline
 %   |\__fp_|\meta{operator}|_o:ww| \meta{number} \meta{number_2} \newline
-%   \cs{exp:w} \cs{exp_continue_f:w} \newline
+%   \cs{exp:w} \cs{exp_end_continue_f:w} \newline
 %   |\__fp_parse_infix_|\meta{operator_2}|:N| \meta{precedence}
 % \end{quote}
 % where |\__fp_|\meta{operator}|_o:ww| computes \meta{number}
@@ -604,7 +604,7 @@
 %   not yet read.  This requires in particular closing all conditionals
 %   properly before expanding.
 %    \begin{macrocode}
-\cs_new:Npn \@@_parse_expand:w #1 { \exp_continue_f:w #1 }
+\cs_new:Npn \@@_parse_expand:w #1 { \exp_end_continue_f:w #1 }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -779,12 +779,12 @@
 \cs_new:Npn \@@_exp_after_mark_f:nw #1
   {
     \__msg_kernel_expandable_error:nn { kernel } { fp-early-end }
-    \exp_after:wN \c_nan_fp \exp:w \exp_continue_f:w #1
+    \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w #1
   }
 \cs_new:cpn { @@_exp_after_?_f:nw } #1#2
   {
     \__msg_kernel_expandable_error:nnn { kernel } { bad-variable } {#2}
-    \exp_after:wN \c_nan_fp \exp:w \exp_continue_f:w #1
+    \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w #1
   }
 %<*package>
 \group_begin:
@@ -793,7 +793,7 @@
     {
       \cs_gset:cpn { @@_exp_after_?_f:nw } #1#2
         {
-          \exp_after:wN \c_nan_fp \exp:w \exp_continue_f:w #1
+          \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w #1
           \str_if_eq:nnTF {#2} { \protect }
             {
               \cs_if_eq:NNTF #2 \@unexpandable at protect { \use_i:nn } { \use:n }
@@ -836,7 +836,7 @@
   {
     \exp_after:wN \@@_parse_infix_after_operand:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
       \exp_after:wN \@@_parse_one_register_aux:Nw
       \exp_after:wN #2
       \__int_value:w
@@ -890,7 +890,7 @@
   {
     \exp_after:wN \@@_parse_infix_after_operand:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
       \exp_after:wN \@@_sanitize:wN
       \int_use:N \__int_eval:w \c_zero \@@_parse_trim_zeros:N
   }
@@ -947,14 +947,14 @@
       {
         \__msg_kernel_expandable_error:nnn
           { kernel } { unknown-fp-word } {#2}
-        \exp_after:wN \c_nan_fp \exp:w \exp_continue_f:w
+        \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
         \@@_parse_infix:NN
       }
       #1
   }
 \cs_new:Npn \@@_parse_letters:N #1
   {
-    \exp_continue_f:w
+    \exp_end_continue_f:w
     \if_int_compare:w
         \if_catcode:w \scan_stop: \exp_not:N #1
           \c_zero
@@ -1002,7 +1002,7 @@
       {
         \__msg_kernel_expandable_error:nnn
           { kernel } { fp-missing-number } {#1}
-        \exp_after:wN \c_nan_fp \exp:w \exp_continue_f:w
+        \exp_after:wN \c_nan_fp \exp:w \exp_end_continue_f:w
         \@@_parse_infix:NN #3 #1
       }
       {
@@ -1730,7 +1730,7 @@
 \cs_new:Npn \@@_parse_apply_unary:NNNwN #1#2#3#4@#5
   {
     #3 #2 #4 @
-    \exp:w \exp_continue_f:w #5 #1
+    \exp:w \exp_end_continue_f:w #5 #1
   }
 %    \end{macrocode}
 % \end{macro}
@@ -1776,7 +1776,7 @@
   {
     \exp_after:wN \@@_parse_infix_after_operand:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
       \exp_after:wN \@@_sanitize:wN
       \int_use:N \__int_eval:w \c_zero \@@_parse_strim_zeros:N
   }
@@ -1844,7 +1844,7 @@
 \cs_set_protected:Npn \@@_tmp:w #1 #2
   {
     \cs_new_nopar:cpn { @@_parse_word_#1:N }
-      { \exp_after:wN #2 \exp:w \exp_continue_f:w \@@_parse_infix:NN }
+      { \exp_after:wN #2 \exp:w \exp_end_continue_f:w \@@_parse_infix:NN }
   }
 \@@_tmp:w { inf } \c_inf_fp
 \@@_tmp:w { nan } \c_nan_fp
@@ -1899,7 +1899,7 @@
         \exp_after:wN \@@_from_dim_test:ww
         \exp_after:wN 0 \exp_after:wN ,
         \__int_value:w \__dim_eval:w 1 #1 \exp_after:wN ;
-        \exp:w \exp_continue_f:w \@@_parse_infix:NN
+        \exp:w \exp_end_continue_f:w \@@_parse_infix:NN
       }
   }
 %    \end{macrocode}
@@ -2102,10 +2102,10 @@
 %    \begin{macrocode}
 \cs_new:Npn \@@_parse_operand:Nw #1
   {
-    \exp_continue_f:w
+    \exp_end_continue_f:w
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \exp_after:wN \@@_parse_one:Nw
     \exp_after:wN #1
     \exp:w
@@ -2124,8 +2124,8 @@
   {
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w \cs:w @@_#3_o:ww \cs_end: #2 #4
-    \exp:w \exp_continue_f:w #5 #1
+    \exp:w \exp_end_continue_f:w \cs:w @@_#3_o:ww \cs_end: #2 #4
+    \exp:w \exp_end_continue_f:w #5 #1
   }
 %    \end{macrocode}
 % \end{macro}
@@ -2595,15 +2595,15 @@
       \exp_after:wN \@@_parse_continue_compare:NNwNN
       \exp_after:wN #1
       \exp_after:wN #2
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
       \@@_exp_after_o:w #3;
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
     \else:
       \exp_after:wN \@@_parse_continue:NwN
       \exp_after:wN #2
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
       \exp_after:wN #1
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
     \fi:
     #4 #2
   }

Modified: trunk/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/l3kernel/l3fp-round.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-round.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -365,7 +365,7 @@
     \or: \@@_round:Nww #1 #2 \exp:w
     \else: \@@_round:Nwww #1 #2 @ \exp:w
     \fi:
-    \exp_continue_f:w
+    \exp_end_continue_f:w
   }
 %    \end{macrocode}
 % \end{macro}
@@ -494,7 +494,7 @@
   }
 \cs_new:Npn \@@_round_normal_end:wwNnn #1;#2;#3#4#5
   {
-    \exp_after:wN \@@_exp_after_o:w \exp:w \exp_continue_f:w
+    \exp_after:wN \@@_exp_after_o:w \exp:w \exp_end_continue_f:w
     \@@_sanitize:Nw #3 #4 ; #1 ;
   }
 \cs_new:Npn \@@_round_special:NwwNnn #1#2;#3;#4#5#6
@@ -512,7 +512,7 @@
   }
 \cs_new:Npn \@@_round_special_aux:Nw #1#2;
   {
-    \exp_after:wN \@@_exp_after_o:w \exp:w \exp_continue_f:w
+    \exp_after:wN \@@_exp_after_o:w \exp:w \exp_end_continue_f:w
     \@@_sanitize:Nw #1#2; {1000}{0000}{0000}{0000};
   }
 %    \end{macrocode}

Modified: trunk/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/l3kernel/l3fp-trig.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3fp-trig.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -403,7 +403,7 @@
     \exp_after:wN \@@_pack_twice_four:wNNNNNNNN
     \exp_after:wN \@@_trigd_large_auxi:nnnnwNNNN
     \exp_after:wN ;
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \prg_replicate:nn { \int_max:nn { 22 - #1 } { 0 } } { 0 }
     #2#3#4#5#6#7 0000 0000 0000 !
   }

Modified: trunk/l3kernel/l3skip.dtx
===================================================================
--- trunk/l3kernel/l3skip.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3skip.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -1234,7 +1234,7 @@
   }
 \cs_new:Npn \@@_compare:w #1 \__prg_compare_error:
   {
-    \exp_after:wN \if_false: \exp:w \exp_continue_f:w
+    \exp_after:wN \if_false: \exp:w \exp_end_continue_f:w
       \@@_compare:wNN #1 ? { = \@@_compare_end:w \else: } \q_stop
   }
 \exp_args:Nno \use:nn

Modified: trunk/l3kernel/l3token.dtx
===================================================================
--- trunk/l3kernel/l3token.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/l3token.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -2247,14 +2247,14 @@
 %   \cs{token_if_eq_meaning:NNTF} because \cs{l_peek_token} may be an
 %   outer macro (coming from non-\LaTeX3 packages).  Spaces are removed
 %   using a side-effect of \texttt{f}-expansion:
-%   |\exp:w \exp_continue_f:w| removes one space.
+%   |\exp:w \exp_end_continue_f:w| removes one space.
 %    \begin{macrocode}
 \cs_new_protected_nopar:Npn \@@_ignore_spaces_execute_branches:
   {
     \if_meaning:w \l_peek_token \c_space_token
       \exp_after:wN \peek_after:Nw
       \exp_after:wN \@@_ignore_spaces_execute_branches:
-      \exp:w \exp_continue_f:w
+      \exp:w \exp_end_continue_f:w
     \else:
       \exp_after:wN \@@_execute_branches:
     \fi:

Modified: trunk/l3kernel/testfiles/m3expl001.luatex.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl001.luatex.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl001.luatex.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining 
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3kernel/testfiles/m3expl001.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl001.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl001.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining ^^@ on line ...
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3kernel/testfiles/m3expl001.xetex.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl001.xetex.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl001.xetex.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining ^^@ on line ...
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3kernel/testfiles/m3expl003.luatex.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl003.luatex.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl003.luatex.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining 
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3kernel/testfiles/m3expl003.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl003.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl003.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining ^^@ on line ...
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3kernel/testfiles/m3expl003.xetex.tlg
===================================================================
--- trunk/l3kernel/testfiles/m3expl003.xetex.tlg	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3kernel/testfiles/m3expl003.xetex.tlg	2015-08-26 16:16:52 UTC (rev 5893)
@@ -242,8 +242,9 @@
 Defining \exp_not:f on line ...
 Defining \exp_not:V on line ...
 Defining \exp_not:v on line ...
-Defining \exp_continue_f:w on line ...
+Defining \exp_end_continue_f:w on line ...
 Defining ^^@ on line ...
+Defining \exp_end_continue_f:nw on line ...
 Defining \cs_generate_variant:Nn on line ...
 Defining \__cs_generate_variant:N on line ...
 Defining \__cs_generate_variant:ww on line ...

Modified: trunk/l3leftovers/l3toks.dtx
===================================================================
--- trunk/l3leftovers/l3toks.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3leftovers/l3toks.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -152,14 +152,14 @@
 %<*!check>
 \cs_new_eq:NN       \toks_set:Nn \prg_do_nothing:
 \cs_new_protected:Npn \toks_set:NV #1#2 {
-  #1 \exp_after:wN { \exp:w \exp_continue_f:w \__exp_eval_register:N #2 }
+  #1 \exp_after:wN { \exp:w \exp_end_continue_f:w \__exp_eval_register:N #2 }
 }
 \cs_new_protected:Npn \toks_set:Nv #1#2 {
-  #1 \exp_after:wN { \exp:w \exp_continue_f:w \__exp_eval_register:c {#2} }
+  #1 \exp_after:wN { \exp:w \exp_end_continue_f:w \__exp_eval_register:c {#2} }
 }
 \cs_new_protected:Npn \toks_set:No #1#2 { #1 \exp_after:wN {#2} }
 \cs_new_protected:Npn \toks_set:Nf #1#2 {
-  #1 \exp_after:wN { \exp:w \exp_continue_f:w #2 }
+  #1 \exp_after:wN { \exp:w \exp_end_continue_f:w #2 }
 }
 %</!check>
 %    \end{macrocode}
@@ -414,7 +414,7 @@
 \cs_new_protected:Npn \toks_put_right:NV #1#2 {
   #1 \exp_after:wN \exp_after:wN \exp_after:wN {
      \exp_after:wN \toks_use:N \exp_after:wN #1
-     \exp:w \exp_continue_f:w \__exp_eval_register:N #2
+     \exp:w \exp_end_continue_f:w \__exp_eval_register:N #2
   }
 }
 \cs_new_protected:Npn \toks_put_right:No #1#2 {
@@ -450,7 +450,7 @@
 %<*!check>
 \cs_new_protected:Npn \toks_put_right:Nf #1#2 {
   #1 \exp_after:wN \exp_after:wN \exp_after:wN {
-     \exp_after:wN \toks_use:N \exp_after:wN #1 \exp:w \exp_continue_f:w #2
+     \exp_after:wN \toks_use:N \exp_after:wN #1 \exp:w \exp_end_continue_f:w #2
   }
 }
 %</!check>

Modified: trunk/l3leftovers/tl-act.dtx
===================================================================
--- trunk/l3leftovers/tl-act.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3leftovers/tl-act.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -201,11 +201,11 @@
 %    \end{macrocode}
 %   \meta{Fillers} are not yet expanded properly.
 %    \begin{macrocode}
-\cs_new:Npn \tl_act_expand_filler:w { \exp_continue_f:w }
+\cs_new:Npn \tl_act_expand_filler:w { \exp_end_continue_f:w }
 % \cs_new:Npn \tl_act_expand_filler:w
 %   {
 %     \exp_after:wN \tl_act_expand_filler_aux:w
-%     \exp:w \exp_continue_f:w
+%     \exp:w \exp_end_continue_f:w
 %   }
 % \cs_new:Npn \tl_act_expand_filler_aux:w #1 \q_tl_act_stop
 %   {
@@ -216,7 +216,7 @@
 %           { \exp_end: }
 %           {
 %             \exp_after:wN \tl_act_expand_filler:w
-%             \exp:w \exp_continue_f:w
+%             \exp:w \exp_end_continue_f:w
 %           }
 %       }
 %     #1 \q_tl_act_stop

Modified: trunk/l3trial/l3bigint/l3bigint.dtx
===================================================================
--- trunk/l3trial/l3bigint/l3bigint.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3trial/l3bigint/l3bigint.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -654,27 +654,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}[int, EXP]{\@@_exp:w, \@@_exp_stop:, \@@_exp_to_f:w, \@@_exp_to_f:n}
-%   \begin{syntax}
-%     \cs{@@_exp:w} \ldots{} \cs{@@_exp_to_f:n} \meta{tokens}
-%   \end{syntax}
-%   The \tn{romannumeral} primitive is used heavily for expansion
-%   control.  When expanded once, it expands everything it follows
-%   until encountering one of the other three functions:
-%   \cs{@@_exp_stop:} stops the expansion completely while
-%   \cs{@@_exp_to_f:w} and \cs{@@_exp_to_f:n} convert it to
-%   \texttt{f}-expansion.  The \texttt{n}-type function is used to get
-%   rid of unwanted braces in the user's big integer expression.
 %
-% Most of these are now available from pkg{l3expan}
-%    \begin{macrocode}
-%\cs_new_eq:NN \@@_exp:w \exp:w
-%\cs_new_eq:NN \@@_exp_stop: \exp_end:
-%\cs_new_eq:NN \@@_exp_to_f:w \exp_continue_f:w
-\cs_new:Npn \@@_exp_to_f:n #1 { -`0 #1 }         % not provided in l3expan
-%    \end{macrocode}
-% \end{macro}
-%
 % \begin{variable}[int]{\s_@@}
 % \begin{macro}[aux]{\@@_chk:w}
 %   Big integer variables all start with \cs{s_@@} \cs{@@_chk:w},
@@ -716,11 +696,11 @@
 %
 % \begin{macro}[aux, EXP]{\@@_parse_return_semicolon:w}
 %   This very odd function swaps its position with the following
-%   \cs{fi:} and removes \cs{@@_exp_to_f:n} normally responsible for
+%   \cs{fi:} and removes \cs{exp_end_continue_f:nw} normally responsible for
 %   expansion.  That turns out to be useful.
 %    \begin{macrocode}
 \cs_new:Npn \@@_parse_return_semicolon:w
-    #1 \fi: \@@_exp_to_f:n { \fi: ; #1 }
+    #1 \fi: \exp_end_continue_f:nw { \fi: ; #1 }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -773,7 +753,7 @@
         \else:
           \@@_parse_return_semicolon:w #3 ##2
         \fi:
-        \@@_exp_to_f:n
+        \exp_end_continue_f:nw
       }
   }
 \@@_tmp:w {viii} \@@_parse_digits_vii:NN  { ; 8 }
@@ -857,7 +837,7 @@
     \@@_int_value:w 1
       \@@_exp_after_f_aux:NNNNNNNN #4
       {
-        \exp_after:wN ; \exp:w \exp_continue_f:w
+        \exp_after:wN ; \exp:w \exp_end_continue_f:w
         \use_none_delimit_by_q_stop:w
       }
       ???? ???? \q_stop #1
@@ -911,7 +891,7 @@
     \exp_after:wN \@@_parse_after:ww
     \exp:w
       \@@_parse_operand:Nw \c_minus_one
-      \@@_exp_to_f:n #1
+      \exp_end_continue_f:nw #1
       \s_@@_mark \@@_parse_infix_end:N
     \s_@@_stop
   }
@@ -931,10 +911,10 @@
 %    \begin{macrocode}
 \cs_new:Npn \@@_parse_operand:Nw #1
   {
-    \exp_continue_f:w
+    \exp_end_continue_f:w
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \exp_after:wN \@@_parse_one:Nw
     \exp_after:wN #1
     \exp:w
@@ -953,8 +933,8 @@
   {
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w \cs:w @@_#3_o:ww \cs_end: #2 #4
-    \exp:w \exp_continue_f:w #5 #1
+    \exp:w \exp_end_continue_f:w \cs:w @@_#3_o:ww \cs_end: #2 #4
+    \exp:w \exp_end_continue_f:w #5 #1
   }
 %    \end{macrocode}
 % \end{macro}
@@ -1033,19 +1013,19 @@
     \cs:w @@_exp_after \@@_type_from_scan:N #2 _f:nw \cs_end:
       {
         \exp_after:wN \@@_parse_infix:NN
-        \exp_after:wN #1 \exp:w \@@_exp_to_f:n
+        \exp_after:wN #1 \exp:w \exp_end_continue_f:nw
       }
     #2
   }
 \cs_new:Npn \@@_exp_after_mark_f:nw #1
   {
     \msg_expandable_error:nn { bigint } { early-end }
-    \exp_after:wN \c_@@_zero_bigint \exp:w \exp_continue_f:w #1
+    \exp_after:wN \c_@@_zero_bigint \exp:w \exp_end_continue_f:w #1
   }
 \cs_new:cpn { @@_exp_after_?_f:nw } #1#2
   {
     \msg_expandable_error:nnn { bigint } { bad-var } {#2}
-    \exp_after:wN \c_@@_zero_bigint \exp:w \exp_continue_f:w #1
+    \exp_after:wN \c_@@_zero_bigint \exp:w \exp_end_continue_f:w #1
   }
 %<*package>
 \group_begin:
@@ -1054,7 +1034,7 @@
     {
       \cs_gset:cpn { @@_exp_after_?_f:nw } #1#2
         {
-          \exp_after:wN \c_@@_zero_bigint \exp:w \exp_continue_f:w #1
+          \exp_after:wN \c_@@_zero_bigint \exp:w \exp_end_continue_f:w #1
           \str_if_eq:nnTF {#2} { \protect }
             {
               \cs_if_eq:NNTF #2 \@unexpandable at protect { \use_i:nn } { \use:n }
@@ -1087,7 +1067,7 @@
     \exp_after:wN #1
     \exp_after:wN \s_@@
     \exp_after:wN \@@_chk:w
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
     \exp_after:wN \use:nn
     \exp_after:wN \@@_parse_one_register_aux:N
     \exp_after:wN { \@@_int_value:w #2 }
@@ -1142,13 +1122,13 @@
     \cs_if_exist:cTF { @@_parse_infix_ \token_to_str:N #1 :N }
       {
         \msg_expandable_error:nnn { bigint } { missing-number } {#1}
-        \exp_after:wN \c_@@_zero_bigint \exp:w \exp_continue_f:w
+        \exp_after:wN \c_@@_zero_bigint \exp:w \exp_end_continue_f:w
         \@@_parse_infix:NN #3 #1
       }
       {
         \msg_expandable_error:nnn { bigint } { unknown-symbol } {#1}
         \exp_after:wN \@@_parse_one:Nw \exp_after:wN #3
-        \exp:w \@@_exp_to_f:n
+        \exp:w \exp_end_continue_f:nw
       }
   }
 %    \end{macrocode}
@@ -1190,9 +1170,9 @@
     \else:
       \@@_parse_trim_end:w #1
     \fi:
-    \@@_exp_to_f:n
+    \exp_end_continue_f:nw
   }
-\cs_new:Npn \@@_parse_trim_end:w #1 \fi: \@@_exp_to_f:n
+\cs_new:Npn \@@_parse_trim_end:w #1 \fi: \exp_end_continue_f:nw
   {
     \fi:
     \if_int_compare:w \c_nine < 1 \token_to_str:N #1 \exp_stop_f:
@@ -1219,7 +1199,7 @@
 \cs_new_nopar:Npn \@@_parse_decimal:N
   {
     \exp_after:wN \@@_parse_decimal_count:w
-    \exp:w \exp_continue_f:w \@@_parse_decimal_aux:N
+    \exp:w \exp_end_continue_f:w \@@_parse_decimal_aux:N
   }
 \cs_new_nopar:Npn \@@_parse_decimal_aux:N
   {
@@ -1271,7 +1251,7 @@
 \cs_new:Npn \@@_parse_apply_unary:NNNwN #1#2#3#4@#5
   {
     #3 #2 #4 @
-    \exp:w \exp_continue_f:w #5 #1
+    \exp:w \exp_end_continue_f:w #5 #1
   }
 %    \end{macrocode}
 % \end{macro}
@@ -1294,7 +1274,7 @@
     \else:
       \@@_parse_operand:Nw \c_twelve
     \fi:
-    \@@_exp_to_f:n
+    \exp_end_continue_f:nw
   }
 %    \end{macrocode}
 % \end{macro}
@@ -1324,7 +1304,7 @@
       \else:
         \@@_parse_operand:Nw \c_zero
       \fi:
-      \@@_exp_to_f:n
+      \exp_end_continue_f:nw
     }
   \cs_new:Npn \@@_parse_lparen_after:NwN #1#2 @ #3
     {
@@ -1333,7 +1313,7 @@
           \@@_exp_after_array_f:w #2 \s_@@_stop
           \exp_after:wN \@@_parse_infix:NN
           \exp_after:wN #1
-          \exp:w \@@_exp_to_f:n
+          \exp:w \exp_end_continue_f:nw
         }
         {
           \msg_expandable_error:nnn { bigint } { missing } { ) }
@@ -1381,7 +1361,7 @@
       \else:
         \exp_after:wN #1
         \exp_after:wN #2
-        \exp:w \exp_after:wN \@@_exp_to_f:n
+        \exp:w \exp_after:wN \exp_end_continue_f:nw
       \fi:
     }
 \group_end:
@@ -1420,7 +1400,7 @@
         \msg_expandable_error:nnn { bigint } { extra } { ) }
         \exp_after:wN \@@_parse_infix:NN
         \exp_after:wN #1
-        \exp:w \exp_after:wN \@@_exp_to_f:n
+        \exp:w \exp_after:wN \exp_end_continue_f:nw
       \else:
         \exp_after:wN @
         \exp_after:wN \use_none:n
@@ -1464,7 +1444,7 @@
             \exp_after:wN #2
             \exp:w
             \@@_parse_operand:Nw #4
-            \exp_after:wN \@@_exp_to_f:n
+            \exp_after:wN \exp_end_continue_f:nw
           \else:
             \exp_after:wN @
             \exp_after:wN \use_none:n
@@ -1511,7 +1491,7 @@
       \exp_after:wN \@@_parse_apply_juxtapose:NwwN
       \exp:w
       \@@_parse_operand:Nw \c_ten
-      \exp_after:wN \@@_exp_to_f:n
+      \exp_after:wN \exp_end_continue_f:nw
     \else:
       \exp_after:wN @
       \exp_after:wN \use_none:n
@@ -1565,7 +1545,7 @@
 \cs_new:Npn \@@_tree_dp_aux:n #1
   {
     \exp_after:wN \@@_tree_collect:w
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
       \@@_tree_auxi:NNNNNNNN #1 { ? \@@_tree_auxi_end:w } ??????? ;
   }
 \cs_new:Npn \@@_tree_auxi:NNNNNNNN #1#2#3#4#5#6#7#8
@@ -2856,7 +2836,7 @@
 \cs_new:Npn \@@_mul:nw #1#2
   {
     \exp_after:wN \@@_mul:wnw
-    \exp:w \exp_continue_f:w \@@_mul_digit:nN {#1} #2 ; {#1}
+    \exp:w \exp_end_continue_f:w \@@_mul_digit:nN {#1} #2 ; {#1}
   }
 \cs_new:Npn \@@_mul:wnw #1 ; #2 #3
   {
@@ -2866,7 +2846,7 @@
         \exp_last_unbraced:Nf \@@_mul:wnw
           {
             \exp_after:wN \@@_add_signed:Nww \exp_after:wN +
-              \exp:w \exp_continue_f:w \@@_mul_digit:nN {#2} #3 ;
+              \exp:w \exp_end_continue_f:w \@@_mul_digit:nN {#2} #3 ;
               #1 0 ;
             ;
           }
@@ -2963,7 +2943,7 @@
       }
       {
         \int_compare:nNnF {#4} = {#5} { \exp_after:wN - }
-        \exp:w \exp_continue_f:w
+        \exp:w \exp_end_continue_f:w
         \tl_if_empty:nTF {#1} { 1 } { \@@_add_signed:Nww + 1 ; #1 ; }
       }
   }
@@ -2989,7 +2969,7 @@
         0
       }
       {
-        \exp_after:wN #5 \exp:w \exp_continue_f:w
+        \exp_after:wN #5 \exp:w \exp_end_continue_f:w
         \exp_args:Nf \@@_div:nnn { \tl_count:n {#4} } {#2} {#4}
         {#1} {#3}
       }

Modified: trunk/l3trial/l3fp-extras/l3fp-functions.dtx
===================================================================
--- trunk/l3trial/l3fp-extras/l3fp-functions.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3trial/l3fp-extras/l3fp-functions.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -155,7 +155,7 @@
         \exp_after:wN #1
         \exp_after:wN ,
         \exp_after:wN {
-          \exp:w \exp_continue_f:w
+          \exp:w \exp_end_continue_f:w
           \@@_exp_after_array_f:w #2 \s_@@_stop
           \exp_after:wN
         }

Modified: trunk/l3trial/l3fp-extras/l3fp-symbolic.dtx
===================================================================
--- trunk/l3trial/l3fp-extras/l3fp-symbolic.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3trial/l3fp-extras/l3fp-symbolic.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -217,12 +217,12 @@
       { , \exp:w \use_none:nn }
     \exp_after:wN \exp_end: \exp_after:wN
       {
-        \exp:w \exp_continue_f:w
+        \exp:w \exp_end_continue_f:w
         \@@_exp_after_array_f:w #3 \s_@@_stop
         \exp_after:wN
       }
     \exp_after:wN ;
-    \exp:w \exp_continue_f:w #1
+    \exp:w \exp_end_continue_f:w #1
   }
 \cs_new:Npn \@@_exp_after_symbolic_aux:w #1, #2;
   {
@@ -400,7 +400,7 @@
     \cs_new_nopar:cpn { @@_symbolic_to_#1:w }
       {
         \exp_after:wN \@@_symbolic_convert:wnnN
-        \exp:w \exp_continue_f:w
+        \exp:w \exp_end_continue_f:w
         \@@_exp_after_symbolic_f:nw { { #2 } { fp_to_#1 } #3 }
       }
   }

Modified: trunk/l3trial/l3fp-extras/l3fp-types.dtx
===================================================================
--- trunk/l3trial/l3fp-extras/l3fp-types.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3trial/l3fp-extras/l3fp-types.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -114,7 +114,7 @@
   {
     \exp_after:wN \@@_parse_continue:NwN
     \exp_after:wN #1
-    \exp:w \exp_continue_f:w
+    \exp:w \exp_end_continue_f:w
       \cs:w
         @@
         \@@_type_from_scan:N #2
@@ -123,7 +123,7 @@
         _o:ww
       \cs_end:
       #2#3 #5#6
-    \exp:w \exp_continue_f:w #7 #1
+    \exp:w \exp_end_continue_f:w #7 #1
   }
 %    \end{macrocode}
 % \end{macro}
@@ -353,13 +353,13 @@
  %   {
  %     \exp_after:wN \@@_parse_until_test:NwN
  %     \exp_after:wN #1
- %     \exp:w \exp_continue_f:w
+ %     \exp:w \exp_end_continue_f:w
  %       \@@_infix_compare_o:w
  %         \s_@@_tokens \@@_tokens_exp_not:n { #3#4#5#6 } ;
  %         #2
  %         #7
  %         \s_@@_stop
- %     \exp:w \exp_continue_f:w #8 #1
+ %     \exp:w \exp_end_continue_f:w #8 #1
  %   }
  % \cs_new_protected:Npn \@@_infix_compare_o:w
  %     \s_@@_tokens \@@_tokens_exp_not:n #1; #2#3; #4#5; \s_@@_stop

Modified: trunk/l3trial/l3htoks/l3htoks.dtx
===================================================================
--- trunk/l3trial/l3htoks/l3htoks.dtx	2015-08-25 08:21:04 UTC (rev 5892)
+++ trunk/l3trial/l3htoks/l3htoks.dtx	2015-08-26 16:16:52 UTC (rev 5893)
@@ -311,9 +311,9 @@
         \@@_ignore_spaces_auxiii:NNw
       \fi:
     \fi:
-    \exp_after:wN \@@_ignore_spaces_auxi: \exp:w \exp_continue_f:w
+    \exp_after:wN \@@_ignore_spaces_auxi: \exp:w \exp_end_continue_f:w
   }
-\cs_new_protected:Npn \@@_ignore_spaces_auxiii:NNw #1#2#3 \exp_continue_f:w
+\cs_new_protected:Npn \@@_ignore_spaces_auxiii:NNw #1#2#3 \exp_end_continue_f:w
   { #1 #2 \l_@@_peek_next_tl }
 %    \end{macrocode}
 % \end{macro}



More information about the latex3-commits mailing list