symantic-xml-2.0.0.20200523: Library for reading, validating and writing XML.

Safe HaskellNone
LanguageHaskell2010

Symantic.XML.Tree.Data

Synopsis

Documentation

newtype TreeDataPerm repr xml k Source #

Constructors

TreeDataPerm 

Fields

Instances
Tupable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(<:>) :: TreeDataPerm TreeData (a -> k) k -> TreeDataPerm TreeData (b -> k) k -> TreeDataPerm TreeData ((a, b) -> k) k

Transformable (TreeDataPerm repr) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Associated Types

type UnTrans (TreeDataPerm repr) :: Type -> Type -> Type

Methods

noTrans :: UnTrans (TreeDataPerm repr) a b -> TreeDataPerm repr a b

unTrans :: TreeDataPerm repr a b -> UnTrans (TreeDataPerm repr) a b

trans1 :: (UnTrans (TreeDataPerm repr) a b -> UnTrans (TreeDataPerm repr) c d) -> TreeDataPerm repr a b -> TreeDataPerm repr c d

trans2 :: (UnTrans (TreeDataPerm repr) a b -> UnTrans (TreeDataPerm repr) c d -> UnTrans (TreeDataPerm repr) e f) -> TreeDataPerm repr a b -> TreeDataPerm repr c d -> TreeDataPerm repr e f

Dimapable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

dimap :: (a -> b) -> (b -> a) -> TreeDataPerm TreeData (a -> k) k -> TreeDataPerm TreeData (b -> k) k

Composable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

type UnTrans (TreeDataPerm repr) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

type UnTrans (TreeDataPerm repr) = repr

type SourcedTrees src = Trees (Sourced src) Source #

type SourcedTree src = Tree (Sourced src) Source #

newtype TreeData params k Source #

Constructors

TreeData 

Fields

Instances
Constant TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

constant :: a -> TreeData (a -> k) k

Dicurryable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

dicurry :: CurryN args => proxy args -> (args -..-> r) -> (r -> Tuples args) -> TreeData (args -..-> k) k -> TreeData (r -> k) k

Eitherable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(<+>) :: TreeData (a -> k) k -> TreeData (b -> k) k -> TreeData (Either a b -> k) k

Emptyable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

empty :: TreeData k k

Optionable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

option :: TreeData k k -> TreeData k k

optional :: TreeData (a -> k) k -> TreeData (Maybe a -> k) k

Repeatable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

many0 :: TreeData (a -> k) k -> TreeData ([a] -> k) k

many1 :: TreeData (a -> k) k -> TreeData ([a] -> k) k

Tupable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(<:>) :: TreeData (a -> k) k -> TreeData (b -> k) k -> TreeData ((a, b) -> k) k

Unitable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

unit :: TreeData (() -> k) k

Dimapable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

dimap :: (a -> b) -> (b -> a) -> TreeData (a -> k) k -> TreeData (b -> k) k

Composable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(<.>) :: TreeData a b -> TreeData b c -> TreeData a c

Voidable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

void :: a -> TreeData (a -> b) k -> TreeData b k

Permutable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Associated Types

type Permutation TreeData = (r :: Type -> Type -> Type)

Methods

permutable :: Permutation TreeData (a -> k) k -> TreeData (a -> k) k

perm :: TreeData (a -> k) k -> Permutation TreeData (a -> k) k

noPerm :: Permutation TreeData k k

permWithDefault :: a -> TreeData (a -> k) k -> Permutation TreeData (a -> k) k

optionalPerm :: (Eitherable TreeData, Dimapable TreeData, Permutable TreeData) => TreeData (a -> k) k -> Permutation TreeData (Maybe a -> k) k

Textable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Associated Types

type TextConstraint TreeData a :: Constraint Source #

Methods

text :: TextConstraint TreeData a => TreeData (a -> k) k Source #

XML TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Definable TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

define :: DefineName -> TreeData a k -> TreeData a k Source #

RelaxNG TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Tupable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(<:>) :: TreeDataPerm TreeData (a -> k) k -> TreeDataPerm TreeData (b -> k) k -> TreeDataPerm TreeData ((a, b) -> k) k

Dimapable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

dimap :: (a -> b) -> (b -> a) -> TreeDataPerm TreeData (a -> k) k -> TreeDataPerm TreeData (b -> k) k

Composable (TreeDataPerm TreeData) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

type Permutation TreeData Source # 
Instance details

Defined in Symantic.XML.Tree.Data

type Permutation TreeData = TreeDataPerm TreeData
type TextConstraint TreeData a Source # 
Instance details

Defined in Symantic.XML.Tree.Data

data Node attr Source #

Constructors

NodeElem QName (HashMap QName attr)

Node.

NodePI PName Text

Leaf (except for ?xml? which has NodePI children.

NodeText EscapedText

Leaf.

NodeComment Text

Leaf.

NodeCDATA Text

Leaf.

Instances
Eq attr => Eq (Node attr) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

(==) :: Node attr -> Node attr -> Bool #

(/=) :: Node attr -> Node attr -> Bool #

Ord attr => Ord (Node attr) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

compare :: Node attr -> Node attr -> Ordering #

(<) :: Node attr -> Node attr -> Bool #

(<=) :: Node attr -> Node attr -> Bool #

(>) :: Node attr -> Node attr -> Bool #

(>=) :: Node attr -> Node attr -> Bool #

max :: Node attr -> Node attr -> Node attr #

min :: Node attr -> Node attr -> Node attr #

Show attr => Show (Node attr) Source # 
Instance details

Defined in Symantic.XML.Tree.Data

Methods

showsPrec :: Int -> Node attr -> ShowS #

show :: Node attr -> String #

showList :: [Node attr] -> ShowS #

ReadConstraints src => Stream (ReadStream src) Source # 
Instance details

Defined in Symantic.XML.Read

Associated Types

type Token (ReadStream src) :: Type #

type Tokens (ReadStream src) :: Type #

type Tokens (ReadStream src) Source # 
Instance details

Defined in Symantic.XML.Read

type Tokens (ReadStream src) = ReadStream src
type Token (ReadStream src) Source # 
Instance details

Defined in Symantic.XML.Read

type Token (ReadStream src) = Either (HashMap QName (src EscapedAttr)) (Tree src)

type Trees src = Trees (src (Node (src EscapedAttr))) Source #

type Tree src = Tree (src (Node (src EscapedAttr))) Source #

pattern Tree0 :: a -> Tree a Source #

tree :: TreeData callers (Trees Identity) -> callers Source #

union :: Semigroup (Sourced src EscapedText) => SourcedTrees src -> SourcedTrees src -> SourcedTrees src Source #

Unify two Trees, merging border NodeTexts if any.

unTree :: Tree a -> a #

subTrees :: Tree a -> Trees a #