Civil

常用暦法(ユリウス暦とグレゴリオ暦)

スーパークラス:

クラス定数:

MINIMUM   = 1794474 #  201-01-01 改暦日の上限(1年の月数12を保証する場合)
ITALY     = 2299161 # 1582-10-15 イタリアでの改暦日
ENGLAND   = 2361222 # 1752-09-14 イギリスおよびアメリカ合衆国での改暦日
MAXIMUM   = 3182396 # 4001-01-01 改暦日の下限(1年の月数12を保証する場合)
JULIAN    = false   # +Infinity  常にユリウス暦を用いる
GREGORIAN = true    # -Infinity  常にグレゴリオ暦を用いる

クラス メソッド:

Civil.instance(key)
文字列に対応するインスタンスを生成します。
  key  インスタンスを指定する文字列
Civil.gc_to_jdn(y [, m=1 [, d=1]])
グレゴリオ暦日をユリウス通日に変換して返します。
(月・日に負数を指定して、最後からの順序数に替える機能はありません)
  y  年
  m  月
  d  日
Civil.jdn_to_gc(jdn)
ユリウス通日をグレゴリオ暦日に変換して返します。
  jdn ユリウス通日
Civil.jc_to_jdn(y [, m=1 [, d=1]])
ユリウス暦日をユリウス通日に変換して返します。
(月・日に負数を指定して、最後からの順序数に替える機能はありません)
  y  年
  m  月
  d  日
Civil.jdn_to_jc(jdn)
ユリウス通日をユリウス暦日に変換して返します。
  jdn ユリウス通日
Civil.new([quality=ITALY])
Civil  オブジェクトを生成して返します。
  quality  数値(Numeric )ならば改暦日
           論理値(true*) ならば常にグレゴリオ暦使用の指定
           論理値(false*)ならば常にユリウス暦使用の指定
           ハッシュ(Hash )ならば性質定義ハッシュ
             (例: Civil.new('Reform_JD'=>ENGLAND))

パブリック インスタンス メソッド:

Civil#easter(year)
復活祭の地方時正午通日を返します。
(指定の年の3月20日に使われている暦法で計算します)
  year 年

プロテクテッド インスタンス メソッド:

Civil#_date_to_sdn(y [, m=1 [, d=1]])
年・月・日を地方時正午通日に変換して返します。
  y  年
  m  月
  d  日
Civil#_sdn_to_date(sdn)
地方時正午通日を年・月・日に変換して返します。
  sdn 地方時正午通日

ブライベート インスタンス メソッド:

Civil#_qualify
Civil  オブジェクトの性質定義を初期設定します。
@Month_in_Year = 明示的に1年が12ヶ月からなることを示します。
@Reform_JD     = ユリウス暦からグレゴリオ暦への改暦日
@Easter        = 復活祭の計算方法
                       (1)               # Julian/Gregorian
                        |    (2)         # Hippolytus
                        |     |    (3)   # Augustalis(Roman Rule)
                { 'W'=> 6,    5,    5,   # day of week adjustment
                  'G'=> 7,    8,    8,   # guard
                  'C'=> 0,   10,   16,   # offset
                  'B'=> 0,    0,   38,   # base
                  'F'=> 0,    4,   14,   # full moon adjustment
                  'D'=>19,   14,   13,   # latest day of month
                  'N'=>11,   30,   29,   # normal year number
                  'S'=>19     8    84    # period length / year
                }