@mathjax/src
    Preparing search index...

    Implements the MmlInferredMrow node class (subclass of MmlMrow)

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _core: number = null

    The index of the core child, when acting as an embellish mrow

    attributes: Attributes

    This node's attributes

    childNodes: MmlNode[]

    Child nodes are MmlNodes (special case of Nodes).

    factory: MmlFactory

    The node factory is an MmlFactory

    parent: MmlNode

    The parent is an MmlNode

    prevClass: number = null

    The TeX class for the preceding node

    prevLevel: number = null

    The scriptlevel of the preceding node

    properties: PropertyList = {}

    The properties for this node

    texclass: number = null

    The TeX class of this node (obtained via texClass below)

    alwaysInherit: { [name: string]: boolean } = ...

    This lists the attributes that should always be inherited, even when there is no default value for the attribute.

    defaults: PropertyList = MmlMrow.defaults
    noInherit: {
        [node1: string]: { [node2: string]: { [attribute: string]: boolean } };
    } = ...

    This lists properties that do NOT get inherited between specific kinds of nodes. The outer keys are the node kinds that are being inherited FROM, while the second level of keys are the nodes that INHERIT the values. Any property appearing in the innermost list is NOT inherited by the pair.

    For example, an mpadded element will not inherit a width attribute from an mstyle node.

    stopInherit: { [node: string]: { [attribute: string]: boolean } } = ...

    This lists the attributes that should not be propagated to child nodes of the given kind of node (so that table attributes don't bleed through to nested tables -- see issue mathjax/MathJax#2890).

    verifyDefaults: PropertyList = ...

    This is the list of options for the verifyTree() method

    Accessors

    • get arity(): number

      Returns number

      The number of children allowed, or Infinity for any number, or -1 for when an inferred row is needed for the children. Special case is 1, meaning at least one (other numbers mean exactly that many).

    • get isEmbellished(): boolean

      An mrow is embellished if it contains one embellished operator and any number of space-like nodes

      Returns boolean

    • get linebreakAlign(): string

      Returns string

      the attribute used to seed the indentalign value in linebreak containers (overridden in subclasses when needed)

    • get linebreakContainer(): boolean

      Returns boolean

      true if this is a node that supports linebreaks in its children

    Methods

    • Set the nodes inherited attributes based on the attributes of the given node (used for creating extra nodes in the tree after setInheritedAttributes has already run)

      Parameters

      • node: MmlNode

        The node whose attributes are to be used as a template

      Returns void

    • Replace the current node with an error message (or the name of the node)

      Parameters

      • message: string

        The error message to use

      • options: PropertyList

        The options telling how much to verify

      • short: boolean = false

        True means use just the kind if not using full errors

      Returns MmlNode

      The constructed merror

    • Apply inherited attributes to all children (Some classes override this to handle changes in displaystyle and scriptlevel)

      Parameters

      • attributes: AttributeList

        The list of inheritable attributes (with the node kinds from which they came)

      • display: boolean

        The displaystyle to inherit

      • level: number

        The scriptlevel to inherit

      • prime: boolean

        The TeX prime style to inherit (T vs. T', etc).

      Returns void

    • Sets the inherited propertis for this node, and pushes inherited properties to the children

      For each inheritable attribute: If the node has a default for this attribute, try to inherit it but check if the noInherit object prevents that. If the node doesn't have an explicit displaystyle, inherit it If the node doesn't have an explicit scriptstyle, inherit it If the prime style is true, set it as a property (it is not a MathML attribute) Check that the number of children is correct Reset the indent attributes for linebreak containers Finally, push any inherited attributes to the children.

      Parameters

      • attributes: AttributeList = {}
      • display: boolean = false
      • level: number = 0
      • prime: boolean = false

      Returns void

    • Verify that all the attributes are valid (i.e., have defaults)

      Parameters

      • options: PropertyList

        The options telling how much to verify

      Returns void

    • Verify the attributes, and that there are the right number of children. Then verify the children.

      Parameters

      • options: PropertyList = null

        The options telling how much to verify

      Returns void