Package net.sf.saxon.trans

## Class SymbolicName

- java.lang.Object
- - net.sf.saxon.trans.SymbolicName

- Direct Known Subclasses:
    `SymbolicName.F`

      public class SymbolicName
      extends java.lang.Object

  The symbolic name of a component consists of the component kind (e.g. function, template, attribute set), the QName acting as the name of the template, function etc, and in the case of functions, the arity

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `SymbolicName.F` | Subclass of SymbolicName used for function names (including the arity)

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SymbolicName​(int kind, StructuredQName name)` | Create a symbolic name for a component other than a function.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object obj)` | Indicates whether some other object is "equal to" this one.
    `int` | `getComponentKind()` | Get the kind of component, for example `StandardNames.XSL_FUNCTION` or `StandardNames.XSL_VARIABLE`
    `StructuredQName` | `getComponentName()` | Get the QName part of the symbolic name of the component
    `java.lang.String` | `getShortName()` | Get a short name suitable for use in messages
    `int` | `hashCode()` | Returns a hash code value for the object.
    `java.lang.String` | `toString()` | Get the name as a string.

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SymbolicName

          public SymbolicName​(int kind,
                              StructuredQName name)

      Create a symbolic name for a component other than a function.
      Parameters:
        `kind` - the component kind, for example `StandardNames.XSL_TEMPLATE`
        `name` - the QName that is the "name" of the component

  - ### Method Detail

    - #### hashCode

          public int hashCode()

      Returns a hash code value for the object.
      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals​(java.lang.Object obj)

      Indicates whether some other object is "equal to" this one.
      Overrides:
        `equals` in class `java.lang.Object`

    - #### getComponentKind

          public int getComponentKind()

      Get the kind of component, for example `StandardNames.XSL_FUNCTION` or `StandardNames.XSL_VARIABLE`
      Returns:
        the kind of component identified by this symbolic name

    - #### getComponentName

          public StructuredQName getComponentName()

      Get the QName part of the symbolic name of the component
      Returns:
        the QName part of the name

    - #### toString

          public java.lang.String toString()

      Get the name as a string.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        a string typically in the form "template p:my-template" or "function f:my-function#2"

    - #### getShortName

          public java.lang.String getShortName()

      Get a short name suitable for use in messages