Package org.eclipse.viatra.query.patternlanguage.emf.types

## Class BottomTypeKey

- java.lang.Object
- - org.eclipse.viatra.query.patternlanguage.emf.types.BottomTypeKey

- All Implemented Interfaces:
    `IInputKey`

      public final class BottomTypeKey
      extends java.lang.Object
      implements IInputKey

  A type key representing an erroneous type, e.g. the result of contradictory type constraints. Bottom does not conform to any available type, but is the subclass to all of them.
  Since:
    2.0

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static BottomTypeKey` | `INSTANCE` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `getArity()` | The width of tuples in this relation.
    `java.lang.String` | `getPrettyPrintableName()` | A user-friendly name that can be shown on screen for debug purposes, included in exceptions, etc.
    `java.lang.String` | `getStringID()` | An internal string identifier that can be used to uniquely identify to input key (relevant for distributed applications).
    `boolean` | `isEnumerable()` | Returns true iff instance tuples of the key can be enumerated.

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

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

- - ### Field Detail

    - #### INSTANCE

          public static final BottomTypeKey INSTANCE

  - ### Method Detail

    - #### isEnumerable

          public boolean isEnumerable()

      Description copied from interface: `IInputKey`
      Returns true iff instance tuples of the key can be enumerated.

      If false, the runtime can only test tuple membership in the extensional relation identified by the key, but not enumerate member tuples in general.

      Specified by:
        `isEnumerable` in interface `IInputKey`

    - #### getStringID

          public java.lang.String getStringID()

      Description copied from interface: `IInputKey`
      An internal string identifier that can be used to uniquely identify to input key (relevant for distributed applications).
      Specified by:
        `getStringID` in interface `IInputKey`

    - #### getPrettyPrintableName

          public java.lang.String getPrettyPrintableName()

      Description copied from interface: `IInputKey`
      A user-friendly name that can be shown on screen for debug purposes, included in exceptions, etc.
      Specified by:
        `getPrettyPrintableName` in interface `IInputKey`

    - #### getArity

          public int getArity()

      Description copied from interface: `IInputKey`
      The width of tuples in this relation.
      Specified by:
        `getArity` in interface `IInputKey`