time_crisis 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (615) hide show
  1. data/Rakefile +0 -3
  2. data/VERSION.yml +2 -2
  3. data/lib/time_crisis.rb +13 -25
  4. data/lib/time_crisis/conversions.rb +39 -0
  5. data/lib/{third_base → time_crisis}/date.rb +135 -133
  6. data/lib/{third_base → time_crisis}/datetime.rb +123 -111
  7. data/lib/time_crisis/holiday.rb +8 -6
  8. data/lib/time_crisis/meteorological_seasons.rb +3 -0
  9. data/lib/time_crisis/nth_weekday.rb +10 -15
  10. data/lib/time_crisis/support.rb +13 -8
  11. data/lib/time_crisis/support/basic_object.rb +18 -0
  12. data/lib/time_crisis/support/duration.rb +87 -0
  13. data/lib/time_crisis/support/ext/date/acts_like.rb +9 -0
  14. data/lib/time_crisis/support/ext/date/calculations.rb +183 -0
  15. data/lib/time_crisis/support/ext/date/conversions.rb +60 -0
  16. data/lib/time_crisis/support/ext/date_time/acts_like.rb +13 -0
  17. data/lib/time_crisis/support/ext/date_time/calculations.rb +88 -0
  18. data/lib/time_crisis/support/ext/date_time/conversions.rb +66 -0
  19. data/lib/time_crisis/support/ext/date_time/zones.rb +5 -0
  20. data/lib/time_crisis/support/ext/object/acts_like.rb +5 -0
  21. data/lib/time_crisis/support/ext/object/blank.rb +47 -0
  22. data/lib/time_crisis/support/ext/time/acts_like.rb +9 -0
  23. data/lib/time_crisis/support/ext/time/calculations.rb +228 -0
  24. data/lib/time_crisis/support/ext/time/conversions.rb +58 -0
  25. data/lib/time_crisis/support/ext/time/marshal_with_utc_flag.rb +21 -0
  26. data/lib/time_crisis/support/ext/time/publicize_conversion_methods.rb +9 -0
  27. data/lib/time_crisis/support/ext/time/zones.rb +44 -0
  28. data/lib/time_crisis/support/time_with_zone.rb +272 -0
  29. data/lib/time_crisis/support/values/time_zone.rb +339 -0
  30. data/lib/time_crisis/time.rb +4 -0
  31. data/lib/time_crisis/tzinfo.rb +1 -0
  32. data/lib/time_crisis/tzinfo/definitions/Africa/Abidjan.rb +18 -0
  33. data/lib/time_crisis/tzinfo/definitions/Africa/Accra.rb +33 -0
  34. data/lib/time_crisis/tzinfo/definitions/Africa/Addis_Ababa.rb +20 -0
  35. data/lib/time_crisis/tzinfo/definitions/Africa/Algiers.rb +2 -2
  36. data/lib/time_crisis/tzinfo/definitions/Africa/Asmara.rb +22 -0
  37. data/lib/time_crisis/tzinfo/definitions/Africa/Asmera.rb +13 -0
  38. data/lib/time_crisis/tzinfo/definitions/Africa/Bamako.rb +21 -0
  39. data/lib/time_crisis/tzinfo/definitions/Africa/Bangui.rb +18 -0
  40. data/lib/time_crisis/tzinfo/definitions/Africa/Banjul.rb +22 -0
  41. data/lib/time_crisis/tzinfo/definitions/Africa/Bissau.rb +20 -0
  42. data/lib/time_crisis/tzinfo/definitions/Africa/Blantyre.rb +18 -0
  43. data/lib/time_crisis/tzinfo/definitions/Africa/Brazzaville.rb +18 -0
  44. data/lib/time_crisis/tzinfo/definitions/Africa/Bujumbura.rb +18 -0
  45. data/lib/time_crisis/tzinfo/definitions/Africa/Cairo.rb +2 -2
  46. data/lib/time_crisis/tzinfo/definitions/Africa/Casablanca.rb +2 -2
  47. data/lib/time_crisis/tzinfo/definitions/Africa/Ceuta.rb +172 -0
  48. data/lib/time_crisis/tzinfo/definitions/Africa/Conakry.rb +21 -0
  49. data/lib/time_crisis/tzinfo/definitions/Africa/Dakar.rb +20 -0
  50. data/lib/time_crisis/tzinfo/definitions/Africa/Dar_es_Salaam.rb +21 -0
  51. data/lib/time_crisis/tzinfo/definitions/Africa/Djibouti.rb +18 -0
  52. data/lib/time_crisis/tzinfo/definitions/Africa/Douala.rb +18 -0
  53. data/lib/time_crisis/tzinfo/definitions/Africa/El_Aaiun.rb +20 -0
  54. data/lib/time_crisis/tzinfo/definitions/Africa/Freetown.rb +53 -0
  55. data/lib/time_crisis/tzinfo/definitions/Africa/Gaborone.rb +21 -0
  56. data/lib/time_crisis/tzinfo/definitions/Africa/Harare.rb +2 -2
  57. data/lib/time_crisis/tzinfo/definitions/Africa/Johannesburg.rb +2 -2
  58. data/lib/time_crisis/tzinfo/definitions/Africa/Kampala.rb +23 -0
  59. data/lib/time_crisis/tzinfo/definitions/Africa/Khartoum.rb +53 -0
  60. data/lib/time_crisis/tzinfo/definitions/Africa/Kigali.rb +18 -0
  61. data/lib/time_crisis/tzinfo/definitions/Africa/Kinshasa.rb +18 -0
  62. data/lib/time_crisis/tzinfo/definitions/Africa/Lagos.rb +18 -0
  63. data/lib/time_crisis/tzinfo/definitions/Africa/Libreville.rb +18 -0
  64. data/lib/time_crisis/tzinfo/definitions/Africa/Lome.rb +18 -0
  65. data/lib/time_crisis/tzinfo/definitions/Africa/Luanda.rb +20 -0
  66. data/lib/time_crisis/tzinfo/definitions/Africa/Lubumbashi.rb +18 -0
  67. data/lib/time_crisis/tzinfo/definitions/Africa/Lusaka.rb +18 -0
  68. data/lib/time_crisis/tzinfo/definitions/Africa/Malabo.rb +20 -0
  69. data/lib/time_crisis/tzinfo/definitions/Africa/Maputo.rb +18 -0
  70. data/lib/time_crisis/tzinfo/definitions/Africa/Maseru.rb +21 -0
  71. data/lib/time_crisis/tzinfo/definitions/Africa/Mbabane.rb +18 -0
  72. data/lib/time_crisis/tzinfo/definitions/Africa/Mogadishu.rb +21 -0
  73. data/lib/time_crisis/tzinfo/definitions/Africa/Monrovia.rb +2 -2
  74. data/lib/time_crisis/tzinfo/definitions/Africa/Nairobi.rb +2 -2
  75. data/lib/time_crisis/tzinfo/definitions/Africa/Ndjamena.rb +21 -0
  76. data/lib/time_crisis/tzinfo/definitions/Africa/Niamey.rb +22 -0
  77. data/lib/time_crisis/tzinfo/definitions/Africa/Nouakchott.rb +21 -0
  78. data/lib/time_crisis/tzinfo/definitions/Africa/Ouagadougou.rb +18 -0
  79. data/lib/time_crisis/tzinfo/definitions/Africa/Porto__m__Novo.rb +20 -0
  80. data/lib/time_crisis/tzinfo/definitions/Africa/Sao_Tome.rb +20 -0
  81. data/lib/time_crisis/tzinfo/definitions/Africa/Timbuktu.rb +13 -0
  82. data/lib/time_crisis/tzinfo/definitions/Africa/Tripoli.rb +48 -0
  83. data/lib/time_crisis/tzinfo/definitions/Africa/Tunis.rb +135 -0
  84. data/lib/time_crisis/tzinfo/definitions/Africa/Windhoek.rb +140 -0
  85. data/lib/time_crisis/tzinfo/definitions/America/Adak.rb +196 -0
  86. data/lib/time_crisis/tzinfo/definitions/America/Anchorage.rb +196 -0
  87. data/lib/time_crisis/tzinfo/definitions/America/Anguilla.rb +18 -0
  88. data/lib/time_crisis/tzinfo/definitions/America/Antigua.rb +20 -0
  89. data/lib/time_crisis/tzinfo/definitions/America/Araguaina.rb +67 -0
  90. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Buenos_Aires.rb +2 -2
  91. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Catamarca.rb +85 -0
  92. data/lib/time_crisis/tzinfo/definitions/America/Argentina/ComodRivadavia.rb +15 -0
  93. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Cordoba.rb +85 -0
  94. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Jujuy.rb +84 -0
  95. data/lib/time_crisis/tzinfo/definitions/America/Argentina/La_Rioja.rb +86 -0
  96. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Mendoza.rb +86 -0
  97. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Rio_Gallegos.rb +85 -0
  98. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Salta.rb +83 -0
  99. data/lib/time_crisis/tzinfo/definitions/America/Argentina/San_Juan.rb +2 -2
  100. data/lib/time_crisis/tzinfo/definitions/America/Argentina/San_Luis.rb +168 -0
  101. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Tucuman.rb +87 -0
  102. data/lib/time_crisis/tzinfo/definitions/America/Argentina/Ushuaia.rb +85 -0
  103. data/lib/time_crisis/tzinfo/definitions/America/Aruba.rb +20 -0
  104. data/lib/time_crisis/tzinfo/definitions/America/Asuncion.rb +174 -0
  105. data/lib/time_crisis/tzinfo/definitions/America/Atikokan.rb +28 -0
  106. data/lib/time_crisis/tzinfo/definitions/America/Atka.rb +13 -0
  107. data/lib/time_crisis/tzinfo/definitions/America/Bahia.rb +77 -0
  108. data/lib/time_crisis/tzinfo/definitions/America/Barbados.rb +29 -0
  109. data/lib/time_crisis/tzinfo/definitions/America/Belem.rb +47 -0
  110. data/lib/time_crisis/tzinfo/definitions/America/Belize.rb +74 -0
  111. data/lib/time_crisis/tzinfo/definitions/America/Blanc__m__Sablon.rb +26 -0
  112. data/lib/time_crisis/tzinfo/definitions/America/Boa_Vista.rb +51 -0
  113. data/lib/time_crisis/tzinfo/definitions/America/Bogota.rb +2 -2
  114. data/lib/time_crisis/tzinfo/definitions/America/Boise.rb +199 -0
  115. data/lib/time_crisis/tzinfo/definitions/America/Buenos_Aires.rb +13 -0
  116. data/lib/time_crisis/tzinfo/definitions/America/Cambridge_Bay.rb +173 -0
  117. data/lib/time_crisis/tzinfo/definitions/America/Campo_Grande.rb +171 -0
  118. data/lib/time_crisis/tzinfo/definitions/America/Cancun.rb +133 -0
  119. data/lib/time_crisis/tzinfo/definitions/America/Caracas.rb +2 -2
  120. data/lib/time_crisis/tzinfo/definitions/America/Catamarca.rb +13 -0
  121. data/lib/time_crisis/tzinfo/definitions/America/Cayenne.rb +20 -0
  122. data/lib/time_crisis/tzinfo/definitions/America/Cayman.rb +20 -0
  123. data/lib/time_crisis/tzinfo/definitions/America/Chicago.rb +2 -2
  124. data/lib/time_crisis/tzinfo/definitions/America/Chihuahua.rb +2 -2
  125. data/lib/time_crisis/tzinfo/definitions/America/Coral_Harbour.rb +13 -0
  126. data/lib/time_crisis/tzinfo/definitions/America/Cordoba.rb +13 -0
  127. data/lib/time_crisis/tzinfo/definitions/America/Costa_Rica.rb +29 -0
  128. data/lib/time_crisis/tzinfo/definitions/America/Cuiaba.rb +169 -0
  129. data/lib/time_crisis/tzinfo/definitions/America/Curacao.rb +20 -0
  130. data/lib/time_crisis/tzinfo/definitions/America/Danmarkshavn.rb +53 -0
  131. data/lib/time_crisis/tzinfo/definitions/America/Dawson.rb +176 -0
  132. data/lib/time_crisis/tzinfo/definitions/America/Dawson_Creek.rb +79 -0
  133. data/lib/time_crisis/tzinfo/definitions/America/Denver.rb +2 -2
  134. data/lib/time_crisis/tzinfo/definitions/America/Detroit.rb +186 -0
  135. data/lib/time_crisis/tzinfo/definitions/America/Dominica.rb +18 -0
  136. data/lib/time_crisis/tzinfo/definitions/America/Edmonton.rb +200 -0
  137. data/lib/time_crisis/tzinfo/definitions/America/Eirunepe.rb +51 -0
  138. data/lib/time_crisis/tzinfo/definitions/America/El_Salvador.rb +23 -0
  139. data/lib/time_crisis/tzinfo/definitions/America/Ensenada.rb +13 -0
  140. data/lib/time_crisis/tzinfo/definitions/America/Fort_Wayne.rb +13 -0
  141. data/lib/time_crisis/tzinfo/definitions/America/Fortaleza.rb +57 -0
  142. data/lib/time_crisis/tzinfo/definitions/America/Glace_Bay.rb +186 -0
  143. data/lib/time_crisis/tzinfo/definitions/America/Godthab.rb +2 -2
  144. data/lib/time_crisis/tzinfo/definitions/America/Goose_Bay.rb +255 -0
  145. data/lib/time_crisis/tzinfo/definitions/America/Grand_Turk.rb +165 -0
  146. data/lib/time_crisis/tzinfo/definitions/America/Grenada.rb +18 -0
  147. data/lib/time_crisis/tzinfo/definitions/America/Guadeloupe.rb +18 -0
  148. data/lib/time_crisis/tzinfo/definitions/America/Guatemala.rb +2 -2
  149. data/lib/time_crisis/tzinfo/definitions/America/Guayaquil.rb +20 -0
  150. data/lib/time_crisis/tzinfo/definitions/America/Guyana.rb +24 -0
  151. data/lib/time_crisis/tzinfo/definitions/America/Halifax.rb +2 -2
  152. data/lib/time_crisis/tzinfo/definitions/America/Havana.rb +201 -0
  153. data/lib/time_crisis/tzinfo/definitions/America/Hermosillo.rb +35 -0
  154. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Indianapolis.rb +2 -2
  155. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Knox.rb +203 -0
  156. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Marengo.rb +153 -0
  157. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Petersburg.rb +166 -0
  158. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Tell_City.rb +151 -0
  159. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Vevay.rb +131 -0
  160. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Vincennes.rb +151 -0
  161. data/lib/time_crisis/tzinfo/definitions/America/Indiana/Winamac.rb +157 -0
  162. data/lib/time_crisis/tzinfo/definitions/America/Indianapolis.rb +13 -0
  163. data/lib/time_crisis/tzinfo/definitions/America/Inuvik.rb +166 -0
  164. data/lib/time_crisis/tzinfo/definitions/America/Iqaluit.rb +170 -0
  165. data/lib/time_crisis/tzinfo/definitions/America/Jamaica.rb +41 -0
  166. data/lib/time_crisis/tzinfo/definitions/America/Jujuy.rb +13 -0
  167. data/lib/time_crisis/tzinfo/definitions/America/Juneau.rb +2 -2
  168. data/lib/time_crisis/tzinfo/definitions/America/Kentucky/Louisville.rb +228 -0
  169. data/lib/time_crisis/tzinfo/definitions/America/Kentucky/Monticello.rb +198 -0
  170. data/lib/time_crisis/tzinfo/definitions/America/Knox_IN.rb +13 -0
  171. data/lib/time_crisis/tzinfo/definitions/America/La_Paz.rb +2 -2
  172. data/lib/time_crisis/tzinfo/definitions/America/Lima.rb +2 -2
  173. data/lib/time_crisis/tzinfo/definitions/America/Los_Angeles.rb +2 -2
  174. data/lib/time_crisis/tzinfo/definitions/America/Louisville.rb +13 -0
  175. data/lib/time_crisis/tzinfo/definitions/America/Maceio.rb +59 -0
  176. data/lib/time_crisis/tzinfo/definitions/America/Managua.rb +36 -0
  177. data/lib/time_crisis/tzinfo/definitions/America/Manaus.rb +49 -0
  178. data/lib/time_crisis/tzinfo/definitions/America/Marigot.rb +13 -0
  179. data/lib/time_crisis/tzinfo/definitions/America/Martinique.rb +23 -0
  180. data/lib/time_crisis/tzinfo/definitions/America/Mazatlan.rb +2 -2
  181. data/lib/time_crisis/tzinfo/definitions/America/Mendoza.rb +13 -0
  182. data/lib/time_crisis/tzinfo/definitions/America/Menominee.rb +190 -0
  183. data/lib/time_crisis/tzinfo/definitions/America/Merida.rb +132 -0
  184. data/lib/time_crisis/tzinfo/definitions/America/Mexico_City.rb +2 -2
  185. data/lib/time_crisis/tzinfo/definitions/America/Miquelon.rb +149 -0
  186. data/lib/time_crisis/tzinfo/definitions/America/Moncton.rb +254 -0
  187. data/lib/time_crisis/tzinfo/definitions/America/Monterrey.rb +2 -2
  188. data/lib/time_crisis/tzinfo/definitions/America/Montevideo.rb +179 -0
  189. data/lib/time_crisis/tzinfo/definitions/America/Montreal.rb +279 -0
  190. data/lib/time_crisis/tzinfo/definitions/America/Montserrat.rb +18 -0
  191. data/lib/time_crisis/tzinfo/definitions/America/Nassau.rb +193 -0
  192. data/lib/time_crisis/tzinfo/definitions/America/New_York.rb +2 -2
  193. data/lib/time_crisis/tzinfo/definitions/America/Nipigon.rb +181 -0
  194. data/lib/time_crisis/tzinfo/definitions/America/Nome.rb +196 -0
  195. data/lib/time_crisis/tzinfo/definitions/America/Noronha.rb +57 -0
  196. data/lib/time_crisis/tzinfo/definitions/America/North_Dakota/Center.rb +200 -0
  197. data/lib/time_crisis/tzinfo/definitions/America/North_Dakota/New_Salem.rb +200 -0
  198. data/lib/time_crisis/tzinfo/definitions/America/Panama.rb +20 -0
  199. data/lib/time_crisis/tzinfo/definitions/America/Pangnirtung.rb +173 -0
  200. data/lib/time_crisis/tzinfo/definitions/America/Paramaribo.rb +26 -0
  201. data/lib/time_crisis/tzinfo/definitions/America/Phoenix.rb +2 -2
  202. data/lib/time_crisis/tzinfo/definitions/America/Port__m__au__m__Prince.rb +55 -0
  203. data/lib/time_crisis/tzinfo/definitions/America/Port_of_Spain.rb +18 -0
  204. data/lib/time_crisis/tzinfo/definitions/America/Porto_Acre.rb +13 -0
  205. data/lib/time_crisis/tzinfo/definitions/America/Porto_Velho.rb +47 -0
  206. data/lib/time_crisis/tzinfo/definitions/America/Puerto_Rico.rb +23 -0
  207. data/lib/time_crisis/tzinfo/definitions/America/Rainy_River.rb +181 -0
  208. data/lib/time_crisis/tzinfo/definitions/America/Rankin_Inlet.rb +165 -0
  209. data/lib/time_crisis/tzinfo/definitions/America/Recife.rb +57 -0
  210. data/lib/time_crisis/tzinfo/definitions/America/Regina.rb +2 -2
  211. data/lib/time_crisis/tzinfo/definitions/America/Resolute.rb +166 -0
  212. data/lib/time_crisis/tzinfo/definitions/America/Rio_Branco.rb +49 -0
  213. data/lib/time_crisis/tzinfo/definitions/America/Rosario.rb +13 -0
  214. data/lib/time_crisis/tzinfo/definitions/America/Santarem.rb +49 -0
  215. data/lib/time_crisis/tzinfo/definitions/America/Santiago.rb +2 -2
  216. data/lib/time_crisis/tzinfo/definitions/America/Santo_Domingo.rb +38 -0
  217. data/lib/time_crisis/tzinfo/definitions/America/Sao_Paulo.rb +2 -2
  218. data/lib/time_crisis/tzinfo/definitions/America/Scoresbysund.rb +163 -0
  219. data/lib/time_crisis/tzinfo/definitions/America/Shiprock.rb +13 -0
  220. data/lib/time_crisis/tzinfo/definitions/America/St_Barthelemy.rb +13 -0
  221. data/lib/time_crisis/tzinfo/definitions/America/St_Johns.rb +2 -2
  222. data/lib/time_crisis/tzinfo/definitions/America/St_Kitts.rb +18 -0
  223. data/lib/time_crisis/tzinfo/definitions/America/St_Lucia.rb +20 -0
  224. data/lib/time_crisis/tzinfo/definitions/America/St_Thomas.rb +18 -0
  225. data/lib/time_crisis/tzinfo/definitions/America/St_Vincent.rb +20 -0
  226. data/lib/time_crisis/tzinfo/definitions/America/Swift_Current.rb +44 -0
  227. data/lib/time_crisis/tzinfo/definitions/America/Tegucigalpa.rb +25 -0
  228. data/lib/time_crisis/tzinfo/definitions/America/Thule.rb +139 -0
  229. data/lib/time_crisis/tzinfo/definitions/America/Thunder_Bay.rb +186 -0
  230. data/lib/time_crisis/tzinfo/definitions/America/Tijuana.rb +2 -2
  231. data/lib/time_crisis/tzinfo/definitions/America/Toronto.rb +279 -0
  232. data/lib/time_crisis/tzinfo/definitions/America/Tortola.rb +18 -0
  233. data/lib/time_crisis/tzinfo/definitions/America/Vancouver.rb +236 -0
  234. data/lib/time_crisis/tzinfo/definitions/America/Virgin.rb +13 -0
  235. data/lib/time_crisis/tzinfo/definitions/America/Whitehorse.rb +176 -0
  236. data/lib/time_crisis/tzinfo/definitions/America/Winnipeg.rb +232 -0
  237. data/lib/time_crisis/tzinfo/definitions/America/Yakutat.rb +193 -0
  238. data/lib/time_crisis/tzinfo/definitions/America/Yellowknife.rb +169 -0
  239. data/lib/time_crisis/tzinfo/definitions/Antarctica/Casey.rb +18 -0
  240. data/lib/time_crisis/tzinfo/definitions/Antarctica/Davis.rb +20 -0
  241. data/lib/time_crisis/tzinfo/definitions/Antarctica/DumontDUrville.rb +21 -0
  242. data/lib/time_crisis/tzinfo/definitions/Antarctica/Mawson.rb +18 -0
  243. data/lib/time_crisis/tzinfo/definitions/Antarctica/McMurdo.rb +171 -0
  244. data/lib/time_crisis/tzinfo/definitions/Antarctica/Palmer.rb +172 -0
  245. data/lib/time_crisis/tzinfo/definitions/Antarctica/Rothera.rb +18 -0
  246. data/lib/time_crisis/tzinfo/definitions/Antarctica/South_Pole.rb +13 -0
  247. data/lib/time_crisis/tzinfo/definitions/Antarctica/Syowa.rb +18 -0
  248. data/lib/time_crisis/tzinfo/definitions/Antarctica/Vostok.rb +18 -0
  249. data/lib/time_crisis/tzinfo/definitions/Arctic/Longyearbyen.rb +13 -0
  250. data/lib/time_crisis/tzinfo/definitions/Asia/Aden.rb +18 -0
  251. data/lib/time_crisis/tzinfo/definitions/Asia/Almaty.rb +2 -2
  252. data/lib/time_crisis/tzinfo/definitions/Asia/Amman.rb +163 -0
  253. data/lib/time_crisis/tzinfo/definitions/Asia/Anadyr.rb +165 -0
  254. data/lib/time_crisis/tzinfo/definitions/Asia/Aqtau.rb +75 -0
  255. data/lib/time_crisis/tzinfo/definitions/Asia/Aqtobe.rb +71 -0
  256. data/lib/time_crisis/tzinfo/definitions/Asia/Ashgabat.rb +48 -0
  257. data/lib/time_crisis/tzinfo/definitions/Asia/Ashkhabad.rb +13 -0
  258. data/lib/time_crisis/tzinfo/definitions/Asia/Baghdad.rb +2 -2
  259. data/lib/time_crisis/tzinfo/definitions/Asia/Bahrain.rb +20 -0
  260. data/lib/time_crisis/tzinfo/definitions/Asia/Baku.rb +2 -2
  261. data/lib/time_crisis/tzinfo/definitions/Asia/Bangkok.rb +2 -2
  262. data/lib/time_crisis/tzinfo/definitions/Asia/Beirut.rb +185 -0
  263. data/lib/time_crisis/tzinfo/definitions/Asia/Bishkek.rb +75 -0
  264. data/lib/time_crisis/tzinfo/definitions/Asia/Brunei.rb +20 -0
  265. data/lib/time_crisis/tzinfo/definitions/Asia/Calcutta.rb +13 -0
  266. data/lib/time_crisis/tzinfo/definitions/Asia/Choibalsan.rb +68 -0
  267. data/lib/time_crisis/tzinfo/definitions/Asia/Chongqing.rb +2 -2
  268. data/lib/time_crisis/tzinfo/definitions/Asia/Chungking.rb +13 -0
  269. data/lib/time_crisis/tzinfo/definitions/Asia/Colombo.rb +2 -2
  270. data/lib/time_crisis/tzinfo/definitions/Asia/Dacca.rb +13 -0
  271. data/lib/time_crisis/tzinfo/definitions/Asia/Damascus.rb +195 -0
  272. data/lib/time_crisis/tzinfo/definitions/Asia/Dhaka.rb +2 -2
  273. data/lib/time_crisis/tzinfo/definitions/Asia/Dili.rb +25 -0
  274. data/lib/time_crisis/tzinfo/definitions/Asia/Dubai.rb +18 -0
  275. data/lib/time_crisis/tzinfo/definitions/Asia/Dushanbe.rb +45 -0
  276. data/lib/time_crisis/tzinfo/definitions/Asia/Gaza.rb +191 -0
  277. data/lib/time_crisis/tzinfo/definitions/Asia/Harbin.rb +37 -0
  278. data/lib/time_crisis/tzinfo/definitions/Asia/Ho_Chi_Minh.rb +23 -0
  279. data/lib/time_crisis/tzinfo/definitions/Asia/Hong_Kong.rb +2 -2
  280. data/lib/time_crisis/tzinfo/definitions/Asia/Hovd.rb +65 -0
  281. data/lib/time_crisis/tzinfo/definitions/Asia/Irkutsk.rb +2 -2
  282. data/lib/time_crisis/tzinfo/definitions/Asia/Istanbul.rb +13 -0
  283. data/lib/time_crisis/tzinfo/definitions/Asia/Jakarta.rb +2 -2
  284. data/lib/time_crisis/tzinfo/definitions/Asia/Jayapura.rb +21 -0
  285. data/lib/time_crisis/tzinfo/definitions/Asia/Jerusalem.rb +2 -2
  286. data/lib/time_crisis/tzinfo/definitions/Asia/Kabul.rb +2 -2
  287. data/lib/time_crisis/tzinfo/definitions/Asia/Kamchatka.rb +2 -2
  288. data/lib/time_crisis/tzinfo/definitions/Asia/Karachi.rb +2 -2
  289. data/lib/time_crisis/tzinfo/definitions/Asia/Kashgar.rb +35 -0
  290. data/lib/time_crisis/tzinfo/definitions/Asia/Kathmandu.rb +2 -2
  291. data/lib/time_crisis/tzinfo/definitions/Asia/Katmandu.rb +13 -0
  292. data/lib/time_crisis/tzinfo/definitions/Asia/Kolkata.rb +2 -2
  293. data/lib/time_crisis/tzinfo/definitions/Asia/Krasnoyarsk.rb +2 -2
  294. data/lib/time_crisis/tzinfo/definitions/Asia/Kuala_Lumpur.rb +2 -2
  295. data/lib/time_crisis/tzinfo/definitions/Asia/Kuching.rb +40 -0
  296. data/lib/time_crisis/tzinfo/definitions/Asia/Kuwait.rb +2 -2
  297. data/lib/time_crisis/tzinfo/definitions/Asia/Macao.rb +13 -0
  298. data/lib/time_crisis/tzinfo/definitions/Asia/Macau.rb +61 -0
  299. data/lib/time_crisis/tzinfo/definitions/Asia/Magadan.rb +2 -2
  300. data/lib/time_crisis/tzinfo/definitions/Asia/Makassar.rb +23 -0
  301. data/lib/time_crisis/tzinfo/definitions/Asia/Manila.rb +30 -0
  302. data/lib/time_crisis/tzinfo/definitions/Asia/Muscat.rb +2 -2
  303. data/lib/time_crisis/tzinfo/definitions/Asia/Nicosia.rb +171 -0
  304. data/lib/time_crisis/tzinfo/definitions/Asia/Novosibirsk.rb +2 -2
  305. data/lib/time_crisis/tzinfo/definitions/Asia/Omsk.rb +163 -0
  306. data/lib/time_crisis/tzinfo/definitions/Asia/Oral.rb +74 -0
  307. data/lib/time_crisis/tzinfo/definitions/Asia/Phnom_Penh.rb +23 -0
  308. data/lib/time_crisis/tzinfo/definitions/Asia/Pontianak.rb +30 -0
  309. data/lib/time_crisis/tzinfo/definitions/Asia/Pyongyang.rb +25 -0
  310. data/lib/time_crisis/tzinfo/definitions/Asia/Qatar.rb +20 -0
  311. data/lib/time_crisis/tzinfo/definitions/Asia/Qyzylorda.rb +73 -0
  312. data/lib/time_crisis/tzinfo/definitions/Asia/Rangoon.rb +2 -2
  313. data/lib/time_crisis/tzinfo/definitions/Asia/Riyadh.rb +2 -2
  314. data/lib/time_crisis/tzinfo/definitions/Asia/Riyadh87.rb +592 -0
  315. data/lib/time_crisis/tzinfo/definitions/Asia/Riyadh88.rb +582 -0
  316. data/lib/time_crisis/tzinfo/definitions/Asia/Riyadh89.rb +582 -0
  317. data/lib/time_crisis/tzinfo/definitions/Asia/Saigon.rb +13 -0
  318. data/lib/time_crisis/tzinfo/definitions/Asia/Sakhalin.rb +166 -0
  319. data/lib/time_crisis/tzinfo/definitions/Asia/Samarkand.rb +47 -0
  320. data/lib/time_crisis/tzinfo/definitions/Asia/Seoul.rb +2 -2
  321. data/lib/time_crisis/tzinfo/definitions/Asia/Shanghai.rb +2 -2
  322. data/lib/time_crisis/tzinfo/definitions/Asia/Singapore.rb +2 -2
  323. data/lib/time_crisis/tzinfo/definitions/Asia/Taipei.rb +2 -2
  324. data/lib/time_crisis/tzinfo/definitions/Asia/Tashkent.rb +2 -2
  325. data/lib/time_crisis/tzinfo/definitions/Asia/Tbilisi.rb +2 -2
  326. data/lib/time_crisis/tzinfo/definitions/Asia/Tehran.rb +2 -2
  327. data/lib/time_crisis/tzinfo/definitions/Asia/Tel_Aviv.rb +13 -0
  328. data/lib/time_crisis/tzinfo/definitions/Asia/Thimbu.rb +13 -0
  329. data/lib/time_crisis/tzinfo/definitions/Asia/Thimphu.rb +20 -0
  330. data/lib/time_crisis/tzinfo/definitions/Asia/Tokyo.rb +2 -2
  331. data/lib/time_crisis/tzinfo/definitions/Asia/Ujung_Pandang.rb +13 -0
  332. data/lib/time_crisis/tzinfo/definitions/Asia/Ulaanbaatar.rb +2 -2
  333. data/lib/time_crisis/tzinfo/definitions/Asia/Ulan_Bator.rb +13 -0
  334. data/lib/time_crisis/tzinfo/definitions/Asia/Urumqi.rb +2 -2
  335. data/lib/time_crisis/tzinfo/definitions/Asia/Vientiane.rb +23 -0
  336. data/lib/time_crisis/tzinfo/definitions/Asia/Vladivostok.rb +2 -2
  337. data/lib/time_crisis/tzinfo/definitions/Asia/Yakutsk.rb +2 -2
  338. data/lib/time_crisis/tzinfo/definitions/Asia/Yekaterinburg.rb +2 -2
  339. data/lib/time_crisis/tzinfo/definitions/Asia/Yerevan.rb +2 -2
  340. data/lib/time_crisis/tzinfo/definitions/Atlantic/Azores.rb +2 -2
  341. data/lib/time_crisis/tzinfo/definitions/Atlantic/Bermuda.rb +173 -0
  342. data/lib/time_crisis/tzinfo/definitions/Atlantic/Canary.rb +163 -0
  343. data/lib/time_crisis/tzinfo/definitions/Atlantic/Cape_Verde.rb +2 -2
  344. data/lib/time_crisis/tzinfo/definitions/Atlantic/Faeroe.rb +13 -0
  345. data/lib/time_crisis/tzinfo/definitions/Atlantic/Faroe.rb +159 -0
  346. data/lib/time_crisis/tzinfo/definitions/Atlantic/Jan_Mayen.rb +13 -0
  347. data/lib/time_crisis/tzinfo/definitions/Atlantic/Madeira.rb +269 -0
  348. data/lib/time_crisis/tzinfo/definitions/Atlantic/Reykjavik.rb +85 -0
  349. data/lib/time_crisis/tzinfo/definitions/Atlantic/South_Georgia.rb +2 -2
  350. data/lib/time_crisis/tzinfo/definitions/Atlantic/St_Helena.rb +20 -0
  351. data/lib/time_crisis/tzinfo/definitions/Atlantic/Stanley.rb +170 -0
  352. data/lib/time_crisis/tzinfo/definitions/Australia/ACT.rb +13 -0
  353. data/lib/time_crisis/tzinfo/definitions/Australia/Adelaide.rb +2 -2
  354. data/lib/time_crisis/tzinfo/definitions/Australia/Brisbane.rb +2 -2
  355. data/lib/time_crisis/tzinfo/definitions/Australia/Broken_Hill.rb +189 -0
  356. data/lib/time_crisis/tzinfo/definitions/Australia/Canberra.rb +13 -0
  357. data/lib/time_crisis/tzinfo/definitions/Australia/Currie.rb +185 -0
  358. data/lib/time_crisis/tzinfo/definitions/Australia/Darwin.rb +2 -2
  359. data/lib/time_crisis/tzinfo/definitions/Australia/Eucla.rb +37 -0
  360. data/lib/time_crisis/tzinfo/definitions/Australia/Hobart.rb +2 -2
  361. data/lib/time_crisis/tzinfo/definitions/Australia/LHI.rb +13 -0
  362. data/lib/time_crisis/tzinfo/definitions/Australia/Lindeman.rb +39 -0
  363. data/lib/time_crisis/tzinfo/definitions/Australia/Lord_Howe.rb +160 -0
  364. data/lib/time_crisis/tzinfo/definitions/Australia/Melbourne.rb +2 -2
  365. data/lib/time_crisis/tzinfo/definitions/Australia/NSW.rb +13 -0
  366. data/lib/time_crisis/tzinfo/definitions/Australia/North.rb +13 -0
  367. data/lib/time_crisis/tzinfo/definitions/Australia/Perth.rb +2 -2
  368. data/lib/time_crisis/tzinfo/definitions/Australia/Queensland.rb +13 -0
  369. data/lib/time_crisis/tzinfo/definitions/Australia/South.rb +13 -0
  370. data/lib/time_crisis/tzinfo/definitions/Australia/Sydney.rb +2 -2
  371. data/lib/time_crisis/tzinfo/definitions/Australia/Tasmania.rb +13 -0
  372. data/lib/time_crisis/tzinfo/definitions/Australia/Victoria.rb +13 -0
  373. data/lib/time_crisis/tzinfo/definitions/Australia/West.rb +13 -0
  374. data/lib/time_crisis/tzinfo/definitions/Australia/Yancowinna.rb +13 -0
  375. data/lib/time_crisis/tzinfo/definitions/Brazil/Acre.rb +13 -0
  376. data/lib/time_crisis/tzinfo/definitions/Brazil/DeNoronha.rb +13 -0
  377. data/lib/time_crisis/tzinfo/definitions/Brazil/East.rb +13 -0
  378. data/lib/time_crisis/tzinfo/definitions/Brazil/West.rb +13 -0
  379. data/lib/time_crisis/tzinfo/definitions/CET.rb +177 -0
  380. data/lib/time_crisis/tzinfo/definitions/CST6CDT.rb +192 -0
  381. data/lib/time_crisis/tzinfo/definitions/Canada/Atlantic.rb +13 -0
  382. data/lib/time_crisis/tzinfo/definitions/Canada/Central.rb +13 -0
  383. data/lib/time_crisis/tzinfo/definitions/Canada/East__m__Saskatchewan.rb +13 -0
  384. data/lib/time_crisis/tzinfo/definitions/Canada/Eastern.rb +13 -0
  385. data/lib/time_crisis/tzinfo/definitions/Canada/Mountain.rb +13 -0
  386. data/lib/time_crisis/tzinfo/definitions/Canada/Newfoundland.rb +13 -0
  387. data/lib/time_crisis/tzinfo/definitions/Canada/Pacific.rb +13 -0
  388. data/lib/time_crisis/tzinfo/definitions/Canada/Saskatchewan.rb +13 -0
  389. data/lib/time_crisis/tzinfo/definitions/Canada/Yukon.rb +13 -0
  390. data/lib/time_crisis/tzinfo/definitions/Chile/Continental.rb +13 -0
  391. data/lib/time_crisis/tzinfo/definitions/Chile/EasterIsland.rb +13 -0
  392. data/lib/time_crisis/tzinfo/definitions/Cuba.rb +11 -0
  393. data/lib/time_crisis/tzinfo/definitions/EET.rb +163 -0
  394. data/lib/time_crisis/tzinfo/definitions/EST.rb +14 -0
  395. data/lib/time_crisis/tzinfo/definitions/EST5EDT.rb +192 -0
  396. data/lib/time_crisis/tzinfo/definitions/Egypt.rb +11 -0
  397. data/lib/time_crisis/tzinfo/definitions/Eire.rb +11 -0
  398. data/lib/time_crisis/tzinfo/definitions/Etc/GMT.rb +16 -0
  399. data/lib/time_crisis/tzinfo/definitions/Etc/GMT0.rb +13 -0
  400. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__0.rb +13 -0
  401. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__1.rb +16 -0
  402. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__10.rb +16 -0
  403. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__11.rb +16 -0
  404. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__12.rb +16 -0
  405. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__13.rb +16 -0
  406. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__14.rb +16 -0
  407. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__2.rb +16 -0
  408. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__3.rb +16 -0
  409. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__4.rb +16 -0
  410. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__5.rb +16 -0
  411. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__6.rb +16 -0
  412. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__7.rb +16 -0
  413. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__8.rb +16 -0
  414. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__m__9.rb +16 -0
  415. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__0.rb +13 -0
  416. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__1.rb +16 -0
  417. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__10.rb +16 -0
  418. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__11.rb +16 -0
  419. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__12.rb +16 -0
  420. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__2.rb +16 -0
  421. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__3.rb +16 -0
  422. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__4.rb +16 -0
  423. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__5.rb +16 -0
  424. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__6.rb +16 -0
  425. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__7.rb +16 -0
  426. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__8.rb +16 -0
  427. data/lib/time_crisis/tzinfo/definitions/Etc/GMT__p__9.rb +16 -0
  428. data/lib/time_crisis/tzinfo/definitions/Etc/Greenwich.rb +13 -0
  429. data/lib/time_crisis/tzinfo/definitions/Etc/UCT.rb +16 -0
  430. data/lib/time_crisis/tzinfo/definitions/Etc/UTC.rb +2 -2
  431. data/lib/time_crisis/tzinfo/definitions/Etc/Universal.rb +13 -0
  432. data/lib/time_crisis/tzinfo/definitions/Etc/Zulu.rb +13 -0
  433. data/lib/time_crisis/tzinfo/definitions/Europe/Amsterdam.rb +2 -2
  434. data/lib/time_crisis/tzinfo/definitions/Europe/Andorra.rb +153 -0
  435. data/lib/time_crisis/tzinfo/definitions/Europe/Athens.rb +2 -2
  436. data/lib/time_crisis/tzinfo/definitions/Europe/Belfast.rb +13 -0
  437. data/lib/time_crisis/tzinfo/definitions/Europe/Belgrade.rb +2 -2
  438. data/lib/time_crisis/tzinfo/definitions/Europe/Berlin.rb +2 -2
  439. data/lib/time_crisis/tzinfo/definitions/Europe/Bratislava.rb +1 -1
  440. data/lib/time_crisis/tzinfo/definitions/Europe/Brussels.rb +2 -2
  441. data/lib/time_crisis/tzinfo/definitions/Europe/Bucharest.rb +2 -2
  442. data/lib/time_crisis/tzinfo/definitions/Europe/Budapest.rb +2 -2
  443. data/lib/time_crisis/tzinfo/definitions/Europe/Chisinau.rb +189 -0
  444. data/lib/time_crisis/tzinfo/definitions/Europe/Copenhagen.rb +2 -2
  445. data/lib/time_crisis/tzinfo/definitions/Europe/Dublin.rb +2 -2
  446. data/lib/time_crisis/tzinfo/definitions/Europe/Gibraltar.rb +245 -0
  447. data/lib/time_crisis/tzinfo/definitions/Europe/Guernsey.rb +13 -0
  448. data/lib/time_crisis/tzinfo/definitions/Europe/Helsinki.rb +2 -2
  449. data/lib/time_crisis/tzinfo/definitions/Europe/Isle_of_Man.rb +13 -0
  450. data/lib/time_crisis/tzinfo/definitions/Europe/Istanbul.rb +2 -2
  451. data/lib/time_crisis/tzinfo/definitions/Europe/Jersey.rb +13 -0
  452. data/lib/time_crisis/tzinfo/definitions/Europe/Kaliningrad.rb +181 -0
  453. data/lib/time_crisis/tzinfo/definitions/Europe/Kiev.rb +2 -2
  454. data/lib/time_crisis/tzinfo/definitions/Europe/Lisbon.rb +2 -2
  455. data/lib/time_crisis/tzinfo/definitions/Europe/Ljubljana.rb +1 -1
  456. data/lib/time_crisis/tzinfo/definitions/Europe/London.rb +2 -2
  457. data/lib/time_crisis/tzinfo/definitions/Europe/Luxembourg.rb +231 -0
  458. data/lib/time_crisis/tzinfo/definitions/Europe/Madrid.rb +2 -2
  459. data/lib/time_crisis/tzinfo/definitions/Europe/Malta.rb +213 -0
  460. data/lib/time_crisis/tzinfo/definitions/Europe/Mariehamn.rb +13 -0
  461. data/lib/time_crisis/tzinfo/definitions/Europe/Minsk.rb +2 -2
  462. data/lib/time_crisis/tzinfo/definitions/Europe/Monaco.rb +233 -0
  463. data/lib/time_crisis/tzinfo/definitions/Europe/Moscow.rb +2 -2
  464. data/lib/time_crisis/tzinfo/definitions/Europe/Nicosia.rb +13 -0
  465. data/lib/time_crisis/tzinfo/definitions/Europe/Oslo.rb +185 -0
  466. data/lib/time_crisis/tzinfo/definitions/Europe/Paris.rb +2 -2
  467. data/lib/time_crisis/tzinfo/definitions/Europe/Podgorica.rb +13 -0
  468. data/lib/time_crisis/tzinfo/definitions/Europe/Prague.rb +2 -2
  469. data/lib/time_crisis/tzinfo/definitions/Europe/Riga.rb +2 -2
  470. data/lib/time_crisis/tzinfo/definitions/Europe/Rome.rb +2 -2
  471. data/lib/time_crisis/tzinfo/definitions/Europe/Samara.rb +168 -0
  472. data/lib/time_crisis/tzinfo/definitions/Europe/San_Marino.rb +13 -0
  473. data/lib/time_crisis/tzinfo/definitions/Europe/Sarajevo.rb +1 -1
  474. data/lib/time_crisis/tzinfo/definitions/Europe/Simferopol.rb +170 -0
  475. data/lib/time_crisis/tzinfo/definitions/Europe/Skopje.rb +1 -1
  476. data/lib/time_crisis/tzinfo/definitions/Europe/Sofia.rb +2 -2
  477. data/lib/time_crisis/tzinfo/definitions/Europe/Stockholm.rb +2 -2
  478. data/lib/time_crisis/tzinfo/definitions/Europe/Tallinn.rb +2 -2
  479. data/lib/time_crisis/tzinfo/definitions/Europe/Tirane.rb +177 -0
  480. data/lib/time_crisis/tzinfo/definitions/Europe/Tiraspol.rb +13 -0
  481. data/lib/time_crisis/tzinfo/definitions/Europe/Uzhgorod.rb +168 -0
  482. data/lib/time_crisis/tzinfo/definitions/Europe/Vaduz.rb +159 -0
  483. data/lib/time_crisis/tzinfo/definitions/Europe/Vatican.rb +13 -0
  484. data/lib/time_crisis/tzinfo/definitions/Europe/Vienna.rb +2 -2
  485. data/lib/time_crisis/tzinfo/definitions/Europe/Vilnius.rb +2 -2
  486. data/lib/time_crisis/tzinfo/definitions/Europe/Volgograd.rb +166 -0
  487. data/lib/time_crisis/tzinfo/definitions/Europe/Warsaw.rb +2 -2
  488. data/lib/time_crisis/tzinfo/definitions/Europe/Zagreb.rb +1 -1
  489. data/lib/time_crisis/tzinfo/definitions/Europe/Zaporozhye.rb +171 -0
  490. data/lib/time_crisis/tzinfo/definitions/Europe/Zurich.rb +165 -0
  491. data/lib/time_crisis/tzinfo/definitions/GB.rb +11 -0
  492. data/lib/time_crisis/tzinfo/definitions/GB__m__Eire.rb +11 -0
  493. data/lib/time_crisis/tzinfo/definitions/GMT.rb +11 -0
  494. data/lib/time_crisis/tzinfo/definitions/GMT0.rb +11 -0
  495. data/lib/time_crisis/tzinfo/definitions/GMT__m__0.rb +11 -0
  496. data/lib/time_crisis/tzinfo/definitions/GMT__p__0.rb +11 -0
  497. data/lib/time_crisis/tzinfo/definitions/Greenwich.rb +11 -0
  498. data/lib/time_crisis/tzinfo/definitions/HST.rb +14 -0
  499. data/lib/time_crisis/tzinfo/definitions/Hongkong.rb +11 -0
  500. data/lib/time_crisis/tzinfo/definitions/Iceland.rb +11 -0
  501. data/lib/time_crisis/tzinfo/definitions/Indian/Antananarivo.rb +21 -0
  502. data/lib/time_crisis/tzinfo/definitions/Indian/Chagos.rb +20 -0
  503. data/lib/time_crisis/tzinfo/definitions/Indian/Christmas.rb +18 -0
  504. data/lib/time_crisis/tzinfo/definitions/Indian/Cocos.rb +18 -0
  505. data/lib/time_crisis/tzinfo/definitions/Indian/Comoro.rb +18 -0
  506. data/lib/time_crisis/tzinfo/definitions/Indian/Kerguelen.rb +18 -0
  507. data/lib/time_crisis/tzinfo/definitions/Indian/Mahe.rb +18 -0
  508. data/lib/time_crisis/tzinfo/definitions/Indian/Maldives.rb +20 -0
  509. data/lib/time_crisis/tzinfo/definitions/Indian/Mauritius.rb +23 -0
  510. data/lib/time_crisis/tzinfo/definitions/Indian/Mayotte.rb +18 -0
  511. data/lib/time_crisis/tzinfo/definitions/Indian/Reunion.rb +18 -0
  512. data/lib/time_crisis/tzinfo/definitions/Iran.rb +11 -0
  513. data/lib/time_crisis/tzinfo/definitions/Israel.rb +11 -0
  514. data/lib/time_crisis/tzinfo/definitions/Jamaica.rb +11 -0
  515. data/lib/time_crisis/tzinfo/definitions/Japan.rb +11 -0
  516. data/lib/time_crisis/tzinfo/definitions/Kwajalein.rb +11 -0
  517. data/lib/time_crisis/tzinfo/definitions/Libya.rb +11 -0
  518. data/lib/time_crisis/tzinfo/definitions/MET.rb +177 -0
  519. data/lib/time_crisis/tzinfo/definitions/MST.rb +14 -0
  520. data/lib/time_crisis/tzinfo/definitions/MST7MDT.rb +192 -0
  521. data/lib/time_crisis/tzinfo/definitions/Mexico/BajaNorte.rb +13 -0
  522. data/lib/time_crisis/tzinfo/definitions/Mexico/BajaSur.rb +13 -0
  523. data/lib/time_crisis/tzinfo/definitions/Mexico/General.rb +13 -0
  524. data/lib/time_crisis/tzinfo/definitions/Mideast/Riyadh87.rb +13 -0
  525. data/lib/time_crisis/tzinfo/definitions/Mideast/Riyadh88.rb +13 -0
  526. data/lib/time_crisis/tzinfo/definitions/Mideast/Riyadh89.rb +13 -0
  527. data/lib/time_crisis/tzinfo/definitions/NZ.rb +11 -0
  528. data/lib/time_crisis/tzinfo/definitions/NZ__m__CHAT.rb +11 -0
  529. data/lib/time_crisis/tzinfo/definitions/Navajo.rb +11 -0
  530. data/lib/time_crisis/tzinfo/definitions/PRC.rb +11 -0
  531. data/lib/time_crisis/tzinfo/definitions/PST8PDT.rb +192 -0
  532. data/lib/time_crisis/tzinfo/definitions/Pacific/Apia.rb +25 -0
  533. data/lib/time_crisis/tzinfo/definitions/Pacific/Auckland.rb +2 -2
  534. data/lib/time_crisis/tzinfo/definitions/Pacific/Chatham.rb +171 -0
  535. data/lib/time_crisis/tzinfo/definitions/Pacific/Easter.rb +190 -0
  536. data/lib/time_crisis/tzinfo/definitions/Pacific/Efate.rb +39 -0
  537. data/lib/time_crisis/tzinfo/definitions/Pacific/Enderbury.rb +22 -0
  538. data/lib/time_crisis/tzinfo/definitions/Pacific/Fakaofo.rb +18 -0
  539. data/lib/time_crisis/tzinfo/definitions/Pacific/Fiji.rb +2 -2
  540. data/lib/time_crisis/tzinfo/definitions/Pacific/Funafuti.rb +18 -0
  541. data/lib/time_crisis/tzinfo/definitions/Pacific/Galapagos.rb +20 -0
  542. data/lib/time_crisis/tzinfo/definitions/Pacific/Gambier.rb +18 -0
  543. data/lib/time_crisis/tzinfo/definitions/Pacific/Guadalcanal.rb +18 -0
  544. data/lib/time_crisis/tzinfo/definitions/Pacific/Guam.rb +2 -2
  545. data/lib/time_crisis/tzinfo/definitions/Pacific/Honolulu.rb +2 -2
  546. data/lib/time_crisis/tzinfo/definitions/Pacific/Johnston.rb +16 -0
  547. data/lib/time_crisis/tzinfo/definitions/Pacific/Kiritimati.rb +22 -0
  548. data/lib/time_crisis/tzinfo/definitions/Pacific/Kosrae.rb +21 -0
  549. data/lib/time_crisis/tzinfo/definitions/Pacific/Kwajalein.rb +22 -0
  550. data/lib/time_crisis/tzinfo/definitions/Pacific/Majuro.rb +2 -2
  551. data/lib/time_crisis/tzinfo/definitions/Pacific/Marquesas.rb +18 -0
  552. data/lib/time_crisis/tzinfo/definitions/Pacific/Midway.rb +2 -2
  553. data/lib/time_crisis/tzinfo/definitions/Pacific/Nauru.rb +23 -0
  554. data/lib/time_crisis/tzinfo/definitions/Pacific/Niue.rb +22 -0
  555. data/lib/time_crisis/tzinfo/definitions/Pacific/Norfolk.rb +20 -0
  556. data/lib/time_crisis/tzinfo/definitions/Pacific/Noumea.rb +2 -2
  557. data/lib/time_crisis/tzinfo/definitions/Pacific/Pago_Pago.rb +2 -2
  558. data/lib/time_crisis/tzinfo/definitions/Pacific/Palau.rb +18 -0
  559. data/lib/time_crisis/tzinfo/definitions/Pacific/Pitcairn.rb +20 -0
  560. data/lib/time_crisis/tzinfo/definitions/Pacific/Ponape.rb +18 -0
  561. data/lib/time_crisis/tzinfo/definitions/Pacific/Port_Moresby.rb +2 -2
  562. data/lib/time_crisis/tzinfo/definitions/Pacific/Rarotonga.rb +46 -0
  563. data/lib/time_crisis/tzinfo/definitions/Pacific/Saipan.rb +24 -0
  564. data/lib/time_crisis/tzinfo/definitions/Pacific/Samoa.rb +13 -0
  565. data/lib/time_crisis/tzinfo/definitions/Pacific/Tahiti.rb +18 -0
  566. data/lib/time_crisis/tzinfo/definitions/Pacific/Tarawa.rb +18 -0
  567. data/lib/time_crisis/tzinfo/definitions/Pacific/Tongatapu.rb +2 -2
  568. data/lib/time_crisis/tzinfo/definitions/Pacific/Truk.rb +18 -0
  569. data/lib/time_crisis/tzinfo/definitions/Pacific/Wake.rb +18 -0
  570. data/lib/time_crisis/tzinfo/definitions/Pacific/Wallis.rb +18 -0
  571. data/lib/time_crisis/tzinfo/definitions/Pacific/Yap.rb +13 -0
  572. data/lib/time_crisis/tzinfo/definitions/Poland.rb +11 -0
  573. data/lib/time_crisis/tzinfo/definitions/Portugal.rb +11 -0
  574. data/lib/time_crisis/tzinfo/definitions/ROC.rb +11 -0
  575. data/lib/time_crisis/tzinfo/definitions/ROK.rb +11 -0
  576. data/lib/time_crisis/tzinfo/definitions/Singapore.rb +11 -0
  577. data/lib/time_crisis/tzinfo/definitions/Turkey.rb +11 -0
  578. data/lib/time_crisis/tzinfo/definitions/UCT.rb +11 -0
  579. data/lib/time_crisis/tzinfo/definitions/US/Alaska.rb +13 -0
  580. data/lib/time_crisis/tzinfo/definitions/US/Aleutian.rb +13 -0
  581. data/lib/time_crisis/tzinfo/definitions/US/Arizona.rb +13 -0
  582. data/lib/time_crisis/tzinfo/definitions/US/Central.rb +13 -0
  583. data/lib/time_crisis/tzinfo/definitions/US/East__m__Indiana.rb +13 -0
  584. data/lib/time_crisis/tzinfo/definitions/US/Eastern.rb +13 -0
  585. data/lib/time_crisis/tzinfo/definitions/US/Hawaii.rb +13 -0
  586. data/lib/time_crisis/tzinfo/definitions/US/Indiana__m__Starke.rb +13 -0
  587. data/lib/time_crisis/tzinfo/definitions/US/Michigan.rb +13 -0
  588. data/lib/time_crisis/tzinfo/definitions/US/Mountain.rb +13 -0
  589. data/lib/time_crisis/tzinfo/definitions/US/Pacific.rb +13 -0
  590. data/lib/time_crisis/tzinfo/definitions/US/Pacific__m__New.rb +13 -0
  591. data/lib/time_crisis/tzinfo/definitions/US/Samoa.rb +13 -0
  592. data/lib/time_crisis/tzinfo/definitions/UTC.rb +11 -0
  593. data/lib/time_crisis/tzinfo/definitions/Universal.rb +11 -0
  594. data/lib/time_crisis/tzinfo/definitions/WET.rb +163 -0
  595. data/lib/time_crisis/tzinfo/definitions/W__m__SU.rb +11 -0
  596. data/lib/time_crisis/tzinfo/definitions/Zulu.rb +11 -0
  597. data/lib/time_crisis/tzinfo/indexes/timezones.rb +577 -0
  598. data/lib/time_crisis/tzinfo/time_or_datetime.rb +60 -22
  599. data/lib/time_crisis/tzinfo/timezone_index_definition.rb +50 -0
  600. data/lib/time_crisis/tzinfo/timezone_period.rb +4 -4
  601. data/lib/time_crisis/tzinfo/timezone_proxy.rb +65 -0
  602. data/lib/time_crisis/weekend.rb +2 -1
  603. data/time_crisis.gemspec +469 -20
  604. metadata +471 -35
  605. data/lib/third_base.rb +0 -2
  606. data/lib/third_base/compat.rb +0 -405
  607. data/lib/third_base/compat/date.rb +0 -3
  608. data/lib/third_base/compat/date/format.rb +0 -3
  609. data/lib/time_crisis/ext.rb +0 -60
  610. data/lib/time_crisis/support/acts_like.rb +0 -20
  611. data/lib/time_crisis/support/advance.rb +0 -25
  612. data/lib/time_crisis/support/change.rb +0 -47
  613. data/lib/time_crisis/support/conversions.rb +0 -98
  614. data/lib/time_crisis/support/current.rb +0 -16
  615. data/lib/time_crisis/support/readable_inspect.rb +0 -30
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'third_base/datetime'
@@ -1,405 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'third_base'
3
-
4
- Object.send(:remove_const, :Date) if Object.const_get(:Date) rescue nil
5
- Object.send(:remove_const, :DateTime) if Object.const_get(:DateTime) rescue nil
6
-
7
- module ThirdBase
8
- MJD_JD = 2400001
9
- LD_JD = 2299160
10
- ITALY = 2299161
11
- ENGLAND = 2361222
12
- JULIAN = -100000000000000000000000000000000000
13
- GREGORIAN = 100000000000000000000000000000000000
14
-
15
- # Compatibility class methods for Date and DateTime, necessary because ruby doesn't
16
- # support multiple inheritance.
17
- module CompatClassMethods
18
- [ %w(os? julian?),
19
- %w(ns? gregorian?),
20
- %w(exist1? valid_jd?),
21
- %w(exist2? valid_ordinal?),
22
- %w(exist3? valid_date?),
23
- %w(exist? valid_date?),
24
- %w(existw? valid_commercial?),
25
- %w(new0 new!),
26
- %w(new1 jd),
27
- %w(new2 ordinal),
28
- %w(new3 new),
29
- %w(neww commercial)
30
- ].each{|old, new| module_eval("def #{old}(*args, &block); #{new}(*args, &block); end")}
31
-
32
- # Return the parts of the parsed date as a hash witht he following keys:
33
- #
34
- # * :hour : hour
35
- # * :mday : day of month
36
- # * :min : minute
37
- # * :mon : month
38
- # * :offset : time zone offset from UTC in seconds
39
- # * :sec : second
40
- # * :sec_fraction : fraction of a second
41
- # * :year : year
42
- # * :zone : time zone offset as string
43
- def _parse(str, comp=false)
44
- d = DateTime.parse(str)
45
- {:mon=>d.mon, :zone=>d.zone, :sec=>d.sec, :year=>d.year, :hour=>d.hour, :offset=>d.utc_offset, :mday=>d.day, :min=>d.min, :sec_fraction=>d.usec/1000000.0}.reject{|k, v| d.not_parsed.include?(k)}
46
- end
47
-
48
- # Converts an Astronomical Julian Date to an Astronomical Modified Julian Date (substracts an integer from ajd)
49
- def ajd_to_amjd(ajd)
50
- ajd - MJD_JD
51
- end
52
-
53
- # Converts an Astronomical Julian Date to a Julian Date (returns ajd, ignores of)
54
- def ajd_to_jd(ajd, of=0)
55
- ajd
56
- end
57
-
58
- # Converts an Astronomical Modified Julian Date to an Astronomical Julian Date (adds an integer to amjd)
59
- def amjd_to_ajd(amjd)
60
- amjd + MJD_JD
61
- end
62
-
63
- # Returns the julian date for the given civil date arguments, ignores sg.
64
- def civil_to_jd(year, mon, day, sg=nil)
65
- civil(year, mon, day).jd
66
- end
67
-
68
- # Returns the julian date for the given commercial date arguments, ignores sg.
69
- def commercial_to_jd(cwyear, cweek, cwday, sg=nil)
70
- commercial(cwyear, cweek, cwday).jd
71
- end
72
-
73
- # Returns the fraction of the date as an array of hours, minutes, seconds, and fraction on a second.
74
- def day_fraction_to_time(fr)
75
- hours, fr = (fr * 24).divmod(1)
76
- minutes, fr = (fr * 60).divmod(1)
77
- seconds, sec_fract = (fr * 60).divmod(1)
78
- [hours, minutes, seconds, sec_fract]
79
- end
80
-
81
- # True if jd is greater than sg, false otherwise.
82
- def gregorian?(jd, sg)
83
- jd > sg
84
- end
85
-
86
- # All years divisible by 4 are leap years in the Gregorian calendar,
87
- # except for years divisible by 100 and not by 400.
88
- def leap?(y)
89
- y % 4 == 0 && y % 100 != 0 || y % 400 == 0
90
- end
91
- alias gregorian_leap? leap?
92
-
93
- # Converts a Julian Date to an Astronomical Julian Date (returns j, ignores fr and of)
94
- def jd_to_ajd(j, fr, of=0)
95
- j
96
- end
97
-
98
- # Returns [year, month, day] for the given julian date, ignores sg.
99
- def jd_to_civil(j, sg=nil)
100
- jd(j).send(:civil)
101
- end
102
-
103
- # Returns [cwyear, cweek, cwday] for the given julian date, ignores sg.
104
- def jd_to_commercial(j, sg=nil)
105
- jd(j).send(:commercial)
106
- end
107
-
108
- # Converts a julian date to the number of days since the adoption of
109
- # the gregorian calendar in Italy (subtracts an integer from j).
110
- def jd_to_ld(j)
111
- j - LD_JD
112
- end
113
-
114
- # Convert a Julian Date to a Modified Julian Date (subtracts an integer from j).
115
- def jd_to_mjd(j)
116
- j - MJD_JD
117
- end
118
-
119
- # Returns [year, yday] for the given julian date, ignores sg.
120
- def jd_to_ordinal(j, sg=nil)
121
- jd(j).send(:ordinal)
122
- end
123
-
124
- # Returns the day of week for the given julian date.
125
- def jd_to_wday(j)
126
- jd(j).wday
127
- end
128
-
129
- # Returns true if jd is less than sg, false otherwise.
130
- def julian?(jd, sg)
131
- jd < sg
132
- end
133
-
134
- # All years divisible by 4 are leap years in the Julian calendar.
135
- def julian_leap?(y)
136
- y % 4 == 0
137
- end
138
-
139
- # Converts a number of days since the adoption of the gregorian calendar in Italy
140
- # to a julian date (adds an integer to ld).
141
- def ld_to_jd(ld)
142
- ld + LD_JD
143
- end
144
-
145
- # Converts a Modified Julian Date to a Julian Date (adds an integer to mjd).
146
- def mjd_to_jd(mjd)
147
- mjd + MJD_JD
148
- end
149
-
150
- # Converts the given year and day of year to a julian date, ignores sg.
151
- def ordinal_to_jd(year, yday, sg=nil)
152
- ordinal(year, yday).jd
153
- end
154
-
155
- # Converts the given hour, minute, and second to a fraction of a day as a Float.
156
- def time_to_day_fraction(h, min, s)
157
- (h*3600 + min*60 + s)/86400.0
158
- end
159
-
160
- # Return the julian date of the given year, month, and day if valid, or nil if not, ignores sg.
161
- def valid_civil?(year, mon, day, sg=nil)
162
- civil(year, mon, day).jd rescue nil
163
- end
164
- alias valid_date? valid_civil?
165
-
166
- # Return the julian date of the given commercial week year, commercial week, and commercial
167
- # week day if valid, or nil if not, ignores sg.
168
- def valid_commercial?(cwyear, cweek, cwday, sg=nil)
169
- commercial(cwyear, cweek, cwday).jd rescue nil
170
- end
171
-
172
- # Returns the julian date if valid (always returns jd, ignores sg).
173
- def valid_jd?(jd, sg=nil)
174
- jd
175
- end
176
-
177
- # Return the julian date of the given year and day of year if valid, or nil if not, ignores sg.
178
- def valid_ordinal?(year, yday, sg=nil)
179
- ordinal(year, yday).jd rescue nil
180
- end
181
-
182
- # Returns the fraction of the day if the time is valid, or nil if the time is not valid.
183
- def valid_time?(h, min, s)
184
- h += 24 if h < 0
185
- min += 60 if min < 0
186
- s += 60 if s < 0
187
- return unless ((0..23) === h &&
188
- (0..59) === min &&
189
- (0..59) === s) ||
190
- (24 == h &&
191
- 0 == min &&
192
- 0 == s)
193
- time_to_day_fraction(h, min, s)
194
- end
195
-
196
- # Converts a time zone string to a offset from UTC in seconds.
197
- def zone_to_diff(zone)
198
- if m = /\A([+-](?:\d{4}|\d\d:\d\d))\z/.match(zone)
199
- x = m[1].gsub(':','')
200
- x[0..2].to_i*3600 + x[3..4].to_i*60
201
- else
202
- 0
203
- end
204
- end
205
- end
206
-
207
- # Compatibility instance methods for Date and DateTime, necessary because ruby doesn't
208
- # support multiple inheritance.
209
- module CompatInstanceMethods
210
- # Returns the Astronomical Julian Date for this date (alias for jd)
211
- def ajd
212
- jd
213
- end
214
-
215
- # Returns the Astronomical Modified Julian Date for this date (jd plus an integer)
216
- def amjd
217
- jd - MJD_JD
218
- end
219
- alias mjd amjd
220
-
221
- # Returns self.
222
- def gregorian
223
- self
224
- end
225
- alias england gregorian
226
- alias julian gregorian
227
- alias italy gregorian
228
-
229
- # True, since the gregorian calendar is always used.
230
- def gregorian?
231
- true
232
- end
233
- alias ns? gregorian?
234
-
235
- # False, since the gregorian calendar is never used.
236
- def julian?
237
- false
238
- end
239
- alias os? julian?
240
-
241
- # Returns the days since the date of the adoption of the gregorian calendar in Italy
242
- # (substracts an integer from jd).
243
- def ld
244
- jd - LD_JD
245
- end
246
-
247
- # Alias for day.
248
- def mday
249
- day
250
- end
251
-
252
- # Returns self, ignores sg.
253
- def new_start(sg=nil)
254
- self
255
- end
256
- alias newsg new_start
257
-
258
- # Returns 0, since the gregorian calendar is always used.
259
- def start
260
- 0
261
- end
262
- alias sg start
263
- end
264
-
265
- # ThirdBase's top level Date compatibility class, striving to be as close as possible
266
- # to the standard Date class's API.
267
- class ::Date < Date
268
- extend CompatClassMethods
269
- include CompatInstanceMethods
270
-
271
- # Parse the date using strptime with the given format.
272
- def self._strptime(str, fmt='%F')
273
- strptime(str, fmt)
274
- end
275
-
276
- # Creates a new Date with the given year, month, and day of month, ignores sg.
277
- def self.civil(year=-4712, mon=1, day=1, sg=nil)
278
- super(year, mon, day)
279
- end
280
-
281
- # Creates a new Date with the given commercial week year, commercial week, and commercial week day, ignores sg.
282
- def self.commercial(cwyear=1582, cweek=41, cwday=5, sg=nil)
283
- super(cwyear, cweek, cwday)
284
- end
285
-
286
- # Creates a new Date with the given julian date, ignores sg.
287
- def self.jd(j=0, sg=nil)
288
- super(j)
289
- end
290
-
291
- # Creates a new Date with the given year and day of year, ignores sg.
292
- def self.ordinal(year=-4712, yday=1, sg=nil)
293
- super(year, yday)
294
- end
295
-
296
- # Parse given string using ThirdBase::Date's date parser, ignores comp and sg.
297
- def self.parse(str="-4712-01-01", comp=false, sg=nil)
298
- super(str)
299
- end
300
-
301
- # Parse given string using given format, ignores sg.
302
- def self.strptime(str="-4712-01-01", fmt='%F', sg=nil)
303
- super(str, fmt)
304
- end
305
-
306
- # Creates a new Date with today's date, ignores sg.
307
- def self.today(sg=nil)
308
- super()
309
- end
310
-
311
- # Returns a formatted string representing the date.
312
- def asctime
313
- strftime('%a %b %e 00:00:00 %Y')
314
- end
315
- alias ctime asctime
316
-
317
- # Returns 0.0, since Date don't have fractional days.
318
- def day_fraction
319
- 0.0
320
- end
321
- end
322
-
323
- # ThirdBase's top level DateTime compatibility class, striving to be as close as possible
324
- # to the standard DateTime class's API.
325
- class ::DateTime < DateTime
326
- extend CompatClassMethods
327
- include CompatInstanceMethods
328
-
329
- # Parse the datetime using strptime with the given format.
330
- def self._strptime(str, fmt='%FT%T%z')
331
- strptime(str, fmt)
332
- end
333
-
334
- # Creates a new DateTime with the given year, month, day of month, hour, minute, second, and offset, ignores sg.
335
- def self.civil(year=-4712, mon=1, day=1, hour=0, min=0, sec=0, offset=0, sg=nil)
336
- super(year, mon, day, hour, min, sec, 0, (offset*86400).to_i)
337
- end
338
-
339
- # Creates a new DateTime with the given commercial week year, commercial week, commercial week day,
340
- # hour, minute, second, and offset, ignores sg.
341
- def self.commercial(cwyear=1582, cweek=41, cwday=5, hour=0, min=0, sec=0, offset=0, sg=nil)
342
- super(cwyear, cweek, cwday, hour, min, sec, 0, (offset*86400).to_i)
343
- end
344
-
345
- # Creates a new DateTime with the given julian date, hour, minute, second, and offset, ignores sg.
346
- def self.jd(j=0, hour=0, min=0, sec=0, offset=0, sg=nil)
347
- super(j, hour, min, sec, 0, (offset*86400).to_i)
348
- end
349
-
350
- # Creates a new DateTime with the given year, day of year, hour, minute, second, and offset, ignores sg.
351
- def self.ordinal(year=-4712, yday=1, hour=0, min=0, sec=0, offset=0, sg=nil)
352
- super(year, yday, hour, min, sec, 0, (offset*86400).to_i)
353
- end
354
-
355
- # Parse given string using ThirdBase::DateTime's date parser, ignores comp and sg.
356
- def self.parse(str="-4712-01-01T00:00:00+00:00", comp=false, sg=nil)
357
- super(str)
358
- end
359
-
360
- # Parse given string using given format, ignores sg.
361
- def self.strptime(str="-4712-01-01T00:00:00+00:00", fmt='%FT%T%z', sg=nil)
362
- super(str, fmt)
363
- end
364
-
365
- # Creates a new DateTime with the current date and time, ignores sg.
366
- def self.now(sg=nil)
367
- super()
368
- end
369
-
370
- # Returns a formatted string representing the date.
371
- def asctime
372
- strftime('%c')
373
- end
374
- alias ctime asctime
375
-
376
- alias day_fraction fract
377
-
378
- # Returns a new DateTime with the same date and time as this datetime, but with a new offset.
379
- def new_offset(offset=0)
380
- self.class.new!(:civil=>civil, :parts=>time_parts, :offset=>(offset*86400).to_i)
381
- end
382
- alias newof new_offset
383
-
384
- # Return the offset as a Float representing the fraction of the day different from UTC.
385
- def offset
386
- @offset/86400.0
387
- end
388
- alias of offset
389
-
390
- # Return the offset as a number of seconds from UTC.
391
- def offset_sec
392
- @offset
393
- end
394
-
395
- # The fraction of a second represented as a fraction of the entire day.
396
- def sec_fraction
397
- usec/86400000000.0
398
- end
399
- end
400
- end
401
-
402
- $:.unshift(File.join(File.dirname(__FILE__), 'compat'))
403
- require 'date'
404
- require 'date/format'
405
- $:.shift
@@ -1,3 +0,0 @@
1
- $:.unshift(File.dirname(File.dirname(File.dirname(__FILE__))))
2
- require 'third_base/compat'
3
- $:.shift
@@ -1,3 +0,0 @@
1
- $:.unshift(File.dirname(File.dirname(File.dirname(__FILE__))))
2
- require 'third_base/compat'
3
- $:.shift
@@ -1,60 +0,0 @@
1
- module TimeCrisis
2
- class DateTime
3
- attr_accessor :offset
4
-
5
- def new_offset(n)
6
- self.offset = n
7
- end
8
-
9
- def +(d)
10
- case
11
- when d.is_a?(Integer)
12
- new_jd(jd+d)
13
- when d.respond_to?(:to_f)
14
- d, f = d.to_f.divmod(1)
15
- f = fract + f
16
- m, f = f.divmod(1)
17
- self.class.jd_fract(jd+d+m, f, @offset)
18
- else
19
- raise TypeError, "d must be an Integer or respond to :to_f"
20
- end
21
- end
22
-
23
- def -(d)
24
- case
25
- when d.is_a?(::TimeCrisis::DateTime)
26
- (jd - d.jd) + (fract - d.fract) + (@offset - d.offset)/86400.0
27
- when d.is_a?(Integer)
28
- self + -d
29
- when d.respond_to?(:to_f)
30
- self + -(d.to_f)
31
- else
32
- raise TypeError, "d should be a TimeCrisis::DateTime, Integer, or respond to :to_f"
33
- end
34
- end
35
-
36
- def <=>(datetime)
37
- case
38
- when datetime.is_a?(::TimeCrisis::DateTime)
39
- ((d = super) == 0) && ((d = (hour <=> datetime.hour)) == 0) && ((d = (min <=> datetime.min)) == 0) && ((d = (sec <=> datetime.sec)) == 0) && ((d = (usec <=> datetime.usec)) == 0)
40
- d
41
- when datetime.is_a?(Integer)
42
- if ((d = (jd <=> datetime)) == 0)
43
- (hour == 0 and min == 0 and sec == 0 and usec == 0) ? 0 : 1
44
- else
45
- d
46
- end
47
- when datetime.respond_to?(:to_f)
48
- diff = jd+fract - datetime.to_f
49
- if diff.abs <= 1.15740740740741e-011
50
- 0
51
- else
52
- diff > 0.0 ? 1 : -1
53
- end
54
- else
55
- raise TypeError, "d should be a TimeCrisis::DateTime, Integer, or respond to :to_f"
56
- end
57
- end
58
-
59
- end
60
- end