examples/InfiniteProgressBar/Service.php
Avoid unused parameters such as '$context'. Wontfix
Wontfix
public function process(Context $context): void
- Read upRead up
- Exclude checks
UnusedFormalParameter
Since: 0.2
Avoid passing parameters to methods or constructors and then not using those parameters.
Example
class Foo
{
private function bar($howdy)
{
// $howdy is not used
}
}
Source https://phpmd.org/rules/unusedcode.html#unusedformalparameter
Call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::loopInfiniteBar
Open
Open
$this->loopInfiniteBar();
- Exclude checks
Reference to constant INFO
from undeclared class \Andrey\Cli\Types\ConsoleLevel
Open
Open
self::center('And we are done :)', ConsoleLevel::INFO);
- Exclude checks
Reference to constant HIGHLIGHT
from undeclared class \Andrey\Cli\Types\ConsoleLevel
Open
Open
self::center('Check this really nice infinite progress bar', ConsoleLevel::HIGHLIGHT);
- Exclude checks
Parameter $context
has undeclared type \Andrey\Cli\Types\Context
Open
Open
public function process(Context $context): void
- Exclude checks
Static call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::center
Open
Open
self::center('And we are done :)', ConsoleLevel::INFO);
- Exclude checks
Call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::initInfiniteBar
Open
Open
$this->initInfiniteBar();
- Exclude checks
Class uses undeclared trait \Andrey\Cli\Utils\Output
Open
Open
class Service
- Exclude checks
Static call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::center
Open
Open
self::center('Thanks for watching!');
- Exclude checks
Class uses undeclared trait \Andrey\Cli\Components\InfiniteProgressBar
Open
Open
class Service
- Exclude checks
Static call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::center
Open
Open
self::center('Check this really nice infinite progress bar', ConsoleLevel::HIGHLIGHT);
- Exclude checks
Call to undeclared method \Andrey\Cli\Examples\InfiniteProgressBar\Service::endInfiniteBar
Open
Open
$this->endInfiniteBar();
- Exclude checks
Remove the unused function parameter "$context". Wontfix
Wontfix
public function process(Context $context): void
- Read upRead up
- Exclude checks
Unused parameters are misleading. Whatever the value passed to such parameters is, the behavior will be the same.
Noncompliant Code Example
function doSomething($a, $b) { // "$a" is unused return compute($b); }
Compliant Solution
function doSomething($b) { return compute($b); }
Exceptions
Functions in classes that override a class or implement interfaces are ignored.
class C extends B { function doSomething($a, $b) { // no issue reported on $b compute($a); } }
See
- MISRA C++:2008, 0-1-11 - There shall be no unused parameters (named or unnamed) in nonvirtual functions.
- MISRA C:2012, 2.7 - There should be no unused parameters in functions
- CERT, MSC12-C. - Detect and remove code that has no effect or is never executed
- CERT, MSC12-CPP. - Detect and remove code that has no effect