com.io7m.jpra.compiler.core.pipeline

## Class JPRAPipeline

- java.lang.Object
- - com.io7m.jpra.compiler.core.pipeline.JPRAPipeline

- All Implemented Interfaces:
    JPRAPipelineType

      public final class JPRAPipeline
      extends Object
      implements JPRAPipelineType

  Default implementation of the `JPRAPipelineType` interface.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JPRAPipelineType` | `newPipeline(JPRAParserType in_parser, JPRAResolverType in_resolver, JPRACheckerType in_checker)` Construct a new pipeline.
    `void` | `onEOF(Optional<com.io7m.jlexing.core.LexicalPosition<Path>> lex)` EOF was received.
    `Optional<PackageContextType>` | `onExpression(com.io7m.jsx.SExpressionType e)` An expression was received.

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

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

- - ### Method Detail

    - #### newPipeline

          public static JPRAPipelineType newPipeline(JPRAParserType in_parser,
                                                     JPRAResolverType in_resolver,
                                                     JPRACheckerType in_checker)

      Construct a new pipeline.
      Parameters:
        `in_parser` - The parser
        `in_resolver` - The resolver
        `in_checker` - The type checker
      Returns:
        A new pipeline

    - #### onExpression

          public Optional<PackageContextType> onExpression(com.io7m.jsx.SExpressionType e)
                                                    throws JPRACompilerException

      Description copied from interface: `JPRAPipelineType`
      An expression was received.
      Specified by:
        `onExpression` in interface `JPRAPipelineType`
      Parameters:
        `e` - The expression
      Returns:
        A completed package, if the expression resulted in one
      Throws:
        `JPRACompilerException` - If any of the stages raise an exception

    - #### onEOF

          public void onEOF(Optional<com.io7m.jlexing.core.LexicalPosition<Path>> lex)
                     throws JPRACompilerException

      Description copied from interface: `JPRAPipelineType`
      EOF was received.
      Specified by:
        `onEOF` in interface `JPRAPipelineType`
      Parameters:
        `lex` - The last known lexical position, if any
      Throws:
        `JPRACompilerException` - If any of the stages raise an exception

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