/**
  * {@inheritdoc}
  */
 public function toJulianDay(DateInterface $date)
 {
     if (!$date instanceof NativeDate) {
         throw new \InvalidArgumentException("The date must be NativeDate");
     }
     return unixtojd($date->getTimeStamp());
 }
 /**
  * {@inheritdoc}
  */
 public function toJulianDay(DateInterface $date)
 {
     $day = $date->getMonthDay();
     $month = $date->getMonth();
     $year = $date->getYear();
     return $day + ceil(29.5 * ($month - 1)) + 354 * $year + floor(($this->getYearOffsetShift() + 11 * $year) / 30) + $this->getEpoch();
 }
 /**
  * {@inheritdoc}
  */
 public function toJulianDay(DateInterface $date)
 {
     return gregoriantojd($date->getMonth(), $date->getMonthDay(), $date->getYear());
 }