Passed
Push — markdown ( d911a6 )
by Greg
10:14
created

CensusTableStartParser::tryStart()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 2
eloc 4
nc 2
nop 2
dl 0
loc 8
rs 10
c 1
b 0
f 0
1
<?php
2
3
/**
4
 * webtrees: online genealogy
5
 * Copyright (C) 2021 webtrees development team
6
 * This program is free software: you can redistribute it and/or modify
7
 * it under the terms of the GNU General Public License as published by
8
 * the Free Software Foundation, either version 3 of the License, or
9
 * (at your option) any later version.
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
 * GNU General Public License for more details.
14
 * You should have received a copy of the GNU General Public License
15
 * along with this program. If not, see <https://www.gnu.org/licenses/>.
16
 */
17
18
declare(strict_types=1);
19
20
namespace Fisharebest\Webtrees\CommonMark;
21
22
use League\CommonMark\Parser\Block\BlockStart;
23
use League\CommonMark\Parser\Block\BlockStartParserInterface;
24
use League\CommonMark\Parser\Cursor;
25
use League\CommonMark\Parser\MarkdownParserStateInterface;
26
27
use function str_ends_with;
28
use function str_starts_with;
29
30
/**
31
 * Convert webtrees 1.x census-assistant markup into tables.
32
 * Note that webtrees 2.0 generates markdown tables directly.
33
 */
34
class CensusTableStartParser implements BlockStartParserInterface
35
{
36
    /**
37
     * @param Cursor                       $cursor
38
     * @param MarkdownParserStateInterface $parserState
39
     *
40
     * @return BlockStart|null
41
     */
42
    public function tryStart(Cursor $cursor, MarkdownParserStateInterface $parserState): ?BlockStart
43
    {
44
        if ($cursor->getLine() === CensusTableExtension::CA_PREFIX) {
45
            return BlockStart::of(new CensusTableContinueParser())
46
                ->at($cursor);
47
        }
48
49
        return BlockStart::none();
1 ignored issue
show
Bug introduced by
Are you sure the usage of League\CommonMark\Parser\Block\BlockStart::none() targeting League\CommonMark\Parser\Block\BlockStart::none() seems to always return null.

This check looks for function or method calls that always return null and whose return value is used.

class A
{
    function getObject()
    {
        return null;
    }

}

$a = new A();
if ($a->getObject()) {

The method getObject() can return nothing but null, so it makes no sense to use the return value.

The reason is most likely that a function or method is imcomplete or has been reduced for debug purposes.

Loading history...
50
    }
51
}
52