%% %% This is file `ltxcmds-test-ifempty.tex', %% generated with the docstrip utility. %% %% The original source files were: %% %% ltxcmds.dtx (with options: `test-ifempty') %% %% This is a generated file. %% %% Copyright (C) 2009-2011 by %% Heiko Oberdiek %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3c of this license or (at your option) any later %% version. This version of this license is in %% http://www.latex-project.org/lppl/lppl-1-3c.txt %% and the latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% %% This work has the LPPL maintenance status "maintained". %% %% This Current Maintainer of this work is Heiko Oberdiek. %% %% The Base Interpreter refers to any `TeX-Format', %% because some files are installed in TDS:tex/generic//. %% %% This work consists of the main source file ltxcmds.dtx %% and the derived files %% ltxcmds.sty, ltxcmds.pdf, ltxcmds.ins, ltxcmds.drv, %% ltxcmds-test1.tex, ltxcmds-test-gobble.tex, %% ltxcmds-test-ifempty.tex, ltxcmds-test-zapspace.tex, %% ltxcmds-test-ifboxempty.tex, ltxcmds-test-nextchar.tex. %% \catcode`\{=1 % \catcode`\}=2 % \catcode`\#=6 % \catcode`\@=11 % \errorcontextlines=1000 % \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname RequirePackage\endcsname\relax \input ltxcmds.sty\relax \else \RequirePackage{ltxcmds}[2011/04/14]% \fi \def\msg#{\immediate\write16} \def\TestY{\Y} \def\TestN{\N} \msg{* \string\ltx@ifempty} \long\def\test#1{% \begingroup % Calculate expected test result via macro definition \def\Stuff{#1}% \ifx\Stuff\ltx@empty \def\StuffEmpty{\Y}% \else \def\StuffEmpty{\N}% \fi % Test \ltx@ifempty \expandafter\expandafter\expandafter\def \expandafter\expandafter\expandafter\TestEmpty \expandafter\expandafter\expandafter{% \ltx@ifempty{#1}{\Y}{\N}% }% \ifx\StuffEmpty\TestEmpty \msg{* Test OK}% \else \ltx@IfUndefined{detokenize}{}{% \msg{Stuff: [\detokenize{\Stuff}]}% }% \errmessage{Test failed!}% \fi \endgroup } \test{} \test{a} \test{abc} \test{\par} \test{ } \test{\if} \test{{\if}} \test{\else} \test{{\else}} \test{\fi} \test{{}\fi} \test{\or\ifcase} \test{{}} \test{{a}} \test{{}abc} \test{{\par}} \test{{}\par} \def\SpaceTwo#1{% \def\SpaceTwo{#1#1}% }\SpaceTwo{ } \msg{* \string\ltx@ifblank} \long\def\test#1{% \begingroup % Calculate expected test result via macro definition \def\Stuff{#1}% \ifx\Stuff\ltx@empty \def\StuffEmpty{\Y}% \else \ifx\Stuff\ltx@space \def\StuffEmpty{\Y}% \else \ifx\Stuff\SpaceTwo \def\StuffEmpty{\Y}% \else \def\StuffEmpty{\N}% \fi \fi \fi % Test \ltx@ifblank \expandafter\expandafter\expandafter\def \expandafter\expandafter\expandafter\TestEmpty \expandafter\expandafter\expandafter{% \ltx@ifblank{#1}{\Y}{\N}% }% \ifx\StuffEmpty\TestEmpty \msg{* Test OK}% \else \ltx@IfUndefined{detokenize}{}{% \msg{Stuff: [\detokenize{\Stuff}]}% }% \errmessage{Test failed!}% \fi \endgroup } \test{} \test{a} \test{\if} \test{\else} \test{\fi} \test{ \fi} \test{\par} \test{ \par} \test{{}} \test{ {}} \def\x#1{% \test{#1#1}% \test{#1#1{}}% \test{#1#1\par}% \test{#1#1\else}% }\x{ } \csname @@end\endcsname\end \endinput %% %% End of file `ltxcmds-test-ifempty.tex'.