Safe Haskell | None |
---|---|
Language | Haskell2010 |
Text.Libyaml
Description
Low-level, streaming YAML interface. For a higher-level interface, see Data.Yaml.
Synopsis
- data MarkedEvent = MarkedEvent {}
- data Event
- data Style
- = Any
- | Plain
- | SingleQuoted
- | DoubleQuoted
- | Literal
- | Folded
- | PlainNoTag
- data SequenceStyle
- data MappingStyle
- data Tag
- type AnchorName = String
- type Anchor = Maybe AnchorName
- encode :: forall (m :: Type -> Type) o. MonadResource m => ConduitM Event o m ByteString
- encodeWith :: forall (m :: Type -> Type) o. MonadResource m => FormatOptions -> ConduitM Event o m ByteString
- decode :: forall (m :: Type -> Type) i. MonadResource m => ByteString -> ConduitM i Event m ()
- decodeMarked :: forall (m :: Type -> Type) i. MonadResource m => ByteString -> ConduitM i MarkedEvent m ()
- encodeFile :: forall (m :: Type -> Type) o. MonadResource m => FilePath -> ConduitM Event o m ()
- decodeFile :: forall (m :: Type -> Type) i. MonadResource m => FilePath -> ConduitM i Event m ()
- decodeFileMarked :: forall (m :: Type -> Type) i. MonadResource m => FilePath -> ConduitM i MarkedEvent m ()
- encodeFileWith :: forall (m :: Type -> Type) o. MonadResource m => FormatOptions -> FilePath -> ConduitM Event o m ()
- data FormatOptions
- defaultFormatOptions :: FormatOptions
- setWidth :: Maybe Int -> FormatOptions -> FormatOptions
- setTagRendering :: (Event -> TagRender) -> FormatOptions -> FormatOptions
- renderScalarTags :: Event -> TagRender
- renderAllTags :: Event -> TagRender
- renderNoTags :: Event -> TagRender
- renderUriTags :: Event -> TagRender
- data YamlException
- = YamlException String
- | YamlParseException {
- yamlProblem :: String
- yamlContext :: String
- yamlProblemMark :: YamlMark
- data YamlMark = YamlMark {
- yamlIndex :: Int
- yamlLine :: Int
- yamlColumn :: Int
The event stream
data MarkedEvent Source #
Event with start and end marks.
Since: 0.10.4.0
Constructors
MarkedEvent | |
Fields
|
Style for scalars - e.g. quoted / folded
Constructors
Any | |
Plain | |
SingleQuoted | |
DoubleQuoted | |
Literal | |
Folded | |
PlainNoTag |
Instances
Data Style Source # | |
Defined in Text.Libyaml Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Style -> c Style gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Style dataTypeOf :: Style -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Style) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Style) gmapT :: (forall b. Data b => b -> b) -> Style -> Style gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Style -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Style -> r gmapQ :: (forall d. Data d => d -> u) -> Style -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Style -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Style -> m Style gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Style -> m Style gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Style -> m Style | |
Bounded Style Source # | |
Defined in Text.Libyaml | |
Enum Style Source # | |
Read Style Source # | |
Defined in Text.Libyaml | |
Show Style Source # | |
Eq Style Source # | |
Ord Style Source # | |
data SequenceStyle Source #
Style for sequences - e.g. block or flow
Since: 0.9.0
Constructors
AnySequence | |
BlockSequence | |
FlowSequence |
Instances
Data SequenceStyle Source # | |
Defined in Text.Libyaml Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SequenceStyle -> c SequenceStyle gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SequenceStyle toConstr :: SequenceStyle -> Constr dataTypeOf :: SequenceStyle -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SequenceStyle) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SequenceStyle) gmapT :: (forall b. Data b => b -> b) -> SequenceStyle -> SequenceStyle gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SequenceStyle -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SequenceStyle -> r gmapQ :: (forall d. Data d => d -> u) -> SequenceStyle -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SequenceStyle -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SequenceStyle -> m SequenceStyle gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SequenceStyle -> m SequenceStyle gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SequenceStyle -> m SequenceStyle | |
Bounded SequenceStyle Source # | |
Defined in Text.Libyaml | |
Enum SequenceStyle Source # | |
Defined in Text.Libyaml Methods succ :: SequenceStyle -> SequenceStyle pred :: SequenceStyle -> SequenceStyle toEnum :: Int -> SequenceStyle fromEnum :: SequenceStyle -> Int enumFrom :: SequenceStyle -> [SequenceStyle] enumFromThen :: SequenceStyle -> SequenceStyle -> [SequenceStyle] enumFromTo :: SequenceStyle -> SequenceStyle -> [SequenceStyle] enumFromThenTo :: SequenceStyle -> SequenceStyle -> SequenceStyle -> [SequenceStyle] | |
Show SequenceStyle Source # | |
Defined in Text.Libyaml Methods showsPrec :: Int -> SequenceStyle -> ShowS show :: SequenceStyle -> String showList :: [SequenceStyle] -> ShowS | |
Eq SequenceStyle Source # | |
Defined in Text.Libyaml | |
Ord SequenceStyle Source # | |
Defined in Text.Libyaml Methods compare :: SequenceStyle -> SequenceStyle -> Ordering (<) :: SequenceStyle -> SequenceStyle -> Bool (<=) :: SequenceStyle -> SequenceStyle -> Bool (>) :: SequenceStyle -> SequenceStyle -> Bool (>=) :: SequenceStyle -> SequenceStyle -> Bool max :: SequenceStyle -> SequenceStyle -> SequenceStyle min :: SequenceStyle -> SequenceStyle -> SequenceStyle |
data MappingStyle Source #
Style for mappings - e.g. block or flow
Since: 0.9.0
Constructors
AnyMapping | |
BlockMapping | |
FlowMapping |
Instances
Data MappingStyle Source # | |
Defined in Text.Libyaml Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MappingStyle -> c MappingStyle gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MappingStyle toConstr :: MappingStyle -> Constr dataTypeOf :: MappingStyle -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c MappingStyle) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MappingStyle) gmapT :: (forall b. Data b => b -> b) -> MappingStyle -> MappingStyle gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MappingStyle -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MappingStyle -> r gmapQ :: (forall d. Data d => d -> u) -> MappingStyle -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> MappingStyle -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> MappingStyle -> m MappingStyle gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MappingStyle -> m MappingStyle gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MappingStyle -> m MappingStyle | |
Bounded MappingStyle Source # | |
Defined in Text.Libyaml | |
Enum MappingStyle Source # | |
Defined in Text.Libyaml Methods succ :: MappingStyle -> MappingStyle pred :: MappingStyle -> MappingStyle toEnum :: Int -> MappingStyle fromEnum :: MappingStyle -> Int enumFrom :: MappingStyle -> [MappingStyle] enumFromThen :: MappingStyle -> MappingStyle -> [MappingStyle] enumFromTo :: MappingStyle -> MappingStyle -> [MappingStyle] enumFromThenTo :: MappingStyle -> MappingStyle -> MappingStyle -> [MappingStyle] | |
Show MappingStyle Source # | |
Defined in Text.Libyaml Methods showsPrec :: Int -> MappingStyle -> ShowS show :: MappingStyle -> String showList :: [MappingStyle] -> ShowS | |
Eq MappingStyle Source # | |
Defined in Text.Libyaml | |
Ord MappingStyle Source # | |
Defined in Text.Libyaml Methods compare :: MappingStyle -> MappingStyle -> Ordering (<) :: MappingStyle -> MappingStyle -> Bool (<=) :: MappingStyle -> MappingStyle -> Bool (>) :: MappingStyle -> MappingStyle -> Bool (>=) :: MappingStyle -> MappingStyle -> Bool max :: MappingStyle -> MappingStyle -> MappingStyle min :: MappingStyle -> MappingStyle -> MappingStyle |
Instances
Data Tag Source # | |
Defined in Text.Libyaml Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Tag -> c Tag gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Tag dataTypeOf :: Tag -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Tag) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tag) gmapT :: (forall b. Data b => b -> b) -> Tag -> Tag gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r gmapQ :: (forall d. Data d => d -> u) -> Tag -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Tag -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Tag -> m Tag gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Tag -> m Tag gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Tag -> m Tag | |
Read Tag Source # | |
Defined in Text.Libyaml | |
Show Tag Source # | |
Eq Tag Source # | |
type AnchorName = String Source #
type Anchor = Maybe AnchorName Source #
Encoding and decoding
encodeWith :: forall (m :: Type -> Type) o. MonadResource m => FormatOptions -> ConduitM Event o m ByteString Source #
Since: 0.10.2.0
decode :: forall (m :: Type -> Type) i. MonadResource m => ByteString -> ConduitM i Event m () Source #
Create a conduit that yields events from a bytestring.
decodeMarked :: forall (m :: Type -> Type) i. MonadResource m => ByteString -> ConduitM i MarkedEvent m () Source #
Create a conduit that yields marked events from a bytestring.
This conduit will yield identical events to that of "decode", but also includes start and end marks for each event.
Since: 0.10.4.0
encodeFile :: forall (m :: Type -> Type) o. MonadResource m => FilePath -> ConduitM Event o m () Source #
decodeFile :: forall (m :: Type -> Type) i. MonadResource m => FilePath -> ConduitM i Event m () Source #
Creata a conduit that yields events from a file.
decodeFileMarked :: forall (m :: Type -> Type) i. MonadResource m => FilePath -> ConduitM i MarkedEvent m () Source #
Create a conduit that yields marked events from a file.
This conduit will yield identical events to that of "decodeFile", but also includes start and end marks for each event.
Since: 0.10.4.0
encodeFileWith :: forall (m :: Type -> Type) o. MonadResource m => FormatOptions -> FilePath -> ConduitM Event o m () Source #
Since: 0.10.2.0
data FormatOptions Source #
Contains options relating to the formatting (indendation, width) of the YAML output.
Since: 0.10.2.0
defaultFormatOptions :: FormatOptions Source #
Since: 0.10.2.0
setWidth :: Maybe Int -> FormatOptions -> FormatOptions Source #
Set the maximum number of columns in the YAML output, or Nothing
for infinite. By default, the limit is 80 characters.
Since: 0.10.2.0
setTagRendering :: (Event -> TagRender) -> FormatOptions -> FormatOptions Source #
Control when and whether tags are rendered to output.
Since: 0.1.1.0
renderScalarTags :: Event -> TagRender Source #
A value for formatOptionsRenderTags
that renders no
collection tags but all scalar tags (unless suppressed with styles
'NoTag or PlainNoTag
).
Since: 0.1.1.0
renderAllTags :: Event -> TagRender Source #
A value for formatOptionsRenderTags
that renders all
tags (except NoTag
tag and PlainNoTag
style).
Since: 0.1.1.0
renderNoTags :: Event -> TagRender Source #
A value for formatOptionsRenderTags
that renders no
tags.
Since: 0.1.1.0
renderUriTags :: Event -> TagRender Source #
A value for formatOptionsRenderCollectionTags
that renders tags
which are instances of UriTag
Since: 0.1.1.0
Error handling
data YamlException Source #
Constructors
YamlException String | |
YamlParseException | problem, context, index, position line, position column |
Fields
|
Instances
Exception YamlException Source # | |
Defined in Text.Libyaml Methods toException :: YamlException -> SomeException fromException :: SomeException -> Maybe YamlException displayException :: YamlException -> String | |
Show YamlException Source # | |
Defined in Text.Libyaml Methods showsPrec :: Int -> YamlException -> ShowS show :: YamlException -> String showList :: [YamlException] -> ShowS |