enumSinkRole
enum SinkRole: string
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.
What a matched database call does with the statement it is given.
Cases§
case Query = 'query'case Compose = 'compose'case Prepare = 'prepare'case Execute = 'execute'case Bind = 'bind'case Modelled = 'modelled'Methods§
public function returnsSql(): boolWhether the call hands the statement text back rather than sending it.
Some interfaces interpolate a statement and return it for something else to run. Treating the interpolation as the statement's source, rather than as a call the analyzer cannot see through, is what keeps the statement readable where it is finally issued.
Returns
boolCalls 1
- class-const SinkRole::Compose() line 31
public function carriesSql(): boolWhether the call carries the statement text itself.
Returns
boolCalls 6
- class-const SinkRole::Query() line 40
- class-const SinkRole::Compose() line 40
- class-const SinkRole::Prepare() line 40
- class-const SinkRole::Execute() line 41
- class-const SinkRole::Bind() line 41
- class-const SinkRole::Modelled() line 41
Test cases 33§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 2
Other tests reaching this symbol 31
CallEvaluatorTest::testApplySinkHandsBackWhatEachKindOfDatabaseCallHandsBackcallsCallEvaluatorTest::testEvaluateStaticHandsBackWhatADatabaseCallHandsBackcallsInterpreterTest::testSinkOfResolvesAStaticCallOnTheEnclosingClasscallsInterpreterTest::testVisitHandsBackNothingForABindingCallWrittenWithoutAReceivercallsInterpreterTest::testVisitRecordsNothingForADatabaseCallThatTakesNoStatementcallsSinkFinderTest::testFindAllCollectsEveryDatabaseCallButTheOnesThatComposeAStatementcallsSinkFinderTest::testFindAllFindsNothingWhenEverySinkComposesAStatementcallsSinkFinderTest::testNamesOfWritesEachNameInLowerCaseWithoutALeadingBackslashcallsSinkMatcherTest::testByNameKeepsEveryCallOfThatNamecallsSinkMatcherTest::testMatchStaticFindsTheCallOnAKnownClasscallsValueBinderTest::testBindOneRecordAppendsAValueWhoseNameDidNotResolvecallsValueBinderTest::testBindOneRecordDoesNothingWhenTheCallBindsNothingcallsValueBinderTest::testBindOneRecordIgnoresAValuesArgumentThatDidNotResolvecallsValueBinderTest::testBindOneRecordLeavesAnArrayOfValuesThatDidNotResolveUnboundEvenWhenValuesCouldBeListedcallsValueBinderTest::testBindOneRecordNeedsBothTheNameAndTheValueOfASingleBindcallsValueBinderTest::testBindOneRecordReadsAnArrayOfValuescallsValueBinderTest::testBindOneRecordReadsOneNamedValuecallsValueBinderTest::testBindOneRecordReadsVariadicValuescallsValueBinderTest::testBindOneRecordReadsVariadicValuesWithoutAlsoReadingOneNamedValuecallsValueBinderTest::testBindValuesReachesEveryStatementcallsSinkSpecTest::testMatchesNameIgnoresCaseAndLeadingBackslashescallsSinkSpecTest::testModelledOutputsUseSqlAndBindingsWithoutArgumentPositionscallsSinkSpecTest::testTheArgumentPositionsAreKeptcallsDoctrineExtensionTest::testSinksCoverPreparingBindingAndQueryingcallsLaravelExtensionTest::testBuilderMethodsDeclareReadsWritesAndCompoundExecutionscallsLaravelExtensionTest::testEverySinkIsDescribedExactlycallsPdoExtensionTest::testSinksCoverQueryingPreparingAndBindingcallsWordPressExtensionTest::testPrepareHandsTheStatementBackRatherThanSendingItcallsWordPressExtensionTest::testSinksCoverInterpolatingAndIssuingAStatementcallsAnalyzerTest::testAnalyzeSourceKeepsAModelledSinkWithoutARegisteredCompilerVisiblecallsAnalyzerTest::testAnalyzeSourceSupportsRegisteredQueryModelsWithoutLaravelcalls
Relations§
Constant reads 51
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:386
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:387
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:392
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:392
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:393
- class-const SqlCatalog\Core\Analysis\CallEvaluator::applySink() packages/sql-catalog/src/Core/Analysis/CallEvaluator.php:393
- class-const SqlCatalog\Core\Analysis\Derivation\FreeNames::__construct() packages/sql-catalog/src/Core/Analysis/Derivation/FreeNames.php:58
- class-const SqlCatalog\Core\Analysis\Derivation\FreeNames::__construct() packages/sql-catalog/src/Core/Analysis/Derivation/FreeNames.php:61
- class-const SqlCatalog\Core\Analysis\Derivation\FreeNames::__construct() packages/sql-catalog/src/Core/Analysis/Derivation/FreeNames.php:61
- class-const SqlCatalog\Core\Analysis\Interpreter::visit() packages/sql-catalog/src/Core/Analysis/Interpreter.php:214
- class-const SqlCatalog\Core\Analysis\Interpreter::visit() packages/sql-catalog/src/Core/Analysis/Interpreter.php:219
- class-const SqlCatalog\Core\Analysis\Interpreter::visit() packages/sql-catalog/src/Core/Analysis/Interpreter.php:224
- class-const SqlCatalog\Core\Analysis\Interpreter::visit() packages/sql-catalog/src/Core/Analysis/Interpreter.php:224
- class-const SqlCatalog\Core\Analysis\Interpreter::unidentified() packages/sql-catalog/src/Core/Analysis/Interpreter.php:298
- class-const SqlCatalog\Core\Analysis\Interpreter::unidentified() packages/sql-catalog/src/Core/Analysis/Interpreter.php:298
- class-const SqlCatalog\Core\Analysis\Interpreter::unidentified() packages/sql-catalog/src/Core/Analysis/Interpreter.php:298
- class-const SqlCatalog\Core\Analysis\Interpreter::recordStatements() packages/sql-catalog/src/Core/Analysis/Interpreter.php:349
- class-const SqlCatalog\Core\Analysis\SinkFinder::findAll() packages/sql-catalog/src/Core/Analysis/SinkFinder.php:61
- class-const SqlCatalog\Core\Analysis\SinkFinder::namesOf() packages/sql-catalog/src/Core/Analysis/SinkFinder.php:101
- class-const SqlCatalog\Core\Analysis\SinkFinder::namesOf() packages/sql-catalog/src/Core/Analysis/SinkFinder.php:101
- class-const SqlCatalog\Core\Analysis\SinkFinder::namesOf() packages/sql-catalog/src/Core/Analysis/SinkFinder.php:101
- class-const SqlCatalog\Core\Extension\SinkSpec::__construct() packages/sql-catalog/src/Core/Extension/SinkSpec.php:60
- class-const SqlCatalog\Core\Extension\SinkSpec::__construct() packages/sql-catalog/src/Core/Extension/SinkSpec.php:61
- class-const SqlCatalog\Extension\Doctrine\DoctrineExtension::sinks() packages/sql-catalog/src/Extension/Doctrine/DoctrineExtension.php:57
- class-const SqlCatalog\Extension\Doctrine\DoctrineExtension::sinks() packages/sql-catalog/src/Extension/Doctrine/DoctrineExtension.php:66
- class-const SqlCatalog\Extension\Doctrine\DoctrineExtension::sinks() packages/sql-catalog/src/Extension/Doctrine/DoctrineExtension.php:75
- class-const SqlCatalog\Extension\Doctrine\DoctrineExtension::sinks() packages/sql-catalog/src/Extension/Doctrine/DoctrineExtension.php:86
- class-const SqlCatalog\Extension\Laravel\LaravelExtension::sinks() packages/sql-catalog/src/Extension/Laravel/LaravelExtension.php:66
- class-const SqlCatalog\Extension\Laravel\LaravelExtension::sinks() packages/sql-catalog/src/Extension/Laravel/LaravelExtension.php:76
- class-const SqlCatalog\Extension\Laravel\LaravelExtension::sinks() packages/sql-catalog/src/Extension/Laravel/LaravelExtension.php:85
- class-const SqlCatalog\Extension\Laravel\LaravelExtension::sinks() packages/sql-catalog/src/Extension/Laravel/LaravelExtension.php:87
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:57
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:58
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:59
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:65
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:74
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:83
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::methodSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:91
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::functionSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:105
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::functionSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:106
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::functionSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:107
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::functionSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:113
- class-const SqlCatalog\Extension\Mysqli\MysqliExtension::functionSinks() packages/sql-catalog/src/Extension/Mysqli/MysqliExtension.php:122
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:47
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:48
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:54
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:63
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:71
- class-const SqlCatalog\Extension\Pdo\PdoExtension::sinks() packages/sql-catalog/src/Extension/Pdo/PdoExtension.php:80
- class-const SqlCatalog\Extension\WordPress\WordPressExtension::sinks() packages/sql-catalog/src/Extension/WordPress/WordPressExtension.php:61
- class-const SqlCatalog\Extension\WordPress\WordPressExtension::sinks() packages/sql-catalog/src/Extension/WordPress/WordPressExtension.php:72