Skip to content

Commit 3171be5

Browse files
committed
namespace even more markdown types
1 parent 5844d6b commit 3171be5

File tree

101 files changed

+546
-505
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+546
-505
lines changed

Sources/MarkdownABI/Plugins/Markdown.PlainText.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
extension Markdown
22
{
3-
/// An uninhabited type that markdown parsers can substitute for ``MarkdownBlock.Code``’s
3+
/// An uninhabited type that markdown parsers can substitute for ``Markdown.BlockCode``’s
44
/// type parameter when emitting code blocks without a code language.
55
@frozen public
66
enum PlainText

Sources/MarkdownAST/BlockElements/MarkdownBlock.Aside.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockAside.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
open
6-
class Aside:Container<MarkdownBlock>
6+
class BlockAside:BlockContainer<BlockElement>
77
{
88
open class
99
var context:Markdown.Bytecode.Context { .blockquote }

Sources/MarkdownAST/BlockElements/MarkdownBlock.Code.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockCode.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
public final
6-
class Code<Language>:MarkdownBlock where Language:Markdown.CodeLanguageType
6+
class BlockCode<Language>:BlockElement where Language:Markdown.CodeLanguageType
77
{
88
public
99
var language:Language?

Sources/MarkdownAST/BlockElements/MarkdownBlock.Container.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockContainer.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import MarkdownABI
22
import Sources
33

4-
extension MarkdownBlock
4+
extension Markdown
55
{
66
open
7-
class Container<Element>:MarkdownBlock where Element:MarkdownElement
7+
class BlockContainer<Element>:BlockElement where Element:Markdown.TreeElement
88
{
99
public final
1010
var elements:[Element]
@@ -15,10 +15,10 @@ extension MarkdownBlock
1515
self.elements = elements
1616
}
1717

18-
/// Recursively calls ``MarkdownElement/outline(by:)`` for each element
18+
/// Recursively calls ``Markdown.TreeElement/outline(by:)`` for each element
1919
/// in this container.
2020
public final override
21-
func outline(by register:(MarkdownInline.Autolink) throws -> Int?) rethrows
21+
func outline(by register:(Markdown.InlineAutolink) throws -> Int?) rethrows
2222
{
2323
for index:Int in self.elements.indices
2424
{

Sources/MarkdownAST/BlockElements/MarkdownBlock.Directive.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockDirective.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
public final
6-
class Directive:Container<MarkdownBlock>
6+
class BlockDirective:BlockContainer<BlockElement>
77
{
88
public
99
var name:String
@@ -13,7 +13,7 @@ extension MarkdownBlock
1313
@inlinable public
1414
init(name:String,
1515
arguments:[(name:String, value:String)] = [],
16-
elements:[MarkdownBlock] = [])
16+
elements:[BlockElement] = [])
1717
{
1818
self.name = name
1919
self.arguments = arguments
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import MarkdownABI
2+
import Sources
3+
4+
/// The basic unit of block structure in a markdown document.
5+
///
6+
/// Unlike inline elements, block elements have reference semantics.
7+
/// This base class refines the requirements of `MarkdownElements`
8+
/// with non-mutating signatures, which is useful for structural
9+
/// markdown algorithms.
10+
extension Markdown
11+
{
12+
open
13+
class BlockElement:Markdown.TreeElement
14+
{
15+
@inlinable public
16+
init()
17+
{
18+
}
19+
/// Does nothing, unless it has been overridden.
20+
open
21+
func outline(by _:(Markdown.InlineAutolink) throws -> Int?) rethrows
22+
{
23+
}
24+
/// Emits nothing, unless it has been overridden.
25+
open
26+
func emit(into _:inout Markdown.BinaryEncoder)
27+
{
28+
}
29+
}
30+
}

Sources/MarkdownAST/BlockElements/MarkdownBlock.HTML.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockHTML.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
public final
6-
class HTML:MarkdownBlock
6+
class BlockHTML:BlockElement
77
{
88
public
99
var text:String

Sources/MarkdownAST/BlockElements/MarkdownBlock.Heading.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockHeading.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
public final
6-
class Heading:Container<MarkdownInline.Block>
6+
class BlockHeading:BlockContainer<Markdown.InlineElement>
77
{
88
public
99
var level:Int
1010
public
1111
var id:String?
1212

1313
@inlinable public
14-
init(level:Int, id:String? = nil, elements:[MarkdownInline.Block])
14+
init(level:Int, id:String? = nil, elements:[Markdown.InlineElement])
1515
{
1616
self.level = level
1717
self.id = id
@@ -27,7 +27,7 @@ extension MarkdownBlock
2727
}
2828
}
2929
}
30-
extension MarkdownBlock.Heading
30+
extension Markdown.BlockHeading
3131
{
3232
/// Clips the heading to the specified maximum level. For example, if `level` is 3, then
3333
/// this function will demote `h1` and `h2` headings to `h3`, but it will leave `h3` and
@@ -52,7 +52,7 @@ extension MarkdownBlock.Heading
5252
}
5353

5454
var id:String = ""
55-
for element:MarkdownInline.Block in self.elements
55+
for element:Markdown.InlineElement in self.elements
5656
{
5757
id += element
5858
}

Sources/MarkdownAST/BlockElements/MarkdownBlock.Item.Checkbox.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockItem.Checkbox.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock.Item
3+
extension Markdown.BlockItem
44
{
55
@frozen public
66
enum Checkbox
@@ -9,7 +9,7 @@ extension MarkdownBlock.Item
99
case unchecked
1010
}
1111
}
12-
extension MarkdownBlock.Item.Checkbox
12+
extension Markdown.BlockItem.Checkbox
1313
{
1414
/// Emits an `input` element.
1515
func emit(into binary:inout Markdown.BinaryEncoder)

Sources/MarkdownAST/BlockElements/MarkdownBlock.Item.swift renamed to Sources/MarkdownAST/BlockElements/Markdown.BlockItem.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
import MarkdownABI
22

3-
extension MarkdownBlock
3+
extension Markdown
44
{
55
public final
6-
class Item:Container<MarkdownBlock>
6+
class BlockItem:BlockContainer<BlockElement>
77
{
88
public
99
var checkbox:Checkbox?
1010

1111
@inlinable public
12-
init(checkbox:Checkbox? = nil, elements:[MarkdownBlock])
12+
init(checkbox:Checkbox? = nil, elements:[BlockElement])
1313
{
1414
self.checkbox = checkbox
1515
super.init(elements)

0 commit comments

Comments
 (0)