classEntryPoint
final class EntryPoint
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.
A declared application entry and its explicitly supplied initial inputs.
Properties give the receiver object its initial state. Each key names a declared instance property as seen from the entry method's class; unspecified properties stay symbolic values of their declared types, and a supplied value must satisfy the declared type.
(new \Deriver\Deriver\Evaluator\Request\EntryPoint('App\\run'))->symbol // => 'App\\run'$entry = new \Deriver\Deriver\Evaluator\Request\EntryPoint('App\\Repository::find', properties: ['order' => \Deriver\Deriver\Evaluator\Term::constant('name')]);
$entry->properties['order']->native() // => 'name'Properties§
public string $symbolpublic array<int|string, Term> $arguments = []public Term|null $receiver = nullpublic array<string, Term> $properties = []public array<string, Term> $captures = []public bool $symbolicArguments = falseMethods§
public function __construct(
public string $symbol,
public array<int|string, Term> $arguments = [],
public Term|null $receiver = null,
public array<string, Term> $properties = [],
public array<string, Term> $captures = [],
public bool $symbolicArguments = false,
)Parameters
$symbol | string | Fully qualified callable or script identity |
$arguments | array<int|string, Term> | Positional or named initial values |
$receiver | Term|null | Initial receiver identity, if supplied |
$properties | array<string, Term> | Initial receiver property values keyed by property name |
$captures | array<string, Term> | Explicit lexical captures for closure entries; omitted captures remain symbolic and undeclared names are rejected at derivation |
$symbolicArguments | bool | Whether omitted parameters range over all valid inputs, including enum cases |
Throws
InvalidInputException If a property key is not a PHP property nameCalls 4
- function-call
array_keysline 42 - function-call
preg_matchline 43 - function-call
strvalline 43 - new InvalidInputException line 44
Test cases 169§
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 167
ExecutionValueTest::testCustomAggregateSelectionsPreserveValuescallsExecutionValueTest::testCustomIntrinsicResultsPreserveReturnedValuescallsExecutionValueTest::testDerivedReturnsPreserveSuppliedInputscallsExecutionValueTest::testDerivedSelectionsPreserveValuescallsExecutionValueTest::testExistenceResultsMatchSuppliedValuescallsExecutionValueTest::testNonUtf8BytesAndFloatingPointSpecialValuesRemainExactcallsFairEvaluationTest::testExplicitInputsReceiveWorkBeforeAnExpensiveInputFinishescallsProjectionValueTest::testDerivedArrayOperationsPreserveValuescallsProjectionValueTest::testNullConvertsToAnEmptyArraycallsProjectionValueTest::testStateProjectionSelectsAnAggregateFieldcallsProjectionValueTest::testValueProjectionSelectsAnAggregateFieldcallsSessionContractTest::testQueryIdentityIncludesArgumentsScopeAndBudgetcallsResultRefTestcallsSnapshotTestcallsStatisticsTestcallsDeriverConfigTestcallsArrayFunctionsTestcallsFunctionEvaluatorTestcallsLibraryTestcallsScalarFunctionsTestcallsTypePredicatesTestcallsCallDecisionTestcallsCallDescriptionTestcallsCallDescriptorTestcallsEvaluatorsTestcallsActionTestcallsExpressionTestcallsPlanCompilerTestcallsSemanticPlanTestcallsParameterTestcallsSignatureTestcallsDemandTest::testFramesKeepExplicitBindingsOutOfOtherQueriescallsLatticeTestcallsFrontierTestcallsBatchObservationsTest::providerMismatchescallsAllocationTestcallsArgumentBindingTestcallsArgumentOrderTestcallsCallExecutorTestcallsCallResolutionTestcallsBindingTestcallsCaptureTestcallsAccessTestcallsInvocationTestcallsMethodInvocationTestcallsInvocationTestcallsParameterBindingTestcallsPassedArgumentTestcallsArgumentsTestcallsCreationTestcallsMethodsTestcallsResolutionTestcallsUnpackTestcallsTypeBindingTestcallsTypeCheckTestcallsUnknownCallTestcallsAlternativeTestcallsAssessmentTestcallsCompletionTestcallsExceptionalTestcallsReachabilityTest::testEntrypointScopeCanProveAnObservationUnreachablecallsConstraintsTestcallsContextTest::testRetainsScopeAndVersionedProviderAssumptionscallsCollectionCallsTestcallsHandlerTestcallsIterationStepTestcallsIteratorCursorTestcallsLoopConvergenceTestcallsStateJoinTestcallsUnwindingTestcallsHavocTestcallsInstructionTransferTestcallsLocationTestcallsMemoryTestcallsObservationCollectorTest::providerObservationScopescallsObservationCollectorTest::providerReturnCompletionscallsProtocolTestcallsTransferTestcallsConversionsTestcallsCountableCallsTestcallsScalarErrorsTestcallsStringJoiningTest::testPartialRetainsUnknownArrayInputscallsStateTestcallsEvaluationTest::providerNonSummaryQuerycallsInvocationTestcallsDerivationTestcallsExplanationTestcallsCallableTransferTestcallsCompoundAssignmentTestcallsConstantTransferTestcallsIntrinsicTransferTestcallsMemoryStepTestcallsObjectAccessTestcallsPropertyAccessCheckTestcallsPropertyMagicTestcallsPropertyReferenceTestcallsPropertyTransferTestcallsPureStepTestcallsReferenceAssignmentTestcallsProjectionTestcallsBudgetTestcallsObservationTestcallsQueryScopeTest::testFromEntrypointsKeepsExplicitArgumentsAndOrdercallsReturnQueryTestcallsScopeModeTest::testScopesKeepDistinctCacheIdentitiescallsStateQueryTestcallsTupleQueryTestcallsValueQueryTestcallsArithmeticTestcallsArraysTestcallsComparisonTestcallsOperationsTestcallsTargetProfileTestcallsTermTestcallsDerivationResultTestcallsQueryExecutionTest::testDeriveDistinguishesAnUnreachedCallableFromAnIncompleteEntrycallsQueryExecutionTest::testDeriveRetainsEveryDeclaredEntrypointAndItsArgumentscallsQueryExecutionTest::testEntryInstallsSuppliedReceiverPropertiesOnlyForInstanceEntriescallsQueryExecutionTest::testEntryKeepsExternalParametersSymbolicDespiteTheirDefaultscallsQueryExecutionTest::testEntryReportsBindingErrorsWithoutRunningTheBodycallsQueryExecutionTest::testEntryUsesDefaultsOnlyInConcreteScopecallsQueryExecutionTest::testEntryUsesTheSuppliedInstanceReceiverAndIgnoresItForStaticMethodscallsResultAssessmentTestcallsQueryEncodingTest::providerDistinctQueriescallsQueryEncodingTest::providerEntryIdentitycallsQueryEncodingTest::testRecordKeepsEntryOrderNamedArgumentsAndReceiverInTheSharedGraphcallsQueryEncodingTest::testRecordKeepsReceiverPropertiesByNameInTheSharedGraphcallsQueryEncodingTest::testRecordUsesTheSharedValueGraphForEntryArgumentscallsValueGraphTestcallsAggregateLoweringTestcallsAssignmentLoweringTestcallsCallLoweringTestcallsConditionalLoweringTestcallsDestructuringLoweringTestcallsExceptionLoweringTestcallsGotoLoweringTestcallsLoopLoweringTestcallsMatchLoweringTestcallsStaticLoweringTestcallsSwitchLoweringTestcallsCallableSourceTestcallsIndexerTestcallsIndexTestcallsClassDeclarationTestcallsPropertyDeclarationTestcallsSymbolRefTestcallsEffectInspectionTestcallsExpressionLoweringTestcallsArgumentTestcallsBasicBlockTestcallsCallableGraphTestcallsCatchTargetTestcallsExceptionRegionTestcallsExpressionRefTestcallsInstructionTestcallsParameterTestcallsPointRefTestcallsTerminatorTestcallsDispatchTestcallsInstructionEmitterTestcallsLowererTestcallsLoweringScopeTestcallsStatementLoweringTestcallsEntryPointProviderTestcallsProviderExpansionTestcallsCallObservationsTestcallsDeriverTestcalls