code: public function hashCode($var)
      {
          if (!($var instanceof Time)) {
              $type = Values::getType($var);
              throw new \InvalidArgumentException("The value must be Time instance.({$type})");
          }
          
          return
              $var->get("year")              +
              $var->get("month")  *       31 +  // 31^1
              $var->get("date")   *      961 +  // 31^2
              $var->get("hour")   *    29791 +  // 31^3
              $var->get("minute") *   923521 +  // 31^4
              $var->get("second") * 28629151;   // 31^5
      }
docs: 年・月・日・時・分・秒の各フィールドからハッシュ値を算出します.
  
  @param  mixed $var
  @return int        ハッシュ値
  @throws \InvalidArgumentException 引数が Time インスタンスでなかった場合