greskell-2.0.2.0: Haskell binding for Gremlin graph query language
MaintainerToshio Ito <debug.ito@gmail.com>
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Greskell.Graph

Description

This module defines types and functions about TinkerPop graph structure API.

Synopsis

Element

class ElementData e => Element e Source #

org.apache.tinkerpop.gremlin.structure.Element interface in a TinkerPop graph.

Since greskell-1.0.0.0, ElementData is a super-class of Element.

Associated Types

type ElementProperty e :: Type -> Type Source #

Property type of the Element. It should be of Property class.

type ElementPropertyContainer e :: Type -> Type Source #

Container type of the properties of the Element. It should be of NonEmptyLike class.

Since: 1.0.0.0

Instances

Instances details
Element AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Element AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Element (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

class ElementData e where Source #

Types that keep reference to TinkerPop graph Elements.

Since: 1.0.0.0

Methods

elementId :: e -> ElementID e Source #

ID of this Element.

elementLabel :: e -> Text Source #

Label of this Element.

Instances

Instances details
ElementData AEdge Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

ElementData AVertex Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

ElementData (AVertexProperty v) Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

newtype ElementID e Source #

ID of a graph element e (vertex, edge and vertex property).

Although the internal of ElementID is exposed, you should treat it as an opaque value. That's because it depends on graph implementation.

Since: 1.0.0.0

Constructors

ElementID 

Fields

Instances

Instances details
Functor ElementID Source #

Unsafely convert the element type.

Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a -> b) -> ElementID a -> ElementID b #

(<$) :: a -> ElementID b -> ElementID a #

FromJSON (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

ToJSON (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Generic (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Associated Types

type Rep (ElementID e) :: Type -> Type #

Methods

from :: ElementID e -> Rep (ElementID e) x #

to :: Rep (ElementID e) x -> ElementID e #

Show (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Eq (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(==) :: ElementID e -> ElementID e -> Bool #

(/=) :: ElementID e -> ElementID e -> Bool #

FromGraphSON (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Hashable (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

hashWithSalt :: Int -> ElementID e -> Int #

hash :: ElementID e -> Int #

type Rep (ElementID e) Source # 
Instance details

Defined in Data.Greskell.Graph

type Rep (ElementID e) = D1 ('MetaData "ElementID" "Data.Greskell.Graph" "greskell-2.0.2.0-6A5NfXFiowBD9PV5wGc6yO" 'True) (C1 ('MetaCons "ElementID" 'PrefixI 'True) (S1 ('MetaSel ('Just "unElementID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GValue)))

unsafeCastElementID :: ElementID a -> ElementID b Source #

Unsafely cast the phantom type of ElementID.

Since: 1.0.0.0

class Element v => Vertex v Source #

org.apache.tinkerpop.gremlin.structure.Vertex interface in a TinkerPop graph.

Instances

Instances details
Vertex AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

class Element e => Edge e Source #

org.apache.tinkerpop.gremlin.structure.Edge interface in a TinkerPop graph.

Instances

Instances details
Edge AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Property

class Property p where Source #

org.apache.tinkerpop.gremlin.structure.Property interface in a TinkerPop graph.

Methods

propertyKey :: p v -> Text Source #

Get key of this property.

propertyValue :: p v -> v Source #

Get value of this property.

Instances

Instances details
Property AProperty Source # 
Instance details

Defined in Data.Greskell.Graph

Property AVertexProperty Source # 
Instance details

Defined in Data.Greskell.Graph

T Enum

data T a b Source #

org.apache.tinkerpop.gremlin.structure.T enum.

T is a token to get data b from an Element a.

Instances

Instances details
ProjectionLike (Greskell (T s e)) Source # 
Instance details

Defined in Data.Greskell.GTraversal

Associated Types

type ProjectionLikeStart (Greskell (T s e)) Source #

type ProjectionLikeEnd (Greskell (T s e)) Source #

GraphSONTyped (T a b) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

gsonTypeFor :: T a b -> Text #

type ProjectionLikeEnd (Greskell (T s e)) Source # 
Instance details

Defined in Data.Greskell.GTraversal

type ProjectionLikeEnd (Greskell (T s e)) = e
type ProjectionLikeStart (Greskell (T s e)) Source # 
Instance details

Defined in Data.Greskell.GTraversal

type ProjectionLikeStart (Greskell (T s e)) = s

tId :: Element a => Greskell (T a (ElementID a)) Source #

T.id token.

tKey :: (Element (p v), Property p) => Greskell (T (p v) Text) Source #

T.key token.

tLabel :: Element a => Greskell (T a Text) Source #

T.label token.

tValue :: (Element (p v), Property p) => Greskell (T (p v) v) Source #

T.value token.

Cardinality Enum

data Cardinality Source #

org.apache.tinkerpop.gremlin.structure.VertexProperty.Cardinality enum.

Since: 0.2.0.0

cList :: Greskell Cardinality Source #

list Cardinality.

Since: 0.2.0.0

cSet :: Greskell Cardinality Source #

set Cardinality.

Since: 0.2.0.0

cSingle :: Greskell Cardinality Source #

single Cardinality.

Since: 0.2.0.0

Typed Key (accessor of a Property)

newtype Key a b Source #

A property key accessing value b in an Element a. In Gremlin, it's just a String type.

Since greskell-1.0.0.0, Key is newtype of Text. Before that, it was newtype of Greskell Text.

Constructors

Key 

Fields

Instances

Instances details
Functor (Key a) Source #

Unsafely convert the value type b.

Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a0 -> b) -> Key a a0 -> Key a b #

(<$) :: a0 -> Key a b -> Key a a0 #

IsString (Key a b) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fromString :: String -> Key a b #

Show (Key a b) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

showsPrec :: Int -> Key a b -> ShowS #

show :: Key a b -> String #

showList :: [Key a b] -> ShowS #

Eq (Key a b) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(==) :: Key a b -> Key a b -> Bool #

(/=) :: Key a b -> Key a b -> Bool #

ProjectionLike (Key s e) Source # 
Instance details

Defined in Data.Greskell.GTraversal

Associated Types

type ProjectionLikeStart (Key s e) Source #

type ProjectionLikeEnd (Key s e) Source #

PMapKey (Key a b) Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

Associated Types

type PMapValue (Key a b) Source #

Methods

keyText :: Key a b -> Text Source #

ToGreskell (Key a b) Source #

Return Gremlin String literal.

Instance details

Defined in Data.Greskell.Graph

Associated Types

type GreskellReturn (Key a b) #

Methods

toGreskell :: Key a b -> Greskell (GreskellReturn (Key a b)) #

type ProjectionLikeEnd (Key s e) Source # 
Instance details

Defined in Data.Greskell.GTraversal

type ProjectionLikeEnd (Key s e) = e
type ProjectionLikeStart (Key s e) Source # 
Instance details

Defined in Data.Greskell.GTraversal

type ProjectionLikeStart (Key s e) = s
type PMapValue (Key a b) Source # 
Instance details

Defined in Data.Greskell.Graph

type PMapValue (Key a b) = b
type GreskellReturn (Key a b) Source # 
Instance details

Defined in Data.Greskell.Graph

type GreskellReturn (Key a b) = Text

key :: Text -> Key a b Source #

Create a Key a text.

unsafeCastKey :: Key a1 b1 -> Key a2 b2 Source #

Unsafely cast the type signature of the Key.

Since: 1.0.0.0

Key-value pair

data KeyValue a where Source #

Pair of Key and its value. Mainly used for writing properties into the database.

Type a is the type of Element that keeps the KeyValue pair. It drops the type of the value, so that you can construct a heterogeneous list of key-value pairs for a given Element.

Since: 0.2.0.0

Constructors

KeyValue :: Key a b -> Greskell b -> KeyValue a

Key and value

KeyNoValue :: Key a b -> KeyValue a

Key without value

Since: 1.0.0.0

(=:) :: Key a b -> Greskell b -> KeyValue a Source #

Constructor operator of KeyValue.

Since: 0.2.0.0

Heterogeneous list of keys

data Keys a where Source #

Heterogeneous list of Keys. It keeps the parent type a, but discards the value type b.

Since: 1.0.0.0

Constructors

KeysNil :: Keys a

Empty Keys.

KeysCons :: Key a b -> Keys a -> Keys a

Add a Key to Keys.

Instances

Instances details
Monoid (Keys a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

mempty :: Keys a #

mappend :: Keys a -> Keys a -> Keys a #

mconcat :: [Keys a] -> Keys a #

Semigroup (Keys a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(<>) :: Keys a -> Keys a -> Keys a #

sconcat :: NonEmpty (Keys a) -> Keys a #

stimes :: Integral b => b -> Keys a -> Keys a #

singletonKeys :: Key a b -> Keys a Source #

Keys with a single Key.

Since: 1.0.0.0

toGremlinKeys :: Keys a -> [Text] Source #

Convert Keys to a list of Gremlin scripts.

Since: 2.0.1.0

(-:) :: Key a b -> Keys a -> Keys a infixr 5 Source #

Prepend a Key to Keys.

Since: 1.0.0.0

Path

newtype Path a Source #

org.apache.tinkerpop.gremlin.process.traversal.Path interface.

Since: 1.1.0.0

Constructors

Path 

Fields

Instances

Instances details
Foldable Path Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fold :: Monoid m => Path m -> m #

foldMap :: Monoid m => (a -> m) -> Path a -> m #

foldMap' :: Monoid m => (a -> m) -> Path a -> m #

foldr :: (a -> b -> b) -> b -> Path a -> b #

foldr' :: (a -> b -> b) -> b -> Path a -> b #

foldl :: (b -> a -> b) -> b -> Path a -> b #

foldl' :: (b -> a -> b) -> b -> Path a -> b #

foldr1 :: (a -> a -> a) -> Path a -> a #

foldl1 :: (a -> a -> a) -> Path a -> a #

toList :: Path a -> [a] #

null :: Path a -> Bool #

length :: Path a -> Int #

elem :: Eq a => a -> Path a -> Bool #

maximum :: Ord a => Path a -> a #

minimum :: Ord a => Path a -> a #

sum :: Num a => Path a -> a #

product :: Num a => Path a -> a #

Traversable Path Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

traverse :: Applicative f => (a -> f b) -> Path a -> f (Path b) #

sequenceA :: Applicative f => Path (f a) -> f (Path a) #

mapM :: Monad m => (a -> m b) -> Path a -> m (Path b) #

sequence :: Monad m => Path (m a) -> m (Path a) #

Functor Path Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a -> b) -> Path a -> Path b #

(<$) :: a -> Path b -> Path a #

FromGraphSON a => FromJSON (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Monoid (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

mempty :: Path a #

mappend :: Path a -> Path a -> Path a #

mconcat :: [Path a] -> Path a #

Semigroup (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(<>) :: Path a -> Path a -> Path a #

sconcat :: NonEmpty (Path a) -> Path a #

stimes :: Integral b => b -> Path a -> Path a #

Show a => Show (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

showsPrec :: Int -> Path a -> ShowS #

show :: Path a -> String #

showList :: [Path a] -> ShowS #

Eq a => Eq (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(==) :: Path a -> Path a -> Bool #

(/=) :: Path a -> Path a -> Bool #

Ord a => Ord (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

compare :: Path a -> Path a -> Ordering #

(<) :: Path a -> Path a -> Bool #

(<=) :: Path a -> Path a -> Bool #

(>) :: Path a -> Path a -> Bool #

(>=) :: Path a -> Path a -> Bool #

max :: Path a -> Path a -> Path a #

min :: Path a -> Path a -> Path a #

AsIterator (Path a) Source #

Path is an Iterable that emits its objects of type a.

Instance details

Defined in Data.Greskell.Graph

Associated Types

type IteratorItem (Path a) #

FromGraphSON a => FromGraphSON (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

parseGraphSON :: GValue -> Parser (Path a) #

GraphSONTyped (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

gsonTypeFor :: Path a -> Text #

type IteratorItem (Path a) Source # 
Instance details

Defined in Data.Greskell.Graph

type IteratorItem (Path a) = a

data PathEntry a Source #

An entry in a Path.

Since: 1.1.0.0

Constructors

PathEntry 

Fields

Instances

Instances details
Foldable PathEntry Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fold :: Monoid m => PathEntry m -> m #

foldMap :: Monoid m => (a -> m) -> PathEntry a -> m #

foldMap' :: Monoid m => (a -> m) -> PathEntry a -> m #

foldr :: (a -> b -> b) -> b -> PathEntry a -> b #

foldr' :: (a -> b -> b) -> b -> PathEntry a -> b #

foldl :: (b -> a -> b) -> b -> PathEntry a -> b #

foldl' :: (b -> a -> b) -> b -> PathEntry a -> b #

foldr1 :: (a -> a -> a) -> PathEntry a -> a #

foldl1 :: (a -> a -> a) -> PathEntry a -> a #

toList :: PathEntry a -> [a] #

null :: PathEntry a -> Bool #

length :: PathEntry a -> Int #

elem :: Eq a => a -> PathEntry a -> Bool #

maximum :: Ord a => PathEntry a -> a #

minimum :: Ord a => PathEntry a -> a #

sum :: Num a => PathEntry a -> a #

product :: Num a => PathEntry a -> a #

Traversable PathEntry Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

traverse :: Applicative f => (a -> f b) -> PathEntry a -> f (PathEntry b) #

sequenceA :: Applicative f => PathEntry (f a) -> f (PathEntry a) #

mapM :: Monad m => (a -> m b) -> PathEntry a -> m (PathEntry b) #

sequence :: Monad m => PathEntry (m a) -> m (PathEntry a) #

Functor PathEntry Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a -> b) -> PathEntry a -> PathEntry b #

(<$) :: a -> PathEntry b -> PathEntry a #

Show a => Show (PathEntry a) Source # 
Instance details

Defined in Data.Greskell.Graph

Eq a => Eq (PathEntry a) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(==) :: PathEntry a -> PathEntry a -> Bool #

(/=) :: PathEntry a -> PathEntry a -> Bool #

Ord a => Ord (PathEntry a) Source # 
Instance details

Defined in Data.Greskell.Graph

pathToPMap :: Path a -> PMap Multi a Source #

Convert a Path into PMap.

In the result PMap, the keys are the labels in the Path, and the values are the objects associated with the labels. The values are stored in the same order in the Path. Objects without any label are discarded.

Since: 1.1.0.0

makePathEntry Source #

Arguments

:: [AsLabel a]

labels

-> a

object

-> PathEntry a 

Make a PathEntry.

Since: 1.1.0.0

Concrete data types

Graph structure data types based on Aeson.

You can use those types directly in your programs. You can also define your own graph types by wrapping those with newtype. See README.md for detail.

Historical note:

  • Since version 1.0.0.0, the concrete data types don't keep properties, and IDs are of ElementID type.
  • In version 0.1.1.0 and before, these conrete data types were based on GraphSON Value. In version 0.2.0.0, this was changed to GValue, so that it can parse nested data structures encoded in GraphSON.

data AVertex Source #

General vertex type you can use for Vertex class.

Constructors

AVertex 

Fields

Instances

Instances details
FromJSON AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Show AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Eq AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

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

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

Element AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

ElementData AVertex Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

Vertex AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

FromGraphSON AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

GraphSONTyped AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

gsonTypeFor :: AVertex -> Text #

type ElementProperty AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

type ElementPropertyContainer AVertex Source # 
Instance details

Defined in Data.Greskell.Graph

Edge

data AEdge Source #

General edge type you can use for Edge class.

Constructors

AEdge 

Fields

Instances

Instances details
FromJSON AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Show AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

showsPrec :: Int -> AEdge -> ShowS #

show :: AEdge -> String #

showList :: [AEdge] -> ShowS #

Eq AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

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

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

Edge AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Element AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

ElementData AEdge Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

FromGraphSON AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

GraphSONTyped AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

gsonTypeFor :: AEdge -> Text #

type ElementProperty AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

type ElementPropertyContainer AEdge Source # 
Instance details

Defined in Data.Greskell.Graph

VertexProperty

data AVertexProperty v Source #

General vertex property type you can use for VertexProperty.

If you are not sure about the type v, just use GValue.

Constructors

AVertexProperty 

Fields

Instances

Instances details
Foldable AVertexProperty Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fold :: Monoid m => AVertexProperty m -> m #

foldMap :: Monoid m => (a -> m) -> AVertexProperty a -> m #

foldMap' :: Monoid m => (a -> m) -> AVertexProperty a -> m #

foldr :: (a -> b -> b) -> b -> AVertexProperty a -> b #

foldr' :: (a -> b -> b) -> b -> AVertexProperty a -> b #

foldl :: (b -> a -> b) -> b -> AVertexProperty a -> b #

foldl' :: (b -> a -> b) -> b -> AVertexProperty a -> b #

foldr1 :: (a -> a -> a) -> AVertexProperty a -> a #

foldl1 :: (a -> a -> a) -> AVertexProperty a -> a #

toList :: AVertexProperty a -> [a] #

null :: AVertexProperty a -> Bool #

length :: AVertexProperty a -> Int #

elem :: Eq a => a -> AVertexProperty a -> Bool #

maximum :: Ord a => AVertexProperty a -> a #

minimum :: Ord a => AVertexProperty a -> a #

sum :: Num a => AVertexProperty a -> a #

product :: Num a => AVertexProperty a -> a #

Traversable AVertexProperty Source #

Traverse the property value.

Instance details

Defined in Data.Greskell.Graph

Methods

traverse :: Applicative f => (a -> f b) -> AVertexProperty a -> f (AVertexProperty b) #

sequenceA :: Applicative f => AVertexProperty (f a) -> f (AVertexProperty a) #

mapM :: Monad m => (a -> m b) -> AVertexProperty a -> m (AVertexProperty b) #

sequence :: Monad m => AVertexProperty (m a) -> m (AVertexProperty a) #

Functor AVertexProperty Source #

Map the property value.

Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a -> b) -> AVertexProperty a -> AVertexProperty b #

(<$) :: a -> AVertexProperty b -> AVertexProperty a #

Property AVertexProperty Source # 
Instance details

Defined in Data.Greskell.Graph

FromGraphSON v => FromJSON (AVertexProperty v) Source #

In version 0.1.1.0 and before, the constraint was FromJSON v. This has changed.

Instance details

Defined in Data.Greskell.Graph

Show v => Show (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Eq v => Eq (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Element (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

ElementData (AVertexProperty v) Source #

Since: 1.0.0.0

Instance details

Defined in Data.Greskell.Graph

FromGraphSON v => FromGraphSONWithKey (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph.PropertyMap

FromGraphSON v => FromGraphSON (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

GraphSONTyped (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

type ElementProperty (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

type ElementPropertyContainer (AVertexProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Property

data AProperty v Source #

General simple property type you can use for Property class.

If you are not sure about the type v, just use GValue.

Constructors

AProperty 

Fields

Instances

Instances details
Foldable AProperty Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fold :: Monoid m => AProperty m -> m #

foldMap :: Monoid m => (a -> m) -> AProperty a -> m #

foldMap' :: Monoid m => (a -> m) -> AProperty a -> m #

foldr :: (a -> b -> b) -> b -> AProperty a -> b #

foldr' :: (a -> b -> b) -> b -> AProperty a -> b #

foldl :: (b -> a -> b) -> b -> AProperty a -> b #

foldl' :: (b -> a -> b) -> b -> AProperty a -> b #

foldr1 :: (a -> a -> a) -> AProperty a -> a #

foldl1 :: (a -> a -> a) -> AProperty a -> a #

toList :: AProperty a -> [a] #

null :: AProperty a -> Bool #

length :: AProperty a -> Int #

elem :: Eq a => a -> AProperty a -> Bool #

maximum :: Ord a => AProperty a -> a #

minimum :: Ord a => AProperty a -> a #

sum :: Num a => AProperty a -> a #

product :: Num a => AProperty a -> a #

Traversable AProperty Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

traverse :: Applicative f => (a -> f b) -> AProperty a -> f (AProperty b) #

sequenceA :: Applicative f => AProperty (f a) -> f (AProperty a) #

mapM :: Monad m => (a -> m b) -> AProperty a -> m (AProperty b) #

sequence :: Monad m => AProperty (m a) -> m (AProperty a) #

Functor AProperty Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

fmap :: (a -> b) -> AProperty a -> AProperty b #

(<$) :: a -> AProperty b -> AProperty a #

Property AProperty Source # 
Instance details

Defined in Data.Greskell.Graph

FromGraphSON v => FromJSON (AProperty v) Source #

Parse Property of GraphSON 1.0.

In version 0.1.1.0 and before, the constraint was FromJSON v. This has changed.

Instance details

Defined in Data.Greskell.Graph

Show v => Show (AProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Eq v => Eq (AProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

(==) :: AProperty v -> AProperty v -> Bool #

(/=) :: AProperty v -> AProperty v -> Bool #

Ord v => Ord (AProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

FromGraphSON v => FromGraphSONWithKey (AProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph.PropertyMap

FromGraphSON v => FromGraphSON (AProperty v) Source #

Parse Property of GraphSON 1.0.

Instance details

Defined in Data.Greskell.Graph

GraphSONTyped (AProperty v) Source # 
Instance details

Defined in Data.Greskell.Graph

Methods

gsonTypeFor :: AProperty v -> Text #

Examples

examples :: [(Text, Text)] Source #

Examples of using this module. See the source. The fst of the output is the testee, while the snd is the expectation.