Completed
Push — master ( 15e8d5...9ebb39 )
by Colin
04:59
created

CommonMarkCoreExtension::getName()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1
Metric Value
dl 0
loc 4
ccs 2
cts 2
cp 1
rs 10
cc 1
eloc 2
nc 1
nop 0
crap 1
1
<?php
2
3
/*
4
 * This file is part of the league/commonmark package.
5
 *
6
 * (c) Colin O'Dell <[email protected]>
7
 *
8
 * Original code based on the CommonMark JS reference parser (http://bitly.com/commonmark-js)
9
 *  - (c) John MacFarlane
10
 *
11
 * For the full copyright and license information, please view the LICENSE
12
 * file that was distributed with this source code.
13
 */
14
15
namespace League\CommonMark\Extension;
16
17
use League\CommonMark\Block\Parser as BlockParser;
18
use League\CommonMark\Block\Renderer as BlockRenderer;
19
use League\CommonMark\Inline\Parser as InlineParser;
20
use League\CommonMark\Inline\Processor as InlineProcessor;
21
use League\CommonMark\Inline\Renderer as InlineRenderer;
22
23
class CommonMarkCoreExtension extends Extension
24
{
25
    /**
26
     * @return BlockParser\BlockParserInterface[]
27
     */
28 1872
    public function getBlockParsers()
29
    {
30
        return [
31
            // This order is important
32 1872
            new BlockParser\BlockQuoteParser(),
33 1872
            new BlockParser\ATXHeadingParser(),
34 1872
            new BlockParser\FencedCodeParser(),
35 1872
            new BlockParser\HtmlBlockParser(),
36 1872
            new BlockParser\SetExtHeadingParser(),
37 1872
            new BlockParser\ThematicBreakParser(),
38 1872
            new BlockParser\ListParser(),
39 1872
            new BlockParser\IndentedCodeParser(),
40 1872
            new BlockParser\LazyParagraphParser(),
41 1872
        ];
42
    }
43
44
    /**
45
     * @return InlineParser\InlineParserInterface[]
46
     */
47 1872
    public function getInlineParsers()
48
    {
49
        return [
50 1872
            new InlineParser\NewlineParser(),
51 1872
            new InlineParser\BacktickParser(),
52 1872
            new InlineParser\EscapableParser(),
53 1872
            new InlineParser\EntityParser(),
54 1872
            new InlineParser\EmphasisParser(),
55 1872
            new InlineParser\AutolinkParser(),
56 1872
            new InlineParser\HtmlInlineParser(),
57 1872
            new InlineParser\CloseBracketParser(),
58 1872
            new InlineParser\OpenBracketParser(),
59 1872
            new InlineParser\BangParser(),
60 1872
        ];
61
    }
62
63
    /**
64
     * @return InlineProcessor\InlineProcessorInterface[]
65
     */
66 1872
    public function getInlineProcessors()
67
    {
68
        return [
69 1872
            new InlineProcessor\EmphasisProcessor(),
70 1872
        ];
71
    }
72
73
    /**
74
     * @return BlockRenderer\BlockRendererInterface[]
75
     */
76 1872
    public function getBlockRenderers()
77
    {
78
        return [
79 1872
            'League\CommonMark\Block\Element\BlockQuote'          => new BlockRenderer\BlockQuoteRenderer(),
80 1872
            'League\CommonMark\Block\Element\Document'            => new BlockRenderer\DocumentRenderer(),
81 1872
            'League\CommonMark\Block\Element\FencedCode'          => new BlockRenderer\FencedCodeRenderer(),
82 1872
            'League\CommonMark\Block\Element\Heading'             => new BlockRenderer\HeadingRenderer(),
83 1872
            'League\CommonMark\Block\Element\HtmlBlock'           => new BlockRenderer\HtmlBlockRenderer(),
84 1872
            'League\CommonMark\Block\Element\IndentedCode'        => new BlockRenderer\IndentedCodeRenderer(),
85 1872
            'League\CommonMark\Block\Element\ListBlock'           => new BlockRenderer\ListBlockRenderer(),
86 1872
            'League\CommonMark\Block\Element\ListItem'            => new BlockRenderer\ListItemRenderer(),
87 1872
            'League\CommonMark\Block\Element\Paragraph'           => new BlockRenderer\ParagraphRenderer(),
88 1872
            'League\CommonMark\Block\Element\ThematicBreak'       => new BlockRenderer\ThematicBreakRenderer(),
89 1872
        ];
90
    }
91
92
    /**
93
     * @return InlineRenderer\InlineRendererInterface[]
94
     */
95 1872
    public function getInlineRenderers()
96
    {
97
        return [
98 1872
            'League\CommonMark\Inline\Element\Code'       => new InlineRenderer\CodeRenderer(),
99 1872
            'League\CommonMark\Inline\Element\Emphasis'   => new InlineRenderer\EmphasisRenderer(),
100 1872
            'League\CommonMark\Inline\Element\HtmlInline' => new InlineRenderer\HtmlInlineRenderer(),
101 1872
            'League\CommonMark\Inline\Element\Image'      => new InlineRenderer\ImageRenderer(),
102 1872
            'League\CommonMark\Inline\Element\Link'       => new InlineRenderer\LinkRenderer(),
103 1872
            'League\CommonMark\Inline\Element\Newline'    => new InlineRenderer\NewlineRenderer(),
104 1872
            'League\CommonMark\Inline\Element\Strong'     => new InlineRenderer\StrongRenderer(),
105 1872
            'League\CommonMark\Inline\Element\Text'       => new InlineRenderer\TextRenderer(),
106 1872
        ];
107
    }
108
}
109