Scala 2
API Specification

This document is the API specification for Scala 2.

Class Summary
`abstract` | `class` Base Basic regular expressions.
`abstract` | `class` PointedHedgeExp pointed regular hedge expressions, a useful subclass of regular hedge expressions.
| `class` SyntaxError This runtime exception is thrown if an attempt to instantiate a syntactically incorrect expression is detected.
`abstract` | `class` WordExp This class provides regular word expressions. Users have to instantiate type member `_regexpT <: RegExp` (from class `Base`) and a type member `_labelT <: Label`. Here is a little example:
      import scala.util.regexp._
      import scala.util.automata._
      object MyLang extends WordExp {
        type _regexpT = RegExp
        type _labelT = MyChar

        case class MyChar(c:Char) extends Label
      }
      import MyLang._
      // (a* | b)*
      val rex = Star(Alt(Star(Letter(MyChar('a'))),Letter(MyChar('b'))))
      object MyBerriSethi extends WordBerrySethi {
        override val lang = MyLang
      }
      val nfa = MyBerriSethi.automatonFrom(Sequ(rex), 1)