/home/techb158/ileadtechnology.com/vendor/nesbot/carbon/src/Carbon/Traits
NameSizeModeActions
Boundaries.php113010644editdlrm
Cast.php10900644editdlrm
Comparison.php354660644editdlrm
Converter.php151940644editdlrm
Creator.php314520644editdlrm
Date.php1653360644editdlrm
DeprecatedProperties.php16070644editdlrm
Difference.php543360644editdlrm
IntervalRounding.php15870644editdlrm
IntervalStep.php23460644editdlrm
Localization.php293290644editdlrm
Macro.php30930644editdlrm
MagicParameter.php7210644editdlrm
Mixin.php65540644editdlrm
Modifiers.php137600644editdlrm
Mutability.php13330644editdlrm
ObjectInitialisation.php4220644editdlrm
Options.php131270644editdlrm
Rounding.php77240644editdlrm
Serialization.php85210644editdlrm
Test.php77790644editdlrm
Timestamp.php65960644editdlrm
ToStringFormat.php14640644editdlrm
Units.php124290644editdlrm
Week.php73890644editdlrm
Edit: /home/techb158/ileadtechnology.com/vendor/nesbot/carbon/src/Carbon/Traits/Macro.php (3093B)
* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Carbon\Traits; /** * Trait Macros. * * Allows users to register macros within the Carbon class. */ trait Macro { use Mixin; /** * The registered macros. * * @var array */ protected static $globalMacros = []; /** * The registered generic macros. * * @var array */ protected static $globalGenericMacros = []; /** * Register a custom macro. * * @example * ``` * $userSettings = [ * 'locale' => 'pt', * 'timezone' => 'America/Sao_Paulo', * ]; * Carbon::macro('userFormat', function () use ($userSettings) { * return $this->copy()->locale($userSettings['locale'])->tz($userSettings['timezone'])->calendar(); * }); * echo Carbon::yesterday()->hours(11)->userFormat(); * ``` * * @param string $name * @param object|callable $macro * * @return void */ public static function macro($name, $macro) { static::$globalMacros[$name] = $macro; } /** * Remove all macros and generic macros. */ public static function resetMacros() { static::$globalMacros = []; static::$globalGenericMacros = []; } /** * Register a custom macro. * * @param object|callable $macro * @param int $priority marco with higher priority is tried first * * @return void */ public static function genericMacro($macro, $priority = 0) { if (!isset(static::$globalGenericMacros[$priority])) { static::$globalGenericMacros[$priority] = []; krsort(static::$globalGenericMacros, SORT_NUMERIC); } static::$globalGenericMacros[$priority][] = $macro; } /** * Checks if macro is registered globally. * * @param string $name * * @return bool */ public static function hasMacro($name) { return isset(static::$globalMacros[$name]); } /** * Get the raw callable macro registered globally for a given name. * * @param string $name * * @return callable|null */ public static function getMacro($name) { return static::$globalMacros[$name] ?? null; } /** * Checks if macro is registered globally or locally. * * @param string $name * * @return bool */ public function hasLocalMacro($name) { return ($this->localMacros && isset($this->localMacros[$name])) || static::hasMacro($name); } /** * Get the raw callable macro registered globally or locally for a given name. * * @param string $name * * @return callable|null */ public function getLocalMacro($name) { return ($this->localMacros ?? [])[$name] ?? static::getMacro($name); } }