katydid-0.3.1.0: A haskell implementation of Katydid

Safe HaskellSafe
LanguageHaskell2010

Parsers

Description

This module describes the abstract tree that can be validated by Relapse.

The JSON and XML parsers both are both versions of this type class.

Synopsis

Documentation

class Tree a where Source #

Tree is the type class that should be implemented by a katydid parser. This is implemented by the Json and XML parser.

Minimal complete definition

getLabel, getChildren

Methods

getLabel :: a -> Label Source #

getChildren :: a -> [a] Source #

Instances
Tree XmlTree Source # 
Instance details

Defined in Xml

Tree JsonTree Source # 
Instance details

Defined in Json

data Label Source #

Label is a tagged union of all possible value types that can returned by a katydid parser: String, Int, Uint, Double, Bool and Bytes.

Instances
Eq Label Source # 
Instance details

Defined in Parsers

Methods

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

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

Ord Label Source # 
Instance details

Defined in Parsers

Methods

compare :: Label -> Label -> Ordering #

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

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

(>) :: Label -> Label -> Bool #

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

max :: Label -> Label -> Label #

min :: Label -> Label -> Label #

Show Label Source # 
Instance details

Defined in Parsers

Methods

showsPrec :: Int -> Label -> ShowS #

show :: Label -> String #

showList :: [Label] -> ShowS #

Generic Label Source # 
Instance details

Defined in Parsers

Associated Types

type Rep Label :: * -> * #

Methods

from :: Label -> Rep Label x #

to :: Rep Label x -> Label #

NFData Label Source # 
Instance details

Defined in Parsers

Methods

rnf :: Label -> () #

Tree JsonTree Source # 
Instance details

Defined in Json

type Rep Label Source # 
Instance details

Defined in Parsers