\AtEndOfClass
\AtEndOfClass
ist eine LaTeX-Kern-Anweisung für Klassenautoren, um Code am Ende der Klassendatei auszuführen.
Inhaltsverzeichnis
Verwendung
Syntax
\AtEndOfClass{Code}
Parameter
{Code}
-
- Der
Code
, der nach dem vollständigen Lesen der aktuellen Klassendatei ausgeführt werden soll.
- Der
Beschreibung
Die Anweisung ist ausschließlich für Klassenautoren gedacht. Wird die Anweisung innerhalb einer Klasse (also innerhalb der Datei einer Klasse) verwendet, so wird der angegebene Code
erst nach dem vollständigen Lesen der Klassendatei expandiert und ausgeführt. Gibt es mehrere solcher Anweisungen, so wird ihr Code
in der Reihenfolge der Aufrufe sowohl expandiert als auch ausgeführt. Nichts desto trotz erfolgt die Ausführung noch quasi im Kontext der Klasse. Insbesondere sind \@currname
und \@currext
zu diesem Zeitpunkt noch gültig.
Im Gegensatz zu vergleichbaren Anweisungen wie \AtBeginDocument
oder \AtEndDocument
ist eine Schachtelung bei dieser Anweisung nicht vorgesehen. Ein Aufruf außerhalb einer Klasse ergibt keinen Fehler, ist aber auch nicht sinnvoll. Da \AtEndOfClass
jedoch intern mit \AtEndOfPackage
identisch ist, ist es innerhalb eines Pakets gleichbedeutend mit dem Aufruf von \AtEndOfPackage
. Diesen Umstand auszunutzen und innerhalb eines Pakets \AtEndOfClass
statt \AtEndOfPackage
zu verwenden oder umgekehrt, sollte dennoch vermieden werden, da dieser Umstand nicht offiziell dokumentiert ist.
Fehlermeldungen
LaTeX Error: Can be used only in preamble.
-
- Die Fehlermeldung tritt auf, wenn
\AtEndOfClass
nach\begin{document}
aufgerufen wird.
- Die Fehlermeldung tritt auf, wenn
Beispiele
Die Anweisung kann beispielsweise verwendet werden, um aus den Optionen heraus eine Anweisung, die erst später in der Klasse definiert wird, am Ende der Klasse umzudefinieren. Ein Code-Beispiel für die Verwendung existiert derzeit bewusst nicht.
Verwandte Befehle
\AtBeginDocument
, \AtEndDocument
, \AtEndOfPackage
, \AtBeginDvi
, \AfterClass
(Paket scrlfile), \AfterPackage
(Paket scrlfile).
Verweise
Die Anweisung ist in den LaTeX-Quellen in Datei ltclass.dtx definiert und zusätzlich zu source2e.pdf in „LaTeX2ε for class and package writers” dokumentiert.