pro-abstract-0.1.0.0: Abstract syntax for writing documents
Safe HaskellNone
LanguageHaskell2010

ProAbstract.Types

Synopsis

Documentation

type family Annotation x Source #

Instances

Instances details
type Annotation (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

type Annotation (Fragment ann) = ann
type Annotation (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

type Annotation (Tag ann) = ann
type Annotation (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Annotation (Tagged (PlainBlock ann)) = ann
type Annotation (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Tagged (Lines ann)) = ann
type Annotation (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Tagged (Blocks ann)) = ann
type Annotation (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Annotation (PlainBlock ann) = ann
type Annotation (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Lines ann) = ann
type Annotation (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Line ann) = ann
type Annotation (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Inline ann) = ann
type Annotation (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Annotation (Paragraph ann) = ann
type Annotation (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Blocks ann) = ann
type Annotation (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Block ann) = ann
type Annotation (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Annotation (Document ann) = ann
type Annotation (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Annotation (BlockTag ann) = ann

data Block ann Source #

Instances

Instances details
Eq ann => Eq (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

(==) :: Block ann -> Block ann -> Bool #

(/=) :: Block ann -> Block ann -> Bool #

Show ann => Show (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

showsPrec :: Int -> Block ann -> ShowS #

show :: Block ann -> String #

showList :: [Block ann] -> ShowS #

Generic (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type Rep (Block ann) :: Type -> Type #

Methods

from :: Block ann -> Rep (Block ann) x #

to :: Rep (Block ann) x -> Block ann #

NFData ann => NFData (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

rnf :: Block ann -> () #

Hashable ann => Hashable (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

hashWithSalt :: Int -> Block ann -> Int #

hash :: Block ann -> Int #

HasMetadata (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type MetadataOpticKind (Block ann) Source #

HasManyMetadata (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

CanFork (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

fork :: Prism' (Block ann) (Fork (Block ann)) Source #

HasManyPlainInlines (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

CanBePlain (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

plain :: Prism' (Block ann) (Plain (Block ann)) Source #

HasTag (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type TagOpticKind (Block ann) Source #

Methods

tag :: Optic' (TagOpticKind (Block ann)) NoIx (Block ann) (Tag (Annotation (Block ann))) Source #

HasWitherableInlineTags (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Block ann)) -> f (Maybe (Tag (Annotation (Block ann))))) -> Block ann -> f (Block ann) Source #

mapMaybeInlineTags :: (Tag (Annotation (Block ann)) -> Maybe (Tag (Annotation (Block ann)))) -> Block ann -> Block ann Source #

HasManyBlockTags (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyTags (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainBlocks (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyParagraphs (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

CanBeTagless (Block ann) Source #

Only a paragraph inline is considered to be plain text, because fork and plain blocks have tags.

Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Block ann) txt Source #

CanHaveTaglessContent (Block ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Block ann) (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

annotation :: Lens (Block ann) (Block ann) (Annotation (Block ann)) (Annotation (Block ann)) Source #

HasManyAnnotations (Block ann) (Block ann') Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

allAnnotations :: Traversal (Block ann) (Block ann') (Annotation (Block ann)) (Annotation (Block ann')) Source #

type Rep (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Rep (Block ann) = D1 ('MetaData "Block" "ProAbstract.Structure.Block" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "BlockPlain" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tagged (PlainBlock ann)))) :+: (C1 ('MetaCons "BlockParagraph" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Paragraph ann))) :+: C1 ('MetaCons "BlockFork" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tagged (Blocks ann))))))
type Annotation (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Block ann) = ann
type MetadataOpticKind (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Fork (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Fork (Block ann) = Tagged (Blocks ann)
type Plain (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Plain (Block ann) = Tagged (PlainBlock ann)
type TagOpticKind (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

data Blocks ann Source #

Instances

Instances details
IsList (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type Item (Blocks ann) #

Methods

fromList :: [Item (Blocks ann)] -> Blocks ann #

fromListN :: Int -> [Item (Blocks ann)] -> Blocks ann #

toList :: Blocks ann -> [Item (Blocks ann)] #

Eq ann => Eq (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

(==) :: Tagged (Blocks ann) -> Tagged (Blocks ann) -> Bool #

(/=) :: Tagged (Blocks ann) -> Tagged (Blocks ann) -> Bool #

Eq ann => Eq (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

(==) :: Blocks ann -> Blocks ann -> Bool #

(/=) :: Blocks ann -> Blocks ann -> Bool #

Show ann => Show (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

showsPrec :: Int -> Tagged (Blocks ann) -> ShowS #

show :: Tagged (Blocks ann) -> String #

showList :: [Tagged (Blocks ann)] -> ShowS #

Show ann => Show (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

showsPrec :: Int -> Blocks ann -> ShowS #

show :: Blocks ann -> String #

showList :: [Blocks ann] -> ShowS #

Generic (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type Rep (Tagged (Blocks ann)) :: Type -> Type #

Methods

from :: Tagged (Blocks ann) -> Rep (Tagged (Blocks ann)) x #

to :: Rep (Tagged (Blocks ann)) x -> Tagged (Blocks ann) #

Generic (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type Rep (Blocks ann) :: Type -> Type #

Methods

from :: Blocks ann -> Rep (Blocks ann) x #

to :: Rep (Blocks ann) x -> Blocks ann #

Semigroup (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

(<>) :: Blocks ann -> Blocks ann -> Blocks ann #

sconcat :: NonEmpty (Blocks ann) -> Blocks ann #

stimes :: Integral b => b -> Blocks ann -> Blocks ann #

Monoid (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

mempty :: Blocks ann #

mappend :: Blocks ann -> Blocks ann -> Blocks ann #

mconcat :: [Blocks ann] -> Blocks ann #

NFData ann => NFData (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

rnf :: Tagged (Blocks ann) -> () #

NFData ann => NFData (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

rnf :: Blocks ann -> () #

Hashable ann => Hashable (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

hashWithSalt :: Int -> Tagged (Blocks ann) -> Int #

hash :: Tagged (Blocks ann) -> Int #

Hashable ann => Hashable (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

hashWithSalt :: Int -> Blocks ann -> Int #

hash :: Blocks ann -> Int #

HasMetadata (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type MetadataOpticKind (Tagged (Blocks ann)) Source #

HasManyMetadata (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyMetadata (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainInlines (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainInlines (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasTag (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type TagOpticKind (Tagged (Blocks ann)) Source #

HasWitherableInlineTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Tagged (Blocks ann))) -> f (Maybe (Tag (Annotation (Tagged (Blocks ann)))))) -> Tagged (Blocks ann) -> f (Tagged (Blocks ann)) Source #

mapMaybeInlineTags :: (Tag (Annotation (Tagged (Blocks ann))) -> Maybe (Tag (Annotation (Tagged (Blocks ann))))) -> Tagged (Blocks ann) -> Tagged (Blocks ann) Source #

HasWitherableInlineTags (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Blocks ann)) -> f (Maybe (Tag (Annotation (Blocks ann))))) -> Blocks ann -> f (Blocks ann) Source #

mapMaybeInlineTags :: (Tag (Annotation (Blocks ann)) -> Maybe (Tag (Annotation (Blocks ann)))) -> Blocks ann -> Blocks ann Source #

HasWitherableBlockTags (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherBlockTags :: Monad f => (Tag (Annotation (Blocks ann)) -> f (Maybe (Tag (Annotation (Blocks ann))))) -> Blocks ann -> f (Blocks ann) Source #

mapMaybeBlockTags :: (Tag (Annotation (Blocks ann)) -> Maybe (Tag (Annotation (Blocks ann)))) -> Blocks ann -> Blocks ann Source #

HasManyBlockTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyBlockTags (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasWitherableTags (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherTags :: Monad f => (Tag (Annotation (Blocks ann)) -> f (Maybe (Tag (Annotation (Blocks ann))))) -> Blocks ann -> f (Blocks ann) Source #

mapMaybeTags :: (Tag (Annotation (Blocks ann)) -> Maybe (Tag (Annotation (Blocks ann)))) -> Blocks ann -> Blocks ann Source #

HasManyTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyTags (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainBlocks (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainBlocks (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyParagraphs (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyParagraphs (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

CanBeTagless (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Blocks ann) txt Source #

CanHaveTaglessContent (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

CanHaveTaglessContent (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyAnnotations (Tagged (Blocks ann)) (Tagged (Blocks ann')) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyAnnotations (Blocks ann) (Blocks ann') Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasContent (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

content :: Lens (Tagged (Blocks ann)) (Tagged (Blocks ann)) (Content (Tagged (Blocks ann))) (Content (Tagged (Blocks ann))) Source #

HasContents (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

contents :: Lens (Tagged (Blocks ann)) (Tagged (Blocks ann)) (Seq (Contents (Tagged (Blocks ann)))) (Seq (Contents (Tagged (Blocks ann)))) Source #

HasContents (Blocks ann) (Blocks ann') Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

contents :: Lens (Blocks ann) (Blocks ann') (Seq (Contents (Blocks ann))) (Seq (Contents (Blocks ann'))) Source #

type Rep (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Rep (Tagged (Blocks ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.Block" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedBlocks" 'PrefixI 'True) (S1 ('MetaSel ('Just "blocksTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedBlocks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Blocks ann))))
type Rep (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Rep (Blocks ann) = D1 ('MetaData "Blocks" "ProAbstract.Structure.Block" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'True) (C1 ('MetaCons "Blocks" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (Block ann)))))
type Item (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Item (Blocks ann) = Block ann
type Annotation (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Tagged (Blocks ann)) = ann
type Annotation (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Blocks ann) = ann
type Content (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Content (Tagged (Blocks ann)) = Blocks ann
type Contents (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Contents (Tagged (Blocks ann)) = Block ann
type Contents (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Contents (Blocks ann) = Block ann
type MetadataOpticKind (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type TagOpticKind (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

data Tagged (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

data BlockTag ann Source #

Instances

Instances details
HasMetadata (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

Associated Types

type MetadataOpticKind (BlockTag ann) Source #

HasManyMetadata (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

CanFork (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

Methods

fork :: Prism' (BlockTag ann) (Fork (BlockTag ann)) Source #

HasManyPlainInlines (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

CanBePlain (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

Methods

plain :: Prism' (BlockTag ann) (Plain (BlockTag ann)) Source #

HasTag (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

Associated Types

type TagOpticKind (BlockTag ann) Source #

HasManyTags (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

HasManyPlainBlocks (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

HasManyParagraphs (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

CanHaveTaglessContent (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (BlockTag ann) (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

HasManyAnnotations (BlockTag ann) (BlockTag ann') Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Annotation (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Annotation (BlockTag ann) = ann
type MetadataOpticKind (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Fork (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Fork (BlockTag ann) = Tagged (Blocks ann)
type Plain (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Plain (BlockTag ann) = Tagged (PlainBlock ann)
type TagOpticKind (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type family Content a Source #

Instances

Instances details
type Content (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

type Content (Fragment ann) = Text
type Content (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Content (Tagged (PlainBlock ann)) = PlainBlock ann
type Content (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Content (Tagged (Lines ann)) = Lines ann
type Content (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Content (Tagged (Blocks ann)) = Blocks ann
type Content (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Content (Paragraph ann) = Lines ann
type Content (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Content (Document ann) = Blocks ann

type family Contents a Source #

Instances

Instances details
type Contents (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Contents (Tagged (PlainBlock ann)) = Fragment ann
type Contents (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Tagged (Lines ann)) = Line ann
type Contents (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Contents (Tagged (Blocks ann)) = Block ann
type Contents (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Contents (PlainBlock ann) = Fragment ann
type Contents (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Lines ann) = Line ann
type Contents (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Line ann) = Inline ann
type Contents (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Contents (Paragraph ann) = Line ann
type Contents (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Contents (Blocks ann) = Block ann
type Contents (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Contents (Document ann) = Block ann

data Document ann Source #

Instances

Instances details
Eq ann => Eq (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

(==) :: Document ann -> Document ann -> Bool #

(/=) :: Document ann -> Document ann -> Bool #

Show ann => Show (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

showsPrec :: Int -> Document ann -> ShowS #

show :: Document ann -> String #

showList :: [Document ann] -> ShowS #

Generic (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Associated Types

type Rep (Document ann) :: Type -> Type #

Methods

from :: Document ann -> Rep (Document ann) x #

to :: Rep (Document ann) x -> Document ann #

NFData ann => NFData (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

rnf :: Document ann -> () #

Hashable ann => Hashable (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

hashWithSalt :: Int -> Document ann -> Int #

hash :: Document ann -> Int #

HasMetadata (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Associated Types

type MetadataOpticKind (Document ann) Source #

HasManyMetadata (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasManyPlainInlines (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasWitherableInlineTags (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Document ann)) -> f (Maybe (Tag (Annotation (Document ann))))) -> Document ann -> f (Document ann) Source #

mapMaybeInlineTags :: (Tag (Annotation (Document ann)) -> Maybe (Tag (Annotation (Document ann)))) -> Document ann -> Document ann Source #

HasWitherableBlockTags (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

witherBlockTags :: Monad f => (Tag (Annotation (Document ann)) -> f (Maybe (Tag (Annotation (Document ann))))) -> Document ann -> f (Document ann) Source #

mapMaybeBlockTags :: (Tag (Annotation (Document ann)) -> Maybe (Tag (Annotation (Document ann)))) -> Document ann -> Document ann Source #

HasManyBlockTags (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasWitherableTags (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

witherTags :: Monad f => (Tag (Annotation (Document ann)) -> f (Maybe (Tag (Annotation (Document ann))))) -> Document ann -> f (Document ann) Source #

mapMaybeTags :: (Tag (Annotation (Document ann)) -> Maybe (Tag (Annotation (Document ann)))) -> Document ann -> Document ann Source #

HasManyTags (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasManyPlainBlocks (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasManyParagraphs (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

CanHaveTaglessContent (Document ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasManyAnnotations (Document ann) (Document ann') Source # 
Instance details

Defined in ProAbstract.Structure.Document

HasContent (Document ann) (Document ann') Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

content :: Lens (Document ann) (Document ann') (Content (Document ann)) (Content (Document ann')) Source #

HasContents (Document ann) (Document ann') Source # 
Instance details

Defined in ProAbstract.Structure.Document

Methods

contents :: Lens (Document ann) (Document ann') (Seq (Contents (Document ann))) (Seq (Contents (Document ann'))) Source #

type Rep (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Rep (Document ann) = D1 ('MetaData "Document" "ProAbstract.Structure.Document" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Document" 'PrefixI 'True) (S1 ('MetaSel ('Just "documentMetadata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Metadata) :*: S1 ('MetaSel ('Just "documentContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Blocks ann))))
type Annotation (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Annotation (Document ann) = ann
type Content (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Content (Document ann) = Blocks ann
type Contents (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type Contents (Document ann) = Block ann
type MetadataOpticKind (Document ann) Source # 
Instance details

Defined in ProAbstract.Structure.Document

type family Fork a Source #

Instances

Instances details
type Fork (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Fork (Inline ann) = Tagged (Lines ann)
type Fork (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Fork (Block ann) = Tagged (Blocks ann)
type Fork (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Fork (BlockTag ann) = Tagged (Blocks ann)

data Fragment ann Source #

Instances

Instances details
Eq ann => Eq (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

(==) :: Fragment ann -> Fragment ann -> Bool #

(/=) :: Fragment ann -> Fragment ann -> Bool #

Show ann => Show (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

showsPrec :: Int -> Fragment ann -> ShowS #

show :: Fragment ann -> String #

showList :: [Fragment ann] -> ShowS #

Generic (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Associated Types

type Rep (Fragment ann) :: Type -> Type #

Methods

from :: Fragment ann -> Rep (Fragment ann) x #

to :: Rep (Fragment ann) x -> Fragment ann #

NFData ann => NFData (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

rnf :: Fragment ann -> () #

Hashable ann => Hashable (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

hashWithSalt :: Int -> Fragment ann -> Int #

hash :: Fragment ann -> Int #

CanBeTagless (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Fragment ann) txt Source #

CanHaveTaglessContent (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Fragment ann) (Fragment ann') Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

annotation :: Lens (Fragment ann) (Fragment ann') (Annotation (Fragment ann)) (Annotation (Fragment ann')) Source #

HasContent (Fragment ann) (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

Methods

content :: Lens (Fragment ann) (Fragment ann) (Content (Fragment ann)) (Content (Fragment ann)) Source #

type Rep (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

type Rep (Fragment ann) = D1 ('MetaData "Fragment" "ProAbstract.Structure.Fragment" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Fragment" 'PrefixI 'True) (S1 ('MetaSel ('Just "fragmentText") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "fragmentAnnotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann)))
type Annotation (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

type Annotation (Fragment ann) = ann
type Content (Fragment ann) Source # 
Instance details

Defined in ProAbstract.Structure.Fragment

type Content (Fragment ann) = Text

data Inline ann Source #

Instances

Instances details
Eq ann => Eq (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(==) :: Inline ann -> Inline ann -> Bool #

(/=) :: Inline ann -> Inline ann -> Bool #

Show ann => Show (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

showsPrec :: Int -> Inline ann -> ShowS #

show :: Inline ann -> String #

showList :: [Inline ann] -> ShowS #

Generic (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Rep (Inline ann) :: Type -> Type #

Methods

from :: Inline ann -> Rep (Inline ann) x #

to :: Rep (Inline ann) x -> Inline ann #

NFData ann => NFData (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

rnf :: Inline ann -> () #

Hashable ann => Hashable (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

hashWithSalt :: Int -> Inline ann -> Int #

hash :: Inline ann -> Int #

HasMetadata (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type MetadataOpticKind (Inline ann) Source #

HasManyMetadata (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

CanFork (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

fork :: Prism' (Inline ann) (Fork (Inline ann)) Source #

HasManyPlainInlines (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

CanBePlain (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

plain :: Prism' (Inline ann) (Plain (Inline ann)) Source #

HasTag (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type TagOpticKind (Inline ann) Source #

Methods

tag :: Optic' (TagOpticKind (Inline ann)) NoIx (Inline ann) (Tag (Annotation (Inline ann))) Source #

HasManyTags (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

CanBeTagless (Inline ann) Source #

Only a plain inline is considered to be plain text, because fork inlines have a tags.

Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Inline ann) txt Source #

CanHaveTaglessContent (Inline ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Inline ann) (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

annotation :: Lens (Inline ann) (Inline ann) (Annotation (Inline ann)) (Annotation (Inline ann)) Source #

HasManyAnnotations (Inline ann) (Inline ann') Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Inline ann) = D1 ('MetaData "Inline" "ProAbstract.Structure.Inline" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "InlineFork" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tagged (Lines ann)))) :+: C1 ('MetaCons "InlinePlain" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Fragment ann))))
type Annotation (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Inline ann) = ann
type MetadataOpticKind (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Fork (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Fork (Inline ann) = Tagged (Lines ann)
type Plain (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Plain (Inline ann) = Fragment ann
type TagOpticKind (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

data Line ann Source #

Instances

Instances details
IsList (Line ()) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Item (Line ()) #

Methods

fromList :: [Item (Line ())] -> Line () #

fromListN :: Int -> [Item (Line ())] -> Line () #

toList :: Line () -> [Item (Line ())] #

Eq ann => Eq (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(==) :: Line ann -> Line ann -> Bool #

(/=) :: Line ann -> Line ann -> Bool #

Show ann => Show (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

showsPrec :: Int -> Line ann -> ShowS #

show :: Line ann -> String #

showList :: [Line ann] -> ShowS #

Generic (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Rep (Line ann) :: Type -> Type #

Methods

from :: Line ann -> Rep (Line ann) x #

to :: Rep (Line ann) x -> Line ann #

NFData ann => NFData (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

rnf :: Line ann -> () #

Hashable ann => Hashable (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

hashWithSalt :: Int -> Line ann -> Int #

hash :: Line ann -> Int #

HasManyMetadata (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyPlainInlines (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasWitherableInlineTags (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Line ann)) -> f (Maybe (Tag (Annotation (Line ann))))) -> Line ann -> f (Line ann) Source #

mapMaybeInlineTags :: (Tag (Annotation (Line ann)) -> Maybe (Tag (Annotation (Line ann)))) -> Line ann -> Line ann Source #

HasWitherableTags (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherTags :: Monad f => (Tag (Annotation (Line ann)) -> f (Maybe (Tag (Annotation (Line ann))))) -> Line ann -> f (Line ann) Source #

mapMaybeTags :: (Tag (Annotation (Line ann)) -> Maybe (Tag (Annotation (Line ann)))) -> Line ann -> Line ann Source #

HasManyTags (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

CanBeTagless (Line ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Line ann) txt Source #

CanHaveTaglessContent (Line ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Line ann) (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

annotation :: Lens (Line ann) (Line ann) (Annotation (Line ann)) (Annotation (Line ann)) Source #

HasManyAnnotations (Line ann) (Line ann') Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

allAnnotations :: Traversal (Line ann) (Line ann') (Annotation (Line ann)) (Annotation (Line ann')) Source #

HasContents (Line ann) (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

contents :: Lens (Line ann) (Line ann) (Seq (Contents (Line ann))) (Seq (Contents (Line ann))) Source #

type Rep (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Line ann) = D1 ('MetaData "Line" "ProAbstract.Structure.Inline" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Line" 'PrefixI 'True) (S1 ('MetaSel ('Just "lineInlines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (Inline ann))) :*: S1 ('MetaSel ('Just "lineAnnotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann)))
type Item (Line ()) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Item (Line ()) = Inline ()
type Annotation (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Line ann) = ann
type Contents (Line ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Line ann) = Inline ann

data Lines ann Source #

Instances

Instances details
IsList (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Item (Lines ann) #

Methods

fromList :: [Item (Lines ann)] -> Lines ann #

fromListN :: Int -> [Item (Lines ann)] -> Lines ann #

toList :: Lines ann -> [Item (Lines ann)] #

Eq ann => Eq (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(==) :: Tagged (Lines ann) -> Tagged (Lines ann) -> Bool #

(/=) :: Tagged (Lines ann) -> Tagged (Lines ann) -> Bool #

Eq ann => Eq (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(==) :: Lines ann -> Lines ann -> Bool #

(/=) :: Lines ann -> Lines ann -> Bool #

Show ann => Show (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

showsPrec :: Int -> Tagged (Lines ann) -> ShowS #

show :: Tagged (Lines ann) -> String #

showList :: [Tagged (Lines ann)] -> ShowS #

Show ann => Show (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

showsPrec :: Int -> Lines ann -> ShowS #

show :: Lines ann -> String #

showList :: [Lines ann] -> ShowS #

Generic (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Rep (Tagged (Lines ann)) :: Type -> Type #

Methods

from :: Tagged (Lines ann) -> Rep (Tagged (Lines ann)) x #

to :: Rep (Tagged (Lines ann)) x -> Tagged (Lines ann) #

Generic (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Rep (Lines ann) :: Type -> Type #

Methods

from :: Lines ann -> Rep (Lines ann) x #

to :: Rep (Lines ann) x -> Lines ann #

Semigroup (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(<>) :: Lines ann -> Lines ann -> Lines ann #

sconcat :: NonEmpty (Lines ann) -> Lines ann #

stimes :: Integral b => b -> Lines ann -> Lines ann #

Monoid (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

mempty :: Lines ann #

mappend :: Lines ann -> Lines ann -> Lines ann #

mconcat :: [Lines ann] -> Lines ann #

NFData ann => NFData (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

rnf :: Tagged (Lines ann) -> () #

NFData ann => NFData (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

rnf :: Lines ann -> () #

Hashable ann => Hashable (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

hashWithSalt :: Int -> Tagged (Lines ann) -> Int #

hash :: Tagged (Lines ann) -> Int #

Hashable ann => Hashable (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

hashWithSalt :: Int -> Lines ann -> Int #

hash :: Lines ann -> Int #

HasMetadata (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type MetadataOpticKind (Tagged (Lines ann)) Source #

HasManyMetadata (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyMetadata (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyPlainInlines (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyPlainInlines (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasTag (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type TagOpticKind (Tagged (Lines ann)) Source #

Methods

tag :: Optic' (TagOpticKind (Tagged (Lines ann))) NoIx (Tagged (Lines ann)) (Tag (Annotation (Tagged (Lines ann)))) Source #

HasWitherableInlineTags (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Tagged (Lines ann))) -> f (Maybe (Tag (Annotation (Tagged (Lines ann)))))) -> Tagged (Lines ann) -> f (Tagged (Lines ann)) Source #

mapMaybeInlineTags :: (Tag (Annotation (Tagged (Lines ann))) -> Maybe (Tag (Annotation (Tagged (Lines ann))))) -> Tagged (Lines ann) -> Tagged (Lines ann) Source #

HasWitherableInlineTags (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Lines ann)) -> f (Maybe (Tag (Annotation (Lines ann))))) -> Lines ann -> f (Lines ann) Source #

mapMaybeInlineTags :: (Tag (Annotation (Lines ann)) -> Maybe (Tag (Annotation (Lines ann)))) -> Lines ann -> Lines ann Source #

HasWitherableTags (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherTags :: Monad f => (Tag (Annotation (Lines ann)) -> f (Maybe (Tag (Annotation (Lines ann))))) -> Lines ann -> f (Lines ann) Source #

mapMaybeTags :: (Tag (Annotation (Lines ann)) -> Maybe (Tag (Annotation (Lines ann)))) -> Lines ann -> Lines ann Source #

HasManyTags (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyTags (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

CanBeTagless (Lines ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Lines ann) txt Source #

CanHaveTaglessContent (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

CanHaveTaglessContent (Lines ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

annotation :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Annotation (Tagged (Lines ann))) (Annotation (Tagged (Lines ann))) Source #

HasManyAnnotations (Tagged (Lines ann)) (Tagged (Lines ann')) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyAnnotations (Lines ann) (Lines ann') Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

allAnnotations :: Traversal (Lines ann) (Lines ann') (Annotation (Lines ann)) (Annotation (Lines ann')) Source #

HasContent (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

content :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Content (Tagged (Lines ann))) (Content (Tagged (Lines ann))) Source #

HasContents (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

contents :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Seq (Contents (Tagged (Lines ann)))) (Seq (Contents (Tagged (Lines ann)))) Source #

HasContents (Lines ann) (Lines ann') Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

contents :: Lens (Lines ann) (Lines ann') (Seq (Contents (Lines ann))) (Seq (Contents (Lines ann'))) Source #

type Rep (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Tagged (Lines ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.Inline" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedLines" 'PrefixI 'True) (S1 ('MetaSel ('Just "linesTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Lines ann))))
type Rep (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Lines ann) = D1 ('MetaData "Lines" "ProAbstract.Structure.Inline" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'True) (C1 ('MetaCons "Lines" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (Line ann)))))
type Item (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Item (Lines ann) = Line ann
type Annotation (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Tagged (Lines ann)) = ann
type Annotation (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Lines ann) = ann
type Content (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Content (Tagged (Lines ann)) = Lines ann
type Contents (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Tagged (Lines ann)) = Line ann
type Contents (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Lines ann) = Line ann
type MetadataOpticKind (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type TagOpticKind (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

data Tagged (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

data Tagged (Lines ann) = TaggedLines {}

data Map k a #

A Map from keys k to values a.

The Semigroup operation for Map is union, which prefers values from the left operand. If m1 maps a key k to a value a1, and m2 maps the same key to a different value a2, then their union m1 <> m2 maps k to a1.

Instances

Instances details
Eq2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Map a c -> Map b d -> Bool #

Ord2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Map a c -> Map b d -> Ordering #

Show2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Map a b -> ShowS #

liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Map a b] -> ShowS #

Hashable2 Map

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt2 :: (Int -> a -> Int) -> (Int -> b -> Int) -> Int -> Map a b -> Int #

Functor (Map k) 
Instance details

Defined in Data.Map.Internal

Methods

fmap :: (a -> b) -> Map k a -> Map k b #

(<$) :: a -> Map k b -> Map k a #

Foldable (Map k)

Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold :: Monoid m => Map k m -> m #

foldMap :: Monoid m => (a -> m) -> Map k a -> m #

foldMap' :: Monoid m => (a -> m) -> Map k a -> m #

foldr :: (a -> b -> b) -> b -> Map k a -> b #

foldr' :: (a -> b -> b) -> b -> Map k a -> b #

foldl :: (b -> a -> b) -> b -> Map k a -> b #

foldl' :: (b -> a -> b) -> b -> Map k a -> b #

foldr1 :: (a -> a -> a) -> Map k a -> a #

foldl1 :: (a -> a -> a) -> Map k a -> a #

toList :: Map k a -> [a] #

null :: Map k a -> Bool #

length :: Map k a -> Int #

elem :: Eq a => a -> Map k a -> Bool #

maximum :: Ord a => Map k a -> a #

minimum :: Ord a => Map k a -> a #

sum :: Num a => Map k a -> a #

product :: Num a => Map k a -> a #

Traversable (Map k)

Traverses in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

traverse :: Applicative f => (a -> f b) -> Map k a -> f (Map k b) #

sequenceA :: Applicative f => Map k (f a) -> f (Map k a) #

mapM :: Monad m => (a -> m b) -> Map k a -> m (Map k b) #

sequence :: Monad m => Map k (m a) -> m (Map k a) #

Eq k => Eq1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq :: (a -> b -> Bool) -> Map k a -> Map k b -> Bool #

Ord k => Ord1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare :: (a -> b -> Ordering) -> Map k a -> Map k b -> Ordering #

(Ord k, Read k) => Read1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Map k a) #

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Map k a] #

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Map k a) #

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Map k a] #

Show k => Show1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Map k a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Map k a] -> ShowS #

Hashable k => Hashable1 (Map k)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Map k a -> Int #

Ord k => IsList (Map k v)

Since: containers-0.5.6.2

Instance details

Defined in Data.Map.Internal

Associated Types

type Item (Map k v) #

Methods

fromList :: [Item (Map k v)] -> Map k v #

fromListN :: Int -> [Item (Map k v)] -> Map k v #

toList :: Map k v -> [Item (Map k v)] #

(Eq k, Eq a) => Eq (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

(==) :: Map k a -> Map k a -> Bool #

(/=) :: Map k a -> Map k a -> Bool #

(Data k, Data a, Ord k) => Data (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Map k a -> c (Map k a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Map k a) #

toConstr :: Map k a -> Constr #

dataTypeOf :: Map k a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Map k a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Map k a)) #

gmapT :: (forall b. Data b => b -> b) -> Map k a -> Map k a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Map k a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Map k a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

(Ord k, Ord v) => Ord (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

compare :: Map k v -> Map k v -> Ordering #

(<) :: Map k v -> Map k v -> Bool #

(<=) :: Map k v -> Map k v -> Bool #

(>) :: Map k v -> Map k v -> Bool #

(>=) :: Map k v -> Map k v -> Bool #

max :: Map k v -> Map k v -> Map k v #

min :: Map k v -> Map k v -> Map k v #

(Ord k, Read k, Read e) => Read (Map k e) 
Instance details

Defined in Data.Map.Internal

Methods

readsPrec :: Int -> ReadS (Map k e) #

readList :: ReadS [Map k e] #

readPrec :: ReadPrec (Map k e) #

readListPrec :: ReadPrec [Map k e] #

(Show k, Show a) => Show (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

showsPrec :: Int -> Map k a -> ShowS #

show :: Map k a -> String #

showList :: [Map k a] -> ShowS #

Ord k => Semigroup (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

(<>) :: Map k v -> Map k v -> Map k v #

sconcat :: NonEmpty (Map k v) -> Map k v #

stimes :: Integral b => b -> Map k v -> Map k v #

Ord k => Monoid (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

mempty :: Map k v #

mappend :: Map k v -> Map k v -> Map k v #

mconcat :: [Map k v] -> Map k v #

(NFData k, NFData a) => NFData (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

rnf :: Map k a -> () #

(Hashable k, Hashable v) => Hashable (Map k v)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Map k v -> Int #

hash :: Map k v -> Int #

Ord k => Ixed (Map k a) 
Instance details

Defined in Optics.At.Core

Associated Types

type IxKind (Map k a) #

Methods

ix :: Index (Map k a) -> Optic' (IxKind (Map k a)) NoIx (Map k a) (IxValue (Map k a)) #

Ord k => At (Map k a) 
Instance details

Defined in Optics.At.Core

Methods

at :: Index (Map k a) -> Lens' (Map k a) (Maybe (IxValue (Map k a))) #

AsEmpty (Map k a) 
Instance details

Defined in Optics.Empty.Core

Methods

_Empty :: Prism' (Map k a) () #

type Item (Map k v) 
Instance details

Defined in Data.Map.Internal

type Item (Map k v) = (k, v)
type Index (Map k a) 
Instance details

Defined in Optics.At.Core

type Index (Map k a) = k
type IxValue (Map k a) 
Instance details

Defined in Optics.At.Core

type IxValue (Map k a) = a
type IxKind (Map k a) 
Instance details

Defined in Optics.At.Core

data Metadata Source #

A set of properties and settings, associated with a document or tag.

The namespaces of properties and settings are distinct; a property can share a name with a setting without conflict.

Instances

Instances details
Eq Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Show Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Generic Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Associated Types

type Rep Metadata :: Type -> Type #

Methods

from :: Metadata -> Rep Metadata x #

to :: Rep Metadata x -> Metadata #

Semigroup Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Monoid Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

NFData Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Methods

rnf :: Metadata -> () #

Hashable Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

Methods

hashWithSalt :: Int -> Metadata -> Int #

hash :: Metadata -> Int #

HasMetadata Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.HasMetadata

Associated Types

type MetadataOpticKind Metadata Source #

type Rep Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.MetadataType

type Rep Metadata = D1 ('MetaData "Metadata" "ProAbstract.Metadata.MetadataType" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Metadata" 'PrefixI 'True) (S1 ('MetaSel ('Just "metadataProperties") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set Text)) :*: S1 ('MetaSel ('Just "metadataSettings") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Text Text))))
type MetadataOpticKind Metadata Source # 
Instance details

Defined in ProAbstract.Metadata.HasMetadata

data Paragraph ann Source #

A collection of Lines. A Paragraph represents the border between block and inline contexts. All ancestors of a paragraph are block items or a document, and all children are inline items.

Instances

Instances details
Eq ann => Eq (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

(==) :: Paragraph ann -> Paragraph ann -> Bool #

(/=) :: Paragraph ann -> Paragraph ann -> Bool #

Show ann => Show (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

showsPrec :: Int -> Paragraph ann -> ShowS #

show :: Paragraph ann -> String #

showList :: [Paragraph ann] -> ShowS #

Generic (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Associated Types

type Rep (Paragraph ann) :: Type -> Type #

Methods

from :: Paragraph ann -> Rep (Paragraph ann) x #

to :: Rep (Paragraph ann) x -> Paragraph ann #

NFData ann => NFData (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

rnf :: Paragraph ann -> () #

Hashable ann => Hashable (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

hashWithSalt :: Int -> Paragraph ann -> Int #

hash :: Paragraph ann -> Int #

HasManyMetadata (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

HasManyPlainInlines (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

HasWitherableInlineTags (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

HasManyTags (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

CanBeTagless (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (Paragraph ann) txt Source #

HasAnnotation (Paragraph ann) (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

HasManyAnnotations (Paragraph ann) (Paragraph ann') Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

HasContent (Paragraph ann) (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

content :: Lens (Paragraph ann) (Paragraph ann) (Content (Paragraph ann)) (Content (Paragraph ann)) Source #

HasContents (Paragraph ann) (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

Methods

contents :: Lens (Paragraph ann) (Paragraph ann) (Seq (Contents (Paragraph ann))) (Seq (Contents (Paragraph ann))) Source #

type Rep (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Rep (Paragraph ann) = D1 ('MetaData "Paragraph" "ProAbstract.Structure.Paragraph" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Paragraph" 'PrefixI 'True) (S1 ('MetaSel ('Just "paragraphContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Lines ann)) :*: S1 ('MetaSel ('Just "paragraphAnnotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann)))
type Annotation (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Annotation (Paragraph ann) = ann
type Content (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Content (Paragraph ann) = Lines ann
type Contents (Paragraph ann) Source # 
Instance details

Defined in ProAbstract.Structure.Paragraph

type Contents (Paragraph ann) = Line ann

type family Plain a Source #

Instances

Instances details
type Plain (Inline ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Plain (Inline ann) = Fragment ann
type Plain (Block ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Plain (Block ann) = Tagged (PlainBlock ann)
type Plain (BlockTag ann) Source # 
Instance details

Defined in ProAbstract.Structure.BlockTag

type Plain (BlockTag ann) = Tagged (PlainBlock ann)

data PlainBlock ann Source #

Instances

Instances details
Eq ann => Eq (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

(==) :: Tagged (PlainBlock ann) -> Tagged (PlainBlock ann) -> Bool #

(/=) :: Tagged (PlainBlock ann) -> Tagged (PlainBlock ann) -> Bool #

Eq ann => Eq (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

(==) :: PlainBlock ann -> PlainBlock ann -> Bool #

(/=) :: PlainBlock ann -> PlainBlock ann -> Bool #

Show ann => Show (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

showsPrec :: Int -> Tagged (PlainBlock ann) -> ShowS #

show :: Tagged (PlainBlock ann) -> String #

showList :: [Tagged (PlainBlock ann)] -> ShowS #

Show ann => Show (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

showsPrec :: Int -> PlainBlock ann -> ShowS #

show :: PlainBlock ann -> String #

showList :: [PlainBlock ann] -> ShowS #

Generic (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type Rep (Tagged (PlainBlock ann)) :: Type -> Type #

Methods

from :: Tagged (PlainBlock ann) -> Rep (Tagged (PlainBlock ann)) x #

to :: Rep (Tagged (PlainBlock ann)) x -> Tagged (PlainBlock ann) #

Generic (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type Rep (PlainBlock ann) :: Type -> Type #

Methods

from :: PlainBlock ann -> Rep (PlainBlock ann) x #

to :: Rep (PlainBlock ann) x -> PlainBlock ann #

NFData ann => NFData (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

rnf :: Tagged (PlainBlock ann) -> () #

NFData ann => NFData (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

rnf :: PlainBlock ann -> () #

Hashable ann => Hashable (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

hashWithSalt :: Int -> Tagged (PlainBlock ann) -> Int #

hash :: Tagged (PlainBlock ann) -> Int #

Hashable ann => Hashable (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

hashWithSalt :: Int -> PlainBlock ann -> Int #

hash :: PlainBlock ann -> Int #

HasMetadata (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type MetadataOpticKind (Tagged (PlainBlock ann)) Source #

HasTag (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type TagOpticKind (Tagged (PlainBlock ann)) Source #

CanBeTagless (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Tagless.CanBeTagless

Methods

tagless :: KindOfText txt -> AffineFold (PlainBlock ann) txt Source #

CanHaveTaglessContent (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasAnnotation (PlainBlock ann) (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasManyAnnotations (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann')) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasManyAnnotations (PlainBlock ann) (PlainBlock ann') Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasContent (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasContents (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasContents (PlainBlock ann) (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Rep (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Rep (Tagged (PlainBlock ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.PlainBlock" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedPlainBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "plaintextTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedPlaintext") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PlainBlock ann))))
type Rep (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Rep (PlainBlock ann) = D1 ('MetaData "PlainBlock" "ProAbstract.Structure.PlainBlock" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "PlainBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "plainBlockLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (Fragment ann))) :*: S1 ('MetaSel ('Just "plainBlockAnnotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann)))
type Annotation (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Annotation (Tagged (PlainBlock ann)) = ann
type Annotation (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Annotation (PlainBlock ann) = ann
type Content (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Content (Tagged (PlainBlock ann)) = PlainBlock ann
type Contents (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Contents (Tagged (PlainBlock ann)) = Fragment ann
type Contents (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Contents (PlainBlock ann) = Fragment ann
type MetadataOpticKind (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type TagOpticKind (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

data Tagged (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

data Seq a #

General-purpose finite sequences.

Instances

Instances details
Monad Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

(>>=) :: Seq a -> (a -> Seq b) -> Seq b #

(>>) :: Seq a -> Seq b -> Seq b #

return :: a -> Seq a #

Functor Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

fmap :: (a -> b) -> Seq a -> Seq b #

(<$) :: a -> Seq b -> Seq a #

MonadFix Seq

Since: containers-0.5.11

Instance details

Defined in Data.Sequence.Internal

Methods

mfix :: (a -> Seq a) -> Seq a #

Applicative Seq

Since: containers-0.5.4

Instance details

Defined in Data.Sequence.Internal

Methods

pure :: a -> Seq a #

(<*>) :: Seq (a -> b) -> Seq a -> Seq b #

liftA2 :: (a -> b -> c) -> Seq a -> Seq b -> Seq c #

(*>) :: Seq a -> Seq b -> Seq b #

(<*) :: Seq a -> Seq b -> Seq a #

Foldable Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Seq m -> m #

foldMap :: Monoid m => (a -> m) -> Seq a -> m #

foldMap' :: Monoid m => (a -> m) -> Seq a -> m #

foldr :: (a -> b -> b) -> b -> Seq a -> b #

foldr' :: (a -> b -> b) -> b -> Seq a -> b #

foldl :: (b -> a -> b) -> b -> Seq a -> b #

foldl' :: (b -> a -> b) -> b -> Seq a -> b #

foldr1 :: (a -> a -> a) -> Seq a -> a #

foldl1 :: (a -> a -> a) -> Seq a -> a #

toList :: Seq a -> [a] #

null :: Seq a -> Bool #

length :: Seq a -> Int #

elem :: Eq a => a -> Seq a -> Bool #

maximum :: Ord a => Seq a -> a #

minimum :: Ord a => Seq a -> a #

sum :: Num a => Seq a -> a #

product :: Num a => Seq a -> a #

Traversable Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

traverse :: Applicative f => (a -> f b) -> Seq a -> f (Seq b) #

sequenceA :: Applicative f => Seq (f a) -> f (Seq a) #

mapM :: Monad m => (a -> m b) -> Seq a -> m (Seq b) #

sequence :: Monad m => Seq (m a) -> m (Seq a) #

Eq1 Seq

Since: containers-0.5.9

Instance details

Defined in Data.Sequence.Internal

Methods

liftEq :: (a -> b -> Bool) -> Seq a -> Seq b -> Bool #

Ord1 Seq

Since: containers-0.5.9

Instance details

Defined in Data.Sequence.Internal

Methods

liftCompare :: (a -> b -> Ordering) -> Seq a -> Seq b -> Ordering #

Read1 Seq

Since: containers-0.5.9

Instance details

Defined in Data.Sequence.Internal

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Seq a) #

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Seq a] #

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Seq a) #

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Seq a] #

Show1 Seq

Since: containers-0.5.9

Instance details

Defined in Data.Sequence.Internal

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Seq a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Seq a] -> ShowS #

MonadZip Seq
 mzipWith = zipWith
 munzip = unzip
Instance details

Defined in Data.Sequence.Internal

Methods

mzip :: Seq a -> Seq b -> Seq (a, b) #

mzipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c #

munzip :: Seq (a, b) -> (Seq a, Seq b) #

Alternative Seq

Since: containers-0.5.4

Instance details

Defined in Data.Sequence.Internal

Methods

empty :: Seq a #

(<|>) :: Seq a -> Seq a -> Seq a #

some :: Seq a -> Seq [a] #

many :: Seq a -> Seq [a] #

MonadPlus Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

mzero :: Seq a #

mplus :: Seq a -> Seq a -> Seq a #

Hashable1 Seq

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Seq a -> Int #

UnzipWith Seq 
Instance details

Defined in Data.Sequence.Internal

Methods

unzipWith' :: (x -> (a, b)) -> Seq x -> (Seq a, Seq b)

IsList (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Item (Seq a) #

Methods

fromList :: [Item (Seq a)] -> Seq a #

fromListN :: Int -> [Item (Seq a)] -> Seq a #

toList :: Seq a -> [Item (Seq a)] #

Eq a => Eq (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

(==) :: Seq a -> Seq a -> Bool #

(/=) :: Seq a -> Seq a -> Bool #

Data a => Data (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Seq a -> c (Seq a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Seq a) #

toConstr :: Seq a -> Constr #

dataTypeOf :: Seq a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Seq a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Seq a)) #

gmapT :: (forall b. Data b => b -> b) -> Seq a -> Seq a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Seq a -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Seq a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Seq a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Seq a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) #

Ord a => Ord (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

compare :: Seq a -> Seq a -> Ordering #

(<) :: Seq a -> Seq a -> Bool #

(<=) :: Seq a -> Seq a -> Bool #

(>) :: Seq a -> Seq a -> Bool #

(>=) :: Seq a -> Seq a -> Bool #

max :: Seq a -> Seq a -> Seq a #

min :: Seq a -> Seq a -> Seq a #

Read a => Read (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Show a => Show (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

showsPrec :: Int -> Seq a -> ShowS #

show :: Seq a -> String #

showList :: [Seq a] -> ShowS #

a ~ Char => IsString (Seq a)

Since: containers-0.5.7

Instance details

Defined in Data.Sequence.Internal

Methods

fromString :: String -> Seq a #

Semigroup (Seq a)

Since: containers-0.5.7

Instance details

Defined in Data.Sequence.Internal

Methods

(<>) :: Seq a -> Seq a -> Seq a #

sconcat :: NonEmpty (Seq a) -> Seq a #

stimes :: Integral b => b -> Seq a -> Seq a #

Monoid (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

mempty :: Seq a #

mappend :: Seq a -> Seq a -> Seq a #

mconcat :: [Seq a] -> Seq a #

NFData a => NFData (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf :: Seq a -> () #

Hashable v => Hashable (Seq v)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Seq v -> Int #

hash :: Seq v -> Int #

Ixed (Seq a) 
Instance details

Defined in Optics.At.Core

Associated Types

type IxKind (Seq a) #

Methods

ix :: Index (Seq a) -> Optic' (IxKind (Seq a)) NoIx (Seq a) (IxValue (Seq a)) #

AsEmpty (Seq a) 
Instance details

Defined in Optics.Empty.Core

Methods

_Empty :: Prism' (Seq a) () #

type Item (Seq a) 
Instance details

Defined in Data.Sequence.Internal

type Item (Seq a) = a
type Index (Seq a) 
Instance details

Defined in Optics.At.Core

type Index (Seq a) = Int
type IxValue (Seq a) 
Instance details

Defined in Optics.At.Core

type IxValue (Seq a) = a
type IxKind (Seq a) 
Instance details

Defined in Optics.At.Core

data Set a #

A set of values a.

Instances

Instances details
Foldable Set

Folds in order of increasing key.

Instance details

Defined in Data.Set.Internal

Methods

fold :: Monoid m => Set m -> m #

foldMap :: Monoid m => (a -> m) -> Set a -> m #

foldMap' :: Monoid m => (a -> m) -> Set a -> m #

foldr :: (a -> b -> b) -> b -> Set a -> b #

foldr' :: (a -> b -> b) -> b -> Set a -> b #

foldl :: (b -> a -> b) -> b -> Set a -> b #

foldl' :: (b -> a -> b) -> b -> Set a -> b #

foldr1 :: (a -> a -> a) -> Set a -> a #

foldl1 :: (a -> a -> a) -> Set a -> a #

toList :: Set a -> [a] #

null :: Set a -> Bool #

length :: Set a -> Int #

elem :: Eq a => a -> Set a -> Bool #

maximum :: Ord a => Set a -> a #

minimum :: Ord a => Set a -> a #

sum :: Num a => Set a -> a #

product :: Num a => Set a -> a #

Eq1 Set

Since: containers-0.5.9

Instance details

Defined in Data.Set.Internal

Methods

liftEq :: (a -> b -> Bool) -> Set a -> Set b -> Bool #

Ord1 Set

Since: containers-0.5.9

Instance details

Defined in Data.Set.Internal

Methods

liftCompare :: (a -> b -> Ordering) -> Set a -> Set b -> Ordering #

Show1 Set

Since: containers-0.5.9

Instance details

Defined in Data.Set.Internal

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Set a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Set a] -> ShowS #

Hashable1 Set

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Set a -> Int #

Ord a => IsList (Set a)

Since: containers-0.5.6.2

Instance details

Defined in Data.Set.Internal

Associated Types

type Item (Set a) #

Methods

fromList :: [Item (Set a)] -> Set a #

fromListN :: Int -> [Item (Set a)] -> Set a #

toList :: Set a -> [Item (Set a)] #

Eq a => Eq (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

(==) :: Set a -> Set a -> Bool #

(/=) :: Set a -> Set a -> Bool #

(Data a, Ord a) => Data (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Set a -> c (Set a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Set a) #

toConstr :: Set a -> Constr #

dataTypeOf :: Set a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Set a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Set a)) #

gmapT :: (forall b. Data b => b -> b) -> Set a -> Set a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Set a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Set a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) #

Ord a => Ord (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

compare :: Set a -> Set a -> Ordering #

(<) :: Set a -> Set a -> Bool #

(<=) :: Set a -> Set a -> Bool #

(>) :: Set a -> Set a -> Bool #

(>=) :: Set a -> Set a -> Bool #

max :: Set a -> Set a -> Set a #

min :: Set a -> Set a -> Set a #

(Read a, Ord a) => Read (Set a) 
Instance details

Defined in Data.Set.Internal

Show a => Show (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

showsPrec :: Int -> Set a -> ShowS #

show :: Set a -> String #

showList :: [Set a] -> ShowS #

Ord a => Semigroup (Set a)

Since: containers-0.5.7

Instance details

Defined in Data.Set.Internal

Methods

(<>) :: Set a -> Set a -> Set a #

sconcat :: NonEmpty (Set a) -> Set a #

stimes :: Integral b => b -> Set a -> Set a #

Ord a => Monoid (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

mempty :: Set a #

mappend :: Set a -> Set a -> Set a #

mconcat :: [Set a] -> Set a #

NFData a => NFData (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

rnf :: Set a -> () #

Hashable v => Hashable (Set v)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Set v -> Int #

hash :: Set v -> Int #

Ord a => Contains (Set a) 
Instance details

Defined in Optics.At.Core

Methods

contains :: Index (Set a) -> Lens' (Set a) Bool #

Ord k => Ixed (Set k) 
Instance details

Defined in Optics.At.Core

Associated Types

type IxKind (Set k) #

Methods

ix :: Index (Set k) -> Optic' (IxKind (Set k)) NoIx (Set k) (IxValue (Set k)) #

Ord k => At (Set k) 
Instance details

Defined in Optics.At.Core

Methods

at :: Index (Set k) -> Lens' (Set k) (Maybe (IxValue (Set k))) #

AsEmpty (Set a) 
Instance details

Defined in Optics.Empty.Core

Methods

_Empty :: Prism' (Set a) () #

type Item (Set a) 
Instance details

Defined in Data.Set.Internal

type Item (Set a) = a
type Index (Set a) 
Instance details

Defined in Optics.At.Core

type Index (Set a) = a
type IxValue (Set k) 
Instance details

Defined in Optics.At.Core

type IxValue (Set k) = ()
type IxKind (Set k) 
Instance details

Defined in Optics.At.Core

data Tag ann Source #

Instances

Instances details
Eq ann => Eq (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Methods

(==) :: Tag ann -> Tag ann -> Bool #

(/=) :: Tag ann -> Tag ann -> Bool #

Show ann => Show (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Methods

showsPrec :: Int -> Tag ann -> ShowS #

show :: Tag ann -> String #

showList :: [Tag ann] -> ShowS #

Generic (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Associated Types

type Rep (Tag ann) :: Type -> Type #

Methods

from :: Tag ann -> Rep (Tag ann) x #

to :: Rep (Tag ann) x -> Tag ann #

NFData ann => NFData (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Methods

rnf :: Tag ann -> () #

Hashable ann => Hashable (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Methods

hashWithSalt :: Int -> Tag ann -> Int #

hash :: Tag ann -> Int #

HasMetadata (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Associated Types

type MetadataOpticKind (Tag ann) Source #

HasTag (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.HasTag

Associated Types

type TagOpticKind (Tag ann) Source #

Methods

tag :: Optic' (TagOpticKind (Tag ann)) NoIx (Tag ann) (Tag (Annotation (Tag ann))) Source #

HasAnnotation (Tag ann) (Tag ann') Source # 
Instance details

Defined in ProAbstract.Tag.TagType

Methods

annotation :: Lens (Tag ann) (Tag ann') (Annotation (Tag ann)) (Annotation (Tag ann')) Source #

type Rep (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

type Rep (Tag ann) = D1 ('MetaData "Tag" "ProAbstract.Tag.TagType" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "Tag" 'PrefixI 'True) (S1 ('MetaSel ('Just "tagName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "tagMetadata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Metadata) :*: S1 ('MetaSel ('Just "tagAnnotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann))))
type Annotation (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

type Annotation (Tag ann) = ann
type MetadataOpticKind (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.TagType

type TagOpticKind (Tag ann) Source # 
Instance details

Defined in ProAbstract.Tag.HasTag

type TagOpticKind (Tag ann) = A_Lens

data family Tagged con Source #

Instances

Instances details
Eq ann => Eq (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

(==) :: Tagged (PlainBlock ann) -> Tagged (PlainBlock ann) -> Bool #

(/=) :: Tagged (PlainBlock ann) -> Tagged (PlainBlock ann) -> Bool #

Eq ann => Eq (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

(==) :: Tagged (Lines ann) -> Tagged (Lines ann) -> Bool #

(/=) :: Tagged (Lines ann) -> Tagged (Lines ann) -> Bool #

Eq ann => Eq (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

(==) :: Tagged (Blocks ann) -> Tagged (Blocks ann) -> Bool #

(/=) :: Tagged (Blocks ann) -> Tagged (Blocks ann) -> Bool #

Show ann => Show (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

showsPrec :: Int -> Tagged (PlainBlock ann) -> ShowS #

show :: Tagged (PlainBlock ann) -> String #

showList :: [Tagged (PlainBlock ann)] -> ShowS #

Show ann => Show (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

showsPrec :: Int -> Tagged (Lines ann) -> ShowS #

show :: Tagged (Lines ann) -> String #

showList :: [Tagged (Lines ann)] -> ShowS #

Show ann => Show (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

showsPrec :: Int -> Tagged (Blocks ann) -> ShowS #

show :: Tagged (Blocks ann) -> String #

showList :: [Tagged (Blocks ann)] -> ShowS #

Generic (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type Rep (Tagged (PlainBlock ann)) :: Type -> Type #

Methods

from :: Tagged (PlainBlock ann) -> Rep (Tagged (PlainBlock ann)) x #

to :: Rep (Tagged (PlainBlock ann)) x -> Tagged (PlainBlock ann) #

Generic (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type Rep (Tagged (Lines ann)) :: Type -> Type #

Methods

from :: Tagged (Lines ann) -> Rep (Tagged (Lines ann)) x #

to :: Rep (Tagged (Lines ann)) x -> Tagged (Lines ann) #

Generic (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type Rep (Tagged (Blocks ann)) :: Type -> Type #

Methods

from :: Tagged (Blocks ann) -> Rep (Tagged (Blocks ann)) x #

to :: Rep (Tagged (Blocks ann)) x -> Tagged (Blocks ann) #

NFData ann => NFData (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

rnf :: Tagged (PlainBlock ann) -> () #

NFData ann => NFData (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

rnf :: Tagged (Lines ann) -> () #

NFData ann => NFData (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

rnf :: Tagged (Blocks ann) -> () #

Hashable ann => Hashable (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Methods

hashWithSalt :: Int -> Tagged (PlainBlock ann) -> Int #

hash :: Tagged (PlainBlock ann) -> Int #

Hashable ann => Hashable (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

hashWithSalt :: Int -> Tagged (Lines ann) -> Int #

hash :: Tagged (Lines ann) -> Int #

Hashable ann => Hashable (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

hashWithSalt :: Int -> Tagged (Blocks ann) -> Int #

hash :: Tagged (Blocks ann) -> Int #

HasMetadata (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type MetadataOpticKind (Tagged (PlainBlock ann)) Source #

HasMetadata (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type MetadataOpticKind (Tagged (Lines ann)) Source #

HasMetadata (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type MetadataOpticKind (Tagged (Blocks ann)) Source #

HasManyMetadata (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyMetadata (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainInlines (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyPlainInlines (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasTag (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

Associated Types

type TagOpticKind (Tagged (PlainBlock ann)) Source #

HasTag (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Associated Types

type TagOpticKind (Tagged (Lines ann)) Source #

Methods

tag :: Optic' (TagOpticKind (Tagged (Lines ann))) NoIx (Tagged (Lines ann)) (Tag (Annotation (Tagged (Lines ann)))) Source #

HasTag (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Associated Types

type TagOpticKind (Tagged (Blocks ann)) Source #

HasWitherableInlineTags (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Tagged (Lines ann))) -> f (Maybe (Tag (Annotation (Tagged (Lines ann)))))) -> Tagged (Lines ann) -> f (Tagged (Lines ann)) Source #

mapMaybeInlineTags :: (Tag (Annotation (Tagged (Lines ann))) -> Maybe (Tag (Annotation (Tagged (Lines ann))))) -> Tagged (Lines ann) -> Tagged (Lines ann) Source #

HasWitherableInlineTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

witherInlineTags :: Monad f => (Tag (Annotation (Tagged (Blocks ann))) -> f (Maybe (Tag (Annotation (Tagged (Blocks ann)))))) -> Tagged (Blocks ann) -> f (Tagged (Blocks ann)) Source #

mapMaybeInlineTags :: (Tag (Annotation (Tagged (Blocks ann))) -> Maybe (Tag (Annotation (Tagged (Blocks ann))))) -> Tagged (Blocks ann) -> Tagged (Blocks ann) Source #

HasManyBlockTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyTags (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyTags (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyPlainBlocks (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyParagraphs (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

CanHaveTaglessContent (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

CanHaveTaglessContent (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

CanHaveTaglessContent (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Tagless.CanHaveTaglessContent

HasAnnotation (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasAnnotation (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

annotation :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Annotation (Tagged (Lines ann))) (Annotation (Tagged (Lines ann))) Source #

HasAnnotation (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasManyAnnotations (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann')) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasManyAnnotations (Tagged (Lines ann)) (Tagged (Lines ann')) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

HasManyAnnotations (Tagged (Blocks ann)) (Tagged (Blocks ann')) Source # 
Instance details

Defined in ProAbstract.Structure.Block

HasContent (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasContent (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

content :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Content (Tagged (Lines ann))) (Content (Tagged (Lines ann))) Source #

HasContent (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

content :: Lens (Tagged (Blocks ann)) (Tagged (Blocks ann)) (Content (Tagged (Blocks ann))) (Content (Tagged (Blocks ann))) Source #

HasContents (Tagged (PlainBlock ann)) (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

HasContents (Tagged (Lines ann)) (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

Methods

contents :: Lens (Tagged (Lines ann)) (Tagged (Lines ann)) (Seq (Contents (Tagged (Lines ann)))) (Seq (Contents (Tagged (Lines ann)))) Source #

HasContents (Tagged (Blocks ann)) (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

Methods

contents :: Lens (Tagged (Blocks ann)) (Tagged (Blocks ann)) (Seq (Contents (Tagged (Blocks ann)))) (Seq (Contents (Tagged (Blocks ann)))) Source #

type Rep (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Rep (Tagged (PlainBlock ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.PlainBlock" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedPlainBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "plaintextTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedPlaintext") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PlainBlock ann))))
type Rep (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Rep (Tagged (Lines ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.Inline" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedLines" 'PrefixI 'True) (S1 ('MetaSel ('Just "linesTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Lines ann))))
type Rep (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Rep (Tagged (Blocks ann)) = D1 ('MetaData "Tagged" "ProAbstract.Structure.Block" "pro-abstract-0.1.0.0-fAo99Omz3u7l2SA6DiDR2" 'False) (C1 ('MetaCons "TaggedBlocks" 'PrefixI 'True) (S1 ('MetaSel ('Just "blocksTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Tag ann)) :*: S1 ('MetaSel ('Just "taggedBlocks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Blocks ann))))
type Annotation (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Annotation (Tagged (PlainBlock ann)) = ann
type Annotation (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Annotation (Tagged (Lines ann)) = ann
type Annotation (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Annotation (Tagged (Blocks ann)) = ann
type Content (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Content (Tagged (PlainBlock ann)) = PlainBlock ann
type Content (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Content (Tagged (Lines ann)) = Lines ann
type Content (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Content (Tagged (Blocks ann)) = Blocks ann
type Contents (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type Contents (Tagged (PlainBlock ann)) = Fragment ann
type Contents (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type Contents (Tagged (Lines ann)) = Line ann
type Contents (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type Contents (Tagged (Blocks ann)) = Block ann
type MetadataOpticKind (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type MetadataOpticKind (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type MetadataOpticKind (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

type TagOpticKind (Tagged (PlainBlock ann)) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

type TagOpticKind (Tagged (Lines ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

type TagOpticKind (Tagged (Blocks ann)) Source # 
Instance details

Defined in ProAbstract.Structure.Block

data Tagged (PlainBlock ann) Source # 
Instance details

Defined in ProAbstract.Structure.PlainBlock

data Tagged (Lines ann) Source # 
Instance details

Defined in ProAbstract.Structure.Inline

data Tagged (Lines ann) = TaggedLines {}
data Tagged (Blocks ann) Source # 
Instance details

Defined in ProAbstract.Structure.Block

data Text #

A space efficient, packed, unboxed Unicode text type.

Instances

Instances details
Hashable Text 
Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Text -> Int #

hash :: Text -> Int #

type Item Text 
Instance details

Defined in Data.Text

type Item Text = Char