Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data Document ann = Document {
- documentMetadata :: Metadata
- documentContent :: Blocks ann
- data Block ann
- = BlockPlain (Tagged (PlainBlock ann))
- | BlockParagraph (Paragraph ann)
- | BlockFork (Tagged (Blocks ann))
- paragraph :: Prism' (Block ann) (Paragraph ann)
- newtype Blocks ann = Blocks (Seq (Block ann))
- data BlockTag ann
- = BlockTagFork (Tagged (Blocks ann))
- | BlockTagPlain (Tagged (PlainBlock ann))
- blockTag :: Prism' (Block ann) (BlockTag ann)
- data BlockTagContent ann
- = BlockTagContent_Fork (Blocks ann)
- | BlockTagContent_Plain (PlainBlock ann)
- data Paragraph ann = Paragraph {
- paragraphContent :: Lines ann
- paragraphAnnotation :: ann
- data Inline ann
- = InlineFork (Tagged (Lines ann))
- | InlinePlain (Fragment ann)
- data Line ann = Line {
- lineInlines :: Seq (Inline ann)
- lineAnnotation :: ann
- newtype Lines ann = Lines (Seq (Line ann))
- data family Tagged con
- data PlainBlock ann = PlainBlock {
- plainBlockLines :: Seq (Fragment ann)
- plainBlockAnnotation :: ann
- data Fragment ann = Fragment {
- fragmentText :: Text
- fragmentAnnotation :: ann
- class CanBePlain x where
- type family Plain a
- class CanFork x where
- type family Fork a
- class HasManyParagraphs x where
- allParagraphs :: Traversal' x (Paragraph (Annotation x))
- class HasManyPlainBlocks x where
- allPlainBlocks :: Traversal' x (Tagged (PlainBlock (Annotation x)))
- class HasManyPlainInlines x where
- allPlainInlines :: Traversal' x (Fragment (Annotation x))
Document
Instances
Blocks
BlockPlain (Tagged (PlainBlock ann)) | |
BlockParagraph (Paragraph ann) | |
BlockFork (Tagged (Blocks ann)) |
Instances
Instances
BlockTagFork (Tagged (Blocks ann)) | |
BlockTagPlain (Tagged (PlainBlock ann)) |
Instances
data BlockTagContent ann Source #
Instances
Paragraph
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
Inlines
InlineFork (Tagged (Lines ann)) | |
InlinePlain (Fragment ann) |
Instances
Line | |
|
Instances
Instances
Tagged
data family Tagged con Source #
Instances
Text
data PlainBlock ann Source #
Instances
Instances
Plain and fork
class CanBePlain x where Source #
Instances
CanBePlain (Inline ann) Source # | |
CanBePlain (Block ann) Source # | |
CanBePlain (BlockTagContent ann) Source # | |
Defined in ProAbstract.Structure.BlockTagContent plain :: Prism' (BlockTagContent ann) (Plain (BlockTagContent ann)) Source # | |
CanBePlain (BlockTag ann) Source # | |
Instances
type Plain (Inline ann) Source # | |
Defined in ProAbstract.Structure.Inline | |
type Plain (Block ann) Source # | |
Defined in ProAbstract.Structure.Block | |
type Plain (BlockTagContent ann) Source # | |
Defined in ProAbstract.Structure.BlockTagContent | |
type Plain (BlockTag ann) Source # | |
Defined in ProAbstract.Structure.BlockTag |
Instances
type Fork (Inline ann) Source # | |
Defined in ProAbstract.Structure.Inline | |
type Fork (Block ann) Source # | |
Defined in ProAbstract.Structure.Block | |
type Fork (BlockTagContent ann) Source # | |
Defined in ProAbstract.Structure.BlockTagContent | |
type Fork (BlockTag ann) Source # | |
Defined in ProAbstract.Structure.BlockTag |
Traversals
class HasManyParagraphs x where Source #
allParagraphs :: Traversal' x (Paragraph (Annotation x)) Source #
Instances
class HasManyPlainBlocks x where Source #
allPlainBlocks :: Traversal' x (Tagged (PlainBlock (Annotation x))) Source #
Instances
class HasManyPlainInlines x where Source #
allPlainInlines :: Traversal' x (Fragment (Annotation x)) Source #