-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Bolt driver for Neo4j -- -- A Bolt driver to access Neo4j databases using the Bolt Protocol, -- Version 1. http://boltprotocol.org/v1/ @package bolt @version 0.2.0.0 module Database.Bolt.Exception internalErr :: Text -> IO a transportErr :: Text -> IO a protocolErr :: Text -> IO a authFail :: Text -> IO a reqFail :: Text -> IO a reqIgnore :: Text -> IO a instance GHC.Show.Show Database.Bolt.Exception.BoltException instance GHC.Exception.Exception Database.Bolt.Exception.BoltException module Database.Bolt.Transport class Transport t where sendMany conn = mapM_ (send conn) send :: Transport t => t -> ByteString -> IO () recv :: Transport t => t -> Int -> IO ByteString close :: Transport t => t -> IO () sendMany :: Transport t => t -> [ByteString] -> IO () put :: Transport t => t -> Put -> IO () get :: Transport t => t -> Int -> Get a -> IO a getE :: Transport t => t -> Int -> Get a -> IO (Either String a) handshake :: Transport t => t -> OfferProtocols -> IO BoltProtocol type BoltProtocol = Word32 data OfferProtocols OfferProtocols :: BoltProtocol -> BoltProtocol -> BoltProtocol -> BoltProtocol -> OfferProtocols noProto :: BoltProtocol instance GHC.Classes.Ord Database.Bolt.Transport.OfferProtocols instance GHC.Classes.Eq Database.Bolt.Transport.OfferProtocols instance GHC.Show.Show Database.Bolt.Transport.OfferProtocols module Database.Bolt.Transport.Chunked send :: Transport t => t -> ByteString -> IO () recv :: Transport t => t -> IO ByteString put :: Transport t => t -> Put -> IO () get :: Transport t => t -> Get a -> IO a module Database.Bolt.Transport.Socket data ConnInfo hostserv :: String -> String -> ConnInfo uri :: String -> Maybe ConnInfo data Connection connect :: ConnInfo -> IO Connection close :: Transport t => t -> IO () send :: Transport t => t -> ByteString -> IO () sendMany :: Transport t => t -> [ByteString] -> IO () recv :: Transport t => t -> Int -> IO ByteString put :: Transport t => t -> Put -> IO () get :: Transport t => t -> Int -> Get a -> IO a instance GHC.Classes.Ord Database.Bolt.Transport.Socket.ConnInfo instance GHC.Classes.Eq Database.Bolt.Transport.Socket.ConnInfo instance GHC.Read.Read Database.Bolt.Transport.Socket.ConnInfo instance GHC.Show.Show Database.Bolt.Transport.Socket.ConnInfo instance Database.Bolt.Transport.Transport Database.Bolt.Transport.Socket.Connection module Data.PackStream data PackStream Null :: PackStream Bool :: !Bool -> PackStream Int :: !Int64 -> PackStream Float :: !Double -> PackStream String :: !Text -> PackStream List :: !(Vector PackStream) -> PackStream Map :: !(HashMap PackStream PackStream) -> PackStream Struct :: !Word8 -> ![PackStream] -> PackStream class ToPackStream a toPackStream :: ToPackStream a => a -> PackStream class FromPackStream a parsePackStream :: FromPackStream a => PackStream -> Parser a type Parser = Either String parse :: (a -> Parser b) -> a -> Parser b parsefail :: a -> Either a b parseEither :: (a -> Parser b) -> a -> Either String b parseMaybe :: (a -> Parser b) -> a -> Maybe b pack :: ToPackStream a => Putter a unpack :: FromPackStream a => Get (Parser a) pretty :: PackStream -> Text prettyStruct :: (Word8 -> Text) -> PackStream -> Text genericStructName :: Word8 -> Text (.=) :: ToPackStream a => Text -> a -> (PackStream, PackStream) (.:) :: FromPackStream a => HashMap PackStream PackStream -> Text -> Parser a (.:?) :: FromPackStream a => HashMap PackStream PackStream -> Text -> Parser (Maybe a) (.!=) :: Parser (Maybe a) -> a -> Parser a instance Data.Hashable.Class.Hashable Data.PackStream.PackStream instance GHC.Generics.Generic Data.PackStream.PackStream instance GHC.Classes.Eq Data.PackStream.PackStream instance GHC.Show.Show Data.PackStream.PackStream instance Data.Hashable.Class.Hashable a => Data.Hashable.Class.Hashable (Data.Vector.Vector a) instance Data.PackStream.FromPackStream Data.PackStream.PackStream instance Data.PackStream.FromPackStream GHC.Types.Bool instance Data.PackStream.FromPackStream GHC.Int.Int64 instance Data.PackStream.FromPackStream GHC.Types.Double instance Data.PackStream.FromPackStream Data.Text.Internal.Text instance Data.PackStream.FromPackStream a => Data.PackStream.FromPackStream [a] instance Data.PackStream.FromPackStream a => Data.PackStream.FromPackStream (Data.Vector.Vector a) instance (GHC.Classes.Eq a, Data.Hashable.Class.Hashable a, Data.PackStream.FromPackStream a, Data.PackStream.FromPackStream b) => Data.PackStream.FromPackStream (Data.HashMap.Base.HashMap a b) instance (GHC.Classes.Ord a, Data.PackStream.FromPackStream a, Data.PackStream.FromPackStream b) => Data.PackStream.FromPackStream (Data.Map.Base.Map a b) instance Data.PackStream.FromPackStream Data.Scientific.Scientific instance Data.PackStream.ToPackStream Data.PackStream.PackStream instance Data.PackStream.ToPackStream GHC.Types.Bool instance Data.PackStream.ToPackStream GHC.Int.Int64 instance Data.PackStream.ToPackStream GHC.Types.Double instance Data.PackStream.ToPackStream Data.Text.Internal.Text instance Data.PackStream.ToPackStream a => Data.PackStream.ToPackStream [a] instance Data.PackStream.ToPackStream a => Data.PackStream.ToPackStream (Data.Vector.Vector a) instance (Data.PackStream.ToPackStream a, Data.PackStream.ToPackStream b) => Data.PackStream.ToPackStream (Data.Map.Base.Map a b) instance (Data.PackStream.ToPackStream a, Data.PackStream.ToPackStream b) => Data.PackStream.ToPackStream (Data.HashMap.Base.HashMap a b) instance Data.PackStream.ToPackStream Data.Scientific.Scientific module Database.Bolt.Protocol.Ver1.Pretty pretty :: PackStream -> Text structName :: Word8 -> Text module Database.Bolt.Protocol.Ver1.Types type UserAgent = Text type Principal = Text type Credentials = Text type Statement = Text type Label = Text type Type = Text type Identity = Int64 type Object = HashMap Text PackStream type Parameters = Object type Properties = Object type Metadata = Object type Record = [PackStream] object :: (Eq k, Hashable k) => [(k, v)] -> HashMap k v (#=) :: ToPackStream a => Text -> a -> (Text, PackStream) (#:) :: FromPackStream a => Object -> Text -> Parser a (#:?) :: FromPackStream a => Object -> Text -> Parser (Maybe a) module Database.Bolt.Protocol.Ver1.Graph data Node Node :: Identity -> [Label] -> Properties -> Node [nodeIdentity] :: Node -> Identity [nodeLabels] :: Node -> [Label] [nodeProperties] :: Node -> Properties data Relationship Relationship :: Identity -> Identity -> Identity -> Type -> Properties -> Relationship [relIdentity] :: Relationship -> Identity [startNodeIdentity] :: Relationship -> Identity [endNodeIdentity] :: Relationship -> Identity [relType] :: Relationship -> Type [relProperties] :: Relationship -> Properties data Path Path :: [Node] -> [UnboundedRelationship] -> [Int64] -> Path [pathNodes] :: Path -> [Node] [pathRelationships] :: Path -> [UnboundedRelationship] [pathSequence] :: Path -> [Int64] data UnboundedRelationship UnboundedRelationship :: Identity -> Type -> Properties -> UnboundedRelationship [urelIdentity] :: UnboundedRelationship -> Identity [urelType] :: UnboundedRelationship -> Type [urelProperties] :: UnboundedRelationship -> Properties instance GHC.Classes.Eq Database.Bolt.Protocol.Ver1.Graph.Path instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Graph.Path instance GHC.Classes.Eq Database.Bolt.Protocol.Ver1.Graph.UnboundedRelationship instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Graph.UnboundedRelationship instance GHC.Classes.Eq Database.Bolt.Protocol.Ver1.Graph.Relationship instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Graph.Relationship instance GHC.Classes.Eq Database.Bolt.Protocol.Ver1.Graph.Node instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Graph.Node instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Graph.Node instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Graph.Node instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Graph.Relationship instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Graph.Relationship instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Graph.Path instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Graph.Path instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Graph.UnboundedRelationship instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Graph.UnboundedRelationship module Database.Bolt.Protocol.Ver1.Message data Message Init :: UserAgent -> AuthToken -> Message AckFailure :: Message Reset :: Message Run :: Statement -> Parameters -> Message DiscardAll :: Message PullAll :: Message Success :: Metadata -> Message Ignored :: Metadata -> Message Failure :: Metadata -> Message Record :: Record -> Message data AuthToken NoAuth :: AuthToken Basic :: Principal -> Credentials -> AuthToken instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Message.Message instance GHC.Show.Show Database.Bolt.Protocol.Ver1.Message.AuthToken instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Message.Message instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Message.Message instance Data.PackStream.ToPackStream Database.Bolt.Protocol.Ver1.Message.AuthToken instance Data.PackStream.FromPackStream Database.Bolt.Protocol.Ver1.Message.AuthToken module Database.Bolt.Transport.Message sendmsg :: (Transport t, ToPackStream a) => t -> a -> IO () recvmsg :: (Transport t, FromPackStream a) => t -> IO a module Database.Bolt.Protocol.Ver1.Request init :: Transport t => t -> UserAgent -> AuthToken -> IO () reset :: Transport t => t -> IO () discardAll :: Transport t => t -> IO () pullAll :: Transport t => t -> IO [Record] run :: Transport t => t -> Statement -> Parameters -> IO () exec :: Transport t => t -> Statement -> Parameters -> IO [Record] module Database.Bolt.Protocol.Ver1.Transaction type Transaction a = forall t. Transport t => Tran t a runTransaction :: Transport t => t -> Transaction a -> IO a cypher :: Statement -> Parameters -> Transaction [Record] instance Control.Monad.IO.Class.MonadIO (Database.Bolt.Protocol.Ver1.Transaction.Tran t) instance GHC.Base.Monad (Database.Bolt.Protocol.Ver1.Transaction.Tran t) instance GHC.Base.Applicative (Database.Bolt.Protocol.Ver1.Transaction.Tran t) instance GHC.Base.Functor (Database.Bolt.Protocol.Ver1.Transaction.Tran t) module Database.Bolt.Protocol.Ver1 init :: Transport t => t -> UserAgent -> AuthToken -> IO () exec :: Transport t => t -> Statement -> Parameters -> IO [Record] data AuthToken NoAuth :: AuthToken Basic :: Principal -> Credentials -> AuthToken open :: Transport t => (a -> IO t) -> a -> AuthToken -> IO t type Transaction a = forall t. Transport t => Tran t a runTransaction :: Transport t => t -> Transaction a -> IO a cypher :: Statement -> Parameters -> Transaction [Record] object :: (Eq k, Hashable k) => [(k, v)] -> HashMap k v (#=) :: ToPackStream a => Text -> a -> (Text, PackStream) (#:) :: FromPackStream a => Object -> Text -> Parser a (#:?) :: FromPackStream a => Object -> Text -> Parser (Maybe a)