.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "LaTeXML::Core::Definition 3pm" .TH LaTeXML::Core::Definition 3pm 2024-02-27 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME "LaTeXML::Core::Definition" \- Control sequence definitions. .SH DESCRIPTION .IX Header "DESCRIPTION" This abstract class represents the various executables corresponding to control sequences. See LaTeXML::Package for the most convenient means to create them. .PP It extends LaTeXML::Common::Object. .SS Methods .IX Subsection "Methods" .ie n .IP """$token = $defn\->getCS;""" 4 .el .IP "\f(CW$token = $defn\->getCS;\fR" 4 .IX Item "$token = $defn->getCS;" Returns the (main) token that is bound to this definition. .ie n .IP """$string = $defn\->getCSName;""" 4 .el .IP "\f(CW$string = $defn\->getCSName;\fR" 4 .IX Item "$string = $defn->getCSName;" Returns the string form of the token bound to this definition, taking into account any alias for this definition. .ie n .IP """$defn\->readArguments($gullet);""" 4 .el .IP \f(CW$defn\->readArguments($gullet);\fR 4 .IX Item "$defn->readArguments($gullet);" Reads the arguments for this \f(CW$defn\fR from the \f(CW$gullet\fR, returning a list of LaTeXML::Core::Tokens. .ie n .IP """$parameters = $defn\->getParameters;""" 4 .el .IP "\f(CW$parameters = $defn\->getParameters;\fR" 4 .IX Item "$parameters = $defn->getParameters;" Return the \f(CW\*(C`LaTeXML::Core::Parameters\*(C'\fR object representing the formal parameters of the definition. .ie n .IP """@tokens = $defn\->invocation(@args);""" 4 .el .IP "\f(CW@tokens = $defn\->invocation(@args);\fR" 4 .IX Item "@tokens = $defn->invocation(@args);" Return the tokens that would invoke the given definition with the provided arguments. This is used to recreate the TeX code (or it's equivalent). .ie n .IP """$defn\->invoke;""" 4 .el .IP \f(CW$defn\->invoke;\fR 4 .IX Item "$defn->invoke;" Invoke the action of the \f(CW$defn\fR. For expandable definitions, this is done in the Gullet, and returns a list of LaTeXML::Core::Tokens. For primitives, it is carried out in the Stomach, and returns a list of LaTeXML::Core::Boxes. For a constructor, it is also carried out by the Stomach, and returns a LaTeXML::Core::Whatsit. That whatsit will be responsible for constructing the XML document fragment, when the LaTeXML::Core::Document invokes \f(CW\*(C`$whatsit\-\*(C'\fRbeAbsorbed($document);>. .Sp Primitives and Constructors also support before and after daemons, lists of subroutines that are executed before and after digestion. These can be useful for changing modes, etc. .SH "SEE ALSO" .IX Header "SEE ALSO" LaTeXML::Core::Definition::Expandable, LaTeXML::Core::Definition::Conditional, LaTeXML::Core::Definition::Primitive, LaTeXML::Core::Definition::Register, LaTeXML::Core::Definition::CharDef and LaTeXML::Core::Definition::Constructor. .SH AUTHOR .IX Header "AUTHOR" Bruce Miller .SH COPYRIGHT .IX Header "COPYRIGHT" Public domain software, produced as part of work done by the United States Government & not subject to copyright in the US.