diff options
Diffstat (limited to 'info/examples/tex-in-practice/defauarg.tip')
-rw-r--r-- | info/examples/tex-in-practice/defauarg.tip | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/info/examples/tex-in-practice/defauarg.tip b/info/examples/tex-in-practice/defauarg.tip new file mode 100644 index 0000000000..5372754b66 --- /dev/null +++ b/info/examples/tex-in-practice/defauarg.tip @@ -0,0 +1,38 @@ +% This macro source file is from the four volume series +% "TeX in Practice" by Stephan von Bechtolsheim, published +% 1993 by Springer-Verlag, New York. +% Copyright 1993 Stephan von Bechtolsheim. +% No warranty or liability is assumed. +% This macro may be copied freely if no fees other than +% media cost or shipping charges are charged and as long +% as this copyright and the following source code itself +% is not changed. Please see the series for further information. +% +% Version: 1.0 +% Date: May 1, 1993 +% +% +% This source code is documented in 23.4.8.1, p. III-266. +% Original source in file "macros3.TEX", starting line 1514. +\wlog{L: "defauarg.tip" ["macros3.TEX," l. 1514, p. III-266]}% +% This file DOES belong to format "texip." +\InputD{gobblemo.tip} +\catcode`\@ = 11 +\def\DefaultArg #1#2#3{% + \def\@DefaultArgMacro{#1}% + \edef\@EmptyOtherArg{#2}% + \edef\@DefaultArgDefault{#3}% + \@DefaultArg #2\@DefaultArgEnd +} +\def\@DefaultArg{% + \futurelet\@DefaultArgSymbol\@DefaultArgOne +} +\def\@DefaultArgOne{% + \ifx\@DefaultArgSymbol\@DefaultArgEnd + \expandafter\edef\@DefaultArgMacro{\@DefaultArgDefault}% + \else + \expandafter\edef\@DefaultArgMacro{\@EmptyOtherArg}% + \fi + \GobbleDoMore{\@DefaultArgEnd}{\relax}% +} +\catcode`\@ = 12 |