%% %% This is file `xintlog.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% xint.dtx (with options: `xintlog') %% %% IMPORTANT NOTICE: %% %% For the copyright see the source file. %% %% Any modified versions of this file must be renamed %% with new filenames distinct from xintlog.sty. %% %% For distribution of the original source see the terms %% for copying and modification in the file xint.dtx. %% %% This generated file may be distributed as long as the %% original source files, as listed above, are part of the %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- %% The xint bundle 1.3e 2019/04/05 %% Copyright (C) 2013-2019 by Jean-Francois Burnol %% xintlog: Logarithms and exponentials for xintexpr %% --------------------------------------------------------------- \begingroup\catcode61\catcode48\catcode32=10\relax% \catcode13=5 % ^^M \endlinechar=13 % \catcode123=1 % { \catcode125=2 % } \catcode64=11 % @ \catcode35=6 % # \catcode44=12 % , \catcode45=12 % - \catcode46=12 % . \catcode58=12 % : \catcode94=7 % ^ \def\z{\endgroup}% \def\empty{}\def\space{ }\newlinechar10 \expandafter\let\expandafter\w\csname ver@xintexpr.sty\endcsname \expandafter\let\expandafter\x\csname ver@xintlog.sty\endcsname \expandafter \ifx\csname PackageInfo\endcsname\relax \def\y#1#2{\immediate\write-1{Package #1 Info:^^J% \space\space\space\space#2.}}% \else \def\y#1#2{\PackageInfo{#1}{#2}}% \fi \expandafter \ifx\csname numexpr\endcsname\relax \y{xintlog}{\numexpr not available, aborting input}% \aftergroup\endinput \else \ifx\w\relax % xintexpr.sty not yet loaded. \y{xintlog}% {Loading should be via \ifx\x\empty\string\usepackage{xintexpr.sty} \else\string\input\space xintexpr.sty \fi rather, aborting}% \aftergroup\endinput \else \ifx\x\relax % first loading (initiated from xintexpr.sty) \else \ifx\x\empty % LaTeX first loading, \ProvidesPackage not yet seen \else \y{xintlog}{Already loaded, aborting}% \aftergroup\endinput \fi \fi \fi \fi \z% \xintexprSafeCatcodes\catcode`_ 11 \XINT_providespackage \ProvidesPackage{xintlog}% [2019/04/05 1.3e Logarithms and exponentials for xintexpr (JFB)]% \ifdefined\RequirePackage \RequirePackage{poormanlog}% \else \input poormanlog.tex \fi \xintexprRestoreCatcodes\csname XINT_setcatcodes\endcsname\catcode`\! 11 \def\xintLog#1{\xintMul{\PoorManLogBaseTen{#1}}{23025850923[-10]}}% \def\XINTinFloatLog#1{\XINTinFloatMul{\PoorManLogBaseTen{#1}}{23025850923[-10]}}% \def\xintExp#1{\PoorManPowerOfTen{\xintMul{#1}{434294481903[-12]}}}% \def\XINTinFloatExp#1{\PoorManPowerOfTen{\XINTinFloatMul{#1}{434294481903[-12]}}}% \def\XINT_expr_func_log #1#2#3% {% \expandafter #1\expandafter #2\csname.=% \XINT:NEhook:one\xintLog{\XINT_expr_unlock #3}\endcsname }% \def\XINT_flexpr_func_log #1#2#3% {% \expandafter #1\expandafter #2\csname.=% \XINT:NEhook:one\XINTinFloatLog{\XINT_expr_unlock #3}\endcsname }% \def\XINT_expr_func_exp #1#2#3% {% \expandafter #1\expandafter #2\csname.=% \XINT:NEhook:one\xintExp{\XINT_expr_unlock #3}\endcsname }% \def\XINT_flexpr_func_exp #1#2#3% {% \expandafter #1\expandafter #2\csname.=% \XINT:NEhook:one\XINTinFloatExp{\XINT_expr_unlock #3}\endcsname }% \def\XINT_expr_func_pow #1#2#3% {% \expandafter #1\expandafter #2\csname.=% \expandafter\XINT:NEhook:twosp \romannumeral`&&@\XINT_expr_unlock #3,!\PoorManPower \endcsname }% \let\XINT_flexpr_func_pow\XINT_expr_func_pow \endinput %% %% End of file `xintlog.sty'.