Classes

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 50 100 150 200 Line Coverage (%) Cyclomatic Complexity Lucent\Container\Container — Coverage: 76.5% | Lines: 306 | Complexity: 160 Lucent\Container\ServiceProvider — Coverage: 53.8% | Lines: 13 | Complexity: 13 Lucent\Container\ContextualBindingBuilder — Coverage: 66.7% | Lines: 9 | Complexity: 4 Lucent\Container\NotFoundException — Coverage: 100.0% | Lines: 2 | Complexity: 1

Sorted by descending CRAP index.

Methods

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 2 4 6 8 10 Line Coverage (%) Cyclomatic Complexity Lucent\Container\Container::build — Coverage: 78.9% | Lines: 19 | Complexity: 5 Lucent\Container\Container::resolveDependencies — Coverage: 58.8% | Lines: 17 | Complexity: 8 Lucent\Container\Container::getParameterPlan — Coverage: 100.0% | Lines: 15 | Complexity: 4 Lucent\Container\Container::loadCachedPlans — Coverage: 0.0% | Lines: 13 | Complexity: 8 Lucent\Container\Container::resolveParameter — Coverage: 92.3% | Lines: 13 | Complexity: 6 Lucent\Container\Container::instance — Coverage: 100.0% | Lines: 12 | Complexity: 3 Lucent\Container\Container::resolveFactoryCallable — Coverage: 50.0% | Lines: 12 | Complexity: 3 Lucent\Container\Container::call — Coverage: 90.9% | Lines: 11 | Complexity: 5 Lucent\Container\Container::cachePlans — Coverage: 0.0% | Lines: 11 | Complexity: 4 Lucent\Container\Container::resolve — Coverage: 100.0% | Lines: 11 | Complexity: 6 Lucent\Container\Container::normalizeHandler — Coverage: 90.0% | Lines: 10 | Complexity: 7 Lucent\Container\Container::singleton — Coverage: 100.0% | Lines: 8 | Complexity: 3 Lucent\Container\Container::bind — Coverage: 87.5% | Lines: 8 | Complexity: 3 Lucent\Container\Container::castParameter — Coverage: 62.5% | Lines: 8 | Complexity: 9 Lucent\Container\Container::abstractFromCallable — Coverage: 100.0% | Lines: 8 | Complexity: 3 Lucent\Container\Container::has — Coverage: 100.0% | Lines: 7 | Complexity: 5 Lucent\Container\Container::isValidPlan — Coverage: 0.0% | Lines: 7 | Complexity: 5 Lucent\Container\Container::resolvesTo — Coverage: 100.0% | Lines: 7 | Complexity: 4 Lucent\Container\Container::flush — Coverage: 100.0% | Lines: 6 | Complexity: 1 Lucent\Container\Container::resolveFactory — Coverage: 100.0% | Lines: 6 | Complexity: 1 Lucent\Container\Container::scoped — Coverage: 60.0% | Lines: 5 | Complexity: 2 Lucent\Container\Container::remove — Coverage: 100.0% | Lines: 5 | Complexity: 3 Lucent\Container\Container::fireResolvingCallbacks — Coverage: 100.0% | Lines: 5 | Complexity: 1 Lucent\Container\Container::planKey — Coverage: 80.0% | Lines: 5 | Complexity: 4 Lucent\Container\Container::getReflection — Coverage: 80.0% | Lines: 5 | Complexity: 3 Lucent\Container\ContextualBindingBuilder::give — Coverage: 40.0% | Lines: 5 | Complexity: 2 Lucent\Container\Container::bound — Coverage: 100.0% | Lines: 4 | Complexity: 4 Lucent\Container\Container::bindIf — Coverage: 75.0% | Lines: 4 | Complexity: 4 Lucent\Container\Container::tagged — Coverage: 100.0% | Lines: 4 | Complexity: 2 Lucent\Container\Container::resolveBinding — Coverage: 100.0% | Lines: 4 | Complexity: 1 Lucent\Container\Container::getContextualConcrete — Coverage: 100.0% | Lines: 4 | Complexity: 2 Lucent\Container\Container::getTypeName — Coverage: 100.0% | Lines: 4 | Complexity: 2 Lucent\Container\Container::isPlanSerializable — Coverage: 0.0% | Lines: 4 | Complexity: 3 Lucent\Container\Container::extend — Coverage: 66.7% | Lines: 3 | Complexity: 2 Lucent\Container\Container::tag — Coverage: 100.0% | Lines: 3 | Complexity: 3 Lucent\Container\Container::resolving — Coverage: 66.7% | Lines: 3 | Complexity: 3 Lucent\Container\Container::afterResolving — Coverage: 66.7% | Lines: 3 | Complexity: 3 Lucent\Container\Container::rebinding — Coverage: 100.0% | Lines: 3 | Complexity: 2 Lucent\Container\Container::resolveContextual — Coverage: 66.7% | Lines: 3 | Complexity: 2 Lucent\Container\Container::applyExtenders — Coverage: 100.0% | Lines: 3 | Complexity: 2 Lucent\Container\Container::rebound — Coverage: 0.0% | Lines: 3 | Complexity: 2 Lucent\Container\Container::isInstantiable — Coverage: 100.0% | Lines: 3 | Complexity: 2 Lucent\Container\Container::resolveAlias — Coverage: 100.0% | Lines: 3 | Complexity: 2 Lucent\Container\Container::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Lucent\Container\Container::fireCallbackArray — Coverage: 100.0% | Lines: 2 | Complexity: 2 Lucent\Container\ContextualBindingBuilder::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Lucent\Container\ContextualBindingBuilder::needs — Coverage: 100.0% | Lines: 2 | Complexity: 1 Lucent\Container\NotFoundException::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Lucent\Container\Container::get — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::make — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::resolved — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::alias — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::when — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::addContextualBinding — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::removeAlias — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::forgetInstance — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::forgetInstances — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\Container::forget — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::boot — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::provides — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::isDeferred — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::call — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::make — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::bind — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::singleton — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::instance — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::alias — Coverage: 100.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::when — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::tag — Coverage: 0.0% | Lines: 1 | Complexity: 1 Lucent\Container\ServiceProvider::tagged — Coverage: 0.0% | Lines: 1 | Complexity: 1

Sorted by descending CRAP index.

Method CRAP Coverage
Lucent\Container\Container::loadCachedPlans720.0%
Lucent\Container\Container::isValidPlan300.0%
Lucent\Container\Container::cachePlans200.0%
Lucent\Container\Container::castParameter13.2762.5%
Lucent\Container\Container::resolveDependencies12.4758.8%
Lucent\Container\Container::isPlanSerializable120.0%
Lucent\Container\Container::normalizeHandler7.0590.0%
Lucent\Container\Container::resolveParameter6.0292.3%
Lucent\Container\Container::resolve6100.0%
Lucent\Container\Container::rebound60.0%
Lucent\Container\Container::build5.2378.9%
Lucent\Container\Container::call5.0290.9%
Lucent\Container\Container::has5100.0%
Lucent\Container\Container::bindIf4.2575.0%
Lucent\Container\Container::planKey4.1380.0%
Lucent\Container\Container::resolveFactoryCallable4.1250.0%
Lucent\Container\Container::bound4100.0%
Lucent\Container\Container::getParameterPlan4100.0%
Lucent\Container\Container::resolvesTo4100.0%
Lucent\Container\Container::resolving3.3366.7%
Lucent\Container\Container::afterResolving3.3366.7%
Lucent\Container\Container::getReflection3.0780.0%
Lucent\Container\Container::bind3.0287.5%
Lucent\Container\Container::singleton3100.0%
Lucent\Container\Container::instance3100.0%
Lucent\Container\Container::tag3100.0%
Lucent\Container\Container::remove3100.0%
Lucent\Container\Container::abstractFromCallable3100.0%
Lucent\Container\ContextualBindingBuilder::give2.8640.0%
Lucent\Container\Container::scoped2.2660.0%
Lucent\Container\Container::extend2.1566.7%
Lucent\Container\Container::resolveContextual2.1566.7%
Lucent\Container\Container::tagged2100.0%
Lucent\Container\Container::rebinding2100.0%
Lucent\Container\Container::forgetInstances20.0%
Lucent\Container\Container::getContextualConcrete2100.0%
Lucent\Container\Container::applyExtenders2100.0%
Lucent\Container\Container::fireCallbackArray2100.0%
Lucent\Container\Container::getTypeName2100.0%
Lucent\Container\Container::isInstantiable2100.0%
Lucent\Container\Container::resolveAlias2100.0%
Lucent\Container\ServiceProvider::provides20.0%
Lucent\Container\ServiceProvider::call20.0%
Lucent\Container\ServiceProvider::bind20.0%
Lucent\Container\ServiceProvider::when20.0%
Lucent\Container\ServiceProvider::tag20.0%
Lucent\Container\ServiceProvider::tagged20.0%
Lucent\Container\Container::__construct1100.0%
Lucent\Container\Container::get1100.0%
Lucent\Container\Container::make1100.0%
Lucent\Container\Container::resolved1100.0%
Lucent\Container\Container::alias1100.0%
Lucent\Container\Container::when1100.0%
Lucent\Container\Container::addContextualBinding1100.0%
Lucent\Container\Container::removeAlias1100.0%
Lucent\Container\Container::forgetInstance1100.0%
Lucent\Container\Container::flush1100.0%
Lucent\Container\Container::resolveFactory1100.0%
Lucent\Container\Container::resolveBinding1100.0%
Lucent\Container\Container::fireResolvingCallbacks1100.0%
Lucent\Container\Container::forget1100.0%
Lucent\Container\ContextualBindingBuilder::__construct1100.0%
Lucent\Container\ContextualBindingBuilder::needs1100.0%
Lucent\Container\NotFoundException::__construct1100.0%
Lucent\Container\ServiceProvider::__construct1100.0%
Lucent\Container\ServiceProvider::boot1100.0%
Lucent\Container\ServiceProvider::isDeferred1100.0%
Lucent\Container\ServiceProvider::make1100.0%
Lucent\Container\ServiceProvider::singleton1100.0%
Lucent\Container\ServiceProvider::instance1100.0%
Lucent\Container\ServiceProvider::alias1100.0%
Lucent\Container\ServiceProvider::register0100.0%