 (ns suricatta.proto)
 
 (defprotocol IContextHolder
-  (-get-context [_] "Get jooq context with attached configuration")
-  (-get-config [_] "Get attached configuration."))
+  (-context [_] "Get jooq context with attached configuration")
+  (-config [_] "Get attached configuration."))
 
 (defprotocol IConnectionFactory
   (-connection [_] "Create a jdbc connection."))

  "A lightweight abstraction for access
  to the basic properties on the render/bind
  context instances."
  (-get-statement [_] "Get the prepared statement if it is awailable.")
  (-get-next-bindindex [_] "Get the next bind index (WARN: side effectful)")
  (-render-inline? [_] "Return true in case the context is setup for inline."))

(defprotocol IParamType
  "A basic abstraction for adapt user defined

  (-fetch-lazy [q ctx opts] "Fetch lazy results executing query."))

(defprotocol IRenderer
  (-sql [_ type dialect] "Render a query sql into a string.")
  (-bind-values [_] "Get query bind values."))

(defprotocol IQuery
  (-query [_ ctx] "Build a query."))
