NoSuchArgumentException::forArgumentName()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 7
ccs 3
cts 3
cp 1
rs 9.4285
cc 1
eloc 5
nc 1
nop 3
crap 1
1
<?php
2
3
/*
4
 * This file is part of the webmozart/console package.
5
 *
6
 * (c) Bernhard Schussek <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Webmozart\Console\Api\Args;
13
14
use Exception;
15
use RuntimeException;
16
17
/**
18
 * Thrown when a non-existing argument is accessed.
19
 *
20
 * @since  1.0
21
 *
22
 * @author Bernhard Schussek <[email protected]>
23
 */
24
class NoSuchArgumentException extends RuntimeException
25
{
26
    /**
27
     * Creates an exception for the given argument name.
28
     *
29
     * @param string    $name  The argument name.
30
     * @param int       $code  The exception code.
31
     * @param Exception $cause The exception that caused this exception.
0 ignored issues
show
Documentation introduced by
Should the type for parameter $cause not be null|Exception?

This check looks for @param annotations where the type inferred by our type inference engine differs from the declared type.

It makes a suggestion as to what type it considers more descriptive.

Most often this is a case of a parameter that can be null in addition to its declared types.

Loading history...
32
     *
33
     * @return static The created exception.
34
     */
35 6
    public static function forArgumentName($name, $code = 0, Exception $cause = null)
36
    {
37 6
        return new static(sprintf(
38 6
            'The argument "%s" does not exist.',
39
            $name
40
        ), $code, $cause);
41
    }
42
43
    /**
44
     * Creates an exception for the given argument position.
45
     *
46
     * @param int       $position The argument position.
47
     * @param int       $code     The exception code.
48
     * @param Exception $cause    The exception that caused this exception.
0 ignored issues
show
Documentation introduced by
Should the type for parameter $cause not be null|Exception?

This check looks for @param annotations where the type inferred by our type inference engine differs from the declared type.

It makes a suggestion as to what type it considers more descriptive.

Most often this is a case of a parameter that can be null in addition to its declared types.

Loading history...
49
     *
50
     * @return static The created exception.
51
     */
52 3
    public static function forPosition($position, $code = 0, Exception $cause = null)
53
    {
54 3
        return new static(sprintf(
55 3
            'The argument at position %s does not exist.',
56
            $position
57
        ), $code, $cause);
58
    }
59
}
60