Class: When::CalendarTypes::CyclicTableBased

Inherits:
TableBased show all
Defined in:
lib/when_exe/calendartypes.rb

Overview

年の配当パターンが限定されている暦

Calendar which has some fixed arrangement rules of year pattern

Direct Known Subclasses

ThaiT, Yerm

Constant Summary

Constants included from When::Coordinates

When::Coordinates::Bahai, When::Coordinates::Chinese, When::Coordinates::Common, When::Coordinates::DefaultDateIndices, When::Coordinates::DefaultDayIndex, When::Coordinates::DefaultTimeIndices, When::Coordinates::Indian, When::Coordinates::Iranian, When::Coordinates::Javanese, When::Coordinates::LocationTable, When::Coordinates::MATCH, When::Coordinates::Mayan, When::Coordinates::PERIOD, When::Coordinates::PERIOD_NAME, When::Coordinates::PRECISION, When::Coordinates::PRECISION_NAME, When::Coordinates::Russian, When::Coordinates::Tibetan, When::Coordinates::VALUE, When::Coordinates::Yi

Constants included from Namespace

Namespace::DC, Namespace::DCQ, Namespace::DCT, Namespace::FOAF, Namespace::OWL, Namespace::RDF, Namespace::RDFC, Namespace::RDFS, Namespace::RSS, Namespace::XSD

Instance Attribute Summary

Attributes inherited from TM::Calendar

#epoch_in_CE, #reference_frame, #time_basis

Attributes inherited from TM::ReferenceSystem

#domain_of_validity, #position

Attributes inherited from BasicTypes::Object

#label

Attributes included from Parts::Resource

#child, #keys, #locale, #namespace

Instance Method Summary collapse

Methods inherited from TableBased

#_coordinates_to_number, #_length

Methods inherited from TM::Calendar

#_new_month_, _setup_, #_to_month_number_, #date_trans, #jul_trans, #rate_of_clock, #strftime, #time_standard, #to_cal_date, #to_julian_date, #to_universal_time

Methods included from When::Coordinates

to_deg, to_deg_225, to_dms

Methods inherited from TM::ReferenceSystem

#domain, #name

Methods included from Parts::Resource

#[], #^, _instance, _setup_, _setup_info, base_uri, #each, #enum_for, #hierarchy, #include?, #included?, #iri, #leaf?, #m17n, #map, #parent, #registered?, root_dir

Methods included from Parts::Resource::Pool

#[], #[]=, #_setup_

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class When::Parts::Resource

Instance Method Details

#_number_to_coordinates(sdn) ⇒ Array<Integer>

通日 - > 年月日

Parameters:

  • sdn (Integer)

    通日

Returns:

  • (Array<Integer>)
    y, m, d

    y 年 m 月 (0 始まり) d 日 (0 始まり)



930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
# File 'lib/when_exe/calendartypes.rb', line 930

def _number_to_coordinates(sdn)
  root_rule = @rule_table[@entry_key]
  count, value = (sdn-@origin_of_LSC).divmod(root_rule['Days'])
  y, d, key = _read_period(@entry_key, 
            'Days',   value,
            'Years',  count * root_rule['Years'])
  rule = _rule(key)
  (rule['Months']-1).downto(0) do |m|
    if d >=rule['Offset'][m]
      d -= rule['Offset'][m]
      return [y, m, d]
    end
  end
  return nil
end