---
name: "LaTeXML::Core::Definition"
section: "3pm"
platform: "linux"
package: "latexml"
version: "0.8.8-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/LaTeXML::Core::Definition"
---

# LaTeXML::Core::Definition(3pm)

Control sequence definitions.

## NAME

"LaTeXML::Core::Definition"  - Control sequence definitions.

## DESCRIPTION

This abstract class represents the various executables corresponding to control sequences. See LaTeXML::Package for the most convenient means to create them.

It extends LaTeXML::Common::Object.

### Methods

- "$token = $defn-\>getCS;"

  Returns the (main) token that is bound to this definition.

- "$string = $defn-\>getCSName;"

  Returns the string form of the token bound to this definition, taking into account any alias for this definition.

- "$defn-\>readArguments($gullet);"

  Reads the arguments for this `$defn` from the `$gullet`, returning a list of LaTeXML::Core::Tokens.

- "$parameters = $defn-\>getParameters;"

  Return the `"LaTeXML::Core::Parameters"` object representing the formal parameters of the definition.

- "@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).

- "$defn-\>invoke;"

  Invoke the action of the `$defn`.  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 `"$whatsit-"`beAbsorbed($document);\>.

  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.

## 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.

## AUTHOR

Bruce Miller \<bruce.miller@nist.gov\>

## COPYRIGHT

Public domain software, produced as part of work done by the United States Government & not subject to copyright in the US.
