SYMBOL INDEX (35 symbols across 10 files) FILE: src/Deferrer.php type Deferrer (line 5) | interface Deferrer method getCurrentTime (line 7) | public function getCurrentTime(): int; method sleep (line 9) | public function sleep(int $milliseconds); FILE: src/InMemoryStore.php class InMemoryStore (line 5) | class InMemoryStore implements Store method get (line 10) | public function get(): array method push (line 15) | public function push(int $timestamp, int $limit) FILE: src/RateLimiter.php class RateLimiter (line 5) | class RateLimiter method __construct (line 22) | public function __construct( method handle (line 34) | public function handle(callable $callback) method delayUntilNextRequest (line 50) | protected function delayUntilNextRequest(): int method timeFrameLengthInMilliseconds (line 71) | protected function timeFrameLengthInMilliseconds(): int FILE: src/RateLimiterMiddleware.php class RateLimiterMiddleware (line 7) | class RateLimiterMiddleware method __construct (line 12) | private function __construct(RateLimiter $rateLimiter) method perSecond (line 17) | public static function perSecond(int $limit, ?Store $store = null, ?De... method perMinute (line 29) | public static function perMinute(int $limit, ?Store $store = null, ?De... method __invoke (line 41) | public function __invoke(callable $handler) FILE: src/SleepDeferrer.php class SleepDeferrer (line 5) | class SleepDeferrer implements Deferrer method getCurrentTime (line 7) | public function getCurrentTime(): int method sleep (line 12) | public function sleep(int $milliseconds) FILE: src/Store.php type Store (line 5) | interface Store method get (line 7) | public function get(): array; method push (line 9) | public function push(int $timestamp, int $limit); FILE: tests/RateLimiterMiddlewareTest.php class RateLimiterMiddlewareTest (line 7) | class RateLimiterMiddlewareTest extends TestCase method it_has_named_constructors_to_create_instances (line 10) | public function it_has_named_constructors_to_create_instances() FILE: tests/RateLimiterTest.php class RateLimiterTest (line 7) | class RateLimiterTest extends TestCase method it_execute_actions_below_a_limit_in_seconds (line 10) | public function it_execute_actions_below_a_limit_in_seconds() method it_defers_actions_when_it_reaches_a_limit_in_seconds (line 50) | public function it_defers_actions_when_it_reaches_a_limit_in_seconds() method it_execute_actions_below_a_limit_in_minutes (line 78) | public function it_execute_actions_below_a_limit_in_minutes() method it_defers_actions_when_it_reaches_a_limit_in_minutes (line 112) | public function it_defers_actions_when_it_reaches_a_limit_in_minutes() FILE: tests/TestCase.php class TestCase (line 9) | abstract class TestCase extends BaseTestCase method setUp (line 14) | protected function setUp(): void method createRateLimiter (line 21) | public function createRateLimiter(int $limit, string $timeFrame): Rate... FILE: tests/TestDeferrer.php class TestDeferrer (line 7) | class TestDeferrer implements Deferrer method getCurrentTime (line 12) | public function getCurrentTime(): int method sleep (line 17) | public function sleep(int $milliseconds)