org.tresql.compiling

Compiler

trait Compiler extends QueryParsers

Self Type
Compiler
Linear Supertypes
QueryParsers, ExpTransformer, MemParsers, JavaTokenParsers, RegexParsers, Parsers, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Compiler
  2. QueryParsers
  3. ExpTransformer
  4. MemParsers
  5. JavaTokenParsers
  6. RegexParsers
  7. Parsers
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class ArrayDef(cols: List[ColDef[_]]) extends RowDefBase with Product with Serializable

  2. case class BinSelectDef(leftOperand: SelectDefBase, rightOperand: SelectDefBase, exp: BinOp) extends SelectDefBase with Product with Serializable

  3. case class BracesSelectDef(exp: SelectDefBase) extends SelectDefBase with Product with Serializable

  4. case class ChildDef(exp: Exp) extends TypedExp[ChildDef] with Product with Serializable

  5. case class ColDef[T](name: String, col: Exp, typ: Manifest[T]) extends TypedExp[T] with Product with Serializable

  6. trait DMLDefBase extends SQLDefBase

  7. case class DeleteDef(tables: List[TableDef], exp: Delete) extends DMLDefBase with Product with Serializable

  8. type Elem = Char

    Definition Classes
    RegexParsers → Parsers
  9. case class Error extends NoSuccess with Product with Serializable

    Definition Classes
    Parsers
  10. case class Failure extends NoSuccess with Product with Serializable

    Definition Classes
    Parsers
  11. case class FunAsTableDef[T](exp: FunDef[T], cols: Option[List[TableColDef]], withOrdinality: Boolean) extends Exp with Product with Serializable

  12. case class FunDef[T](name: String, exp: Fun, typ: Manifest[T], procedure: Procedure[_]) extends TypedExp[T] with Product with Serializable

  13. case class FunSelectDef(cols: List[ColDef[_]], tables: List[TableDef], exp: FunDef[_]) extends SelectDefBase with Product with Serializable

    select definition returned from macro or db function, is used in

  14. type Input = Reader[Elem]

    Definition Classes
    Parsers
  15. case class InsertDef(cols: List[ColDef[_]], tables: List[TableDef], exp: Insert) extends DMLDefBase with Product with Serializable

  16. class MemParser[+T] extends Parser[T]

    Definition Classes
    MemParsers
  17. sealed abstract class NoSuccess extends ParseResult[Nothing]

    Definition Classes
    Parsers
  18. trait OnceParser[+T] extends Parser[T]

    Definition Classes
    Parsers
  19. sealed abstract class ParseResult[+T] extends AnyRef

    Definition Classes
    Parsers
  20. abstract class Parser[+T] extends (Input) ⇒ ParseResult[T]

    Definition Classes
    Parsers
  21. case class PrimitiveDef[T](exp: RowDefBase) extends TypedExp[T] with Product with Serializable

    Marker for compiler macro, to unwrap compiled result

  22. case class PrimitiveExp(exp: parsing.Query) extends Exp with Product with Serializable

    Marker for compiler macro, to create

  23. case class RecursiveDef(exp: Exp, scope: Scope = null) extends TypedExp[RecursiveDef] with Scope with Product with Serializable

  24. case class ReturningDMLDef(cols: List[ColDef[_]], tables: List[TableDef], exp: DMLDefBase) extends SelectDefBase with Product with Serializable

  25. trait RowDefBase extends TypedExp[RowDefBase]

  26. trait SQLDefBase extends RowDefBase with Scope

  27. trait Scope extends AnyRef

  28. case class SelectDef(cols: List[ColDef[_]], tables: List[TableDef], exp: parsing.Query) extends SelectDefBase with Product with Serializable

  29. trait SelectDefBase extends SQLDefBase

  30. case class Success[+T] extends ParseResult[T] with Product with Serializable

    Definition Classes
    Parsers
  31. case class TableAlias(obj: Exp) extends Exp with Product with Serializable

    helper class for namer to distinguish table with NoJoin, i.

  32. case class TableDef(name: String, exp: Obj) extends Exp with Product with Serializable

  33. trait TableMetadata extends AnyRef

  34. case class TableObj(obj: Exp) extends Exp with Product with Serializable

    helper class for namer to distinguish table references from column references

  35. type Transformer = PartialFunction[Exp, Exp]

    Definition Classes
    ExpTransformer
  36. type TransformerWithState[T] = (T) ⇒ PartialFunction[Exp, Exp]

    Definition Classes
    ExpTransformer
  37. type Traverser[T] = (T) ⇒ PartialFunction[Exp, T]

    Definition Classes
    ExpTransformer
  38. trait TypedExp[T] extends Exp

  39. case class UpdateDef(cols: List[ColDef[_]], tables: List[TableDef], exp: Update) extends DMLDefBase with Product with Serializable

  40. case class ValuesFromSelectDef(exp: SelectDefBase) extends SelectDefBase with Product with Serializable

  41. case class WithDMLDef(exp: DMLDefBase, withTables: List[WithTableDef]) extends WithDMLQuery with Product with Serializable

  42. trait WithDMLQuery extends DMLDefBase with WithQuery

  43. trait WithQuery extends SQLDefBase

  44. trait WithSelectBase extends SelectDefBase with WithQuery

  45. case class WithSelectDef(exp: SelectDefBase, withTables: List[WithTableDef]) extends WithSelectBase with Product with Serializable

  46. case class WithTableDef(cols: List[ColDef[_]], tables: List[TableDef], recursive: Boolean, exp: SQLDefBase) extends SelectDefBase with Product with Serializable

  47. case class WithTableMetadata(scopes: List[Scope]) extends TableMetadata with Product with Serializable

  48. case class ~[+a, +b] extends Product with Serializable

    Definition Classes
    Parsers

Abstract Value Members

  1. abstract def metadata: Metadata

    Attributes
    protected

Concrete 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. def ALL: MemParser[All.type]

    Definition Classes
    QueryParsers
  7. val DefaultJoin: Join

    Definition Classes
    QueryParsers
  8. object EnvMetadata extends TableMetadata

  9. def FALSE: MemParser[Boolean]

    Definition Classes
    QueryParsers
  10. def NULL: MemParser[Null.type]

    Definition Classes
    QueryParsers
  11. val NoJoin: Join

    Definition Classes
    QueryParsers
  12. def OnceParser[T](f: (Input) ⇒ ParseResult[T]): Parser[T] with OnceParser[T]

    Definition Classes
    Parsers
  13. def Parser[T](f: (Input) ⇒ ParseResult[T]): Parser[T]

    Definition Classes
    Parsers
  14. def TRUE: MemParser[Boolean]

    Definition Classes
    QueryParsers
  15. def accept[U](expected: String, f: PartialFunction[Elem, U]): Parser[U]

    Definition Classes
    Parsers
  16. def accept[ES](es: ES)(implicit arg0: (ES) ⇒ List[Elem]): Parser[List[Elem]]

    Definition Classes
    Parsers
  17. implicit def accept(e: Elem): Parser[Elem]

    Definition Classes
    Parsers
  18. def acceptIf(p: (Elem) ⇒ Boolean)(err: (Elem) ⇒ String): Parser[Elem]

    Definition Classes
    Parsers
  19. def acceptMatch[U](expected: String, f: PartialFunction[Elem, U]): Parser[U]

    Definition Classes
    Parsers
  20. def acceptSeq[ES](es: ES)(implicit arg0: (ES) ⇒ Iterable[Elem]): Parser[List[Elem]]

    Definition Classes
    Parsers
  21. def array: MemParser[Arr]

    Definition Classes
    QueryParsers
  22. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  23. def braces: MemParser[Braces]

    Definition Classes
    QueryParsers
  24. def buildTypedDef(exp: Exp): Exp

  25. def castExpr: MemParser[Exp]

    Definition Classes
    QueryParsers
  26. def chainl1[T, U](first: ⇒ Parser[T], p: ⇒ Parser[U], q: ⇒ Parser[(T, U) ⇒ T]): Parser[T]

    Definition Classes
    Parsers
  27. def chainl1[T](p: ⇒ Parser[T], q: ⇒ Parser[(T, T) ⇒ T]): Parser[T]

    Definition Classes
    Parsers
  28. def chainr1[T, U](p: ⇒ Parser[T], q: ⇒ Parser[(T, U) ⇒ U], combine: (T, U) ⇒ U, first: U): Parser[U]

    Definition Classes
    Parsers
  29. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  30. def column(scopes: List[Scope])(colName: String)(md: TableMetadata = EnvMetadata): Option[Col[_]]

    Column declared in any scope in

    Column declared in any scope in

    scopes

    list scopes }}}

  31. def column: MemParser[Col]

    Definition Classes
    QueryParsers
  32. def columns: MemParser[Cols]

    Definition Classes
    QueryParsers
  33. def commit[T](p: ⇒ Parser[T]): Parser[T]

    Definition Classes
    Parsers
  34. def comp: MemParser[Exp]

    Definition Classes
    QueryParsers
  35. val comp_op: Regex

    Definition Classes
    QueryParsers
  36. def compile(exp: Exp): Exp

  37. def const: MemParser[Const]

    Definition Classes
    QueryParsers
  38. def decimalNr: MemParser[BigDecimal]

    Definition Classes
    QueryParsers
  39. def decimalNumber: Parser[String]

    Definition Classes
    JavaTokenParsers
  40. def declaredColumn(scopes: List[Scope])(colName: String)(md: TableMetadata = EnvMetadata): Option[Col[_]]

    Method is used to resolve column names in group by or order by clause, since they can reference columns by name from column clause.

  41. def declaredTable(scopes: List[Scope])(tableName: String)(md: TableMetadata = EnvMetadata): Option[Table]

    Table of dml statement or table in from clause of any scope in the

    Table of dml statement or table in from clause of any scope in the

    scopes

    list scopes }}}

  42. def delete: MemParser[Delete]

    Definition Classes
    QueryParsers
  43. def elem(e: Elem): Parser[Elem]

    Definition Classes
    Parsers
  44. def elem(kind: String, p: (Elem) ⇒ Boolean): Parser[Elem]

    Definition Classes
    Parsers
  45. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  46. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  47. def err(msg: String): Parser[Nothing]

    Definition Classes
    Parsers
  48. def expr: MemParser[Exp]

    Definition Classes
    QueryParsers
  49. def exprList: MemParser[Exp]

    Definition Classes
    QueryParsers
  50. def failure(msg: String): Parser[Nothing]

    Definition Classes
    Parsers
  51. def filter: MemParser[Arr]

    Definition Classes
    QueryParsers
  52. def filters: MemParser[Filters]

    Definition Classes
    QueryParsers
  53. def floatingPointNumber: Parser[String]

    Definition Classes
    JavaTokenParsers
  54. def function: MemParser[Exp]

    Definition Classes
    QueryParsers
  55. def functionWithoutFilter: MemParser[Fun]

    Definition Classes
    QueryParsers
  56. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  57. def group: MemParser[Grp]

    Definition Classes
    QueryParsers
  58. def guard[T](p: ⇒ Parser[T]): Parser[T]

    Definition Classes
    Parsers
  59. def handleWhiteSpace(source: CharSequence, offset: Int): Int

    Copied from RegexParsers to support comment handling as whitespace

    Copied from RegexParsers to support comment handling as whitespace

    Attributes
    protected
    Definition Classes
    QueryParsers → RegexParsers
  60. def hashCode(): Int

    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  61. def id: MemParser[Id]

    Definition Classes
    QueryParsers
  62. def ident: MemParser[String]

    Definition Classes
    QueryParsers → JavaTokenParsers
  63. def idref: MemParser[IdRef]

    Definition Classes
    QueryParsers
  64. def in: MemParser[In]

    Definition Classes
    QueryParsers
  65. def insert: MemParser[Insert]

    Definition Classes
    QueryParsers
  66. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  67. def join: MemParser[Join]

    Definition Classes
    QueryParsers
  68. implicit def literal(s: String): Parser[String]

    Definition Classes
    RegexParsers
  69. def log[T](p: ⇒ Parser[T])(name: String): Parser[T]

    Definition Classes
    Parsers
  70. def logicalOp: MemParser[Exp]

    Definition Classes
    QueryParsers
  71. def macros: MacroResources

    Attributes
    protected
    Definition Classes
    QueryParsers
  72. def mkList[T]: (~[T, List[T]]) ⇒ List[T]

    Definition Classes
    Parsers
  73. def mulDiv: MemParser[Exp]

    Definition Classes
    QueryParsers
  74. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  75. def not[T](p: ⇒ Parser[T]): Parser[Unit]

    Definition Classes
    Parsers
  76. final def notify(): Unit

    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  77. final def notifyAll(): Unit

    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  78. def obj: MemParser[Obj]

    Definition Classes
    QueryParsers
  79. def objWithJoin: MemParser[Obj]

    Definition Classes
    QueryParsers
  80. def objs: MemParser[List[Obj]]

    Definition Classes
    QueryParsers
  81. def offsetLimit: MemParser[(Exp, Exp)]

    Definition Classes
    QueryParsers
  82. def operand: MemParser[Exp]

    Definition Classes
    QueryParsers
  83. def opt[T](p: ⇒ Parser[T]): Parser[Option[T]]

    Definition Classes
    Parsers
  84. def order: MemParser[Ord]

    Definition Classes
    QueryParsers
  85. def orderMember: MemParser[(Exp, Exp, Exp)]

    Definition Classes
    QueryParsers
  86. def parse[T](p: Parser[T], in: Reader): ParseResult[T]

    Definition Classes
    RegexParsers
  87. def parse[T](p: Parser[T], in: CharSequence): ParseResult[T]

    Definition Classes
    RegexParsers
  88. def parse[T](p: Parser[T], in: Reader[Char]): ParseResult[T]

    Definition Classes
    RegexParsers
  89. def parseAll[T](p: Parser[T], in: CharSequence): ParseResult[T]

    Definition Classes
    RegexParsers
  90. def parseAll[T](p: Parser[T], in: Reader): ParseResult[T]

    Definition Classes
    RegexParsers
  91. def parseAll[T](p: Parser[T], in: Reader[Char]): ParseResult[T]

    Definition Classes
    RegexParsers
  92. def parseExp(expr: String): Exp

    Definition Classes
    CompilerQueryParsers
  93. implicit def parser2MemParser[T](parser: Parser[T]): MemParser[T]

    Definition Classes
    MemParsers
  94. def phrase[T](p: Parser[T]): Parser[T]

    Definition Classes
    MemParsers → Parsers
  95. def plusMinus: MemParser[Exp]

    Definition Classes
    QueryParsers
  96. def positioned[T <: Positional](p: ⇒ Parser[T]): Parser[T]

    Definition Classes
    RegexParsers → Parsers
  97. def procedure(procedure: String): Option[Procedure[_]]

  98. def qualifiedIdent: MemParser[Ident]

    Definition Classes
    QueryParsers
  99. def qualifiedIdentAll: MemParser[IdentAll]

    Definition Classes
    QueryParsers
  100. def query: MemParser[Exp]

    Definition Classes
    QueryParsers
  101. def queryWithCols: MemParser[Exp]

    Definition Classes
    QueryParsers
  102. implicit def regex(r: Regex): Parser[String]

    Definition Classes
    RegexParsers
  103. def rep[T](p: ⇒ Parser[T]): Parser[List[T]]

    Definition Classes
    Parsers
  104. def rep1[T](first: ⇒ Parser[T], p0: ⇒ Parser[T]): Parser[List[T]]

    Definition Classes
    Parsers
    Annotations
    @migration
    Migration

    (Changed in version 2.9.0) The p0 call-by-name arguments is evaluated at most once per constructed Parser object, instead of on every need that arises during parsing.

  105. def rep1[T](p: ⇒ Parser[T]): Parser[List[T]]

    Definition Classes
    Parsers
  106. def rep1sep[T](p: ⇒ Parser[T], q: ⇒ Parser[Any]): Parser[List[T]]

    Definition Classes
    Parsers
  107. def repN[T](num: Int, p: ⇒ Parser[T]): Parser[List[T]]

    Definition Classes
    Parsers
  108. def repsep[T](p: ⇒ Parser[T], q: ⇒ Parser[Any]): Parser[List[T]]

    Definition Classes
    Parsers
  109. val reserved: Set[String]

    Definition Classes
    QueryParsers
  110. def resolveColAsterisks(exp: Exp): Exp

  111. def resolveColTypes(exp: Exp): Exp

  112. def resolveNamesAndJoins(exp: Exp): Exp

  113. def result: MemParser[Res]

    Definition Classes
    QueryParsers
  114. def skipWhitespace: Boolean

    Definition Classes
    RegexParsers
  115. def sql: MemParser[Sql]

    Definition Classes
    QueryParsers
  116. def stringLiteral: MemParser[String]

    Definition Classes
    QueryParsers → JavaTokenParsers
  117. def success[T](v: T): Parser[T]

    Definition Classes
    Parsers
  118. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  119. def table(scopes: List[Scope])(tableName: String)(md: TableMetadata = EnvMetadata): Option[Table]

    Table from metadata or defined in from clause or dml table of any scope in

    Table from metadata or defined in from clause or dml table of any scope in

    scopes

    list scopes }}}

  120. def toString(): String

    Definition Classes
    AnyRef → Any
  121. def transformer(fun: Transformer): Transformer

    Definition Classes
    CompilerExpTransformer
  122. def transformerWithState[T](fun: (T) ⇒ PartialFunction[Exp, Exp]): (T) ⇒ PartialFunction[Exp, Exp]

    Definition Classes
    CompilerExpTransformer
  123. def traverser[T](fun: (T) ⇒ PartialFunction[Exp, T]): (T) ⇒ PartialFunction[Exp, T]

    Definition Classes
    CompilerExpTransformer
  124. def unaryExpr: MemParser[Exp]

    Definition Classes
    QueryParsers
  125. def update: MemParser[Update]

    Definition Classes
    QueryParsers
  126. def values: MemParser[Values]

    Definition Classes
    QueryParsers
  127. def valuesSelect: MemParser[Exp]

    Definition Classes
    QueryParsers
  128. def variable: MemParser[Variable]

    Definition Classes
    QueryParsers
  129. def variableExtractor: (List[Variable]) ⇒ PartialFunction[Exp, List[Variable]]

    Extract variables in reverse order.

    Extract variables in reverse order. Variable names '?' are replaced with index starting with 1

    Definition Classes
    ExpTransformer
  130. final def wait(arg0: Long, arg1: Int): Unit

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  132. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  133. val whiteSpace: Regex

    Definition Classes
    QueryParsers → RegexParsers
  134. def wholeNumber: MemParser[String]

    Definition Classes
    QueryParsers → JavaTokenParsers
  135. def withQuery: MemParser[With]

    Definition Classes
    QueryParsers
  136. def withTable: MemParser[WithTable]

    Definition Classes
    QueryParsers

Deprecated Value Members

  1. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  2. def lastNoSuccess: NoSuccess

    Definition Classes
    Parsers
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) lastNoSuccess was not thread-safe and will be removed in 2.11.0

  3. def lastNoSuccess_=(x: NoSuccess): Unit

    Definition Classes
    Parsers
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) lastNoSuccess was not thread-safe and will be removed in 2.11.0

Inherited from QueryParsers

Inherited from ExpTransformer

Inherited from MemParsers

Inherited from JavaTokenParsers

Inherited from RegexParsers

Inherited from Parsers

Inherited from AnyRef

Inherited from Any

Ungrouped