de.dante.extex.interpreter.primitives.typesetter.mark
Class Mark

java.lang.Object
  extended byde.dante.extex.interpreter.type.AbstractCode
      extended byde.dante.extex.interpreter.primitives.typesetter.mark.AbstractMarkCode
          extended byde.dante.extex.interpreter.primitives.typesetter.mark.Marks
              extended byde.dante.extex.interpreter.primitives.typesetter.mark.Mark
All Implemented Interfaces:
Code, Localizable, java.io.Serializable

public class Mark
extends Marks

This class provides an implementation for the primitive \mark.

The Primitive \mark

The primitive \mark places its argument as a mark node on the current node list. The argument is expanded during this operation as in \edef.

The tokens are stored in the current node list. They are not affected by grouping in any way.

Suppose we have several pages. Page 1 contains no mark. Page 2 contains the marks a and b. Page 3 does not contain any marks. Page 4 contains the mark c and page 5 does not contain any marks. The marks and the expansion text of the primitives \topmark, \firstmark, and \botmark are shown in the table below.

on page 1 on page 2 on page 3 on page 4 on page 5
marks \mark{a}
\mark{b}
\mark{c}
\topmark a b b c
\firstmark a b c c
\botmark b b c c

Syntax

The formal description of this primitive is the following:
    ⟨mark⟩
      → \mark ⟨expanded tokens⟩  

Examples

    \mark{abc}  

Version:
$Revision: 1.19 $
Author:
Gerd Neugebauer
See Also:
Serialized Form

Field Summary
protected static long serialVersionUID
          The constant serialVersionUID contains the id for serialization.
 
Constructor Summary
Mark(java.lang.String name)
          Creates a new object.
 
Method Summary
protected  java.lang.String getKey(Context context, TokenSource source, Typesetter typesetter)
          Get the key for this mark.
 
Methods inherited from class de.dante.extex.interpreter.primitives.typesetter.mark.Marks
execute
 
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

serialVersionUID

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

See Also:
Constant Field Values
Constructor Detail

Mark

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

Parameters:
name - the name for debugging
Method Detail

getKey

protected java.lang.String getKey(Context context,
                                  TokenSource source,
                                  Typesetter typesetter)
                           throws InterpreterException
Description copied from class: AbstractMarkCode
Get the key for this mark.

Overrides:
getKey in class AbstractMarkCode
Parameters:
context - the interpreter context
source - the source for new tokens
typesetter - the typesetter
Returns:
the key for the mark primitive
Throws:
InterpreterException - in case of an error
See Also:
AbstractMarkCode.getKey( de.dante.extex.interpreter.context.Context, de.dante.extex.interpreter.TokenSource, de.dante.extex.typesetter.Typesetter)