net-spider-0.2.0.0: A graph database middleware to maintain a time-varying graph.

MaintainerToshio Ito <debug.ito@gmail.com>
Safe HaskellNone
LanguageHaskell2010

NetSpider.Graph

Contents

Description

 
Synopsis

Attributes classes

class NodeAttributes ps where Source #

Class of user-defined types for node attributes. Its content is stored in the NetSpider database.

Methods

writeNodeAttributes :: ps -> Binder (Walk SideEffect (VFoundNode ps) (VFoundNode ps)) Source #

Return Walk to write the attributes to the VFoundNode.

parseNodeAttributes :: PropertyMapList AVertexProperty GValue -> Parser ps Source #

Parse the vertex proprerties into the attributes.

class LinkAttributes ps where Source #

Class of user-defined types for link attributes. Its content is stored in the NetSpider database.

Methods

writeLinkAttributes :: ps -> Binder (Walk SideEffect (EFinds ps) (EFinds ps)) Source #

Return Walk to write the attributes to the EFinds.

parseLinkAttributes :: PropertyMapSingle AProperty GValue -> Parser ps Source #

Parse the edge proprerties into the attributes.

Graph element types

data EID Source #

Generic element ID used in the graph DB.

Instances
Eq EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

(==) :: EID -> EID -> Bool #

(/=) :: EID -> EID -> Bool #

Ord EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

compare :: EID -> EID -> Ordering #

(<) :: EID -> EID -> Bool #

(<=) :: EID -> EID -> Bool #

(>) :: EID -> EID -> Bool #

(>=) :: EID -> EID -> Bool #

max :: EID -> EID -> EID #

min :: EID -> EID -> EID #

Show EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

showsPrec :: Int -> EID -> ShowS #

show :: EID -> String #

showList :: [EID] -> ShowS #

ToJSON EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

FromJSON EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

FromGraphSON EID Source # 
Instance details

Defined in NetSpider.Graph.Internal

data VNode Source #

The "node" vertex.

Instances
Element VNode Source # 
Instance details

Defined in NetSpider.Graph.Internal

Associated Types

type ElementID VNode :: Type #

type ElementProperty VNode :: Type -> Type #

Vertex VNode Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementProperty VNode Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementID VNode Source # 
Instance details

Defined in NetSpider.Graph.Internal

data VFoundNode na Source #

The "found_node" vertex.

Instances
Show na => Show (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

showsPrec :: Int -> VFoundNode na -> ShowS #

show :: VFoundNode na -> String #

showList :: [VFoundNode na] -> ShowS #

NodeAttributes na => FromGraphSON (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Element (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Associated Types

type ElementID (VFoundNode na) :: Type #

type ElementProperty (VFoundNode na) :: Type -> Type #

Vertex (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementProperty (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementID (VFoundNode na) Source # 
Instance details

Defined in NetSpider.Graph.Internal

data EFinds la Source #

"finds" edge.

Instances
Show la => Show (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

showsPrec :: Int -> EFinds la -> ShowS #

show :: EFinds la -> String #

showList :: [EFinds la] -> ShowS #

LinkAttributes la => FromGraphSON (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Methods

parseGraphSON :: GValue -> Parser (EFinds la) #

Element (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Associated Types

type ElementID (EFinds la) :: Type #

type ElementProperty (EFinds la) :: Type -> Type #

Edge (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

Associated Types

type EdgeVertexID (EFinds la) :: Type #

type ElementProperty (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementID (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

type ElementID (EFinds la) = EID
type EdgeVertexID (EFinds la) Source # 
Instance details

Defined in NetSpider.Graph.Internal

type EdgeVertexID (EFinds la) = EID