All Downloads are FREE. Search and download functionalities are using the official Maven repository.

doobieroll.impl.Visitor.scala Maven / Gradle / Ivy

There is a newer version: 0.3.2
Show newest version
package doobieroll.impl
import doobieroll.ImplTypes.LazyMap
import shapeless._

import scala.collection.immutable.Vector

private[doobieroll] trait Visitor[F[_], A, Dbs <: HList] {

  def startIdx: Int
  def nextIdx: Int

  def recordAsChild(parentId: Any, d: Vector[Any]): Unit

  def assemble(): LazyMap[Any, Vector[F[A]]]
}

private[doobieroll] trait ParentVisitor[F[_], A, Dbs <: HList] extends Visitor[F, A, Dbs] {
  def recordTopLevel(dbs: Vector[Any]): Unit
  def assembleTopLevel(): Vector[F[A]]
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy