epic.parser.projections

GrammarRefinements

final case class GrammarRefinements[C, F](labels: ProjectionIndexer[C, F], rules: ProjectionIndexer[Rule[C], Rule[F]]) extends Product with Serializable

Handles the mapping between a coarser grammar and a finer grammar. (For example, an xbar grammar and an xbar grammar with latent variables.) It mostly just aggregates two epic.projections.ProjectionIndexers, one for labels and one for rules. It also provides convenience methods for, e.g., getting all rule refinements that have a given parent refinment.

Refined symbols and rules are given a "local" integer index that is specific to a coarse symbol. For example, NP-4 might have "global index" 37 for all symbols, but will have NP-specific local index 4. Analogously, NP-4 -> NP-3 PP-2 will have a NP -> NP PP specific local index.

Annotations
@SerialVersionUID( 2L )
Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GrammarRefinements
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GrammarRefinements(labels: ProjectionIndexer[C, F], rules: ProjectionIndexer[Rule[C], Rule[F]])

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def coarseRulesGivenParentRef(parent: Int, parentRef: Int): Array[Int]

  9. def compose[F2](other: GrammarRefinements[F, F2]): GrammarRefinements[C, F2]

  10. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  11. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. val labels: ProjectionIndexer[C, F]

  15. def leftChildRefinementsCompatibleWithRule(r: Int): Array[Int]

  16. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  19. def parentRefinement(r: Int, ref: Int): Int

    Gives the localized refinement of each parent

  20. def parentRefinementsCompatibleWithRule(r: Int): Array[Int]

  21. def rightChildRefinementsCompatibleWithRule(r: Int): Array[Int]

  22. def ruleRefinementsCompatibleWithChildRef(r: Int, childRef: Int): Array[Int]

  23. def ruleRefinementsCompatibleWithLeftRef(r: Int, leftChildRef: Int): Array[Int]

  24. def ruleRefinementsCompatibleWithParentRef(r: Int, parentRef: Int): Array[Int]

  25. def ruleRefinementsCompatibleWithRightRef(r: Int, rightChildRef: Int): Array[Int]

  26. val rules: ProjectionIndexer[Rule[C], Rule[F]]

  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  28. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped