[go: up one dir, main page]

Create sub modules `Time.[Protocol|System].Rfc3999` and move (+rename) RFC3999-related functions there

As discussed with @richard.bonichon and @raphael-proust over Slack + Mumble.

Current Time.[Protocol|System] modules have many RFC3999-related functions, some of which are ill-named (e.g. to_notation could really be named to_rfc3999_string), many of which are partial (more specifically for Time.Protocol as its domain is wider than the one of RFC3999).

This issue is about:

  • Creating sub-modules Rfc3999 (or RFC3999?) in each of Time.Protocol and Time.System
  • Move all related functions there
  • Take the opportunity to improve the naming where applicable (e.g. s/notation/rfc3999)

No matter what work is done, the encoding implementation must not change! This could have catastrophic consequences!

Ideally this should be worked on after !2688 (merged) is merged to avoid conflicts, but there is no hard restriction either