Trait

org.tresql.compiling

Compiler

Related Doc: package compiling

Permalink

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
Visibility
  1. Public
  2. All

Type Members

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

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

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

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

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

    Permalink
  6. trait DMLDefBase extends SQLDefBase

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

    Permalink
  8. type Elem = Char

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

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

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

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

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

    Permalink

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

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

    BinSelectDef
  14. type Input = Reader[Elem]

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

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

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

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

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

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

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

    Permalink

    Marker for compiler macro, to unwrap compiled result

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

    Permalink

    Marker for compiler macro, to create

    Marker for compiler macro, to create

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

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

    Permalink
  25. trait RowDefBase extends TypedExp[RowDefBase]

    Permalink
  26. trait SQLDefBase extends RowDefBase with Scope

    Permalink
  27. trait Scope extends AnyRef

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

    Permalink
  29. trait SelectDefBase extends SQLDefBase

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

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

    Permalink

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

    helper class for namer to distinguish table with NoJoin, i.e. must be defined in tables clause earlier

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

    Permalink
  33. trait TableMetadata extends AnyRef

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

    Permalink

    helper class for namer to distinguish table references from column references

  35. type Transformer = PartialFunction[Exp, Exp]

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

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

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

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

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

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

    Permalink
  42. trait WithDMLQuery extends DMLDefBase with WithQuery

    Permalink
  43. trait WithQuery extends SQLDefBase

    Permalink
  44. trait WithSelectBase extends SelectDefBase with WithQuery

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

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

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

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

    Permalink
    Definition Classes
    Parsers

Abstract Value Members

  1. abstract def metadata: Metadata

    Permalink
    Attributes
    protected

Concrete Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. def ALL: MemParser[All.type]

    Permalink
    Definition Classes
    QueryParsers
  5. val DefaultJoin: Join

    Permalink
    Definition Classes
    QueryParsers
  6. object EnvMetadata extends TableMetadata

    Permalink
  7. def FALSE: MemParser[Boolean]

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

    Permalink
    Definition Classes
    QueryParsers
  9. val NoJoin: Join

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

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

    Permalink
    Definition Classes
    Parsers
  12. def TRUE: MemParser[Boolean]

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

    Permalink
    Definition Classes
    Parsers
  14. def accept[ES](es: ES)(implicit f: (ES) ⇒ List[Elem]): Parser[List[Elem]]

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

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

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

    Permalink
    Definition Classes
    Parsers
  18. def acceptSeq[ES](es: ES)(implicit f: (ES) ⇒ Iterable[Elem]): Parser[List[Elem]]

    Permalink
    Definition Classes
    Parsers
  19. def array: MemParser[Arr]

    Permalink
    Definition Classes
    QueryParsers
  20. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  21. def braces: MemParser[Braces]

    Permalink
    Definition Classes
    QueryParsers
  22. def buildTypedDef(exp: Exp): Exp

    Permalink
  23. def castExpr: MemParser[Exp]

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

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

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

    Permalink
    Definition Classes
    Parsers
  27. def clone(): AnyRef

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

    Permalink

    Column declared in any scope in

    Column declared in any scope in

    scopes

    list scopes }}}

  29. def column: MemParser[Col]

    Permalink
    Definition Classes
    QueryParsers
  30. def columns: MemParser[Cols]

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

    Permalink
    Definition Classes
    Parsers
  32. def comp: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  33. val comp_op: Regex

    Permalink
    Definition Classes
    QueryParsers
  34. def compile(exp: Exp): Exp

    Permalink
  35. def const: MemParser[Const]

    Permalink
    Definition Classes
    QueryParsers
  36. def decimalNr: MemParser[BigDecimal]

    Permalink
    Definition Classes
    QueryParsers
  37. def decimalNumber: Parser[String]

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

    Permalink

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

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

    Permalink

    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 }}}

  40. def delete: MemParser[Delete]

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

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

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

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

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

    Permalink
    Definition Classes
    Parsers
  46. def expr: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  47. def exprList: MemParser[Exp]

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

    Permalink
    Definition Classes
    Parsers
  49. def filter: MemParser[Arr]

    Permalink
    Definition Classes
    QueryParsers
  50. def filters: MemParser[Filters]

    Permalink
    Definition Classes
    QueryParsers
  51. def floatingPointNumber: Parser[String]

    Permalink
    Definition Classes
    JavaTokenParsers
  52. def function: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  53. def functionWithoutFilter: MemParser[Fun]

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

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

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

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

    Permalink

    Copied from RegexParsers to support comment handling as whitespace

    Copied from RegexParsers to support comment handling as whitespace

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

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

    Permalink
    Definition Classes
    QueryParsers
  60. def ident: MemParser[String]

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

    Permalink
    Definition Classes
    QueryParsers
  62. def in: MemParser[In]

    Permalink
    Definition Classes
    QueryParsers
  63. def insert: MemParser[Insert]

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

    Permalink
    Definition Classes
    Any
  65. def join: MemParser[Join]

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

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

    Permalink
    Definition Classes
    Parsers
  68. def logicalOp: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  69. def macros: MacroResources

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

    Permalink
    Definition Classes
    Parsers
  71. def mulDiv: MemParser[Exp]

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

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

    Permalink
    Definition Classes
    Parsers
  74. final def notify(): Unit

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

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

    Permalink
    Definition Classes
    QueryParsers
  77. def objWithJoin: MemParser[Obj]

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

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

    Permalink
    Definition Classes
    QueryParsers
  80. def operand: MemParser[Exp]

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

    Permalink
    Definition Classes
    Parsers
  82. def order: MemParser[Ord]

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

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

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

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

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

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

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

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

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

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

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

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

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

    Permalink
  96. def qualifiedIdent: MemParser[Ident]

    Permalink
    Definition Classes
    QueryParsers
  97. def qualifiedIdentAll: MemParser[IdentAll]

    Permalink
    Definition Classes
    QueryParsers
  98. def query: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  99. def queryWithCols: MemParser[Exp]

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

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

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

    Permalink
    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.

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

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

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

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

    Permalink
    Definition Classes
    Parsers
  107. val reserved: Set[String]

    Permalink
    Definition Classes
    QueryParsers
  108. def resolveColAsterisks(exp: Exp): Exp

    Permalink
  109. def resolveColTypes(exp: Exp): Exp

    Permalink
  110. def resolveNamesAndJoins(exp: Exp): Exp

    Permalink
  111. def result: MemParser[Res]

    Permalink
    Definition Classes
    QueryParsers
  112. def skipWhitespace: Boolean

    Permalink
    Definition Classes
    RegexParsers
  113. def sql: MemParser[Sql]

    Permalink
    Definition Classes
    QueryParsers
  114. def stringLiteral: MemParser[String]

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

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

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

    Permalink

    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 }}}

  118. def toString(): String

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

    Permalink
    Definition Classes
    CompilerExpTransformer
  120. def transformerWithState[T](fun: TransformerWithState[T]): TransformerWithState[T]

    Permalink
    Definition Classes
    CompilerExpTransformer
  121. def traverser[T](fun: Traverser[T]): Traverser[T]

    Permalink
    Definition Classes
    CompilerExpTransformer
  122. def unaryExpr: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  123. def update: MemParser[Update]

    Permalink
    Definition Classes
    QueryParsers
  124. def values: MemParser[Values]

    Permalink
    Definition Classes
    QueryParsers
  125. def valuesSelect: MemParser[Exp]

    Permalink
    Definition Classes
    QueryParsers
  126. def variable: MemParser[Variable]

    Permalink
    Definition Classes
    QueryParsers
  127. def variableExtractor: Traverser[List[Variable]]

    Permalink

    Extract variables in reverse order.

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    QueryParsers
  134. def withTable: MemParser[WithTable]

    Permalink
    Definition Classes
    QueryParsers

Deprecated Value Members

  1. def finalize(): Unit

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

    (Since version ) see corresponding Javadoc for more information.

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