Inherited from ProtoContext[Idiom, Naming]
Inherited from Context[Idiom, Naming]
Inherited from CoreDsl
Inherited from QuotationDsl
Inherited from QueryDsl
Inherited from OrdDsl
Inherited from InfixDsl
Inherited from Closeable
Inherited from AutoCloseable
Inherited from RowContext
Inherited from Any
This is supposed to emulate how Row retrieval works in JDBC Int JDBC, ResultSet won't ever actually have Option values inside, so the actual option-decoder needs to understand that fact e.g.
Deocder[Option[Int]](java.sql.ResultSet(foo:1, etc)).getInt(1)
* and wrap it into a Optional value for the equivalent row implementation:Deocder[Option[Int]](Row(foo:1, etc)).apply(1)
. (*note that java.sql.ResultSet actually doesn't have this syntax because it isn't a product). Similarly, when doingResultSet(foo:null /*Expecting an int*/, etc).getInt(1)
the result will be 0 as opposed to throwing a NPE as would be the scala expectation. So we need to doRow(foo:null /*Expecting an int*/, etc).apply(1)
do the same thing.