asn1-data-0.7.2: ASN1 data reader and writer in RAW, BER and DER forms

LicenseBSD-style
MaintainerVincent Hanquez <vincent@snarc.org>
Stabilityexperimental
Portabilityunknown
Safe HaskellNone
LanguageHaskell98

Data.ASN1.Parse

Description

 

Synopsis

Documentation

runParseASN1State :: ParseASN1 a -> [ASN1] -> Either String (a, [ASN1]) Source

run the parse monad over a stream and returns the result and the remaining ASN1 Stream.

runParseASN1 :: ParseASN1 a -> [ASN1] -> Either String a Source

run the parse monad over a stream and returns the result.

onNextContainer :: ASN1ConstructionType -> ParseASN1 a -> ParseASN1 a Source

run a function of the next elements of a container of specified type

onNextContainerMaybe :: ASN1ConstructionType -> ParseASN1 a -> ParseASN1 (Maybe a) Source

just like onNextContainer, except it doens't throw an error if the container doesn't exists.

getNextContainer :: ASN1ConstructionType -> ParseASN1 [ASN1] Source

get next container of specified type and return all its elements

getNextContainerMaybe :: ASN1ConstructionType -> ParseASN1 (Maybe [ASN1]) Source

just like getNextContainer, except it doesn't throw an error if the container doesn't exists.

getNext :: ParseASN1 ASN1 Source

get next element from the stream

hasNext :: ParseASN1 Bool Source

returns if there's more elements in the stream.