com.io7m.jpra.compiler.java

## Interface JPRAJavaGeneratorType

- All Known Implementing Classes:
    JPRAJavaGenerator

      public interface JPRAJavaGeneratorType

  The type of Java source code generators.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `generatePackedImplementation(TPacked t, OutputStream os)` Generate Java source code for the implementation of a `packed` definition.
    `void` | `generatePackedInterface(TPacked t, OutputStream os)` Generate Java source code for the readable and writable interface of a `packed` definition.
    `void` | `generatePackedInterfaceReadable(TPacked t, OutputStream os)` Generate Java source code for the readable interface of a `packed` definition.
    `void` | `generatePackedInterfaceWritable(TPacked t, OutputStream os)` Generate Java source code for the writable interface of a `packed` definition.
    `void` | `generateRecordImplementation(TRecord t, OutputStream os)` Generate Java source code for the implementation of a `record` definition.
    `void` | `generateRecordInterface(TRecord t, OutputStream os)` Generate Java source code for the readable and writable interface of a `record` definition.
    `void` | `generateRecordInterfaceReadable(TRecord t, OutputStream os)` Generate Java source code for the readable interface of a `record` definition.
    `void` | `generateRecordInterfaceWritable(TRecord t, OutputStream os)` Generate Java source code for the writable interface of a `record` definition.
    `String` | `getPackedImplementationByteBufferedName(TypeName t)`
    `String` | `getPackedInterfaceName(TypeName t)`
    `String` | `getPackedInterfaceReadableName(TypeName t)`
    `String` | `getPackedInterfaceWritableName(TypeName t)`
    `String` | `getRecordImplementationByteBufferedName(TypeName t)`
    `String` | `getRecordInterfaceName(TypeName t)`
    `String` | `getRecordInterfaceReadableName(TypeName t)`
    `String` | `getRecordInterfaceWritableName(TypeName t)`

- - ### Method Detail

    - #### getRecordImplementationByteBufferedName

          String getRecordImplementationByteBufferedName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for a byte-buffered implementation of `t`

    - #### getRecordInterfaceReadableName

          String getRecordInterfaceReadableName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the readable interface of `t`

    - #### getRecordInterfaceWritableName

          String getRecordInterfaceWritableName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the writable interface of `t`

    - #### getRecordInterfaceName

          String getRecordInterfaceName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the readable and writable interface of `t`

    - #### getPackedImplementationByteBufferedName

          String getPackedImplementationByteBufferedName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for a byte-buffered implementation of `t`

    - #### getPackedInterfaceReadableName

          String getPackedInterfaceReadableName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the readable interface of `t`

    - #### getPackedInterfaceWritableName

          String getPackedInterfaceWritableName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the writable interface of `t`

    - #### getPackedInterfaceName

          String getPackedInterfaceName(TypeName t)

      Parameters:
        `t` - The type name
      Returns:
        The class name that will result for the readable and writable interface of `t`

    - #### generateRecordImplementation

          void generateRecordImplementation(TRecord t,
                                            OutputStream os)
                                     throws IOException

      Generate Java source code for the implementation of a `record` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generateRecordInterfaceReadable

          void generateRecordInterfaceReadable(TRecord t,
                                               OutputStream os)
                                        throws IOException

      Generate Java source code for the readable interface of a `record` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generateRecordInterfaceWritable

          void generateRecordInterfaceWritable(TRecord t,
                                               OutputStream os)
                                        throws IOException

      Generate Java source code for the writable interface of a `record` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generateRecordInterface

          void generateRecordInterface(TRecord t,
                                       OutputStream os)
                                throws IOException

      Generate Java source code for the readable and writable interface of a `record` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generatePackedImplementation

          void generatePackedImplementation(TPacked t,
                                            OutputStream os)
                                     throws IOException

      Generate Java source code for the implementation of a `packed` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generatePackedInterfaceReadable

          void generatePackedInterfaceReadable(TPacked t,
                                               OutputStream os)
                                        throws IOException

      Generate Java source code for the readable interface of a `packed` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generatePackedInterfaceWritable

          void generatePackedInterfaceWritable(TPacked t,
                                               OutputStream os)
                                        throws IOException

      Generate Java source code for the writable interface of a `packed` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

    - #### generatePackedInterface

          void generatePackedInterface(TPacked t,
                                       OutputStream os)
                                throws IOException

      Generate Java source code for the readable and writable interface of a `packed` definition.
      Parameters:
        `t` - The type
        `os` - The output stream
      Throws:
        `IOException` - On I/O errors

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