Class Overwithdelims

  extended byde.dante.extex.interpreter.type.AbstractCode
      extended byde.dante.extex.interpreter.primitives.math.AbstractMathCode
          extended byde.dante.extex.interpreter.primitives.math.delimiter.AbstractTeXDelimiter
              extended byde.dante.extex.interpreter.primitives.math.fraction.Overwithdelims
All Implemented Interfaces:
Code, Localizable,

public class Overwithdelims
extends AbstractTeXDelimiter

This class provides an implementation for the primitive \overwithdelims.

The Primitive \overwithdelims

The math primitive \over arranges that the material in the math group before it is typeset above the material after the primitive. The two parts are separated by a line of the default width which is taken from the font parameters. If the width is less than 0pt then no rule is drawn but the given height is left blank. The construction is enclosed in the delimiters given

If several primitives of type \above, \abovewithdelims, \atop, \atopwithdelims, \over, or \overwithdelims are encountered in the same math group then the result is ambiguous and an error is raised.

If the primitive is used outside of math mode then an error is raised.


The formal description of this primitive is the following:
       → ⟨math material⟩ \overwithdelims ... ⟨math material⟩ 


    {a\overwithdelims\delimiter"123456\delimiter"123456 b}  

$Revision: 1.17 $
Gerd Neugebauer
See Also:
Serialized Form

Field Summary
protected static long serialVersionUID
          The constant serialVersionUID contains the id for serialization.
Constructor Summary
Overwithdelims(java.lang.String name)
          Creates a new object.
Method Summary
 void execute(Flags prefix, Context context, TokenSource source, Typesetter typesetter)
          This method takes the first token and executes it.
Methods inherited from class de.dante.extex.interpreter.primitives.math.delimiter.AbstractTeXDelimiter
delimiterToLong, getMyLocalizer, newMathDelimiter, parseDelimiter
Methods inherited from class de.dante.extex.interpreter.primitives.math.AbstractMathCode
Methods inherited from class de.dante.extex.interpreter.type.AbstractCode
enableLocalization, getLocalizer, getName, isIf, isOuter, printable, printableControlSequence, readResolve, setName, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Field Detail


protected static final long serialVersionUID
The constant serialVersionUID contains the id for serialization.

See Also:
Constant Field Values
Constructor Detail


public Overwithdelims(java.lang.String name)
Creates a new object.

name - the name for tracing and debugging
Method Detail


public void execute(Flags prefix,
                    Context context,
                    TokenSource source,
                    Typesetter typesetter)
             throws InterpreterException
Description copied from interface: Code
This method takes the first token and executes it. The result is placed on the stack. This operation might have side effects. To execute a token it might be necessary to consume further tokens.

Specified by:
execute in interface Code
execute in class AbstractCode
See Also:
Code.execute( de.dante.extex.interpreter.Flags, de.dante.extex.interpreter.context.Context, de.dante.extex.interpreter.TokenSource, de.dante.extex.typesetter.Typesetter)