| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
ProAbstract.Structure
Synopsis
- data Document ann = Document {
- documentMetadata :: Metadata
- documentContent :: Blocks ann
- data Block ann
- = BlockPlain (TaggedPlainBlock ann)
- | BlockParagraph (Paragraph ann)
- | BlockFork (TaggedBlocks ann)
- newtype Blocks ann = Blocks (Seq (Block ann))
- data BlockTag ann
- = BlockTagFork (TaggedBlocks ann)
- | BlockTagPlain (TaggedPlainBlock ann)
- data TaggedBlocks ann = TaggedBlocks {
- blocksTag :: Tag ann
- taggedBlocks :: Blocks ann
- data BlockTagContent ann
- = BlockTagContent_Fork (Blocks ann)
- | BlockTagContent_Plain (PlainBlock ann)
- data TaggedPlainBlock ann = TaggedPlainBlock {
- plaintextTag :: Tag ann
- taggedPlaintext :: PlainBlock ann
- data Paragraph ann = Paragraph {
- paragraphContent :: Lines ann
- paragraphAnnotation :: ann
- data Inline ann
- = InlineFork (TaggedLines ann)
- | InlinePlain (Fragment ann)
- data Line ann = Line {
- lineInlines :: Seq (Inline ann)
- lineAnnotation :: ann
- newtype Lines ann = Lines (Seq (Line ann))
- data TaggedLines ann = TaggedLines {
- linesTag :: Tag ann
- taggedLines :: Lines ann
- 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 IsTaggedOrBare a where
- type TaggedType a
- type BareType a
- taggedOrBare :: Iso' a (TaggedOrBare a)
- data TaggedOrBare a
- = IsTagged (TaggedType a)
- | IsBare (BareType a)
- tagged :: IsTaggedOrBare a => Prism' a (TaggedType a)
- bare :: IsTaggedOrBare a => Prism' a (BareType a)
- class HasManyParagraphs x where
- allParagraphs :: Traversal' x (Paragraph (Annotation x))
- class HasManyPlainBlocks x where
- allPlainBlocks :: Traversal' x (TaggedPlainBlock (Annotation x))
- class HasManyPlainInlines x where
- allPlainInlines :: Traversal' x (Fragment (Annotation x))
Document
Constructors
| Document | |
Fields
| |
Instances
Blocks
Constructors
| BlockPlain (TaggedPlainBlock ann) | |
| BlockParagraph (Paragraph ann) | |
| BlockFork (TaggedBlocks ann) |
Instances
Instances
Constructors
| BlockTagFork (TaggedBlocks ann) | |
| BlockTagPlain (TaggedPlainBlock ann) |
Instances
data TaggedBlocks ann Source #
Constructors
| TaggedBlocks | |
Instances
data BlockTagContent ann Source #
Constructors
| BlockTagContent_Fork (Blocks ann) | |
| BlockTagContent_Plain (PlainBlock ann) |
Instances
data TaggedPlainBlock ann Source #
Constructors
| TaggedPlainBlock | |
Fields
| |
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.
Constructors
| Paragraph | |
Fields
| |
Instances
Inlines
Constructors
| InlineFork (TaggedLines ann) | |
| InlinePlain (Fragment ann) |
Instances
Constructors
| Line | |
Fields
| |
Instances
Instances
data TaggedLines ann Source #
Constructors
| TaggedLines | |
Instances
Text
data PlainBlock ann Source #
Constructors
| PlainBlock | |
Fields
| |
Instances
Constructors
| Fragment | |
Fields
| |
Instances
Plain or fork
class CanBePlain x where Source #
Instances
| CanBePlain (Inline ann) Source # | |
| CanBePlain (Block ann) Source # | |
| CanBePlain (BlockTagContent ann) Source # | |
Defined in ProAbstract.Structure.BlockTagContent Methods 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 | |
Tagged or bare
class IsTaggedOrBare a where Source #
Methods
taggedOrBare :: Iso' a (TaggedOrBare a) Source #
Instances
| IsTaggedOrBare (Inline ann) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare Methods taggedOrBare :: Iso' (Inline ann) (TaggedOrBare (Inline ann)) Source # | |
| IsTaggedOrBare (Block ann) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare Methods taggedOrBare :: Iso' (Block ann) (TaggedOrBare (Block ann)) Source # | |
| IsTaggedOrBare (TaggedOrBare a) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare Methods taggedOrBare :: Iso' (TaggedOrBare a) (TaggedOrBare (TaggedOrBare a)) Source # | |
data TaggedOrBare a Source #
Constructors
| IsTagged (TaggedType a) | |
| IsBare (BareType a) |
Instances
| IsTaggedOrBare (TaggedOrBare a) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare Methods taggedOrBare :: Iso' (TaggedOrBare a) (TaggedOrBare (TaggedOrBare a)) Source # | |
| type TaggedType (TaggedOrBare a) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare | |
| type BareType (TaggedOrBare a) Source # | |
Defined in ProAbstract.Structure.IsTaggedOrBare | |
tagged :: IsTaggedOrBare a => Prism' a (TaggedType a) Source #
Traversals
class HasManyParagraphs x where Source #
Methods
allParagraphs :: Traversal' x (Paragraph (Annotation x)) Source #
Instances
class HasManyPlainBlocks x where Source #
Methods
allPlainBlocks :: Traversal' x (TaggedPlainBlock (Annotation x)) Source #
Instances
class HasManyPlainInlines x where Source #
Methods
allPlainInlines :: Traversal' x (Fragment (Annotation x)) Source #