Skip to content

[12.x] Add unified enum support across framework docs #56271

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: 12.x
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion src/Illuminate/Broadcasting/InteractsWithBroadcasting.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

use Illuminate\Support\Arr;

use function Illuminate\Support\enum_value;

trait InteractsWithBroadcasting
{
/**
Expand All @@ -16,11 +18,13 @@ trait InteractsWithBroadcasting
/**
* Broadcast the event using a specific broadcaster.
*
* @param array|string|null $connection
* @param array|string|null|\UnitEnum $connection
* @return $this
*/
public function broadcastVia($connection = null)
{
$connection = enum_value($connection);

$this->broadcastConnection = is_null($connection)
? [null]
: Arr::wrap($connection);
Expand Down
6 changes: 4 additions & 2 deletions src/Illuminate/Broadcasting/PendingBroadcast.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

use Illuminate\Contracts\Events\Dispatcher;

use function Illuminate\Support\enum_value;

class PendingBroadcast
{
/**
Expand Down Expand Up @@ -35,13 +37,13 @@ public function __construct(Dispatcher $events, $event)
/**
* Broadcast the event using a specific broadcaster.
*
* @param string|null $connection
* @param string|null|\UnitEnum $connection
* @return $this
*/
public function via($connection = null)
{
if (method_exists($this->event, 'broadcastVia')) {
$this->event->broadcastVia($connection);
$this->event->broadcastVia(enum_value($connection));
}

return $this;
Expand Down
9 changes: 7 additions & 2 deletions src/Illuminate/Console/Scheduling/Schedule.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
use Illuminate\Support\Traits\Macroable;
use RuntimeException;

use function Illuminate\Support\enum_value;

/**
* @mixin \Illuminate\Console\Scheduling\PendingEventAttributes
*/
Expand Down Expand Up @@ -170,14 +172,17 @@ public function command($command, array $parameters = [])
* Add a new job callback event to the schedule.
*
* @param object|string $job
* @param string|null $queue
* @param string|null $connection
* @param string|null|\UnitEnum $queue
* @param string|null|\UnitEnum $connection
* @return \Illuminate\Console\Scheduling\CallbackEvent
*/
public function job($job, $queue = null, $connection = null)
{
$jobName = $job;

$queue = enum_value($queue);
$connection = enum_value($connection);

if (! is_string($job)) {
$jobName = method_exists($job, 'displayName')
? $job->displayName()
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Contracts/Filesystem/Factory.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ interface Factory
/**
* Get a filesystem implementation.
*
* @param string|null $name
* @param \UnitEnum|string|null $name
* @return \Illuminate\Contracts\Filesystem\Filesystem
*/
public function disk($name = null);
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Contracts/Redis/Factory.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ interface Factory
/**
* Get a Redis connection by name.
*
* @param string|null $name
* @param string|null|\UnitEnum $name
* @return \Illuminate\Redis\Connections\Connection
*/
public function connection($name = null);
Expand Down
6 changes: 4 additions & 2 deletions src/Illuminate/Database/Connection.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
use PDOStatement;
use RuntimeException;

use function Illuminate\Support\enum_value;

class Connection implements ConnectionInterface
{
use DetectsConcurrencyErrors,
Expand Down Expand Up @@ -307,13 +309,13 @@ public function getSchemaBuilder()
/**
* Begin a fluent query against a database table.
*
* @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|string $table
* @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|\UnitEnum|string $table
* @param string|null $as
* @return \Illuminate\Database\Query\Builder
*/
public function table($table, $as = null)
{
return $this->query()->from($table, $as);
return $this->query()->from(enum_value($table), $as);
}

/**
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Database/ConnectionInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ interface ConnectionInterface
/**
* Begin a fluent query against a database table.
*
* @param \Closure|\Illuminate\Database\Query\Builder|string $table
* @param \Closure|\Illuminate\Database\Query\Builder|\UnitEnum|string $table
* @param string|null $as
* @return \Illuminate\Database\Query\Builder
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Database/ConnectionResolverInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ interface ConnectionResolverInterface
/**
* Get a database connection instance.
*
* @param string|null $name
* @param \UnitEnum|string|null $name
* @return \Illuminate\Database\ConnectionInterface
*/
public function connection($name = null);
Expand Down
6 changes: 4 additions & 2 deletions src/Illuminate/Database/DatabaseManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
use PDO;
use RuntimeException;

use function Illuminate\Support\enum_value;

/**
* @mixin \Illuminate\Database\Connection
*/
Expand Down Expand Up @@ -85,12 +87,12 @@ public function __construct($app, ConnectionFactory $factory)
/**
* Get a database connection instance.
*
* @param string|null $name
* @param string|null|\UnitEnum $name
* @return \Illuminate\Database\Connection
*/
public function connection($name = null)
{
$name = $name ?: $this->getDefaultConnection();
$name = enum_value($name) ?: $this->getDefaultConnection();

[$database, $type] = $this->parseConnectionName($name);

Expand Down
6 changes: 4 additions & 2 deletions src/Illuminate/Filesystem/FilesystemManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
use League\Flysystem\UnixVisibility\PortableVisibilityConverter;
use League\Flysystem\Visibility;

use function Illuminate\Support\enum_value;

/**
* @mixin \Illuminate\Contracts\Filesystem\Filesystem
* @mixin \Illuminate\Filesystem\FilesystemAdapter
Expand Down Expand Up @@ -72,12 +74,12 @@ public function drive($name = null)
/**
* Get a filesystem instance.
*
* @param string|null $name
* @param \UnitEnum|string|null $name
* @return \Illuminate\Contracts\Filesystem\Filesystem
*/
public function disk($name = null)
{
$name = $name ?: $this->getDefaultDriver();
$name = enum_value($name) ?: $this->getDefaultDriver();

return $this->disks[$name] = $this->get($name);
}
Expand Down
10 changes: 6 additions & 4 deletions src/Illuminate/Foundation/helpers.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@
use League\Uri\Contracts\UriInterface;
use Symfony\Component\HttpFoundation\Response;

use function Illuminate\Support\enum_value;

if (! function_exists('abort')) {
/**
* Throw an HttpException with the given data.
Expand Down Expand Up @@ -622,12 +624,12 @@ function mix($path, $manifestDirectory = '')
/**
* Create a new Carbon instance for the current time.
*
* @param \DateTimeZone|string|null $tz
* @param \DateTimeZone|string|null|\UnitEnum $tz
* @return \Illuminate\Support\Carbon
*/
function now($tz = null)
{
return Date::now($tz);
return Date::now(enum_value($tz));
}
}

Expand Down Expand Up @@ -968,12 +970,12 @@ function to_route($route, $parameters = [], $status = 302, $headers = [])
/**
* Create a new Carbon instance for the current date.
*
* @param \DateTimeZone|string|null $tz
* @param \DateTimeZone|string|null|\UnitEnum $tz
* @return \Illuminate\Support\Carbon
*/
function today($tz = null)
{
return Date::today($tz);
return Date::today(enum_value($tz));
}
}

Expand Down
6 changes: 4 additions & 2 deletions src/Illuminate/Redis/RedisManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
use Illuminate\Support\ConfigurationUrlParser;
use InvalidArgumentException;

use function Illuminate\Support\enum_value;

/**
* @mixin \Illuminate\Redis\Connections\Connection
*/
Expand Down Expand Up @@ -75,12 +77,12 @@ public function __construct($app, $driver, array $config)
/**
* Get a Redis connection by name.
*
* @param string|null $name
* @param string|null|\UnitEnum $name
* @return \Illuminate\Redis\Connections\Connection
*/
public function connection($name = null)
{
$name = $name ?: 'default';
$name = enum_value($name) ?: 'default';

if (isset($this->connections[$name])) {
return $this->connections[$name];
Expand Down
4 changes: 2 additions & 2 deletions src/Illuminate/Support/Facades/DB.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
use Illuminate\Database\Console\WipeCommand;

/**
* @method static \Illuminate\Database\Connection connection(string|null $name = null)
* @method static \Illuminate\Database\Connection connection(\UnitEnum|string|null $name = null)
* @method static \Illuminate\Database\ConnectionInterface build(array $config)
* @method static string calculateDynamicConnectionName(array $config)
* @method static \Illuminate\Database\ConnectionInterface connectUsing(string $name, array $config, bool $force = false)
Expand All @@ -35,7 +35,7 @@
* @method static void useDefaultSchemaGrammar()
* @method static void useDefaultPostProcessor()
* @method static \Illuminate\Database\Schema\Builder getSchemaBuilder()
* @method static \Illuminate\Database\Query\Builder table(\Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|string $table, string|null $as = null)
* @method static \Illuminate\Database\Query\Builder table(\Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|\UnitEnum|string $table, string|null $as = null)
* @method static \Illuminate\Database\Query\Builder query()
* @method static mixed selectOne(string $query, array $bindings = [], bool $useReadPdo = true)
* @method static mixed scalar(string $query, array $bindings = [], bool $useReadPdo = true)
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Support/Facades/Redis.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
namespace Illuminate\Support\Facades;

/**
* @method static \Illuminate\Redis\Connections\Connection connection(string|null $name = null)
* @method static \Illuminate\Redis\Connections\Connection connection(\UnitEnum|string|null $name = null)
* @method static \Illuminate\Redis\Connections\Connection resolve(string|null $name = null)
* @method static array connections()
* @method static void enableEvents()
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Support/Facades/Schedule.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
/**
* @method static \Illuminate\Console\Scheduling\CallbackEvent call(string|callable $callback, array $parameters = [])
* @method static \Illuminate\Console\Scheduling\Event command(string $command, array $parameters = [])
* @method static \Illuminate\Console\Scheduling\CallbackEvent job(object|string $job, string|null $queue = null, string|null $connection = null)
* @method static \Illuminate\Console\Scheduling\CallbackEvent job(object|string $job, \UnitEnum|string|null $queue = null, \UnitEnum|string|null $connection = null)
* @method static \Illuminate\Console\Scheduling\Event exec(string $command, array $parameters = [])
* @method static void group(\Closure $events)
* @method static string compileArrayInput(string|int $key, array $value)
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Support/Facades/Storage.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

/**
* @method static \Illuminate\Contracts\Filesystem\Filesystem drive(string|null $name = null)
* @method static \Illuminate\Contracts\Filesystem\Filesystem disk(string|null $name = null)
* @method static \Illuminate\Contracts\Filesystem\Filesystem disk(\UnitEnum|string|null $name = null)
* @method static \Illuminate\Contracts\Filesystem\Cloud cloud()
* @method static \Illuminate\Contracts\Filesystem\Filesystem build(string|array $config)
* @method static \Illuminate\Contracts\Filesystem\Filesystem createLocalDriver(array $config, string $name = 'local')
Expand Down