Analyzer::Php::Laravel
Inherits Analyzer::Php::PhpEngine < FileScanEngine < Analyzer < FileHelper < Reference < Object
Constants
Route::any('/x', …): capture 1 is the path; the verbs are implied.
Methods a single Route::any registration stands for.
The match/addRoute routes behind a fluent prelude. Capture 1 is the prelude, capture 2 the verb specification, capture 3 the path.
The static routes behind a fluent prelude. Capture 1 is the prelude, capture 2 the (unread) static verb, capture 3 the path.
The same, behind a fluent prelude — Route::middleware('auth')->prefix('v1')->get('/x', …).
Capture 1 is the whole prelude (a ->-separated chain of calls; the
inner [^;]*? keeps each call's argument list inside one statement),
capture 2 the verb, capture 3 the path.
Route::match(['get', 'post'], '/x', …) or Route::addRoute('QUERY', '/x', …):
capture 1 is the verb specification (array literal or string literal), capture 2 the path.
Hoisted patterns for extract_resource_route_calls /
extract_resource_action_filter — both call sites pass literal
names ("resource"/"apiResource", "only"/"except"), and the previous
Regex.new interpolation recompiled the pattern on every call
(per file, and per resource statement respectively).
Any Route::…('path', … registration, whatever verb or chain precedes
it. Used only to locate handler-closure bodies up front; the six scans
above are what actually decide which registrations become endpoints.
Route::view / redirect / permanentRedirect: capture 1 is the verb
alternation, matched but never read — Laravel serves all three over GET
only — and capture 2 is the path.
Route::get('/x', …) and friends: the verb is capture 1, the path
capture 2.
Class methods
Instance methods
Instance-side view of the same declaration. The per-file rescues live on
this base class, which has no way to name the analyzer that is running
inside them, so a skipped file could not be attributed to a tech.
Deriving it from analyzer_for keeps the name written exactly once.