パッケージの一部を宣言するオプションからのマクロ呼び出し

パッケージの一部を宣言するオプションからのマクロ呼び出し

内部でマクロを呼び出す必要がありますDeclareOptionが、私のマクロは後で定義されます(これが主な条件です)。

\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{MyBook}[2014/12/12]
\DeclareOption{llstyle}{\mymacro}
\ProcessOptions\relax


\RequirePackage{titlesec}
\RequirePackage{textcase}

\def\@bookview{
\let\cleardoublepage\clearpage
\renewcommand{\chaptertitlename}{Глава}

\titleformat{\chapter}[display]
{\vspace*{-10ex}\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}
}

\def\mymacro{%
  \@ifclassloaded{book}{\@bookview}{}
  \@ifclassloaded{extbook}{\@bookview}{}
}
\endinput

マクロの定義は後から行われるため、この状況ではエラーが発生します。

答え1

あまり文脈が説明されていないが、おそらく

\DeclareOption{some}{\AtEndOfPackage{\mymacro}}

関連情報