net.sf.saxon.trace

## Class ExpressionPresenter

- java.lang.Object
- - net.sf.saxon.trace.ExpressionPresenter

-     public class ExpressionPresenter
      extends Object

  This class handles the display of an abstract expression tree in an XML format with some slight resemblence to XQueryX

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExpressionPresenter(Configuration config)` Make an ExpressionPresenter that writes indented output to the standard error output destination of the Configuration
    `ExpressionPresenter(Configuration config, OutputStream out)` Make an ExpressionPresenter that writes indented output to a specified output stream
    `ExpressionPresenter(Configuration config, Receiver receiver)` Make an ExpressionPresenter for a given Configuration using a user-supplied Receiver to accept the output

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Close the output
    `static Receiver` | `defaultDestination(Configuration config, OutputStream out)` Make a receiver, using default output properties, with serialized output going to a specified OutputStream
    `void` | `emitAttribute(String name, String value)` Output an attribute node
    `int` | `endElement()` End an element in the expression tree
    `void` | `endSubsidiaryElement()` End a child element in the output
    `Configuration` | `getConfiguration()` Get the Saxon configuration
    `NamePool` | `getNamePool()` Get the name pool
    `TypeHierarchy` | `getTypeHierarchy()` Get the type hierarchy cache
    `static Properties` | `makeDefaultProperties()` Make a Properties object containing defaulted serialization attributes for the expression tree
    `int` | `startElement(String name)` Start an element
    `void` | `startSubsidiaryElement(String name)` Start a child element in the output

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ExpressionPresenter

          public ExpressionPresenter(Configuration config)

      Make an ExpressionPresenter that writes indented output to the standard error output destination of the Configuration
      Parameters:
        `config` - the Saxon configuration

    - #### ExpressionPresenter

          public ExpressionPresenter(Configuration config,
                             OutputStream out)

      Make an ExpressionPresenter that writes indented output to a specified output stream
      Parameters:
        `config` - the Saxon configuration
        `out` - the output stream

    - #### ExpressionPresenter

          public ExpressionPresenter(Configuration config,
                             Receiver receiver)

      Make an ExpressionPresenter for a given Configuration using a user-supplied Receiver to accept the output
      Parameters:
        `config` - the Configuration
        `receiver` - the user-supplied Receiver

  - ### Method Detail

    - #### defaultDestination

          public static Receiver defaultDestination(Configuration config,
                                    OutputStream out)
                                             throws XPathException

      Make a receiver, using default output properties, with serialized output going to a specified OutputStream
      Parameters:
        `config` - the Configuration
        `out` - the OutputStream
      Returns:
        a Receiver that directs serialized output to this output stream
      Throws:
        `XPathException`

    - #### makeDefaultProperties

          public static Properties makeDefaultProperties()

      Make a Properties object containing defaulted serialization attributes for the expression tree
      Returns:
        a default set of properties

    - #### startElement

          public int startElement(String name)

      Start an element
      Parameters:
        `name` - the name of the element
      Returns:
        the depth of the tree before this element: for diagnostics, this can be compared with the value returned by endElement

    - #### emitAttribute

          public void emitAttribute(String name,
                           String value)

      Output an attribute node
      Parameters:
        `name` - the name of the attribute
        `value` - the value of the attribute

    - #### endElement

          public int endElement()

      End an element in the expression tree
      Returns:
        the depth of the tree after ending this element. For diagnostics, this can be compared with the value returned by startElement()

    - #### startSubsidiaryElement

          public void startSubsidiaryElement(String name)

      Start a child element in the output
      Parameters:
        `name` - the name of the child element

    - #### endSubsidiaryElement

          public void endSubsidiaryElement()

      End a child element in the output

    - #### close

          public void close()

      Close the output

    - #### getConfiguration

          public Configuration getConfiguration()

      Get the Saxon configuration
      Returns:
        the Saxon configuration

    - #### getNamePool

          public NamePool getNamePool()

      Get the name pool
      Returns:
        the name pool

    - #### getTypeHierarchy

          public TypeHierarchy getTypeHierarchy()

      Get the type hierarchy cache
      Returns:
        the type hierarchy cache

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.