// file : odb/result.txx // copyright : Copyright (c) 2009-2015 Code Synthesis Tools CC // license : GNU GPL v2; see accompanying LICENSE file #include namespace odb { template typename result::pointer_type result:: one () { iterator i (begin ()); if (i != end ()) { pointer_type o (i.load ()); assert (++i == end ()); // More than one element in query_one() result. return o; } return pointer_type (); } template bool result:: one (T& o) { iterator i (begin ()); if (i != end ()) { i.load (o); assert (++i == end ()); // More than one element in query_one() result. return true; } return false; } template void result:: value (T& o) { iterator i (begin ()); assert (i != end ()); // Zero elements in query_value() result. i.load (o); assert (++i == end ()); // More than one element in query_value() result. } }