Пример #1
0
 /**
  * Canonicalize the calendar name and ensure it is available
  *
  * Transforms calendar names into camelCase, then ensures the appropriate
  * calendar system class/object is registered.  Will throw an
  * `UnknownCalendarException` for calendars it cannot find.
  *
  * @internal
  *
  * @param string $calendar The calendar system to retrieve
  * @throws InvalidCalendarException
  * @throws UnknownCalendarException
  * @return string The canonical index for accessing $calendar functions
  **/
 protected static function getCalendar($calendar)
 {
     $calendar = Cased::fromCamelCase($calendar)->asCamelCase();
     if (!array_key_exists($calendar, static::$timeConverters['toInternal'])) {
         $className = __NAMESPACE__ . '\\Calendar\\' . Cased::fromCamelCase($calendar)->asPascalCase();
         if (class_exists($className)) {
             static::registerCalendar($calendar, $className);
         } elseif (class_exists('Illuminate\\Database\\Eloquent\\Model') && is_a($class = Calendar::where('name', 'like', $calendar)->first(), 'Illuminate\\Database\\Eloquent\\Model')) {
             static::registerCalendar($calendar, $class);
         } else {
             throw new UnknownCalendarException("Can't find the '{$calendar}' calendar!");
         }
     }
     return $calendar;
 }
Пример #2
0
 public function addUnits(array $a, array $b)
 {
     return parent::addUnits($a, $b);
 }