-- | Query result records. module Database.Bolty.Record ( Record , lookupField ) where import Data.Kind (Type) import qualified Data.Text as T import qualified Data.Vector as V import Database.Bolty.Value.Type (Bolt) -- | A single result row: a vector of 'Bolt' values, one per column. type Record :: Type type Record = V.Vector Bolt -- | Look up a field value by column name, given the column name vector -- from the query's SuccessRun response. lookupField :: V.Vector T.Text -> T.Text -> Record -> Maybe Bolt lookupField columns name record = V.elemIndex name columns >>= (record V.!?)