diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/base/ltfssdcl.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltfssdcl.dtx | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltfssdcl.dtx b/Master/texmf-dist/source/latex/base/ltfssdcl.dtx index 25ac234848d..8a1f47e2178 100644 --- a/Master/texmf-dist/source/latex/base/ltfssdcl.dtx +++ b/Master/texmf-dist/source/latex/base/ltfssdcl.dtx @@ -36,7 +36,7 @@ % % \ProvidesFile{ltfssdcl.dtx} - [2007/08/31 v3.0l LaTeX Kernel (NFSS Declarative Interface)] + [2011/05/08 v3.0n LaTeX Kernel (NFSS Declarative Interface)] % \iffalse \documentclass{ltxdoc} \begin{document} @@ -52,7 +52,7 @@ %<+checkmem>\CHECKMEM % \fi % -% \CheckSum{1879} +% \CheckSum{1886} % % % \GetFileInfo{ltfssdcl.dtx} @@ -110,16 +110,29 @@ % % % \begin{macro}{\in@} +% \changes{v3.0m}{2009/10/20}{More robust thanks to Heiko.} +% \changes{v3.0n}{2011/05/08}{Simplified thanks to Bruno.} % \begin{macro}{\ifin@} % |\@in| is a utility macro with two arguments. It determines -% whether its first argument occurs in its second (after expanding -% it) and sets the switch |\if@in| accordingly. +% whether its first argument occurs in its second and sets the +% switch |\ifin@| accordingly. The first argument may not +% contain braces nor |#| (more precisely, tokens of category +% code 1,~2, or~6). % \begin{macrocode} %<*2ekernel|autoload> -\def\in@#1#2{% - \def\in@@##1#1##2##3\in@@{% - \ifx\in@##2\in@false\else\in@true\fi}% - \in@@#2#1\in@\in@@} +\def\in@#1#2% + {% + \begingroup + \def\in@@##1#1{}% + \toks@\expandafter{\in@@#2{}{}#1}% + \edef\in@@{\the\toks@}% + \expandafter\endgroup + \ifx\in@@\@empty + \in@false + \else + \in@true + \fi + } \newif\ifin@ % \end{macrocode} % \end{macro} |