@eosrio/node-abieos 2.1.0-beta.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (740) hide show
  1. package/README.md +4 -1
  2. package/dist/abieos.node +0 -0
  3. package/lib/abieos.d.ts +19 -0
  4. package/lib/abieos.d.ts.map +1 -0
  5. package/lib/abieos.js +100 -0
  6. package/lib/abieos.ts +107 -0
  7. package/package.json +13 -8
  8. package/.gitmodules +0 -6
  9. package/.idea/misc.xml +0 -6
  10. package/.idea/modules.xml +0 -8
  11. package/.idea/node-abieos.iml +0 -12
  12. package/.idea/vcs.xml +0 -9
  13. package/.idea/workspace.xml +0 -266
  14. package/CMakeLists.txt +0 -35
  15. package/abieos.d.ts +0 -21
  16. package/abieos.js +0 -59
  17. package/eosio.json +0 -1596
  18. package/external/date/CMakeLists.txt +0 -175
  19. package/external/date/LICENSE.txt +0 -31
  20. package/external/date/README.md +0 -61
  21. package/external/date/compile_fail.sh +0 -16
  22. package/external/date/include/date/chrono_io.h +0 -34
  23. package/external/date/include/date/date.h +0 -8335
  24. package/external/date/include/date/ios.h +0 -50
  25. package/external/date/include/date/islamic.h +0 -3031
  26. package/external/date/include/date/iso_week.h +0 -1745
  27. package/external/date/include/date/julian.h +0 -3046
  28. package/external/date/include/date/ptz.h +0 -592
  29. package/external/date/include/date/tz.h +0 -2760
  30. package/external/date/include/date/tz_private.h +0 -318
  31. package/external/date/src/ios.mm +0 -337
  32. package/external/date/src/tz.cpp +0 -3801
  33. package/external/date/test/clock_cast_test/custom_clock.pass.cpp +0 -213
  34. package/external/date/test/clock_cast_test/deprecated.pass.cpp +0 -90
  35. package/external/date/test/clock_cast_test/local_t.pass.cpp +0 -132
  36. package/external/date/test/clock_cast_test/noncastable.pass.cpp +0 -251
  37. package/external/date/test/clock_cast_test/normal_clocks.pass.cpp +0 -102
  38. package/external/date/test/clock_cast_test/to_sys_return_int.fail.cpp +0 -49
  39. package/external/date/test/clock_cast_test/to_sys_return_reference.fail.cpp +0 -51
  40. package/external/date/test/clock_cast_test/to_sys_return_utc_time.fail.cpp +0 -49
  41. package/external/date/test/date_test/day.pass.cpp +0 -143
  42. package/external/date/test/date_test/daypday.fail.cpp +0 -32
  43. package/external/date/test/date_test/daysmday.fail.cpp +0 -32
  44. package/external/date/test/date_test/daysmweekday.fail.cpp +0 -32
  45. package/external/date/test/date_test/detail/decimal_format_seconds.pass.cpp +0 -145
  46. package/external/date/test/date_test/detail/make_precision.pass.cpp +0 -63
  47. package/external/date/test/date_test/detail/static_pow10.pass.cpp +0 -50
  48. package/external/date/test/date_test/detail/width.pass.cpp +0 -64
  49. package/external/date/test/date_test/durations.pass.cpp +0 -62
  50. package/external/date/test/date_test/durations_output.pass.cpp +0 -328
  51. package/external/date/test/date_test/format/century.pass.cpp +0 -117
  52. package/external/date/test/date_test/format/misc.pass.cpp +0 -52
  53. package/external/date/test/date_test/format/range.pass.cpp +0 -78
  54. package/external/date/test/date_test/format/two_dight_year.pass.cpp +0 -121
  55. package/external/date/test/date_test/last.pass.cpp +0 -34
  56. package/external/date/test/date_test/make_time.pass.cpp +0 -164
  57. package/external/date/test/date_test/month.pass.cpp +0 -181
  58. package/external/date/test/date_test/month_day.pass.cpp +0 -82
  59. package/external/date/test/date_test/month_day_last.pass.cpp +0 -75
  60. package/external/date/test/date_test/month_weekday.pass.cpp +0 -77
  61. package/external/date/test/date_test/month_weekday_last.pass.cpp +0 -77
  62. package/external/date/test/date_test/month_weekday_last_less.fail.cpp +0 -34
  63. package/external/date/test/date_test/month_weekday_less.fail.cpp +0 -34
  64. package/external/date/test/date_test/monthpmonth.fail.cpp +0 -32
  65. package/external/date/test/date_test/months_m_year_month.fail.cpp +0 -33
  66. package/external/date/test/date_test/months_m_year_month_day.fail.cpp +0 -33
  67. package/external/date/test/date_test/monthsmmonth.fail.cpp +0 -32
  68. package/external/date/test/date_test/multi_year_duration_addition.pass.cpp +0 -297
  69. package/external/date/test/date_test/op_div_day_day.fail.cpp +0 -33
  70. package/external/date/test/date_test/op_div_int_month.fail.cpp +0 -33
  71. package/external/date/test/date_test/op_div_int_year.fail.cpp +0 -33
  72. package/external/date/test/date_test/op_div_last_last.fail.cpp +0 -33
  73. package/external/date/test/date_test/op_div_month_day.pass.cpp +0 -41
  74. package/external/date/test/date_test/op_div_month_day_last.pass.cpp +0 -39
  75. package/external/date/test/date_test/op_div_month_day_month_day.fail.cpp +0 -33
  76. package/external/date/test/date_test/op_div_month_month.fail.cpp +0 -33
  77. package/external/date/test/date_test/op_div_month_weekday.pass.cpp +0 -39
  78. package/external/date/test/date_test/op_div_month_weekday_last.pass.cpp +0 -39
  79. package/external/date/test/date_test/op_div_month_year.fail.cpp +0 -33
  80. package/external/date/test/date_test/op_div_survey.pass.cpp +0 -437
  81. package/external/date/test/date_test/op_div_weekday_indexed_weekday_indexed.fail.cpp +0 -33
  82. package/external/date/test/date_test/op_div_weekday_last_weekday_last.fail.cpp +0 -33
  83. package/external/date/test/date_test/op_div_year_month.pass.cpp +0 -35
  84. package/external/date/test/date_test/op_div_year_month_day.pass.cpp +0 -43
  85. package/external/date/test/date_test/op_div_year_month_day_last.pass.cpp +0 -41
  86. package/external/date/test/date_test/op_div_year_month_weekday.pass.cpp +0 -41
  87. package/external/date/test/date_test/op_div_year_month_weekday_last.pass.cpp +0 -41
  88. package/external/date/test/date_test/op_div_year_month_year_month.fail.cpp +0 -33
  89. package/external/date/test/date_test/op_div_year_year.fail.cpp +0 -33
  90. package/external/date/test/date_test/parse.pass.cpp +0 -904
  91. package/external/date/test/date_test/sizeof.pass.cpp +0 -62
  92. package/external/date/test/date_test/time_of_day_hours.pass.cpp +0 -104
  93. package/external/date/test/date_test/time_of_day_microfortnights.pass.cpp +0 -119
  94. package/external/date/test/date_test/time_of_day_milliseconds.pass.cpp +0 -126
  95. package/external/date/test/date_test/time_of_day_minutes.pass.cpp +0 -110
  96. package/external/date/test/date_test/time_of_day_nanoseconds.pass.cpp +0 -126
  97. package/external/date/test/date_test/time_of_day_seconds.pass.cpp +0 -116
  98. package/external/date/test/date_test/weekday.pass.cpp +0 -201
  99. package/external/date/test/date_test/weekday_indexed.pass.cpp +0 -70
  100. package/external/date/test/date_test/weekday_last.pass.cpp +0 -66
  101. package/external/date/test/date_test/weekday_lessthan.fail.cpp +0 -32
  102. package/external/date/test/date_test/weekday_sum.fail.cpp +0 -32
  103. package/external/date/test/date_test/year.pass.cpp +0 -146
  104. package/external/date/test/date_test/year_month.pass.cpp +0 -142
  105. package/external/date/test/date_test/year_month_day.pass.cpp +0 -244
  106. package/external/date/test/date_test/year_month_day_last.pass.cpp +0 -177
  107. package/external/date/test/date_test/year_month_day_m_year_month_day.fail.cpp +0 -33
  108. package/external/date/test/date_test/year_month_day_p_year_month_day.fail.cpp +0 -33
  109. package/external/date/test/date_test/year_month_p_year_month.fail.cpp +0 -33
  110. package/external/date/test/date_test/year_month_weekday.pass.cpp +0 -178
  111. package/external/date/test/date_test/year_month_weekday_last.pass.cpp +0 -169
  112. package/external/date/test/date_test/year_p_year.fail.cpp +0 -32
  113. package/external/date/test/date_test/years_m_year.fail.cpp +0 -32
  114. package/external/date/test/date_test/years_m_year_month.fail.cpp +0 -33
  115. package/external/date/test/date_test/years_m_year_month_day.fail.cpp +0 -33
  116. package/external/date/test/iso_week/last.pass.cpp +0 -34
  117. package/external/date/test/iso_week/lastweek_weekday.pass.cpp +0 -82
  118. package/external/date/test/iso_week/op_div_survey.pass.cpp +0 -196
  119. package/external/date/test/iso_week/weekday.pass.cpp +0 -227
  120. package/external/date/test/iso_week/weekday_lessthan.fail.cpp +0 -32
  121. package/external/date/test/iso_week/weekday_sum.fail.cpp +0 -32
  122. package/external/date/test/iso_week/weeknum.pass.cpp +0 -121
  123. package/external/date/test/iso_week/weeknum_p_weeknum.fail.cpp +0 -32
  124. package/external/date/test/iso_week/weeknum_weekday.pass.cpp +0 -86
  125. package/external/date/test/iso_week/year.pass.cpp +0 -120
  126. package/external/date/test/iso_week/year_lastweek.pass.cpp +0 -97
  127. package/external/date/test/iso_week/year_lastweek_weekday.pass.cpp +0 -129
  128. package/external/date/test/iso_week/year_p_year.fail.cpp +0 -32
  129. package/external/date/test/iso_week/year_weeknum.pass.cpp +0 -97
  130. package/external/date/test/iso_week/year_weeknum_weekday.pass.cpp +0 -139
  131. package/external/date/test/iso_week/years_m_year.fail.cpp +0 -32
  132. package/external/date/test/just.pass.cpp +0 -26
  133. package/external/date/test/testit +0 -177
  134. package/external/date/test/tz_test/OffsetZone.pass.cpp +0 -81
  135. package/external/date/test/tz_test/README.md +0 -22
  136. package/external/date/test/tz_test/tzdata2015e.txt.zip +0 -0
  137. package/external/date/test/tz_test/tzdata2015f.txt.zip +0 -0
  138. package/external/date/test/tz_test/tzdata2016c.txt.zip +0 -0
  139. package/external/date/test/tz_test/tzdata2016d.txt.zip +0 -0
  140. package/external/date/test/tz_test/tzdata2016e.txt.zip +0 -0
  141. package/external/date/test/tz_test/tzdata2016f.txt.zip +0 -0
  142. package/external/date/test/tz_test/validate.cpp +0 -165
  143. package/external/date/test/tz_test/zone.pass.cpp +0 -37
  144. package/external/date/test/tz_test/zoned_time.pass.cpp +0 -464
  145. package/external/date/test_fail.sh +0 -10
  146. package/external/rapidjson/.gitattributes +0 -22
  147. package/external/rapidjson/.gitmodules +0 -3
  148. package/external/rapidjson/.travis.yml +0 -99
  149. package/external/rapidjson/CHANGELOG.md +0 -158
  150. package/external/rapidjson/CMakeLists.txt +0 -221
  151. package/external/rapidjson/CMakeModules/FindGTestSrc.cmake +0 -30
  152. package/external/rapidjson/RapidJSON.pc.in +0 -7
  153. package/external/rapidjson/RapidJSONConfig.cmake.in +0 -15
  154. package/external/rapidjson/RapidJSONConfigVersion.cmake.in +0 -10
  155. package/external/rapidjson/appveyor.yml +0 -54
  156. package/external/rapidjson/bin/data/glossary.json +0 -22
  157. package/external/rapidjson/bin/data/menu.json +0 -27
  158. package/external/rapidjson/bin/data/readme.txt +0 -1
  159. package/external/rapidjson/bin/data/sample.json +0 -3315
  160. package/external/rapidjson/bin/data/webapp.json +0 -88
  161. package/external/rapidjson/bin/data/widget.json +0 -26
  162. package/external/rapidjson/bin/encodings/utf16be.json +0 -0
  163. package/external/rapidjson/bin/encodings/utf16bebom.json +0 -0
  164. package/external/rapidjson/bin/encodings/utf16le.json +0 -0
  165. package/external/rapidjson/bin/encodings/utf16lebom.json +0 -0
  166. package/external/rapidjson/bin/encodings/utf32be.json +0 -0
  167. package/external/rapidjson/bin/encodings/utf32bebom.json +0 -0
  168. package/external/rapidjson/bin/encodings/utf32le.json +0 -0
  169. package/external/rapidjson/bin/encodings/utf32lebom.json +0 -0
  170. package/external/rapidjson/bin/encodings/utf8.json +0 -7
  171. package/external/rapidjson/bin/encodings/utf8bom.json +0 -7
  172. package/external/rapidjson/bin/jsonchecker/fail1.json +0 -1
  173. package/external/rapidjson/bin/jsonchecker/fail10.json +0 -1
  174. package/external/rapidjson/bin/jsonchecker/fail11.json +0 -1
  175. package/external/rapidjson/bin/jsonchecker/fail12.json +0 -1
  176. package/external/rapidjson/bin/jsonchecker/fail13.json +0 -1
  177. package/external/rapidjson/bin/jsonchecker/fail14.json +0 -1
  178. package/external/rapidjson/bin/jsonchecker/fail15.json +0 -1
  179. package/external/rapidjson/bin/jsonchecker/fail16.json +0 -1
  180. package/external/rapidjson/bin/jsonchecker/fail17.json +0 -1
  181. package/external/rapidjson/bin/jsonchecker/fail18.json +0 -1
  182. package/external/rapidjson/bin/jsonchecker/fail19.json +0 -1
  183. package/external/rapidjson/bin/jsonchecker/fail2.json +0 -1
  184. package/external/rapidjson/bin/jsonchecker/fail20.json +0 -1
  185. package/external/rapidjson/bin/jsonchecker/fail21.json +0 -1
  186. package/external/rapidjson/bin/jsonchecker/fail22.json +0 -1
  187. package/external/rapidjson/bin/jsonchecker/fail23.json +0 -1
  188. package/external/rapidjson/bin/jsonchecker/fail24.json +0 -1
  189. package/external/rapidjson/bin/jsonchecker/fail25.json +0 -1
  190. package/external/rapidjson/bin/jsonchecker/fail26.json +0 -1
  191. package/external/rapidjson/bin/jsonchecker/fail27.json +0 -2
  192. package/external/rapidjson/bin/jsonchecker/fail28.json +0 -2
  193. package/external/rapidjson/bin/jsonchecker/fail29.json +0 -1
  194. package/external/rapidjson/bin/jsonchecker/fail3.json +0 -1
  195. package/external/rapidjson/bin/jsonchecker/fail30.json +0 -1
  196. package/external/rapidjson/bin/jsonchecker/fail31.json +0 -1
  197. package/external/rapidjson/bin/jsonchecker/fail32.json +0 -1
  198. package/external/rapidjson/bin/jsonchecker/fail33.json +0 -1
  199. package/external/rapidjson/bin/jsonchecker/fail4.json +0 -1
  200. package/external/rapidjson/bin/jsonchecker/fail5.json +0 -1
  201. package/external/rapidjson/bin/jsonchecker/fail6.json +0 -1
  202. package/external/rapidjson/bin/jsonchecker/fail7.json +0 -1
  203. package/external/rapidjson/bin/jsonchecker/fail8.json +0 -1
  204. package/external/rapidjson/bin/jsonchecker/fail9.json +0 -1
  205. package/external/rapidjson/bin/jsonchecker/pass1.json +0 -58
  206. package/external/rapidjson/bin/jsonchecker/pass2.json +0 -1
  207. package/external/rapidjson/bin/jsonchecker/pass3.json +0 -6
  208. package/external/rapidjson/bin/jsonchecker/readme.txt +0 -3
  209. package/external/rapidjson/bin/types/booleans.json +0 -102
  210. package/external/rapidjson/bin/types/floats.json +0 -102
  211. package/external/rapidjson/bin/types/guids.json +0 -102
  212. package/external/rapidjson/bin/types/integers.json +0 -102
  213. package/external/rapidjson/bin/types/mixed.json +0 -592
  214. package/external/rapidjson/bin/types/nulls.json +0 -102
  215. package/external/rapidjson/bin/types/paragraphs.json +0 -102
  216. package/external/rapidjson/bin/types/readme.txt +0 -1
  217. package/external/rapidjson/contrib/natvis/LICENSE +0 -45
  218. package/external/rapidjson/contrib/natvis/README.md +0 -7
  219. package/external/rapidjson/contrib/natvis/rapidjson.natvis +0 -38
  220. package/external/rapidjson/doc/CMakeLists.txt +0 -27
  221. package/external/rapidjson/doc/Doxyfile.in +0 -2369
  222. package/external/rapidjson/doc/Doxyfile.zh-cn.in +0 -2369
  223. package/external/rapidjson/doc/diagram/architecture.dot +0 -50
  224. package/external/rapidjson/doc/diagram/architecture.png +0 -0
  225. package/external/rapidjson/doc/diagram/insituparsing.dot +0 -65
  226. package/external/rapidjson/doc/diagram/insituparsing.png +0 -0
  227. package/external/rapidjson/doc/diagram/iterative-parser-states-diagram.dot +0 -62
  228. package/external/rapidjson/doc/diagram/iterative-parser-states-diagram.png +0 -0
  229. package/external/rapidjson/doc/diagram/move1.dot +0 -47
  230. package/external/rapidjson/doc/diagram/move1.png +0 -0
  231. package/external/rapidjson/doc/diagram/move2.dot +0 -62
  232. package/external/rapidjson/doc/diagram/move2.png +0 -0
  233. package/external/rapidjson/doc/diagram/move3.dot +0 -60
  234. package/external/rapidjson/doc/diagram/move3.png +0 -0
  235. package/external/rapidjson/doc/diagram/normalparsing.dot +0 -56
  236. package/external/rapidjson/doc/diagram/normalparsing.png +0 -0
  237. package/external/rapidjson/doc/diagram/simpledom.dot +0 -54
  238. package/external/rapidjson/doc/diagram/simpledom.png +0 -0
  239. package/external/rapidjson/doc/diagram/tutorial.dot +0 -58
  240. package/external/rapidjson/doc/diagram/tutorial.png +0 -0
  241. package/external/rapidjson/doc/diagram/utilityclass.dot +0 -73
  242. package/external/rapidjson/doc/diagram/utilityclass.png +0 -0
  243. package/external/rapidjson/doc/dom.md +0 -280
  244. package/external/rapidjson/doc/dom.zh-cn.md +0 -284
  245. package/external/rapidjson/doc/encoding.md +0 -146
  246. package/external/rapidjson/doc/encoding.zh-cn.md +0 -152
  247. package/external/rapidjson/doc/faq.md +0 -289
  248. package/external/rapidjson/doc/faq.zh-cn.md +0 -290
  249. package/external/rapidjson/doc/features.md +0 -104
  250. package/external/rapidjson/doc/features.zh-cn.md +0 -103
  251. package/external/rapidjson/doc/internals.md +0 -368
  252. package/external/rapidjson/doc/internals.zh-cn.md +0 -363
  253. package/external/rapidjson/doc/logo/rapidjson.png +0 -0
  254. package/external/rapidjson/doc/logo/rapidjson.svg +0 -119
  255. package/external/rapidjson/doc/misc/DoxygenLayout.xml +0 -194
  256. package/external/rapidjson/doc/misc/doxygenextra.css +0 -274
  257. package/external/rapidjson/doc/misc/footer.html +0 -11
  258. package/external/rapidjson/doc/misc/header.html +0 -24
  259. package/external/rapidjson/doc/npm.md +0 -31
  260. package/external/rapidjson/doc/performance.md +0 -26
  261. package/external/rapidjson/doc/performance.zh-cn.md +0 -26
  262. package/external/rapidjson/doc/pointer.md +0 -234
  263. package/external/rapidjson/doc/pointer.zh-cn.md +0 -234
  264. package/external/rapidjson/doc/sax.md +0 -509
  265. package/external/rapidjson/doc/sax.zh-cn.md +0 -487
  266. package/external/rapidjson/doc/schema.md +0 -505
  267. package/external/rapidjson/doc/schema.zh-cn.md +0 -237
  268. package/external/rapidjson/doc/stream.md +0 -429
  269. package/external/rapidjson/doc/stream.zh-cn.md +0 -429
  270. package/external/rapidjson/doc/tutorial.md +0 -536
  271. package/external/rapidjson/doc/tutorial.zh-cn.md +0 -535
  272. package/external/rapidjson/docker/debian/Dockerfile +0 -8
  273. package/external/rapidjson/example/CMakeLists.txt +0 -45
  274. package/external/rapidjson/example/archiver/archiver.cpp +0 -292
  275. package/external/rapidjson/example/archiver/archiver.h +0 -145
  276. package/external/rapidjson/example/archiver/archivertest.cpp +0 -287
  277. package/external/rapidjson/example/capitalize/capitalize.cpp +0 -67
  278. package/external/rapidjson/example/condense/condense.cpp +0 -32
  279. package/external/rapidjson/example/filterkey/filterkey.cpp +0 -135
  280. package/external/rapidjson/example/filterkeydom/filterkeydom.cpp +0 -170
  281. package/external/rapidjson/example/jsonx/jsonx.cpp +0 -207
  282. package/external/rapidjson/example/lookaheadparser/lookaheadparser.cpp +0 -350
  283. package/external/rapidjson/example/messagereader/messagereader.cpp +0 -105
  284. package/external/rapidjson/example/parsebyparts/parsebyparts.cpp +0 -176
  285. package/external/rapidjson/example/pretty/pretty.cpp +0 -30
  286. package/external/rapidjson/example/prettyauto/prettyauto.cpp +0 -56
  287. package/external/rapidjson/example/schemavalidator/schemavalidator.cpp +0 -78
  288. package/external/rapidjson/example/serialize/serialize.cpp +0 -173
  289. package/external/rapidjson/example/simpledom/simpledom.cpp +0 -29
  290. package/external/rapidjson/example/simplepullreader/simplepullreader.cpp +0 -53
  291. package/external/rapidjson/example/simplereader/simplereader.cpp +0 -42
  292. package/external/rapidjson/example/simplewriter/simplewriter.cpp +0 -36
  293. package/external/rapidjson/example/tutorial/tutorial.cpp +0 -151
  294. package/external/rapidjson/include/rapidjson/allocators.h +0 -284
  295. package/external/rapidjson/include/rapidjson/cursorstreamwrapper.h +0 -78
  296. package/external/rapidjson/include/rapidjson/document.h +0 -2646
  297. package/external/rapidjson/include/rapidjson/encodedstream.h +0 -299
  298. package/external/rapidjson/include/rapidjson/encodings.h +0 -716
  299. package/external/rapidjson/include/rapidjson/error/en.h +0 -74
  300. package/external/rapidjson/include/rapidjson/error/error.h +0 -161
  301. package/external/rapidjson/include/rapidjson/filereadstream.h +0 -99
  302. package/external/rapidjson/include/rapidjson/filewritestream.h +0 -104
  303. package/external/rapidjson/include/rapidjson/fwd.h +0 -151
  304. package/external/rapidjson/include/rapidjson/internal/biginteger.h +0 -290
  305. package/external/rapidjson/include/rapidjson/internal/diyfp.h +0 -271
  306. package/external/rapidjson/include/rapidjson/internal/dtoa.h +0 -245
  307. package/external/rapidjson/include/rapidjson/internal/ieee754.h +0 -78
  308. package/external/rapidjson/include/rapidjson/internal/itoa.h +0 -308
  309. package/external/rapidjson/include/rapidjson/internal/meta.h +0 -186
  310. package/external/rapidjson/include/rapidjson/internal/pow10.h +0 -55
  311. package/external/rapidjson/include/rapidjson/internal/regex.h +0 -732
  312. package/external/rapidjson/include/rapidjson/internal/stack.h +0 -231
  313. package/external/rapidjson/include/rapidjson/internal/strfunc.h +0 -69
  314. package/external/rapidjson/include/rapidjson/internal/strtod.h +0 -290
  315. package/external/rapidjson/include/rapidjson/internal/swap.h +0 -46
  316. package/external/rapidjson/include/rapidjson/istreamwrapper.h +0 -113
  317. package/external/rapidjson/include/rapidjson/memorybuffer.h +0 -70
  318. package/external/rapidjson/include/rapidjson/memorystream.h +0 -71
  319. package/external/rapidjson/include/rapidjson/msinttypes/inttypes.h +0 -316
  320. package/external/rapidjson/include/rapidjson/msinttypes/stdint.h +0 -300
  321. package/external/rapidjson/include/rapidjson/ostreamwrapper.h +0 -81
  322. package/external/rapidjson/include/rapidjson/pointer.h +0 -1357
  323. package/external/rapidjson/include/rapidjson/prettywriter.h +0 -277
  324. package/external/rapidjson/include/rapidjson/rapidjson.h +0 -654
  325. package/external/rapidjson/include/rapidjson/reader.h +0 -2230
  326. package/external/rapidjson/include/rapidjson/schema.h +0 -2494
  327. package/external/rapidjson/include/rapidjson/stream.h +0 -223
  328. package/external/rapidjson/include/rapidjson/stringbuffer.h +0 -121
  329. package/external/rapidjson/include/rapidjson/writer.h +0 -710
  330. package/external/rapidjson/include_dirs.js +0 -2
  331. package/external/rapidjson/library.json +0 -15
  332. package/external/rapidjson/license.txt +0 -57
  333. package/external/rapidjson/package.json +0 -24
  334. package/external/rapidjson/rapidjson.autopkg +0 -77
  335. package/external/rapidjson/readme.md +0 -160
  336. package/external/rapidjson/readme.zh-cn.md +0 -152
  337. package/external/rapidjson/test/CMakeLists.txt +0 -20
  338. package/external/rapidjson/test/perftest/CMakeLists.txt +0 -28
  339. package/external/rapidjson/test/perftest/misctest.cpp +0 -974
  340. package/external/rapidjson/test/perftest/perftest.cpp +0 -24
  341. package/external/rapidjson/test/perftest/perftest.h +0 -185
  342. package/external/rapidjson/test/perftest/platformtest.cpp +0 -166
  343. package/external/rapidjson/test/perftest/rapidjsontest.cpp +0 -472
  344. package/external/rapidjson/test/perftest/schematest.cpp +0 -223
  345. package/external/rapidjson/test/unittest/CMakeLists.txt +0 -92
  346. package/external/rapidjson/test/unittest/allocatorstest.cpp +0 -100
  347. package/external/rapidjson/test/unittest/bigintegertest.cpp +0 -138
  348. package/external/rapidjson/test/unittest/cursorstreamwrappertest.cpp +0 -115
  349. package/external/rapidjson/test/unittest/documenttest.cpp +0 -672
  350. package/external/rapidjson/test/unittest/dtoatest.cpp +0 -98
  351. package/external/rapidjson/test/unittest/encodedstreamtest.cpp +0 -313
  352. package/external/rapidjson/test/unittest/encodingstest.cpp +0 -451
  353. package/external/rapidjson/test/unittest/filestreamtest.cpp +0 -112
  354. package/external/rapidjson/test/unittest/fwdtest.cpp +0 -230
  355. package/external/rapidjson/test/unittest/istreamwrappertest.cpp +0 -181
  356. package/external/rapidjson/test/unittest/itoatest.cpp +0 -160
  357. package/external/rapidjson/test/unittest/jsoncheckertest.cpp +0 -143
  358. package/external/rapidjson/test/unittest/namespacetest.cpp +0 -70
  359. package/external/rapidjson/test/unittest/ostreamwrappertest.cpp +0 -92
  360. package/external/rapidjson/test/unittest/pointertest.cpp +0 -1529
  361. package/external/rapidjson/test/unittest/prettywritertest.cpp +0 -373
  362. package/external/rapidjson/test/unittest/readertest.cpp +0 -2190
  363. package/external/rapidjson/test/unittest/regextest.cpp +0 -638
  364. package/external/rapidjson/test/unittest/schematest.cpp +0 -2072
  365. package/external/rapidjson/test/unittest/simdtest.cpp +0 -219
  366. package/external/rapidjson/test/unittest/strfunctest.cpp +0 -30
  367. package/external/rapidjson/test/unittest/stringbuffertest.cpp +0 -192
  368. package/external/rapidjson/test/unittest/strtodtest.cpp +0 -132
  369. package/external/rapidjson/test/unittest/unittest.cpp +0 -51
  370. package/external/rapidjson/test/unittest/unittest.h +0 -140
  371. package/external/rapidjson/test/unittest/valuetest.cpp +0 -1851
  372. package/external/rapidjson/test/unittest/writertest.cpp +0 -598
  373. package/external/rapidjson/test/valgrind.supp +0 -17
  374. package/external/rapidjson/thirdparty/gtest/.travis.yml +0 -81
  375. package/external/rapidjson/thirdparty/gtest/BUILD.bazel +0 -175
  376. package/external/rapidjson/thirdparty/gtest/CMakeLists.txt +0 -33
  377. package/external/rapidjson/thirdparty/gtest/CONTRIBUTING.md +0 -160
  378. package/external/rapidjson/thirdparty/gtest/LICENSE +0 -28
  379. package/external/rapidjson/thirdparty/gtest/Makefile.am +0 -14
  380. package/external/rapidjson/thirdparty/gtest/README.md +0 -122
  381. package/external/rapidjson/thirdparty/gtest/WORKSPACE +0 -8
  382. package/external/rapidjson/thirdparty/gtest/appveyor.yml +0 -104
  383. package/external/rapidjson/thirdparty/gtest/ci/build-linux-autotools.sh +0 -44
  384. package/external/rapidjson/thirdparty/gtest/ci/build-linux-bazel.sh +0 -36
  385. package/external/rapidjson/thirdparty/gtest/ci/env-linux.sh +0 -41
  386. package/external/rapidjson/thirdparty/gtest/ci/env-osx.sh +0 -40
  387. package/external/rapidjson/thirdparty/gtest/ci/get-nprocessors.sh +0 -48
  388. package/external/rapidjson/thirdparty/gtest/ci/install-linux.sh +0 -49
  389. package/external/rapidjson/thirdparty/gtest/ci/install-osx.sh +0 -39
  390. package/external/rapidjson/thirdparty/gtest/ci/log-config.sh +0 -51
  391. package/external/rapidjson/thirdparty/gtest/ci/travis.sh +0 -44
  392. package/external/rapidjson/thirdparty/gtest/configure.ac +0 -16
  393. package/external/rapidjson/thirdparty/gtest/googlemock/CHANGES +0 -126
  394. package/external/rapidjson/thirdparty/gtest/googlemock/CMakeLists.txt +0 -242
  395. package/external/rapidjson/thirdparty/gtest/googlemock/CONTRIBUTORS +0 -40
  396. package/external/rapidjson/thirdparty/gtest/googlemock/LICENSE +0 -28
  397. package/external/rapidjson/thirdparty/gtest/googlemock/Makefile.am +0 -224
  398. package/external/rapidjson/thirdparty/gtest/googlemock/README.md +0 -344
  399. package/external/rapidjson/thirdparty/gtest/googlemock/build-aux/.keep +0 -0
  400. package/external/rapidjson/thirdparty/gtest/googlemock/cmake/gmock.pc.in +0 -9
  401. package/external/rapidjson/thirdparty/gtest/googlemock/cmake/gmock_main.pc.in +0 -9
  402. package/external/rapidjson/thirdparty/gtest/googlemock/configure.ac +0 -146
  403. package/external/rapidjson/thirdparty/gtest/googlemock/docs/CheatSheet.md +0 -564
  404. package/external/rapidjson/thirdparty/gtest/googlemock/docs/CookBook.md +0 -3660
  405. package/external/rapidjson/thirdparty/gtest/googlemock/docs/DesignDoc.md +0 -280
  406. package/external/rapidjson/thirdparty/gtest/googlemock/docs/Documentation.md +0 -15
  407. package/external/rapidjson/thirdparty/gtest/googlemock/docs/ForDummies.md +0 -447
  408. package/external/rapidjson/thirdparty/gtest/googlemock/docs/FrequentlyAskedQuestions.md +0 -627
  409. package/external/rapidjson/thirdparty/gtest/googlemock/docs/KnownIssues.md +0 -19
  410. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-actions.h +0 -1262
  411. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-cardinalities.h +0 -147
  412. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h +0 -2571
  413. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h.pump +0 -833
  414. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h +0 -1379
  415. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +0 -347
  416. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h +0 -2258
  417. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h.pump +0 -675
  418. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h +0 -458
  419. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h.pump +0 -178
  420. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-matchers.h +0 -5255
  421. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-actions.h +0 -246
  422. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-matchers.h +0 -91
  423. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-spec-builders.h +0 -1918
  424. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock.h +0 -95
  425. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +0 -8
  426. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +0 -10
  427. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-matchers.h +0 -38
  428. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-port.h +0 -46
  429. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h +0 -286
  430. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump +0 -136
  431. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-internal-utils.h +0 -574
  432. package/external/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-port.h +0 -87
  433. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.sln +0 -32
  434. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.vcproj +0 -191
  435. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_config.vsprops +0 -15
  436. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_main.vcproj +0 -187
  437. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_test.vcproj +0 -201
  438. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.sln +0 -46
  439. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.vcxproj +0 -145
  440. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_config.props +0 -19
  441. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_main.vcxproj +0 -151
  442. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_test.vcxproj +0 -176
  443. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.sln +0 -46
  444. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.vcxproj +0 -145
  445. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_config.props +0 -19
  446. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_main.vcxproj +0 -151
  447. package/external/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_test.vcxproj +0 -176
  448. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/fuse_gmock_files.py +0 -240
  449. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/LICENSE +0 -203
  450. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README +0 -34
  451. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README.cppclean +0 -115
  452. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/__init__.py +0 -0
  453. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/ast.py +0 -1733
  454. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class.py +0 -227
  455. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class_test.py +0 -448
  456. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/keywords.py +0 -59
  457. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/tokenize.py +0 -287
  458. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/utils.py +0 -41
  459. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/generator/gmock_gen.py +0 -31
  460. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/gmock-config.in +0 -303
  461. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/gmock_doctor.py +0 -640
  462. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/upload.py +0 -1387
  463. package/external/rapidjson/thirdparty/gtest/googlemock/scripts/upload_gmock.py +0 -78
  464. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock-all.cc +0 -47
  465. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock-cardinalities.cc +0 -156
  466. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock-internal-utils.cc +0 -204
  467. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock-matchers.cc +0 -573
  468. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock-spec-builders.cc +0 -883
  469. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock.cc +0 -205
  470. package/external/rapidjson/thirdparty/gtest/googlemock/src/gmock_main.cc +0 -54
  471. package/external/rapidjson/thirdparty/gtest/googlemock/test/BUILD.bazel +0 -123
  472. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-actions_test.cc +0 -1575
  473. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-cardinalities_test.cc +0 -428
  474. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-actions_test.cc +0 -1230
  475. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-function-mockers_test.cc +0 -647
  476. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-internal-utils_test.cc +0 -129
  477. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-matchers_test.cc +0 -1341
  478. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-internal-utils_test.cc +0 -718
  479. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-matchers_test.cc +0 -6767
  480. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-more-actions_test.cc +0 -710
  481. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-nice-strict_test.cc +0 -511
  482. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-port_test.cc +0 -43
  483. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock-spec-builders_test.cc +0 -2771
  484. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_all_test.cc +0 -51
  485. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_ex_test.cc +0 -81
  486. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test.py +0 -108
  487. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test_.cc +0 -100
  488. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_link2_test.cc +0 -40
  489. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.cc +0 -40
  490. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.h +0 -691
  491. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test.py +0 -183
  492. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_.cc +0 -310
  493. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_golden.txt +0 -317
  494. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_stress_test.cc +0 -323
  495. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_test.cc +0 -262
  496. package/external/rapidjson/thirdparty/gtest/googlemock/test/gmock_test_utils.py +0 -110
  497. package/external/rapidjson/thirdparty/gtest/googletest/CHANGES +0 -157
  498. package/external/rapidjson/thirdparty/gtest/googletest/CMakeLists.txt +0 -312
  499. package/external/rapidjson/thirdparty/gtest/googletest/CONTRIBUTORS +0 -37
  500. package/external/rapidjson/thirdparty/gtest/googletest/LICENSE +0 -28
  501. package/external/rapidjson/thirdparty/gtest/googletest/Makefile.am +0 -339
  502. package/external/rapidjson/thirdparty/gtest/googletest/README.md +0 -341
  503. package/external/rapidjson/thirdparty/gtest/googletest/cmake/gtest.pc.in +0 -9
  504. package/external/rapidjson/thirdparty/gtest/googletest/cmake/gtest_main.pc.in +0 -10
  505. package/external/rapidjson/thirdparty/gtest/googletest/cmake/internal_utils.cmake +0 -280
  506. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest.cbproj +0 -138
  507. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest.groupproj +0 -54
  508. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest_all.cc +0 -38
  509. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest_link.cc +0 -40
  510. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest_main.cbproj +0 -82
  511. package/external/rapidjson/thirdparty/gtest/googletest/codegear/gtest_unittest.cbproj +0 -88
  512. package/external/rapidjson/thirdparty/gtest/googletest/configure.ac +0 -68
  513. package/external/rapidjson/thirdparty/gtest/googletest/docs/Pkgconfig.md +0 -146
  514. package/external/rapidjson/thirdparty/gtest/googletest/docs/PumpManual.md +0 -177
  515. package/external/rapidjson/thirdparty/gtest/googletest/docs/XcodeGuide.md +0 -93
  516. package/external/rapidjson/thirdparty/gtest/googletest/docs/advanced.md +0 -2416
  517. package/external/rapidjson/thirdparty/gtest/googletest/docs/faq.md +0 -1092
  518. package/external/rapidjson/thirdparty/gtest/googletest/docs/primer.md +0 -536
  519. package/external/rapidjson/thirdparty/gtest/googletest/docs/samples.md +0 -14
  520. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-death-test.h +0 -342
  521. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-message.h +0 -249
  522. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h +0 -1438
  523. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h.pump +0 -501
  524. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-printers.h +0 -1082
  525. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-spi.h +0 -231
  526. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-test-part.h +0 -179
  527. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-typed-test.h +0 -264
  528. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest.h +0 -2332
  529. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_pred_impl.h +0 -357
  530. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_prod.h +0 -61
  531. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-port.h +0 -70
  532. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-printers.h +0 -42
  533. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest.h +0 -45
  534. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-death-test-internal.h +0 -275
  535. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-filepath.h +0 -205
  536. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-internal.h +0 -1277
  537. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-linked_ptr.h +0 -243
  538. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h +0 -5139
  539. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +0 -279
  540. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util.h +0 -723
  541. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port-arch.h +0 -100
  542. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port.h +0 -2687
  543. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-string.h +0 -167
  544. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h +0 -1020
  545. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h.pump +0 -347
  546. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h +0 -3347
  547. package/external/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h.pump +0 -313
  548. package/external/rapidjson/thirdparty/gtest/googletest/m4/acx_pthread.m4 +0 -363
  549. package/external/rapidjson/thirdparty/gtest/googletest/m4/gtest.m4 +0 -74
  550. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.sln +0 -55
  551. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.vcxproj +0 -149
  552. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.vcxproj.filters +0 -18
  553. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.sln +0 -55
  554. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.vcxproj +0 -149
  555. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.vcxproj.filters +0 -18
  556. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main-md.vcxproj +0 -154
  557. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main-md.vcxproj.filters +0 -18
  558. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main.vcxproj +0 -162
  559. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main.vcxproj.filters +0 -18
  560. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test-md.vcxproj +0 -199
  561. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test-md.vcxproj.filters +0 -26
  562. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test.vcxproj +0 -191
  563. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test.vcxproj.filters +0 -26
  564. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest-md.vcxproj +0 -188
  565. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest-md.vcxproj.filters +0 -18
  566. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest.vcxproj +0 -180
  567. package/external/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest.vcxproj.filters +0 -18
  568. package/external/rapidjson/thirdparty/gtest/googletest/samples/prime_tables.h +0 -127
  569. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample1.cc +0 -68
  570. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample1.h +0 -43
  571. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample10_unittest.cc +0 -140
  572. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample1_unittest.cc +0 -154
  573. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample2.cc +0 -56
  574. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample2.h +0 -85
  575. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample2_unittest.cc +0 -110
  576. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample3-inl.h +0 -172
  577. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample3_unittest.cc +0 -152
  578. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample4.cc +0 -46
  579. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample4.h +0 -53
  580. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample4_unittest.cc +0 -49
  581. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample5_unittest.cc +0 -199
  582. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample6_unittest.cc +0 -225
  583. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample7_unittest.cc +0 -118
  584. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample8_unittest.cc +0 -174
  585. package/external/rapidjson/thirdparty/gtest/googletest/samples/sample9_unittest.cc +0 -157
  586. package/external/rapidjson/thirdparty/gtest/googletest/scripts/common.py +0 -83
  587. package/external/rapidjson/thirdparty/gtest/googletest/scripts/fuse_gtest_files.py +0 -253
  588. package/external/rapidjson/thirdparty/gtest/googletest/scripts/gen_gtest_pred_impl.py +0 -730
  589. package/external/rapidjson/thirdparty/gtest/googletest/scripts/gtest-config.in +0 -274
  590. package/external/rapidjson/thirdparty/gtest/googletest/scripts/pump.py +0 -855
  591. package/external/rapidjson/thirdparty/gtest/googletest/scripts/release_docs.py +0 -158
  592. package/external/rapidjson/thirdparty/gtest/googletest/scripts/upload.py +0 -1387
  593. package/external/rapidjson/thirdparty/gtest/googletest/scripts/upload_gtest.py +0 -78
  594. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-all.cc +0 -48
  595. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-death-test.cc +0 -1536
  596. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-filepath.cc +0 -385
  597. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-internal-inl.h +0 -1175
  598. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-port.cc +0 -1277
  599. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-printers.cc +0 -458
  600. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-test-part.cc +0 -102
  601. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest-typed-test.cc +0 -119
  602. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest.cc +0 -5846
  603. package/external/rapidjson/thirdparty/gtest/googletest/src/gtest_main.cc +0 -38
  604. package/external/rapidjson/thirdparty/gtest/googletest/test/BUILD.bazel +0 -396
  605. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_ex_test.cc +0 -93
  606. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_test.cc +0 -1424
  607. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-filepath_test.cc +0 -652
  608. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-linked_ptr_test.cc +0 -154
  609. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-listener_test.cc +0 -311
  610. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-message_test.cc +0 -159
  611. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-options_test.cc +0 -213
  612. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test2_test.cc +0 -61
  613. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.cc +0 -1110
  614. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.h +0 -53
  615. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-port_test.cc +0 -1303
  616. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-printers_test.cc +0 -1737
  617. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-test-part_test.cc +0 -208
  618. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-tuple_test.cc +0 -320
  619. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test2_test.cc +0 -45
  620. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.cc +0 -380
  621. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.h +0 -66
  622. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest-unittest-api_test.cc +0 -341
  623. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_all_test.cc +0 -47
  624. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_assert_by_exception_test.cc +0 -119
  625. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest.py +0 -210
  626. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest_.cc +0 -87
  627. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test.py +0 -235
  628. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test_.cc +0 -311
  629. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test.py +0 -129
  630. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test_.cc +0 -63
  631. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test.py +0 -119
  632. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test_.cc +0 -124
  633. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_environment_test.cc +0 -189
  634. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest.py +0 -638
  635. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest_.cc +0 -138
  636. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test.py +0 -172
  637. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test_.cc +0 -46
  638. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_json_outfiles_test.py +0 -162
  639. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_json_output_unittest.py +0 -611
  640. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_json_test_utils.py +0 -60
  641. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest.py +0 -207
  642. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest_.cc +0 -157
  643. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_main_unittest.cc +0 -45
  644. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_no_test_unittest.cc +0 -56
  645. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test.py +0 -344
  646. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_.cc +0 -1067
  647. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_golden_lin.txt +0 -781
  648. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_pred_impl_unittest.cc +0 -2427
  649. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_premature_exit_test.cc +0 -127
  650. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_prod_test.cc +0 -57
  651. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_repeat_test.cc +0 -236
  652. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test.py +0 -325
  653. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test_.cc +0 -103
  654. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_sole_header_test.cc +0 -57
  655. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_stress_test.cc +0 -250
  656. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_test_utils.py +0 -318
  657. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_testbridge_test.py +0 -65
  658. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_testbridge_test_.cc +0 -44
  659. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_ex_test.cc +0 -92
  660. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test.py +0 -171
  661. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test_.cc +0 -72
  662. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test.py +0 -69
  663. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test_.cc +0 -43
  664. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_unittest.cc +0 -7797
  665. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile1_test_.cc +0 -48
  666. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile2_test_.cc +0 -48
  667. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfiles_test.py +0 -140
  668. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest.py +0 -378
  669. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest_.cc +0 -179
  670. package/external/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_test_utils.py +0 -196
  671. package/external/rapidjson/thirdparty/gtest/googletest/test/production.cc +0 -36
  672. package/external/rapidjson/thirdparty/gtest/googletest/test/production.h +0 -55
  673. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/DebugProject.xcconfig +0 -30
  674. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/FrameworkTarget.xcconfig +0 -17
  675. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/General.xcconfig +0 -41
  676. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/ReleaseProject.xcconfig +0 -32
  677. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/StaticLibraryTarget.xcconfig +0 -18
  678. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Config/TestTarget.xcconfig +0 -8
  679. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Resources/Info.plist +0 -30
  680. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/Info.plist +0 -28
  681. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj +0 -457
  682. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/runtests.sh +0 -62
  683. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.cc +0 -63
  684. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.h +0 -59
  685. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget_test.cc +0 -68
  686. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/runtests.sh +0 -65
  687. package/external/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/versiongenerate.py +0 -100
  688. package/external/rapidjson/thirdparty/gtest/googletest/xcode/gtest.xcodeproj/project.pbxproj +0 -1182
  689. package/external/rapidjson/travis-doxygen.sh +0 -121
  690. package/include/.clang-format +0 -76
  691. package/include/eosio/abi.hpp +0 -286
  692. package/include/eosio/asset.hpp +0 -458
  693. package/include/eosio/bytes.hpp +0 -27
  694. package/include/eosio/chain_conversions.hpp +0 -450
  695. package/include/eosio/chain_types.hpp +0 -14
  696. package/include/eosio/check.hpp +0 -178
  697. package/include/eosio/convert.hpp +0 -95
  698. package/include/eosio/crypto.hpp +0 -147
  699. package/include/eosio/eosio_outcome.hpp +0 -41
  700. package/include/eosio/fixed_bytes.hpp +0 -246
  701. package/include/eosio/float.hpp +0 -35
  702. package/include/eosio/for_each_field.hpp +0 -48
  703. package/include/eosio/fpconv.c +0 -336
  704. package/include/eosio/fpconv.h +0 -41
  705. package/include/eosio/fpconv.license +0 -23
  706. package/include/eosio/from_bin.hpp +0 -272
  707. package/include/eosio/from_json.hpp +0 -737
  708. package/include/eosio/from_string.hpp +0 -28
  709. package/include/eosio/map_macro.h +0 -64
  710. package/include/eosio/murmur.hpp +0 -55
  711. package/include/eosio/name.hpp +0 -174
  712. package/include/eosio/opaque.hpp +0 -108
  713. package/include/eosio/operators.hpp +0 -71
  714. package/include/eosio/powers.h +0 -76
  715. package/include/eosio/reflection.hpp +0 -61
  716. package/include/eosio/ship_protocol.hpp +0 -850
  717. package/include/eosio/stream.hpp +0 -231
  718. package/include/eosio/symbol.hpp +0 -300
  719. package/include/eosio/time.hpp +0 -264
  720. package/include/eosio/to_bin.hpp +0 -189
  721. package/include/eosio/to_json.hpp +0 -279
  722. package/include/eosio/to_key.hpp +0 -298
  723. package/include/eosio/types.hpp +0 -97
  724. package/include/eosio/varint.hpp +0 -452
  725. package/include/outcome-basic.hpp +0 -6836
  726. package/src/abi.cpp +0 -297
  727. package/src/abieos.cpp +0 -263
  728. package/src/abieos.h +0 -76
  729. package/src/abieos.hpp +0 -1010
  730. package/src/abieos_exception.hpp +0 -89
  731. package/src/abieos_numeric.hpp +0 -94
  732. package/src/abieos_ripemd160.hpp +0 -417
  733. package/src/crypto.cpp +0 -215
  734. package/src/key_test.cpp +0 -218
  735. package/src/main.cpp +0 -242
  736. package/src/reflect_test.cpp +0 -28
  737. package/src/template_test.cpp +0 -240
  738. package/src/test.cpp +0 -940
  739. package/tools/CMakeLists.txt +0 -9
  740. package/tools/name.cpp +0 -86
@@ -1,1745 +0,0 @@
1
- #ifndef ISO_WEEK_H
2
- #define ISO_WEEK_H
3
-
4
- // The MIT License (MIT)
5
- //
6
- // Copyright (c) 2015, 2016, 2017 Howard Hinnant
7
- //
8
- // Permission is hereby granted, free of charge, to any person obtaining a copy
9
- // of this software and associated documentation files (the "Software"), to deal
10
- // in the Software without restriction, including without limitation the rights
11
- // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
- // copies of the Software, and to permit persons to whom the Software is
13
- // furnished to do so, subject to the following conditions:
14
- //
15
- // The above copyright notice and this permission notice shall be included in all
16
- // copies or substantial portions of the Software.
17
- //
18
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
- // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
- // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
- // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
- // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
- // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
- // SOFTWARE.
25
-
26
- #include "date.h"
27
-
28
- #include <climits>
29
-
30
- namespace iso_week
31
- {
32
-
33
- // y/wn/wd
34
- // wn/wd/y
35
- // wd/wn/y
36
-
37
- using days = date::days;
38
- using weeks = date::weeks;
39
- using years = date::years;
40
-
41
- // time_point
42
-
43
- using sys_days = date::sys_days;
44
- using local_days = date::local_days;
45
-
46
- // types
47
-
48
- struct last_week
49
- {
50
- explicit last_week() = default;
51
- };
52
-
53
- class weekday;
54
- class weeknum;
55
- class year;
56
-
57
- class year_weeknum;
58
- class year_lastweek;
59
- class weeknum_weekday;
60
- class lastweek_weekday;
61
-
62
- class year_weeknum_weekday;
63
- class year_lastweek_weekday;
64
-
65
- // date composition operators
66
-
67
- CONSTCD11 year_weeknum operator/(const year& y, const weeknum& wn) NOEXCEPT;
68
- CONSTCD11 year_weeknum operator/(const year& y, int wn) NOEXCEPT;
69
-
70
- CONSTCD11 year_lastweek operator/(const year& y, last_week wn) NOEXCEPT;
71
-
72
- CONSTCD11 weeknum_weekday operator/(const weeknum& wn, const weekday& wd) NOEXCEPT;
73
- CONSTCD11 weeknum_weekday operator/(const weeknum& wn, int wd) NOEXCEPT;
74
- CONSTCD11 weeknum_weekday operator/(const weekday& wd, const weeknum& wn) NOEXCEPT;
75
- CONSTCD11 weeknum_weekday operator/(const weekday& wd, int wn) NOEXCEPT;
76
-
77
- CONSTCD11 lastweek_weekday operator/(const last_week& wn, const weekday& wd) NOEXCEPT;
78
- CONSTCD11 lastweek_weekday operator/(const last_week& wn, int wd) NOEXCEPT;
79
- CONSTCD11 lastweek_weekday operator/(const weekday& wd, const last_week& wn) NOEXCEPT;
80
-
81
- CONSTCD11 year_weeknum_weekday operator/(const year_weeknum& ywn, const weekday& wd) NOEXCEPT;
82
- CONSTCD11 year_weeknum_weekday operator/(const year_weeknum& ywn, int wd) NOEXCEPT;
83
- CONSTCD11 year_weeknum_weekday operator/(const weeknum_weekday& wnwd, const year& y) NOEXCEPT;
84
- CONSTCD11 year_weeknum_weekday operator/(const weeknum_weekday& wnwd, int y) NOEXCEPT;
85
-
86
- CONSTCD11 year_lastweek_weekday operator/(const year_lastweek& ylw, const weekday& wd) NOEXCEPT;
87
- CONSTCD11 year_lastweek_weekday operator/(const year_lastweek& ylw, int wd) NOEXCEPT;
88
-
89
- CONSTCD11 year_lastweek_weekday operator/(const lastweek_weekday& lwwd, const year& y) NOEXCEPT;
90
- CONSTCD11 year_lastweek_weekday operator/(const lastweek_weekday& lwwd, int y) NOEXCEPT;
91
-
92
- // weekday
93
-
94
- class weekday
95
- {
96
- unsigned char wd_;
97
- public:
98
- explicit CONSTCD11 weekday(unsigned wd) NOEXCEPT;
99
- CONSTCD11 weekday(date::weekday wd) NOEXCEPT;
100
- explicit weekday(int) = delete;
101
- CONSTCD11 weekday(const sys_days& dp) NOEXCEPT;
102
- CONSTCD11 explicit weekday(const local_days& dp) NOEXCEPT;
103
-
104
- weekday& operator++() NOEXCEPT;
105
- weekday operator++(int) NOEXCEPT;
106
- weekday& operator--() NOEXCEPT;
107
- weekday operator--(int) NOEXCEPT;
108
-
109
- weekday& operator+=(const days& d) NOEXCEPT;
110
- weekday& operator-=(const days& d) NOEXCEPT;
111
-
112
- CONSTCD11 explicit operator unsigned() const NOEXCEPT;
113
- CONSTCD11 operator date::weekday() const NOEXCEPT;
114
- CONSTCD11 bool ok() const NOEXCEPT;
115
-
116
- private:
117
- static CONSTCD11 unsigned char weekday_from_days(int z) NOEXCEPT;
118
- static CONSTCD11 unsigned char to_iso_encoding(unsigned char) NOEXCEPT;
119
- static CONSTCD11 unsigned from_iso_encoding(unsigned) NOEXCEPT;
120
- };
121
-
122
- CONSTCD11 bool operator==(const weekday& x, const weekday& y) NOEXCEPT;
123
- CONSTCD11 bool operator!=(const weekday& x, const weekday& y) NOEXCEPT;
124
-
125
- CONSTCD14 weekday operator+(const weekday& x, const days& y) NOEXCEPT;
126
- CONSTCD14 weekday operator+(const days& x, const weekday& y) NOEXCEPT;
127
- CONSTCD14 weekday operator-(const weekday& x, const days& y) NOEXCEPT;
128
- CONSTCD14 days operator-(const weekday& x, const weekday& y) NOEXCEPT;
129
-
130
- template<class CharT, class Traits>
131
- std::basic_ostream<CharT, Traits>&
132
- operator<<(std::basic_ostream<CharT, Traits>& os, const weekday& wd);
133
-
134
- // year
135
-
136
- class year
137
- {
138
- short y_;
139
-
140
- public:
141
- explicit CONSTCD11 year(int y) NOEXCEPT;
142
-
143
- year& operator++() NOEXCEPT;
144
- year operator++(int) NOEXCEPT;
145
- year& operator--() NOEXCEPT;
146
- year operator--(int) NOEXCEPT;
147
-
148
- year& operator+=(const years& y) NOEXCEPT;
149
- year& operator-=(const years& y) NOEXCEPT;
150
-
151
- CONSTCD11 explicit operator int() const NOEXCEPT;
152
- CONSTCD11 bool ok() const NOEXCEPT;
153
-
154
- static CONSTCD11 year min() NOEXCEPT;
155
- static CONSTCD11 year max() NOEXCEPT;
156
- };
157
-
158
- CONSTCD11 bool operator==(const year& x, const year& y) NOEXCEPT;
159
- CONSTCD11 bool operator!=(const year& x, const year& y) NOEXCEPT;
160
- CONSTCD11 bool operator< (const year& x, const year& y) NOEXCEPT;
161
- CONSTCD11 bool operator> (const year& x, const year& y) NOEXCEPT;
162
- CONSTCD11 bool operator<=(const year& x, const year& y) NOEXCEPT;
163
- CONSTCD11 bool operator>=(const year& x, const year& y) NOEXCEPT;
164
-
165
- CONSTCD11 year operator+(const year& x, const years& y) NOEXCEPT;
166
- CONSTCD11 year operator+(const years& x, const year& y) NOEXCEPT;
167
- CONSTCD11 year operator-(const year& x, const years& y) NOEXCEPT;
168
- CONSTCD11 years operator-(const year& x, const year& y) NOEXCEPT;
169
-
170
- template<class CharT, class Traits>
171
- std::basic_ostream<CharT, Traits>&
172
- operator<<(std::basic_ostream<CharT, Traits>& os, const year& y);
173
-
174
- // weeknum
175
-
176
- class weeknum
177
- {
178
- unsigned char wn_;
179
-
180
- public:
181
- explicit CONSTCD11 weeknum(unsigned wn) NOEXCEPT;
182
-
183
- weeknum& operator++() NOEXCEPT;
184
- weeknum operator++(int) NOEXCEPT;
185
- weeknum& operator--() NOEXCEPT;
186
- weeknum operator--(int) NOEXCEPT;
187
-
188
- weeknum& operator+=(const weeks& y) NOEXCEPT;
189
- weeknum& operator-=(const weeks& y) NOEXCEPT;
190
-
191
- CONSTCD11 explicit operator unsigned() const NOEXCEPT;
192
- CONSTCD11 bool ok() const NOEXCEPT;
193
- };
194
-
195
- CONSTCD11 bool operator==(const weeknum& x, const weeknum& y) NOEXCEPT;
196
- CONSTCD11 bool operator!=(const weeknum& x, const weeknum& y) NOEXCEPT;
197
- CONSTCD11 bool operator< (const weeknum& x, const weeknum& y) NOEXCEPT;
198
- CONSTCD11 bool operator> (const weeknum& x, const weeknum& y) NOEXCEPT;
199
- CONSTCD11 bool operator<=(const weeknum& x, const weeknum& y) NOEXCEPT;
200
- CONSTCD11 bool operator>=(const weeknum& x, const weeknum& y) NOEXCEPT;
201
-
202
- CONSTCD11 weeknum operator+(const weeknum& x, const weeks& y) NOEXCEPT;
203
- CONSTCD11 weeknum operator+(const weeks& x, const weeknum& y) NOEXCEPT;
204
- CONSTCD11 weeknum operator-(const weeknum& x, const weeks& y) NOEXCEPT;
205
- CONSTCD11 weeks operator-(const weeknum& x, const weeknum& y) NOEXCEPT;
206
-
207
- template<class CharT, class Traits>
208
- std::basic_ostream<CharT, Traits>&
209
- operator<<(std::basic_ostream<CharT, Traits>& os, const weeknum& wn);
210
-
211
- // year_weeknum
212
-
213
- class year_weeknum
214
- {
215
- iso_week::year y_;
216
- iso_week::weeknum wn_;
217
-
218
- public:
219
- CONSTCD11 year_weeknum(const iso_week::year& y, const iso_week::weeknum& wn) NOEXCEPT;
220
-
221
- CONSTCD11 iso_week::year year() const NOEXCEPT;
222
- CONSTCD11 iso_week::weeknum weeknum() const NOEXCEPT;
223
-
224
- year_weeknum& operator+=(const years& dy) NOEXCEPT;
225
- year_weeknum& operator-=(const years& dy) NOEXCEPT;
226
-
227
- CONSTCD11 bool ok() const NOEXCEPT;
228
- };
229
-
230
- CONSTCD11 bool operator==(const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
231
- CONSTCD11 bool operator!=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
232
- CONSTCD11 bool operator< (const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
233
- CONSTCD11 bool operator> (const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
234
- CONSTCD11 bool operator<=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
235
- CONSTCD11 bool operator>=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT;
236
-
237
- CONSTCD11 year_weeknum operator+(const year_weeknum& ym, const years& dy) NOEXCEPT;
238
- CONSTCD11 year_weeknum operator+(const years& dy, const year_weeknum& ym) NOEXCEPT;
239
- CONSTCD11 year_weeknum operator-(const year_weeknum& ym, const years& dy) NOEXCEPT;
240
-
241
- template<class CharT, class Traits>
242
- std::basic_ostream<CharT, Traits>&
243
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_weeknum& ym);
244
-
245
- // year_lastweek
246
-
247
- class year_lastweek
248
- {
249
- iso_week::year y_;
250
-
251
- public:
252
- CONSTCD11 explicit year_lastweek(const iso_week::year& y) NOEXCEPT;
253
-
254
- CONSTCD11 iso_week::year year() const NOEXCEPT;
255
- CONSTCD14 iso_week::weeknum weeknum() const NOEXCEPT;
256
-
257
- year_lastweek& operator+=(const years& dy) NOEXCEPT;
258
- year_lastweek& operator-=(const years& dy) NOEXCEPT;
259
-
260
- CONSTCD11 bool ok() const NOEXCEPT;
261
- };
262
-
263
- CONSTCD11 bool operator==(const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
264
- CONSTCD11 bool operator!=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
265
- CONSTCD11 bool operator< (const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
266
- CONSTCD11 bool operator> (const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
267
- CONSTCD11 bool operator<=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
268
- CONSTCD11 bool operator>=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT;
269
-
270
- CONSTCD11 year_lastweek operator+(const year_lastweek& ym, const years& dy) NOEXCEPT;
271
- CONSTCD11 year_lastweek operator+(const years& dy, const year_lastweek& ym) NOEXCEPT;
272
- CONSTCD11 year_lastweek operator-(const year_lastweek& ym, const years& dy) NOEXCEPT;
273
-
274
- template<class CharT, class Traits>
275
- std::basic_ostream<CharT, Traits>&
276
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_lastweek& ym);
277
-
278
- // weeknum_weekday
279
-
280
- class weeknum_weekday
281
- {
282
- iso_week::weeknum wn_;
283
- iso_week::weekday wd_;
284
-
285
- public:
286
- CONSTCD11 weeknum_weekday(const iso_week::weeknum& wn,
287
- const iso_week::weekday& wd) NOEXCEPT;
288
-
289
- CONSTCD11 iso_week::weeknum weeknum() const NOEXCEPT;
290
- CONSTCD11 iso_week::weekday weekday() const NOEXCEPT;
291
-
292
- CONSTCD14 bool ok() const NOEXCEPT;
293
- };
294
-
295
- CONSTCD11 bool operator==(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
296
- CONSTCD11 bool operator!=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
297
- CONSTCD11 bool operator< (const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
298
- CONSTCD11 bool operator> (const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
299
- CONSTCD11 bool operator<=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
300
- CONSTCD11 bool operator>=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT;
301
-
302
- template<class CharT, class Traits>
303
- std::basic_ostream<CharT, Traits>&
304
- operator<<(std::basic_ostream<CharT, Traits>& os, const weeknum_weekday& md);
305
-
306
- // lastweek_weekday
307
-
308
- class lastweek_weekday
309
- {
310
- iso_week::weekday wd_;
311
-
312
- public:
313
- CONSTCD11 explicit lastweek_weekday(const iso_week::weekday& wd) NOEXCEPT;
314
-
315
- CONSTCD11 iso_week::weekday weekday() const NOEXCEPT;
316
-
317
- CONSTCD14 bool ok() const NOEXCEPT;
318
- };
319
-
320
- CONSTCD11 bool operator==(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
321
- CONSTCD11 bool operator!=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
322
- CONSTCD11 bool operator< (const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
323
- CONSTCD11 bool operator> (const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
324
- CONSTCD11 bool operator<=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
325
- CONSTCD11 bool operator>=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT;
326
-
327
- template<class CharT, class Traits>
328
- std::basic_ostream<CharT, Traits>&
329
- operator<<(std::basic_ostream<CharT, Traits>& os, const lastweek_weekday& md);
330
-
331
- // year_lastweek_weekday
332
-
333
- class year_lastweek_weekday
334
- {
335
- iso_week::year y_;
336
- iso_week::weekday wd_;
337
-
338
- public:
339
- CONSTCD11 year_lastweek_weekday(const iso_week::year& y,
340
- const iso_week::weekday& wd) NOEXCEPT;
341
-
342
- year_lastweek_weekday& operator+=(const years& y) NOEXCEPT;
343
- year_lastweek_weekday& operator-=(const years& y) NOEXCEPT;
344
-
345
- CONSTCD11 iso_week::year year() const NOEXCEPT;
346
- CONSTCD14 iso_week::weeknum weeknum() const NOEXCEPT;
347
- CONSTCD11 iso_week::weekday weekday() const NOEXCEPT;
348
-
349
- CONSTCD14 operator sys_days() const NOEXCEPT;
350
- CONSTCD14 explicit operator local_days() const NOEXCEPT;
351
- CONSTCD11 bool ok() const NOEXCEPT;
352
- };
353
-
354
- CONSTCD11 bool operator==(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
355
- CONSTCD11 bool operator!=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
356
- CONSTCD11 bool operator< (const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
357
- CONSTCD11 bool operator> (const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
358
- CONSTCD11 bool operator<=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
359
- CONSTCD11 bool operator>=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT;
360
-
361
- CONSTCD11 year_lastweek_weekday operator+(const year_lastweek_weekday& ywnwd, const years& y) NOEXCEPT;
362
- CONSTCD11 year_lastweek_weekday operator+(const years& y, const year_lastweek_weekday& ywnwd) NOEXCEPT;
363
- CONSTCD11 year_lastweek_weekday operator-(const year_lastweek_weekday& ywnwd, const years& y) NOEXCEPT;
364
-
365
- template<class CharT, class Traits>
366
- std::basic_ostream<CharT, Traits>&
367
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_lastweek_weekday& ywnwd);
368
-
369
- // class year_weeknum_weekday
370
-
371
- class year_weeknum_weekday
372
- {
373
- iso_week::year y_;
374
- iso_week::weeknum wn_;
375
- iso_week::weekday wd_;
376
-
377
- public:
378
- CONSTCD11 year_weeknum_weekday(const iso_week::year& y, const iso_week::weeknum& wn,
379
- const iso_week::weekday& wd) NOEXCEPT;
380
- CONSTCD14 year_weeknum_weekday(const year_lastweek_weekday& ylwwd) NOEXCEPT;
381
- CONSTCD14 year_weeknum_weekday(const sys_days& dp) NOEXCEPT;
382
- CONSTCD14 explicit year_weeknum_weekday(const local_days& dp) NOEXCEPT;
383
-
384
- year_weeknum_weekday& operator+=(const years& y) NOEXCEPT;
385
- year_weeknum_weekday& operator-=(const years& y) NOEXCEPT;
386
-
387
- CONSTCD11 iso_week::year year() const NOEXCEPT;
388
- CONSTCD11 iso_week::weeknum weeknum() const NOEXCEPT;
389
- CONSTCD11 iso_week::weekday weekday() const NOEXCEPT;
390
-
391
- CONSTCD14 operator sys_days() const NOEXCEPT;
392
- CONSTCD14 explicit operator local_days() const NOEXCEPT;
393
- CONSTCD14 bool ok() const NOEXCEPT;
394
-
395
- private:
396
- static CONSTCD14 year_weeknum_weekday from_days(days dp) NOEXCEPT;
397
- };
398
-
399
- CONSTCD11 bool operator==(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
400
- CONSTCD11 bool operator!=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
401
- CONSTCD11 bool operator< (const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
402
- CONSTCD11 bool operator> (const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
403
- CONSTCD11 bool operator<=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
404
- CONSTCD11 bool operator>=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT;
405
-
406
- CONSTCD11 year_weeknum_weekday operator+(const year_weeknum_weekday& ywnwd, const years& y) NOEXCEPT;
407
- CONSTCD11 year_weeknum_weekday operator+(const years& y, const year_weeknum_weekday& ywnwd) NOEXCEPT;
408
- CONSTCD11 year_weeknum_weekday operator-(const year_weeknum_weekday& ywnwd, const years& y) NOEXCEPT;
409
-
410
- template<class CharT, class Traits>
411
- std::basic_ostream<CharT, Traits>&
412
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_weeknum_weekday& ywnwd);
413
-
414
- //----------------+
415
- // Implementation |
416
- //----------------+
417
-
418
- // weekday
419
-
420
- CONSTCD11
421
- inline
422
- unsigned char
423
- weekday::to_iso_encoding(unsigned char z) NOEXCEPT
424
- {
425
- return z != 0 ? z : (unsigned char)7;
426
- }
427
-
428
- CONSTCD11
429
- inline
430
- unsigned
431
- weekday::from_iso_encoding(unsigned z) NOEXCEPT
432
- {
433
- return z != 7 ? z : 0u;
434
- }
435
-
436
- CONSTCD11
437
- inline
438
- unsigned char
439
- weekday::weekday_from_days(int z) NOEXCEPT
440
- {
441
- return to_iso_encoding(static_cast<unsigned char>(static_cast<unsigned>(
442
- z >= -4 ? (z+4) % 7 : (z+5) % 7 + 6)));
443
- }
444
-
445
- CONSTCD11
446
- inline
447
- weekday::weekday(unsigned wd) NOEXCEPT
448
- : wd_(static_cast<decltype(wd_)>(wd))
449
- {}
450
-
451
- CONSTCD11
452
- inline
453
- weekday::weekday(date::weekday wd) NOEXCEPT
454
- : wd_((wd-date::Monday).count() + 1)
455
- {}
456
-
457
- CONSTCD11
458
- inline
459
- weekday::weekday(const sys_days& dp) NOEXCEPT
460
- : wd_(weekday_from_days(dp.time_since_epoch().count()))
461
- {}
462
-
463
- CONSTCD11
464
- inline
465
- weekday::weekday(const local_days& dp) NOEXCEPT
466
- : wd_(weekday_from_days(dp.time_since_epoch().count()))
467
- {}
468
-
469
- inline weekday& weekday::operator++() NOEXCEPT {if (++wd_ == 8) wd_ = 1; return *this;}
470
- inline weekday weekday::operator++(int) NOEXCEPT {auto tmp(*this); ++(*this); return tmp;}
471
- inline weekday& weekday::operator--() NOEXCEPT {if (wd_-- == 1) wd_ = 7; return *this;}
472
- inline weekday weekday::operator--(int) NOEXCEPT {auto tmp(*this); --(*this); return tmp;}
473
-
474
- inline
475
- weekday&
476
- weekday::operator+=(const days& d) NOEXCEPT
477
- {
478
- *this = *this + d;
479
- return *this;
480
- }
481
-
482
- inline
483
- weekday&
484
- weekday::operator-=(const days& d) NOEXCEPT
485
- {
486
- *this = *this - d;
487
- return *this;
488
- }
489
-
490
- CONSTCD11
491
- inline
492
- weekday::operator unsigned() const NOEXCEPT
493
- {
494
- return wd_;
495
- }
496
-
497
- CONSTCD11
498
- inline
499
- weekday::operator date::weekday() const NOEXCEPT
500
- {
501
- return date::weekday{from_iso_encoding(unsigned{wd_})};
502
- }
503
-
504
- CONSTCD11 inline bool weekday::ok() const NOEXCEPT {return 1 <= wd_ && wd_ <= 7;}
505
-
506
- CONSTCD11
507
- inline
508
- bool
509
- operator==(const weekday& x, const weekday& y) NOEXCEPT
510
- {
511
- return static_cast<unsigned>(x) == static_cast<unsigned>(y);
512
- }
513
-
514
- CONSTCD11
515
- inline
516
- bool
517
- operator!=(const weekday& x, const weekday& y) NOEXCEPT
518
- {
519
- return !(x == y);
520
- }
521
-
522
- CONSTCD14
523
- inline
524
- days
525
- operator-(const weekday& x, const weekday& y) NOEXCEPT
526
- {
527
- auto const diff = static_cast<unsigned>(x) - static_cast<unsigned>(y);
528
- return days{diff <= 6 ? diff : diff + 7};
529
- }
530
-
531
- CONSTCD14
532
- inline
533
- weekday
534
- operator+(const weekday& x, const days& y) NOEXCEPT
535
- {
536
- auto const wdu = static_cast<long long>(static_cast<unsigned>(x) - 1u) + y.count();
537
- auto const wk = (wdu >= 0 ? wdu : wdu-6) / 7;
538
- return weekday{static_cast<unsigned>(wdu - wk * 7) + 1u};
539
- }
540
-
541
- CONSTCD14
542
- inline
543
- weekday
544
- operator+(const days& x, const weekday& y) NOEXCEPT
545
- {
546
- return y + x;
547
- }
548
-
549
- CONSTCD14
550
- inline
551
- weekday
552
- operator-(const weekday& x, const days& y) NOEXCEPT
553
- {
554
- return x + -y;
555
- }
556
-
557
- template<class CharT, class Traits>
558
- inline
559
- std::basic_ostream<CharT, Traits>&
560
- operator<<(std::basic_ostream<CharT, Traits>& os, const weekday& wd)
561
- {
562
- switch (static_cast<unsigned>(wd))
563
- {
564
- case 7:
565
- os << "Sun";
566
- break;
567
- case 1:
568
- os << "Mon";
569
- break;
570
- case 2:
571
- os << "Tue";
572
- break;
573
- case 3:
574
- os << "Wed";
575
- break;
576
- case 4:
577
- os << "Thu";
578
- break;
579
- case 5:
580
- os << "Fri";
581
- break;
582
- case 6:
583
- os << "Sat";
584
- break;
585
- default:
586
- os << static_cast<unsigned>(wd) << " is not a valid weekday";
587
- break;
588
- }
589
- return os;
590
- }
591
-
592
- // year
593
-
594
- CONSTCD11 inline year::year(int y) NOEXCEPT : y_(static_cast<decltype(y_)>(y)) {}
595
- inline year& year::operator++() NOEXCEPT {++y_; return *this;}
596
- inline year year::operator++(int) NOEXCEPT {auto tmp(*this); ++(*this); return tmp;}
597
- inline year& year::operator--() NOEXCEPT {--y_; return *this;}
598
- inline year year::operator--(int) NOEXCEPT {auto tmp(*this); --(*this); return tmp;}
599
- inline year& year::operator+=(const years& y) NOEXCEPT {*this = *this + y; return *this;}
600
- inline year& year::operator-=(const years& y) NOEXCEPT {*this = *this - y; return *this;}
601
-
602
- CONSTCD11 inline year::operator int() const NOEXCEPT {return y_;}
603
- CONSTCD11 inline bool year::ok() const NOEXCEPT {return min() <= *this && *this <= max();}
604
-
605
- CONSTCD11
606
- inline
607
- year
608
- year::min() NOEXCEPT
609
- {
610
- using namespace std::chrono;
611
- static_assert(sizeof(seconds)*CHAR_BIT >= 41, "seconds may overflow");
612
- static_assert(sizeof(hours)*CHAR_BIT >= 30, "hours may overflow");
613
- return sizeof(minutes)*CHAR_BIT < 34 ?
614
- year{1970} + duration_cast<years>(minutes::min()) :
615
- year{std::numeric_limits<short>::min()};
616
- }
617
-
618
- CONSTCD11
619
- inline
620
- year
621
- year::max() NOEXCEPT
622
- {
623
- using namespace std::chrono;
624
- static_assert(sizeof(seconds)*CHAR_BIT >= 41, "seconds may overflow");
625
- static_assert(sizeof(hours)*CHAR_BIT >= 30, "hours may overflow");
626
- return sizeof(minutes)*CHAR_BIT < 34 ?
627
- year{1969} + duration_cast<years>(minutes::max()) :
628
- year{std::numeric_limits<short>::max()};
629
- }
630
-
631
- CONSTCD11
632
- inline
633
- bool
634
- operator==(const year& x, const year& y) NOEXCEPT
635
- {
636
- return static_cast<int>(x) == static_cast<int>(y);
637
- }
638
-
639
- CONSTCD11
640
- inline
641
- bool
642
- operator!=(const year& x, const year& y) NOEXCEPT
643
- {
644
- return !(x == y);
645
- }
646
-
647
- CONSTCD11
648
- inline
649
- bool
650
- operator<(const year& x, const year& y) NOEXCEPT
651
- {
652
- return static_cast<int>(x) < static_cast<int>(y);
653
- }
654
-
655
- CONSTCD11
656
- inline
657
- bool
658
- operator>(const year& x, const year& y) NOEXCEPT
659
- {
660
- return y < x;
661
- }
662
-
663
- CONSTCD11
664
- inline
665
- bool
666
- operator<=(const year& x, const year& y) NOEXCEPT
667
- {
668
- return !(y < x);
669
- }
670
-
671
- CONSTCD11
672
- inline
673
- bool
674
- operator>=(const year& x, const year& y) NOEXCEPT
675
- {
676
- return !(x < y);
677
- }
678
-
679
- CONSTCD11
680
- inline
681
- years
682
- operator-(const year& x, const year& y) NOEXCEPT
683
- {
684
- return years{static_cast<int>(x) - static_cast<int>(y)};
685
- }
686
-
687
- CONSTCD11
688
- inline
689
- year
690
- operator+(const year& x, const years& y) NOEXCEPT
691
- {
692
- return year{static_cast<int>(x) + y.count()};
693
- }
694
-
695
- CONSTCD11
696
- inline
697
- year
698
- operator+(const years& x, const year& y) NOEXCEPT
699
- {
700
- return y + x;
701
- }
702
-
703
- CONSTCD11
704
- inline
705
- year
706
- operator-(const year& x, const years& y) NOEXCEPT
707
- {
708
- return year{static_cast<int>(x) - y.count()};
709
- }
710
-
711
- template<class CharT, class Traits>
712
- inline
713
- std::basic_ostream<CharT, Traits>&
714
- operator<<(std::basic_ostream<CharT, Traits>& os, const year& y)
715
- {
716
- date::detail::save_ostream<CharT, Traits> _(os);
717
- os.fill('0');
718
- os.flags(std::ios::dec | std::ios::internal);
719
- os.width(4 + (y < year{0}));
720
- os << static_cast<int>(y);
721
- return os;
722
- }
723
-
724
- #if !defined(_MSC_VER) || (_MSC_VER >= 1900)
725
- inline namespace literals
726
- {
727
-
728
- CONSTCD11
729
- inline
730
- iso_week::year
731
- operator "" _y(unsigned long long y) NOEXCEPT
732
- {
733
- return iso_week::year(static_cast<int>(y));
734
- }
735
-
736
- CONSTCD11
737
- inline
738
- iso_week::weeknum
739
- operator "" _w(unsigned long long wn) NOEXCEPT
740
- {
741
- return iso_week::weeknum(static_cast<unsigned>(wn));
742
- }
743
-
744
- #endif // !defined(_MSC_VER) || (_MSC_VER >= 1900)
745
-
746
- CONSTDATA iso_week::last_week last{};
747
-
748
- CONSTDATA iso_week::weekday sun{7u};
749
- CONSTDATA iso_week::weekday mon{1u};
750
- CONSTDATA iso_week::weekday tue{2u};
751
- CONSTDATA iso_week::weekday wed{3u};
752
- CONSTDATA iso_week::weekday thu{4u};
753
- CONSTDATA iso_week::weekday fri{5u};
754
- CONSTDATA iso_week::weekday sat{6u};
755
-
756
- #if !defined(_MSC_VER) || (_MSC_VER >= 1900)
757
- } // inline namespace literals
758
- #endif
759
-
760
- // weeknum
761
-
762
- CONSTCD11
763
- inline
764
- weeknum::weeknum(unsigned wn) NOEXCEPT
765
- : wn_(static_cast<decltype(wn_)>(wn))
766
- {}
767
-
768
- inline weeknum& weeknum::operator++() NOEXCEPT {++wn_; return *this;}
769
- inline weeknum weeknum::operator++(int) NOEXCEPT {auto tmp(*this); ++(*this); return tmp;}
770
- inline weeknum& weeknum::operator--() NOEXCEPT {--wn_; return *this;}
771
- inline weeknum weeknum::operator--(int) NOEXCEPT {auto tmp(*this); --(*this); return tmp;}
772
-
773
- inline
774
- weeknum&
775
- weeknum::operator+=(const weeks& y) NOEXCEPT
776
- {
777
- *this = *this + y;
778
- return *this;
779
- }
780
-
781
- inline
782
- weeknum&
783
- weeknum::operator-=(const weeks& y) NOEXCEPT
784
- {
785
- *this = *this - y;
786
- return *this;
787
- }
788
-
789
- CONSTCD11 inline weeknum::operator unsigned() const NOEXCEPT {return wn_;}
790
- CONSTCD11 inline bool weeknum::ok() const NOEXCEPT {return 1 <= wn_ && wn_ <= 53;}
791
-
792
- CONSTCD11
793
- inline
794
- bool
795
- operator==(const weeknum& x, const weeknum& y) NOEXCEPT
796
- {
797
- return static_cast<unsigned>(x) == static_cast<unsigned>(y);
798
- }
799
-
800
- CONSTCD11
801
- inline
802
- bool
803
- operator!=(const weeknum& x, const weeknum& y) NOEXCEPT
804
- {
805
- return !(x == y);
806
- }
807
-
808
- CONSTCD11
809
- inline
810
- bool
811
- operator<(const weeknum& x, const weeknum& y) NOEXCEPT
812
- {
813
- return static_cast<unsigned>(x) < static_cast<unsigned>(y);
814
- }
815
-
816
- CONSTCD11
817
- inline
818
- bool
819
- operator>(const weeknum& x, const weeknum& y) NOEXCEPT
820
- {
821
- return y < x;
822
- }
823
-
824
- CONSTCD11
825
- inline
826
- bool
827
- operator<=(const weeknum& x, const weeknum& y) NOEXCEPT
828
- {
829
- return !(y < x);
830
- }
831
-
832
- CONSTCD11
833
- inline
834
- bool
835
- operator>=(const weeknum& x, const weeknum& y) NOEXCEPT
836
- {
837
- return !(x < y);
838
- }
839
-
840
- CONSTCD11
841
- inline
842
- weeks
843
- operator-(const weeknum& x, const weeknum& y) NOEXCEPT
844
- {
845
- return weeks{static_cast<weeks::rep>(static_cast<unsigned>(x)) -
846
- static_cast<weeks::rep>(static_cast<unsigned>(y))};
847
- }
848
-
849
- CONSTCD11
850
- inline
851
- weeknum
852
- operator+(const weeknum& x, const weeks& y) NOEXCEPT
853
- {
854
- return weeknum{static_cast<unsigned>(x) + static_cast<unsigned>(y.count())};
855
- }
856
-
857
- CONSTCD11
858
- inline
859
- weeknum
860
- operator+(const weeks& x, const weeknum& y) NOEXCEPT
861
- {
862
- return y + x;
863
- }
864
-
865
- CONSTCD11
866
- inline
867
- weeknum
868
- operator-(const weeknum& x, const weeks& y) NOEXCEPT
869
- {
870
- return x + -y;
871
- }
872
-
873
- template<class CharT, class Traits>
874
- inline
875
- std::basic_ostream<CharT, Traits>&
876
- operator<<(std::basic_ostream<CharT, Traits>& os, const weeknum& wn)
877
- {
878
- date::detail::save_ostream<CharT, Traits> _(os);
879
- os << 'W';
880
- os.fill('0');
881
- os.flags(std::ios::dec | std::ios::right);
882
- os.width(2);
883
- os << static_cast<unsigned>(wn);
884
- return os;
885
- }
886
-
887
- // year_weeknum
888
-
889
- CONSTCD11
890
- inline
891
- year_weeknum::year_weeknum(const iso_week::year& y, const iso_week::weeknum& wn) NOEXCEPT
892
- : y_(y)
893
- , wn_(wn)
894
- {}
895
-
896
- CONSTCD11 inline year year_weeknum::year() const NOEXCEPT {return y_;}
897
- CONSTCD11 inline weeknum year_weeknum::weeknum() const NOEXCEPT {return wn_;}
898
- CONSTCD11 inline bool year_weeknum::ok() const NOEXCEPT
899
- {
900
- return y_.ok() && 1u <= static_cast<unsigned>(wn_) && wn_ <= (y_/last).weeknum();
901
- }
902
-
903
- inline
904
- year_weeknum&
905
- year_weeknum::operator+=(const years& dy) NOEXCEPT
906
- {
907
- *this = *this + dy;
908
- return *this;
909
- }
910
-
911
- inline
912
- year_weeknum&
913
- year_weeknum::operator-=(const years& dy) NOEXCEPT
914
- {
915
- *this = *this - dy;
916
- return *this;
917
- }
918
-
919
- CONSTCD11
920
- inline
921
- bool
922
- operator==(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
923
- {
924
- return x.year() == y.year() && x.weeknum() == y.weeknum();
925
- }
926
-
927
- CONSTCD11
928
- inline
929
- bool
930
- operator!=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
931
- {
932
- return !(x == y);
933
- }
934
-
935
- CONSTCD11
936
- inline
937
- bool
938
- operator<(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
939
- {
940
- return x.year() < y.year() ? true
941
- : (x.year() > y.year() ? false
942
- : (x.weeknum() < y.weeknum()));
943
- }
944
-
945
- CONSTCD11
946
- inline
947
- bool
948
- operator>(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
949
- {
950
- return y < x;
951
- }
952
-
953
- CONSTCD11
954
- inline
955
- bool
956
- operator<=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
957
- {
958
- return !(y < x);
959
- }
960
-
961
- CONSTCD11
962
- inline
963
- bool
964
- operator>=(const year_weeknum& x, const year_weeknum& y) NOEXCEPT
965
- {
966
- return !(x < y);
967
- }
968
-
969
- CONSTCD11
970
- inline
971
- year_weeknum
972
- operator+(const year_weeknum& ym, const years& dy) NOEXCEPT
973
- {
974
- return (ym.year() + dy) / ym.weeknum();
975
- }
976
-
977
- CONSTCD11
978
- inline
979
- year_weeknum
980
- operator+(const years& dy, const year_weeknum& ym) NOEXCEPT
981
- {
982
- return ym + dy;
983
- }
984
-
985
- CONSTCD11
986
- inline
987
- year_weeknum
988
- operator-(const year_weeknum& ym, const years& dy) NOEXCEPT
989
- {
990
- return ym + -dy;
991
- }
992
-
993
- template<class CharT, class Traits>
994
- inline
995
- std::basic_ostream<CharT, Traits>&
996
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_weeknum& ywn)
997
- {
998
- return os << ywn.year() << '-' << ywn.weeknum();
999
- }
1000
-
1001
-
1002
- // year_lastweek
1003
-
1004
- CONSTCD11
1005
- inline
1006
- year_lastweek::year_lastweek(const iso_week::year& y) NOEXCEPT
1007
- : y_(y)
1008
- {}
1009
-
1010
- CONSTCD11 inline year year_lastweek::year() const NOEXCEPT {return y_;}
1011
-
1012
- CONSTCD14
1013
- inline
1014
- weeknum
1015
- year_lastweek::weeknum() const NOEXCEPT
1016
- {
1017
- const auto y = date::year{static_cast<int>(y_)};
1018
- const auto s0 = sys_days((y-years{1})/12/date::thu[date::last]);
1019
- const auto s1 = sys_days(y/12/date::thu[date::last]);
1020
- return iso_week::weeknum(static_cast<unsigned>(date::trunc<weeks>(s1-s0).count()));
1021
- }
1022
-
1023
- CONSTCD11 inline bool year_lastweek::ok() const NOEXCEPT {return y_.ok();}
1024
-
1025
- inline
1026
- year_lastweek&
1027
- year_lastweek::operator+=(const years& dy) NOEXCEPT
1028
- {
1029
- *this = *this + dy;
1030
- return *this;
1031
- }
1032
-
1033
- inline
1034
- year_lastweek&
1035
- year_lastweek::operator-=(const years& dy) NOEXCEPT
1036
- {
1037
- *this = *this - dy;
1038
- return *this;
1039
- }
1040
-
1041
- CONSTCD11
1042
- inline
1043
- bool
1044
- operator==(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1045
- {
1046
- return x.year() == y.year();
1047
- }
1048
-
1049
- CONSTCD11
1050
- inline
1051
- bool
1052
- operator!=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1053
- {
1054
- return !(x == y);
1055
- }
1056
-
1057
- CONSTCD11
1058
- inline
1059
- bool
1060
- operator<(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1061
- {
1062
- return x.year() < y.year();
1063
- }
1064
-
1065
- CONSTCD11
1066
- inline
1067
- bool
1068
- operator>(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1069
- {
1070
- return y < x;
1071
- }
1072
-
1073
- CONSTCD11
1074
- inline
1075
- bool
1076
- operator<=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1077
- {
1078
- return !(y < x);
1079
- }
1080
-
1081
- CONSTCD11
1082
- inline
1083
- bool
1084
- operator>=(const year_lastweek& x, const year_lastweek& y) NOEXCEPT
1085
- {
1086
- return !(x < y);
1087
- }
1088
-
1089
- CONSTCD11
1090
- inline
1091
- year_lastweek
1092
- operator+(const year_lastweek& ym, const years& dy) NOEXCEPT
1093
- {
1094
- return year_lastweek{ym.year() + dy};
1095
- }
1096
-
1097
- CONSTCD11
1098
- inline
1099
- year_lastweek
1100
- operator+(const years& dy, const year_lastweek& ym) NOEXCEPT
1101
- {
1102
- return ym + dy;
1103
- }
1104
-
1105
- CONSTCD11
1106
- inline
1107
- year_lastweek
1108
- operator-(const year_lastweek& ym, const years& dy) NOEXCEPT
1109
- {
1110
- return ym + -dy;
1111
- }
1112
-
1113
- template<class CharT, class Traits>
1114
- inline
1115
- std::basic_ostream<CharT, Traits>&
1116
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_lastweek& ywn)
1117
- {
1118
- return os << ywn.year() << "-W last";
1119
- }
1120
-
1121
- // weeknum_weekday
1122
-
1123
- CONSTCD11
1124
- inline
1125
- weeknum_weekday::weeknum_weekday(const iso_week::weeknum& wn,
1126
- const iso_week::weekday& wd) NOEXCEPT
1127
- : wn_(wn)
1128
- , wd_(wd)
1129
- {}
1130
-
1131
- CONSTCD11 inline weeknum weeknum_weekday::weeknum() const NOEXCEPT {return wn_;}
1132
- CONSTCD11 inline weekday weeknum_weekday::weekday() const NOEXCEPT {return wd_;}
1133
-
1134
- CONSTCD14
1135
- inline
1136
- bool
1137
- weeknum_weekday::ok() const NOEXCEPT
1138
- {
1139
- return wn_.ok() && wd_.ok();
1140
- }
1141
-
1142
- CONSTCD11
1143
- inline
1144
- bool
1145
- operator==(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1146
- {
1147
- return x.weeknum() == y.weeknum() && x.weekday() == y.weekday();
1148
- }
1149
-
1150
- CONSTCD11
1151
- inline
1152
- bool
1153
- operator!=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1154
- {
1155
- return !(x == y);
1156
- }
1157
-
1158
- CONSTCD11
1159
- inline
1160
- bool
1161
- operator<(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1162
- {
1163
- return x.weeknum() < y.weeknum() ? true
1164
- : (x.weeknum() > y.weeknum() ? false
1165
- : (static_cast<unsigned>(x.weekday()) < static_cast<unsigned>(y.weekday())));
1166
- }
1167
-
1168
- CONSTCD11
1169
- inline
1170
- bool
1171
- operator>(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1172
- {
1173
- return y < x;
1174
- }
1175
-
1176
- CONSTCD11
1177
- inline
1178
- bool
1179
- operator<=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1180
- {
1181
- return !(y < x);
1182
- }
1183
-
1184
- CONSTCD11
1185
- inline
1186
- bool
1187
- operator>=(const weeknum_weekday& x, const weeknum_weekday& y) NOEXCEPT
1188
- {
1189
- return !(x < y);
1190
- }
1191
-
1192
- template<class CharT, class Traits>
1193
- inline
1194
- std::basic_ostream<CharT, Traits>&
1195
- operator<<(std::basic_ostream<CharT, Traits>& os, const weeknum_weekday& md)
1196
- {
1197
- return os << md.weeknum() << '-' << md.weekday();
1198
- }
1199
-
1200
- // lastweek_weekday
1201
-
1202
- CONSTCD11
1203
- inline
1204
- lastweek_weekday::lastweek_weekday(const iso_week::weekday& wd) NOEXCEPT
1205
- : wd_(wd)
1206
- {}
1207
-
1208
- CONSTCD11 inline weekday lastweek_weekday::weekday() const NOEXCEPT {return wd_;}
1209
-
1210
- CONSTCD14
1211
- inline
1212
- bool
1213
- lastweek_weekday::ok() const NOEXCEPT
1214
- {
1215
- return wd_.ok();
1216
- }
1217
-
1218
- CONSTCD11
1219
- inline
1220
- bool
1221
- operator==(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1222
- {
1223
- return x.weekday() == y.weekday();
1224
- }
1225
-
1226
- CONSTCD11
1227
- inline
1228
- bool
1229
- operator!=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1230
- {
1231
- return !(x == y);
1232
- }
1233
-
1234
- CONSTCD11
1235
- inline
1236
- bool
1237
- operator<(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1238
- {
1239
- return static_cast<unsigned>(x.weekday()) < static_cast<unsigned>(y.weekday());
1240
- }
1241
-
1242
- CONSTCD11
1243
- inline
1244
- bool
1245
- operator>(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1246
- {
1247
- return y < x;
1248
- }
1249
-
1250
- CONSTCD11
1251
- inline
1252
- bool
1253
- operator<=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1254
- {
1255
- return !(y < x);
1256
- }
1257
-
1258
- CONSTCD11
1259
- inline
1260
- bool
1261
- operator>=(const lastweek_weekday& x, const lastweek_weekday& y) NOEXCEPT
1262
- {
1263
- return !(x < y);
1264
- }
1265
-
1266
- template<class CharT, class Traits>
1267
- inline
1268
- std::basic_ostream<CharT, Traits>&
1269
- operator<<(std::basic_ostream<CharT, Traits>& os, const lastweek_weekday& md)
1270
- {
1271
- return os << "W last-" << md.weekday();
1272
- }
1273
-
1274
- // year_lastweek_weekday
1275
-
1276
- CONSTCD11
1277
- inline
1278
- year_lastweek_weekday::year_lastweek_weekday(const iso_week::year& y,
1279
- const iso_week::weekday& wd) NOEXCEPT
1280
- : y_(y)
1281
- , wd_(wd)
1282
- {}
1283
-
1284
- inline
1285
- year_lastweek_weekday&
1286
- year_lastweek_weekday::operator+=(const years& y) NOEXCEPT
1287
- {
1288
- *this = *this + y;
1289
- return *this;
1290
- }
1291
-
1292
- inline
1293
- year_lastweek_weekday&
1294
- year_lastweek_weekday::operator-=(const years& y) NOEXCEPT
1295
- {
1296
- *this = *this - y;
1297
- return *this;
1298
- }
1299
-
1300
- CONSTCD11 inline year year_lastweek_weekday::year() const NOEXCEPT {return y_;}
1301
-
1302
- CONSTCD14
1303
- inline
1304
- weeknum
1305
- year_lastweek_weekday::weeknum() const NOEXCEPT
1306
- {
1307
- return (y_ / last).weeknum();
1308
- }
1309
-
1310
- CONSTCD11 inline weekday year_lastweek_weekday::weekday() const NOEXCEPT {return wd_;}
1311
-
1312
- CONSTCD14
1313
- inline
1314
- year_lastweek_weekday::operator sys_days() const NOEXCEPT
1315
- {
1316
- return sys_days(date::year{static_cast<int>(y_)}/date::dec/date::thu[date::last])
1317
- + (sun - thu) - (sun - wd_);
1318
- }
1319
-
1320
- CONSTCD14
1321
- inline
1322
- year_lastweek_weekday::operator local_days() const NOEXCEPT
1323
- {
1324
- return local_days(date::year{static_cast<int>(y_)}/date::dec/date::thu[date::last])
1325
- + (sun - thu) - (sun - wd_);
1326
- }
1327
-
1328
- CONSTCD11
1329
- inline
1330
- bool
1331
- year_lastweek_weekday::ok() const NOEXCEPT
1332
- {
1333
- return y_.ok() && wd_.ok();
1334
- }
1335
-
1336
- CONSTCD11
1337
- inline
1338
- bool
1339
- operator==(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1340
- {
1341
- return x.year() == y.year() && x.weekday() == y.weekday();
1342
- }
1343
-
1344
- CONSTCD11
1345
- inline
1346
- bool
1347
- operator!=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1348
- {
1349
- return !(x == y);
1350
- }
1351
-
1352
- CONSTCD11
1353
- inline
1354
- bool
1355
- operator<(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1356
- {
1357
- return x.year() < y.year() ? true
1358
- : (x.year() > y.year() ? false
1359
- : (static_cast<unsigned>(x.weekday()) < static_cast<unsigned>(y.weekday())));
1360
- }
1361
-
1362
- CONSTCD11
1363
- inline
1364
- bool
1365
- operator>(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1366
- {
1367
- return y < x;
1368
- }
1369
-
1370
- CONSTCD11
1371
- inline
1372
- bool
1373
- operator<=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1374
- {
1375
- return !(y < x);
1376
- }
1377
-
1378
- CONSTCD11
1379
- inline
1380
- bool
1381
- operator>=(const year_lastweek_weekday& x, const year_lastweek_weekday& y) NOEXCEPT
1382
- {
1383
- return !(x < y);
1384
- }
1385
-
1386
- CONSTCD11
1387
- inline
1388
- year_lastweek_weekday
1389
- operator+(const year_lastweek_weekday& ywnwd, const years& y) NOEXCEPT
1390
- {
1391
- return (ywnwd.year() + y) / last / ywnwd.weekday();
1392
- }
1393
-
1394
- CONSTCD11
1395
- inline
1396
- year_lastweek_weekday
1397
- operator+(const years& y, const year_lastweek_weekday& ywnwd) NOEXCEPT
1398
- {
1399
- return ywnwd + y;
1400
- }
1401
-
1402
- CONSTCD11
1403
- inline
1404
- year_lastweek_weekday
1405
- operator-(const year_lastweek_weekday& ywnwd, const years& y) NOEXCEPT
1406
- {
1407
- return ywnwd + -y;
1408
- }
1409
-
1410
- template<class CharT, class Traits>
1411
- inline
1412
- std::basic_ostream<CharT, Traits>&
1413
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_lastweek_weekday& ywnwd)
1414
- {
1415
- return os << ywnwd.year() << "-W last-" << ywnwd.weekday();
1416
- }
1417
-
1418
- // year_weeknum_weekday
1419
-
1420
- CONSTCD11
1421
- inline
1422
- year_weeknum_weekday::year_weeknum_weekday(const iso_week::year& y,
1423
- const iso_week::weeknum& wn,
1424
- const iso_week::weekday& wd) NOEXCEPT
1425
- : y_(y)
1426
- , wn_(wn)
1427
- , wd_(wd)
1428
- {}
1429
-
1430
- CONSTCD14
1431
- inline
1432
- year_weeknum_weekday::year_weeknum_weekday(const year_lastweek_weekday& ylwwd) NOEXCEPT
1433
- : y_(ylwwd.year())
1434
- , wn_(ylwwd.weeknum())
1435
- , wd_(ylwwd.weekday())
1436
- {}
1437
-
1438
- CONSTCD14
1439
- inline
1440
- year_weeknum_weekday::year_weeknum_weekday(const sys_days& dp) NOEXCEPT
1441
- : year_weeknum_weekday(from_days(dp.time_since_epoch()))
1442
- {}
1443
-
1444
- CONSTCD14
1445
- inline
1446
- year_weeknum_weekday::year_weeknum_weekday(const local_days& dp) NOEXCEPT
1447
- : year_weeknum_weekday(from_days(dp.time_since_epoch()))
1448
- {}
1449
-
1450
- inline
1451
- year_weeknum_weekday&
1452
- year_weeknum_weekday::operator+=(const years& y) NOEXCEPT
1453
- {
1454
- *this = *this + y;
1455
- return *this;
1456
- }
1457
-
1458
- inline
1459
- year_weeknum_weekday&
1460
- year_weeknum_weekday::operator-=(const years& y) NOEXCEPT
1461
- {
1462
- *this = *this - y;
1463
- return *this;
1464
- }
1465
-
1466
- CONSTCD11 inline year year_weeknum_weekday::year() const NOEXCEPT {return y_;}
1467
- CONSTCD11 inline weeknum year_weeknum_weekday::weeknum() const NOEXCEPT {return wn_;}
1468
- CONSTCD11 inline weekday year_weeknum_weekday::weekday() const NOEXCEPT {return wd_;}
1469
-
1470
- CONSTCD14
1471
- inline
1472
- year_weeknum_weekday::operator sys_days() const NOEXCEPT
1473
- {
1474
- return sys_days(date::year{static_cast<int>(y_)-1}/date::dec/date::thu[date::last])
1475
- + (date::mon - date::thu) + weeks{static_cast<unsigned>(wn_)-1} + (wd_ - mon);
1476
- }
1477
-
1478
- CONSTCD14
1479
- inline
1480
- year_weeknum_weekday::operator local_days() const NOEXCEPT
1481
- {
1482
- return local_days(date::year{static_cast<int>(y_)-1}/date::dec/date::thu[date::last])
1483
- + (date::mon - date::thu) + weeks{static_cast<unsigned>(wn_)-1} + (wd_ - mon);
1484
- }
1485
-
1486
- CONSTCD14
1487
- inline
1488
- bool
1489
- year_weeknum_weekday::ok() const NOEXCEPT
1490
- {
1491
- return y_.ok() && wd_.ok() && iso_week::weeknum{1u} <= wn_ && wn_ <= year_lastweek{y_}.weeknum();
1492
- }
1493
-
1494
- CONSTCD14
1495
- inline
1496
- year_weeknum_weekday
1497
- year_weeknum_weekday::from_days(days d) NOEXCEPT
1498
- {
1499
- const auto dp = sys_days{d};
1500
- const auto wd = iso_week::weekday{dp};
1501
- auto y = date::year_month_day{dp + days{3}}.year();
1502
- auto start = sys_days((y - date::years{1})/date::dec/date::thu[date::last]) + (mon-thu);
1503
- if (dp < start)
1504
- {
1505
- --y;
1506
- start = sys_days((y - date::years{1})/date::dec/date::thu[date::last]) + (mon-thu);
1507
- }
1508
- const auto wn = iso_week::weeknum(
1509
- static_cast<unsigned>(date::trunc<weeks>(dp - start).count() + 1));
1510
- return {iso_week::year(static_cast<int>(y)), wn, wd};
1511
- }
1512
-
1513
- CONSTCD11
1514
- inline
1515
- bool
1516
- operator==(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1517
- {
1518
- return x.year() == y.year() && x.weeknum() == y.weeknum() && x.weekday() == y.weekday();
1519
- }
1520
-
1521
- CONSTCD11
1522
- inline
1523
- bool
1524
- operator!=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1525
- {
1526
- return !(x == y);
1527
- }
1528
-
1529
- CONSTCD11
1530
- inline
1531
- bool
1532
- operator<(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1533
- {
1534
- return x.year() < y.year() ? true
1535
- : (x.year() > y.year() ? false
1536
- : (x.weeknum() < y.weeknum() ? true
1537
- : (x.weeknum() > y.weeknum() ? false
1538
- : (static_cast<unsigned>(x.weekday()) < static_cast<unsigned>(y.weekday())))));
1539
- }
1540
-
1541
- CONSTCD11
1542
- inline
1543
- bool
1544
- operator>(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1545
- {
1546
- return y < x;
1547
- }
1548
-
1549
- CONSTCD11
1550
- inline
1551
- bool
1552
- operator<=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1553
- {
1554
- return !(y < x);
1555
- }
1556
-
1557
- CONSTCD11
1558
- inline
1559
- bool
1560
- operator>=(const year_weeknum_weekday& x, const year_weeknum_weekday& y) NOEXCEPT
1561
- {
1562
- return !(x < y);
1563
- }
1564
-
1565
- CONSTCD11
1566
- inline
1567
- year_weeknum_weekday
1568
- operator+(const year_weeknum_weekday& ywnwd, const years& y) NOEXCEPT
1569
- {
1570
- return (ywnwd.year() + y) / ywnwd.weeknum() / ywnwd.weekday();
1571
- }
1572
-
1573
- CONSTCD11
1574
- inline
1575
- year_weeknum_weekday
1576
- operator+(const years& y, const year_weeknum_weekday& ywnwd) NOEXCEPT
1577
- {
1578
- return ywnwd + y;
1579
- }
1580
-
1581
- CONSTCD11
1582
- inline
1583
- year_weeknum_weekday
1584
- operator-(const year_weeknum_weekday& ywnwd, const years& y) NOEXCEPT
1585
- {
1586
- return ywnwd + -y;
1587
- }
1588
-
1589
- template<class CharT, class Traits>
1590
- inline
1591
- std::basic_ostream<CharT, Traits>&
1592
- operator<<(std::basic_ostream<CharT, Traits>& os, const year_weeknum_weekday& ywnwd)
1593
- {
1594
- return os << ywnwd.year() << '-' << ywnwd.weeknum() << '-' << ywnwd.weekday();
1595
- }
1596
-
1597
- // date composition operators
1598
-
1599
- CONSTCD11
1600
- inline
1601
- year_weeknum
1602
- operator/(const year& y, const weeknum& wn) NOEXCEPT
1603
- {
1604
- return {y, wn};
1605
- }
1606
-
1607
- CONSTCD11
1608
- inline
1609
- year_weeknum
1610
- operator/(const year& y, int wn) NOEXCEPT
1611
- {
1612
- return y/weeknum(static_cast<unsigned>(wn));
1613
- }
1614
-
1615
- CONSTCD11
1616
- inline
1617
- year_lastweek
1618
- operator/(const year& y, last_week) NOEXCEPT
1619
- {
1620
- return year_lastweek{y};
1621
- }
1622
-
1623
- CONSTCD11
1624
- inline
1625
- weeknum_weekday
1626
- operator/(const weeknum& wn, const weekday& wd) NOEXCEPT
1627
- {
1628
- return {wn, wd};
1629
- }
1630
-
1631
- CONSTCD11
1632
- inline
1633
- weeknum_weekday
1634
- operator/(const weeknum& wn, int wd) NOEXCEPT
1635
- {
1636
- return wn/weekday{static_cast<unsigned>(wd)};
1637
- }
1638
-
1639
- CONSTCD11
1640
- inline
1641
- weeknum_weekday
1642
- operator/(const weekday& wd, const weeknum& wn) NOEXCEPT
1643
- {
1644
- return wn/wd;
1645
- }
1646
-
1647
- CONSTCD11
1648
- inline
1649
- weeknum_weekday
1650
- operator/(const weekday& wd, int wn) NOEXCEPT
1651
- {
1652
- return weeknum{static_cast<unsigned>(wn)}/wd;
1653
- }
1654
-
1655
- CONSTCD11
1656
- inline
1657
- lastweek_weekday
1658
- operator/(const last_week&, const weekday& wd) NOEXCEPT
1659
- {
1660
- return lastweek_weekday{wd};
1661
- }
1662
-
1663
- CONSTCD11
1664
- inline
1665
- lastweek_weekday
1666
- operator/(const last_week& wn, int wd) NOEXCEPT
1667
- {
1668
- return wn / weekday{static_cast<unsigned>(wd)};
1669
- }
1670
-
1671
- CONSTCD11
1672
- inline
1673
- lastweek_weekday
1674
- operator/(const weekday& wd, const last_week& wn) NOEXCEPT
1675
- {
1676
- return wn / wd;
1677
- }
1678
-
1679
- CONSTCD11
1680
- inline
1681
- year_weeknum_weekday
1682
- operator/(const year_weeknum& ywn, const weekday& wd) NOEXCEPT
1683
- {
1684
- return {ywn.year(), ywn.weeknum(), wd};
1685
- }
1686
-
1687
- CONSTCD11
1688
- inline
1689
- year_weeknum_weekday
1690
- operator/(const year_weeknum& ywn, int wd) NOEXCEPT
1691
- {
1692
- return ywn / weekday(static_cast<unsigned>(wd));
1693
- }
1694
-
1695
- CONSTCD11
1696
- inline
1697
- year_weeknum_weekday
1698
- operator/(const weeknum_weekday& wnwd, const year& y) NOEXCEPT
1699
- {
1700
- return {y, wnwd.weeknum(), wnwd.weekday()};
1701
- }
1702
-
1703
- CONSTCD11
1704
- inline
1705
- year_weeknum_weekday
1706
- operator/(const weeknum_weekday& wnwd, int y) NOEXCEPT
1707
- {
1708
- return wnwd / year{y};
1709
- }
1710
-
1711
- CONSTCD11
1712
- inline
1713
- year_lastweek_weekday
1714
- operator/(const year_lastweek& ylw, const weekday& wd) NOEXCEPT
1715
- {
1716
- return {ylw.year(), wd};
1717
- }
1718
-
1719
- CONSTCD11
1720
- inline
1721
- year_lastweek_weekday
1722
- operator/(const year_lastweek& ylw, int wd) NOEXCEPT
1723
- {
1724
- return ylw / weekday(static_cast<unsigned>(wd));
1725
- }
1726
-
1727
- CONSTCD11
1728
- inline
1729
- year_lastweek_weekday
1730
- operator/(const lastweek_weekday& lwwd, const year& y) NOEXCEPT
1731
- {
1732
- return {y, lwwd.weekday()};
1733
- }
1734
-
1735
- CONSTCD11
1736
- inline
1737
- year_lastweek_weekday
1738
- operator/(const lastweek_weekday& lwwd, int y) NOEXCEPT
1739
- {
1740
- return lwwd / year{y};
1741
- }
1742
-
1743
- } // namespace iso_week
1744
-
1745
- #endif // ISO_WEEK_H