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

Safe HaskellNone
LanguageHaskell2010

Symantic.XML.Write

Contents

Synopsis

Type Write

newtype Write params k Source #

Constructors

Write 

Fields

Instances
Constant Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Dicurryable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Eitherable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Emptyable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

empty :: Write k k

Optionable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

option :: Write k k -> Write k k

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

Repeatable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

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

Tupable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Unitable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

unit :: Write (() -> k) k

Dimapable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Composable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Voidable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

Permutable Write Source # 
Instance details

Defined in Symantic.XML.Write

Associated Types

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

Methods

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

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

noPerm :: Permutation Write k k

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

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

Textable Write Source # 
Instance details

Defined in Symantic.XML.Write

Associated Types

type TextConstraint Write a :: Constraint Source #

Methods

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

XML Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

namespace :: Maybe NCName -> Namespace -> Write k k Source #

element :: QName -> Write a k -> Write a k Source #

attribute :: QName -> Write a k -> Write a k Source #

pi :: PName -> Write (Text -> k) k Source #

literal :: Text -> Write k k Source #

comment :: Write (Text -> k) k Source #

cdata :: Write (Text -> k) k Source #

Definable Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

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

RelaxNG Write Source # 
Instance details

Defined in Symantic.XML.Write

Methods

elementMatch :: NameClass -> Write a k -> Write (QName -> a) k Source #

attributeMatch :: NameClass -> Write a k -> Write (QName -> a) k Source #

Tupable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

(<:>) :: WritePerm Write (a -> k) k -> WritePerm Write (b -> k) k -> WritePerm Write ((a, b) -> k) k

Dimapable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

dimap :: (a -> b) -> (b -> a) -> WritePerm Write (a -> k) k -> WritePerm Write (b -> k) k

Composable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

(<.>) :: WritePerm Write a b -> WritePerm Write b c -> WritePerm Write a c

type Permutation Write Source # 
Instance details

Defined in Symantic.XML.Write

type Permutation Write = WritePerm Write
type TextConstraint Write a Source # 
Instance details

Defined in Symantic.XML.Write

write :: Write params ByteString -> params Source #

runWrite :: WriteInh -> Write params ByteString -> params Source #

writeUtf8 :: FilePath -> Write params (IO (Maybe ErrorWrite)) -> params Source #

Type Write

Type WriteInh

data WriteInh Source #

Top-down inheritage.

Type WriteSyn

Type WritePerm

newtype WritePerm repr xml k Source #

Constructors

WritePerm 

Fields

Instances
Tupable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

(<:>) :: WritePerm Write (a -> k) k -> WritePerm Write (b -> k) k -> WritePerm Write ((a, b) -> k) k

Transformable (WritePerm repr) Source # 
Instance details

Defined in Symantic.XML.Write

Associated Types

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

Methods

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

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

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

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

Dimapable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

dimap :: (a -> b) -> (b -> a) -> WritePerm Write (a -> k) k -> WritePerm Write (b -> k) k

Composable (WritePerm Write) Source # 
Instance details

Defined in Symantic.XML.Write

Methods

(<.>) :: WritePerm Write a b -> WritePerm Write b c -> WritePerm Write a c

type UnTrans (WritePerm repr) Source # 
Instance details

Defined in Symantic.XML.Write

type UnTrans (WritePerm repr) = repr

Class EncodeText

class EncodeText a where Source #

Minimal complete definition

Nothing

Methods

encodeText :: a -> Text Source #

encodeText :: Show a => a -> Text Source #

Instances
EncodeText Bool Source # 
Instance details

Defined in Symantic.XML.Write

Methods

encodeText :: Bool -> Text Source #

EncodeText Int Source # 
Instance details

Defined in Symantic.XML.Write

Methods

encodeText :: Int -> Text Source #

EncodeText Integer Source # 
Instance details

Defined in Symantic.XML.Write

EncodeText Natural Source # 
Instance details

Defined in Symantic.XML.Write

EncodeText String Source # 
Instance details

Defined in Symantic.XML.Write

EncodeText Text Source # 
Instance details

Defined in Symantic.XML.Write

EncodeText Text Source # 
Instance details

Defined in Symantic.XML.Write

Methods

encodeText :: Text -> Text Source #