com.io7m.jpra.compiler.core.checker

## Class JPRACheckerStandardCapabilities

- java.lang.Object
- - com.io7m.jpra.compiler.core.checker.JPRACheckerStandardCapabilities

- All Implemented Interfaces:
    JPRACheckerCapabilitiesType

      public final class JPRACheckerStandardCapabilities
      extends Object
      implements JPRACheckerCapabilitiesType

  The default implementation of the `JPRACheckerCapabilitiesType` interface, specifying the minimum capabilities that all backends are required to support.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getMatrixFloatSizeSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getMatrixIntegerSizeSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jfunctional.Pair<com.io7m.jranges.RangeInclusiveB,com.io7m.jranges.RangeInclusiveB>>` | `getMatrixSizeElementsSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getPackedIntegerSizeBitsSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getPackedSizeBitsSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getRecordFloatSizeBitsSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getRecordIntegerSizeBitsSupported()`
    `com.gs.collections.api.set.ImmutableSet<String>` | `getStringEncodingsSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getVectorFloatSizeSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getVectorIntegerSizeSupported()`
    `com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB>` | `getVectorSizeSupported()`
    `boolean` | `isMatrixFloatSizeSupported(BigInteger size)`
    `boolean` | `isMatrixIntegerSizeSupported(BigInteger size)`
    `boolean` | `isMatrixSizeElementsSupported(BigInteger width, BigInteger height)`
    `boolean` | `isPackedIntegerSizeBitsSupported(BigInteger size)`
    `boolean` | `isPackedSizeBitsSupported(BigInteger size)`
    `boolean` | `isRecordFloatSizeBitsSupported(BigInteger size)`
    `boolean` | `isRecordIntegerSizeBitsSupported(BigInteger size)`
    `boolean` | `isStringEncodingSupported(String encoding)`
    `boolean` | `isVectorFloatSizeSupported(BigInteger size)`
    `boolean` | `isVectorIntegerSizeSupported(BigInteger size)`
    `boolean` | `isVectorSizeElementsSupported(BigInteger size)`
    `static JPRACheckerCapabilitiesType` | `newCapabilities()`

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

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

- - ### Method Detail

    - #### newCapabilities

          public static JPRACheckerCapabilitiesType newCapabilities()

      Returns:
        New capabilities

    - #### getRecordIntegerSizeBitsSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getRecordIntegerSizeBitsSupported()

      Specified by:
        `getRecordIntegerSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `integer` sizes in records

    - #### isRecordIntegerSizeBitsSupported

          public boolean isRecordIntegerSizeBitsSupported(BigInteger size)

      Specified by:
        `isRecordIntegerSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `integer` types of the given size are supported in records

    - #### isRecordFloatSizeBitsSupported

          public boolean isRecordFloatSizeBitsSupported(BigInteger size)

      Specified by:
        `isRecordFloatSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `float` types of the given size are supported in records

    - #### isVectorSizeElementsSupported

          public boolean isVectorSizeElementsSupported(BigInteger size)

      Specified by:
        `isVectorSizeElementsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in elements
      Returns:
        `true` iff vectors of the given size are supported

    - #### isMatrixSizeElementsSupported

          public boolean isMatrixSizeElementsSupported(BigInteger width,
                                                       BigInteger height)

      Specified by:
        `isMatrixSizeElementsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `width` - The number of matrix columns
        `height` - The number of matrix rows
      Returns:
        `true` iff matrices of the given size are supported in records

    - #### getRecordFloatSizeBitsSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getRecordFloatSizeBitsSupported()

      Specified by:
        `getRecordFloatSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `float` sizes in records

    - #### isStringEncodingSupported

          public boolean isStringEncodingSupported(String encoding)

      Specified by:
        `isStringEncodingSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `encoding` - The encoding
      Returns:
        `true` iff the given string encoding is supported

    - #### getStringEncodingsSupported

          public com.gs.collections.api.set.ImmutableSet<String> getStringEncodingsSupported()

      Specified by:
        `getStringEncodingsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported string encodings

    - #### getVectorSizeSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getVectorSizeSupported()

      Specified by:
        `getVectorSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported vector sizes

    - #### isVectorIntegerSizeSupported

          public boolean isVectorIntegerSizeSupported(BigInteger size)

      Specified by:
        `isVectorIntegerSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `integer` types of the given size are supported in vectors

    - #### getVectorIntegerSizeSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getVectorIntegerSizeSupported()

      Specified by:
        `getVectorIntegerSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `integer` sizes in vectors

    - #### isVectorFloatSizeSupported

          public boolean isVectorFloatSizeSupported(BigInteger size)

      Specified by:
        `isVectorFloatSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `float` types of the given size are supported in vectors

    - #### getVectorFloatSizeSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getVectorFloatSizeSupported()

      Specified by:
        `getVectorFloatSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `float` sizes in vectors

    - #### getMatrixSizeElementsSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jfunctional.Pair<com.io7m.jranges.RangeInclusiveB,com.io7m.jranges.RangeInclusiveB>> getMatrixSizeElementsSupported()

      Specified by:
        `getMatrixSizeElementsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported matrix sizes

    - #### isMatrixIntegerSizeSupported

          public boolean isMatrixIntegerSizeSupported(BigInteger size)

      Specified by:
        `isMatrixIntegerSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `integer` types of the given size are supported in matrices

    - #### getMatrixIntegerSizeSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getMatrixIntegerSizeSupported()

      Specified by:
        `getMatrixIntegerSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `integer` sizes in matrices

    - #### isMatrixFloatSizeSupported

          public boolean isMatrixFloatSizeSupported(BigInteger size)

      Specified by:
        `isMatrixFloatSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `float` types of the given size are supported in matrices

    - #### getMatrixFloatSizeSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getMatrixFloatSizeSupported()

      Specified by:
        `getMatrixFloatSizeSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `float` sizes in matrices

    - #### getPackedIntegerSizeBitsSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getPackedIntegerSizeBitsSupported()

      Specified by:
        `getPackedIntegerSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `integer` sizes in `packed` types

    - #### isPackedIntegerSizeBitsSupported

          public boolean isPackedIntegerSizeBitsSupported(BigInteger size)

      Specified by:
        `isPackedIntegerSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `integer` types of the given size are supported in `packed` types

    - #### getPackedSizeBitsSupported

          public com.gs.collections.api.list.ImmutableList<com.io7m.jranges.RangeInclusiveB> getPackedSizeBitsSupported()

      Specified by:
        `getPackedSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Returns:
        The set of supported `packed` type sizes

    - #### isPackedSizeBitsSupported

          public boolean isPackedSizeBitsSupported(BigInteger size)

      Specified by:
        `isPackedSizeBitsSupported` in interface `JPRACheckerCapabilitiesType`
      Parameters:
        `size` - The size in bits
      Returns:
        `true` iff `packed` types of the given size are supported

Copyright © 2015 <code@io7m.com> http://io7m.com