diff options
author | Stéphane Glondu <steph@glondu.net> | 2023-02-01 09:16:30 +0100 |
---|---|---|
committer | Stéphane Glondu <steph@glondu.net> | 2023-02-01 09:16:30 +0100 |
commit | 56bbad84c6643aaa7cf9abcaf688fb13626c2554 (patch) | |
tree | 739aae7c374ada535f12e5ae8d6f641ae8e46570 | |
parent | cc93235002be5632d50a84a400b24a551cf7ab4c (diff) | |
parent | b7281e18312eaa8346b0d099c45d79841fc2d0aa (diff) |
Update upstream source from tag 'upstream/3.0.0'
Update to upstream version '3.0.0'
with Debian dir 8b7ee684633274a803713be9230f4cb5104c4212
133 files changed, 1072 insertions, 19809 deletions
diff --git a/.depend b/.depend deleted file mode 100644 index 2b491b9..0000000 --- a/.depend +++ /dev/null @@ -1,94 +0,0 @@ -src/calendar.cmo : src/time.cmi src/date.cmi src/calendar_builder.cmi \ - src/calendar.cmi -src/calendar.cmx : src/time.cmx src/date.cmx src/calendar_builder.cmx \ - src/calendar.cmi -src/calendar_builder.cmo : src/utils.cmi src/time_sig.cmi src/time_Zone.cmi \ - src/period.cmi src/date_sig.cmi src/calendar_builder.cmi -src/calendar_builder.cmx : src/utils.cmx src/time_sig.cmi src/time_Zone.cmx \ - src/period.cmi src/date_sig.cmi src/calendar_builder.cmi -src/date.cmo : src/utils.cmi src/time_Zone.cmi src/period.cmi src/date.cmi -src/date.cmx : src/utils.cmx src/time_Zone.cmx src/period.cmi src/date.cmi -src/fcalendar.cmo : src/ftime.cmi src/date.cmi src/calendar_builder.cmi \ - src/fcalendar.cmi -src/fcalendar.cmx : src/ftime.cmx src/date.cmx src/calendar_builder.cmx \ - src/fcalendar.cmi -src/ftime.cmo : src/utils.cmi src/time_Zone.cmi src/period.cmi src/ftime.cmi -src/ftime.cmx : src/utils.cmx src/time_Zone.cmx src/period.cmi src/ftime.cmi -src/printer.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi src/ftime.cmi src/fcalendar.cmi src/date.cmi \ - src/calendar.cmi src/printer.cmi -src/printer.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi src/ftime.cmx src/fcalendar.cmx src/date.cmx \ - src/calendar.cmx src/printer.cmi -src/time.cmo : src/utils.cmi src/time_Zone.cmi src/period.cmi src/time.cmi -src/time.cmx : src/utils.cmx src/time_Zone.cmx src/period.cmi src/time.cmi -src/time_Zone.cmo : src/time_Zone.cmi -src/time_Zone.cmx : src/time_Zone.cmi -src/utils.cmo : src/utils.cmi -src/utils.cmx : src/utils.cmi -src/version.cmo : src/version.cmi -src/version.cmx : src/version.cmi -src/calendar.cmi : src/time.cmi src/date.cmi src/calendar_sig.cmi -src/calendar_builder.cmi : src/time_sig.cmi src/date_sig.cmi \ - src/calendar_sig.cmi -src/calendar_sig.cmi : src/time_sig.cmi src/time_Zone.cmi src/period.cmi \ - src/date_sig.cmi -src/date.cmi : src/date_sig.cmi -src/date_sig.cmi : src/period.cmi -src/fcalendar.cmi : src/ftime.cmi src/date.cmi src/calendar_sig.cmi -src/ftime.cmi : src/time_sig.cmi -src/period.cmi : -src/printer.cmi : src/time.cmi src/ftime.cmi src/fcalendar.cmi src/date.cmi \ - src/calendar.cmi -src/time.cmi : src/time_sig.cmi -src/time_Zone.cmi : -src/time_sig.cmi : src/time_Zone.cmi src/period.cmi -src/utils.cmi : -src/version.cmi : -tests/gen_test.cmo : tests/gen_test.cmi -tests/gen_test.cmx : tests/gen_test.cmi -tests/test.cmo : tests/test_timezone.cmo tests/test_time.cmo \ - tests/test_printer.cmo tests/test_pcalendar.cmo tests/test_ftime.cmo \ - tests/test_fpcalendar.cmo tests/test_fcalendar.cmo tests/test_date.cmo \ - tests/test_calendar.cmo -tests/test.cmx : tests/test_timezone.cmx tests/test_time.cmx \ - tests/test_printer.cmx tests/test_pcalendar.cmx tests/test_ftime.cmx \ - tests/test_fpcalendar.cmx tests/test_fcalendar.cmx tests/test_date.cmx \ - tests/test_calendar.cmx -tests/test_calendar.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi tests/gen_test.cmi src/date.cmi src/calendar.cmi -tests/test_calendar.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi tests/gen_test.cmx src/date.cmx src/calendar.cmx -tests/test_date.cmo : src/time_Zone.cmi src/period.cmi tests/gen_test.cmi \ - src/date.cmi -tests/test_date.cmx : src/time_Zone.cmx src/period.cmi tests/gen_test.cmx \ - src/date.cmx -tests/test_fcalendar.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi tests/gen_test.cmi src/fcalendar.cmi src/date.cmi -tests/test_fcalendar.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi tests/gen_test.cmx src/fcalendar.cmx src/date.cmx -tests/test_fpcalendar.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi tests/gen_test.cmi src/fcalendar.cmi src/date.cmi -tests/test_fpcalendar.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi tests/gen_test.cmx src/fcalendar.cmx src/date.cmx -tests/test_ftime.cmo : src/utils.cmi src/time_Zone.cmi src/period.cmi \ - tests/gen_test.cmi src/ftime.cmi -tests/test_ftime.cmx : src/utils.cmx src/time_Zone.cmx src/period.cmi \ - tests/gen_test.cmx src/ftime.cmx -tests/test_pcalendar.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi tests/gen_test.cmi src/date.cmi src/calendar.cmi -tests/test_pcalendar.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi tests/gen_test.cmx src/date.cmx src/calendar.cmx -tests/test_printer.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/printer.cmi tests/gen_test.cmi src/ftime.cmi src/date.cmi \ - src/calendar.cmi -tests/test_printer.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/printer.cmx tests/gen_test.cmx src/ftime.cmx src/date.cmx \ - src/calendar.cmx -tests/test_time.cmo : src/utils.cmi src/time_Zone.cmi src/time.cmi \ - src/period.cmi tests/gen_test.cmi -tests/test_time.cmx : src/utils.cmx src/time_Zone.cmx src/time.cmx \ - src/period.cmi tests/gen_test.cmx -tests/test_timezone.cmo : src/time_Zone.cmi tests/gen_test.cmi -tests/test_timezone.cmx : src/time_Zone.cmx tests/gen_test.cmx -tests/gen_test.cmi : diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..17639a5 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,3 @@ +# These are the default owners for everything in the repo. They will +# receive review requests when someone opens a pull request. +* @Drup @loxs @pmetzger diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6ed3d46 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +_build +*.install +.merlin +_opam diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..39c4609 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,16 @@ +language: c +install: wget https://raw.githubusercontent.com/ocaml/ocaml-ci-scripts/master/.travis-docker.sh +script: bash -ex .travis-docker.sh +services: +- docker +env: + global: + - PINS="calendar:." + - DISTRO="ubuntu-16.04" + matrix: + - PACKAGE="calendar" OCAML_VERSION="4.03" TESTS=1 EXTRA_DEPS="alcotest" + - PACKAGE="calendar" OCAML_VERSION="4.04" TESTS=1 EXTRA_DEPS="alcotest" + - PACKAGE="calendar" OCAML_VERSION="4.05" TESTS=1 EXTRA_DEPS="alcotest" + - PACKAGE="calendar" OCAML_VERSION="4.06" TESTS=1 EXTRA_DEPS="alcotest" + - PACKAGE="calendar" OCAML_VERSION="4.07" TESTS=1 EXTRA_DEPS="alcotest" + - PACKAGE="calendar" OCAML_VERSION="4.08" TESTS=1 EXTRA_DEPS="alcotest" @@ -6,6 +6,15 @@ Mark "*": bug fixed. Mark "!": change that can break compatibility with older version of the library =============================================================================== +version 3.0.0, 2022-10-11: +========================== +* Fix Date.week_first_last according to ISO 8601 (@balat) +* Remove incorrect time zone bound check (@vouillon) +! Switch from Str to Re (@vouillon) +! Remove date function from the version API (@c-cube) +o Add some uility function for comparing dates (@loxs) +* Switch the build-system to dune (@c-cube) + version 2.04, 2014-10-29: =========================== * [Makefile] Fix minor issues with ocamlfind and 'make install' (from diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8415928 --- /dev/null +++ b/Makefile @@ -0,0 +1,16 @@ + +all: build test + +build: + @dune build @install + +clean: + @dune clean + +test: + @dune runtest --no-buffer --force + +doc: + @dune build @doc + +.PHONY: all clean test doc diff --git a/Makefile.in b/Makefile.in deleted file mode 100644 index 9eb3026..0000000 --- a/Makefile.in +++ /dev/null @@ -1,295 +0,0 @@ -########################################################################## -# # -# This file is part of Calendar. # -# # -# Copyright (C) 2003-2011 Julien Signoles # -# # -# you can redistribute it and/or modify it under the terms of the GNU # -# Lesser General Public License version 2.1 as published by the # -# Free Software Foundation, with a special linking exception (usual # -# for Objective Caml libraries). # -# # -# It is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR # -# # -# See the GNU Lesser General Public Licence version 2.1 for more # -# details (enclosed in the file LGPL). # -# # -# The special linking exception is detailled in the enclosed file # -# LICENSE. # -########################################################################## - -# Used programs -############### - -CAMLC = @OCAMLC@ -CAMLOPT = @OCAMLOPT@ -CAMLDEP = @OCAMLDEP@ -CAMLDOC = @OCAMLDOC@ -CAMLWEB = @OCAMLWEB@ -CAMLWC = @OCAMLWC@ -CAMLDOT = @OCAMLDOT@ -CAMLLIB = @OCAMLLIB@ -CAMLFIND= @OCAMLFIND@ -CAMLMAJORVERSION= @OCAMLMAJOR@ - -# Object/Library File Extensions -OBJ_EXT = @OBJEXT@ -LIB_EXT = @LIBEXT@ - -HAS_NATDYNLINK=@HAS_NATDYNLINK@ - -# Project -######### - -NAME = calendar -NAMELIB = calendarLib -VERSION = 2.04 - -LIBDIR = target - -LIBS = $(LIBDIR)/$(NAMELIB).cmo $(LIBDIR)/$(NAMELIB).cma -CLIBS = -ifneq ($(CAMLOPT),no) -LIBS := $(LIBS) $(LIBDIR)/$(NAMELIB).cmx $(LIBDIR)/$(NAMELIB).cmxa -ifeq ($(HAS_NATDYNLINK),yes) -LIBS := $(LIBS) $(LIBDIR)/$(NAMELIB).cmxs -endif -CLIBS := $(CLIBS) $(LIBDIR)/$(NAMELIB)$(OBJ_EXT) \ - $(LIBDIR)/$(NAMELIB)$(LIB_EXT) -endif - -DIRS = src target tests - -SRC = utils.mli utils.ml time_Zone.mli time_Zone.ml period.mli \ - time_sig.mli time.mli time.ml ftime.mli ftime.ml \ - date_sig.mli date.mli date.ml \ - calendar_sig.mli calendar_builder.mli calendar_builder.ml \ - calendar.mli calendar.ml fcalendar.mli fcalendar.ml \ - printer.mli printer.ml \ - version.mli version.ml -SRC := $(addprefix src/, $(SRC)) - -ML = $(filter %.ml, $(SRC)) -MLI = $(filter %.mli, $(SRC)) - -CMO = $(ML:.ml=.cmo) -CMX = $(CMO:.cmo=.cmx) -CMI = $(MLI:.mli=.cmi) -CMI_ONLY= src/period.cmi src/date_sig.cmi src/time_sig.cmi src/calendar_sig.cmi - -GENERATED= src/version.ml - -# Libs and flags -################ - -CAMLIBS = $(addprefix -I , $(DIRS)) - -CAMLFLAGS= $(CAMLIBS) -BYTEFLAGS= $(CAMLFLAGS) -LINK_OPTFLAGS = $(CAMLFLAGS) -noassert -OPTFLAGS = $(LINK_OPTFLAGS) -for-pack CalendarLib - -# Main rules -############ - -all: $(LIBS) META - -$(LIBDIR)/$(NAMELIB).cmo: $(CMI_ONLY) $(CMO) - mkdir -p $(LIBDIR) - $(CAMLFIND) ocamlc $(BYTEFLAGS) -pack -o $@ \ - $(filter-out $(LIBDIR), $^) - -$(LIBDIR)/$(NAMELIB).cma: $(LIBDIR)/$(NAMELIB).cmo - $(CAMLFIND) ocamlc $(BYTEFLAGS) -a -o $@ $< - -$(LIBDIR)/$(NAMELIB).cmx: $(CMI_ONLY) $(CMX) - mkdir -p $(LIBDIR) - $(CAMLFIND) ocamlopt $(LINK_OPTFLAGS) -pack -o $@ \ - $(filter-out $(LIBDIR), $^) - -$(LIBDIR)/$(NAMELIB).a $(LIBDIR)/$(NAMELIB).cmxa: $(LIBDIR)/$(NAMELIB).cmx - $(CAMLFIND) ocamlopt $(LINK_OPTFLAGS) -a -o $@ $< - -$(LIBDIR)/$(NAMELIB).cmxs: $(LIBDIR)/$(NAMELIB).cmxa - $(CAMLFIND) ocamlopt -I $(LIBDIR) -shared -linkall -o $@ $< - -src/version.ml: Makefile - echo "let version = \"$(VERSION)\"" > $@ - echo "let date = \"`date`\"" >> $@ - -META: Makefile - echo "name = \"$(NAME)\"" > $@ - echo "description = \"$(NAME) library\"" >> $@ - echo "version = \"$(VERSION)\"" >> $@ - echo "archive(byte) = \"$(NAMELIB).cma\"" >> $@ - echo "archive(native) = \"$(NAMELIB).cmxa\"" >> $@ - echo "requires = \"unix str\"" >> $@ - -# Generic rules -############### - -%.gz: % - gzip -f --best $< - -.SUFFIXES: .ml .mli .cmo .cmi .cmx $(OBJ_EXT) - -.mli.cmi: - $(CAMLC) $(BYTEFLAGS) -c $< - -.ml.cmo: - $(CAMLC) $(BYTEFLAGS) -c $< - -.ml$(OBJ_EXT): - $(CAMLOPT) $(OPTFLAGS) -c $< - -.ml.cmx: - $(CAMLOPT) $(OPTFLAGS) -c $< - -# Tests -####### - -TESTS_SRC= gen_test.mli gen_test.ml test_timezone.ml test_time.ml \ - test_ftime.ml test_date.ml test_calendar.ml test_fcalendar.ml \ - test_pcalendar.ml test_fpcalendar.ml test_printer.ml test.ml -TESTS_SRC:= $(addprefix tests/, $(TESTS_SRC)) - -TESTS_ML= $(filter %.ml, $(TESTS_SRC)) -TESTS_CMO= $(TESTS_ML:.ml=.cmo) - -$(TESTS_CMO) $(TESTS_CMI): $(LIBDIR)/$(NAMELIB).cmo $(LIBDIR)/$(NAMELIB).cmi - -tests/test: $(LIBDIR)/$(NAMELIB).cmo $(TESTS_CMO) - $(CAMLC) -o $@ $(BYTEFLAGS) unix.cma str.cma $(LIBDIR)/$(NAMELIB).cmo \ - $(TESTS_CMO) - -.PHONY: tests -tests: tests/test - ./$< - -# Documentation -############### - -wc: $(SRC) - $(CAMLWC) -p $^ - -$(NAMELIB).ps: $(SRC) - $(CAMLWEB) --ps -o $@ $^ - -ifeq ($(CAMLMAJORVERSION),3) -utils/example.ml: utils/example.ml.3 Makefile - cp $< $@ -else -utils/example.ml: utils/example.ml.4 Makefile - cp $< $@ -endif - -utils/example.cmo: utils/example.ml - $(CAMLC) -I +ocamldoc -I utils -c $< - -.PHONY: doc -doc: $(CMO) utils/example.cmo - mkdir -p doc - rm -f doc/* - $(CAMLDOC) -g utils/example.cmo -colorize-code -I src -d doc \ - $(MLI) $(ML) - -# Headers -######### - -.PHONY: headers -headers: - headache -c headache_config.txt -h HEADER $(SRC) $(TESTS_SRC) \ - Makefile.in utils/example.ml - headache -c headache_config.txt -h CONFIGURE_HEADER configure.in - -# Install -######### - -install: $(LIBS) $(CLIBS) META - @if [ "`sed -n -e 's/version = "\([0-9.+dev]*\)"/\1/p' META`" = "$(VERSION)" ]; then \ - (if test -d `ocamlfind install -help | grep destdir | sed -e "s/.*default: \(.*\))/\1/"`/$(NAME); then $(MAKE) uninstall; fi;\ - $(CAMLFIND) install $(NAME) target/*.cm* $(MLI) $(CLIBS) META); \ - else \ - (echo; echo "Not the good version. Please, do :"; \ - echo " make clean && make"; \ - echo "next reinstall"; echo) \ - fi - -uninstall: - $(CAMLFIND) remove $(NAME) - -# Exporting -########### - -EXPORT_DIR= $$HOME/EXPORT/$(NAME) -TMP_DIR = $$HOME/tmp - -ROOT= $$HOME/DEV/calendar - -export: doc - (cd $(TMP_DIR); \ - svn co svn+ssh://signoles@svn.forge.ocamlcore.org/svnroot/calendar/trunk) - svn copy $(TMP_DIR)/trunk $(ROOT)/tags/v$(VERSION) - rm -rf $(TMP_DIR)/trunk - (cd $(ROOT)/tags; svn commit -m "v $(VERSION)") - rm -rf $(EXPORT_DIR)/doc - mkdir -p $(EXPORT_DIR) - cp -rf CHANGES doc $(EXPORT_DIR) - cp -rf $(ROOT)/tags/v$(VERSION) $(TMP_DIR)/$(NAME)-$(VERSION) - cp -rf .depend configure config.status doc $(TMP_DIR)/$(NAME)-$(VERSION) - cd $(TMP_DIR); \ - (rm -rf $(NAME)-$(VERSION)/.svn $(NAME)-$(VERSION)/*/.svn; \ - tar cvf $(NAME)-$(VERSION).tar $(NAME)-$(VERSION); \ - gzip -f --best $(NAME)-$(VERSION).tar; \ - rm -rf $(NAME)-$(VERSION); \ - mv $(NAME)-$(VERSION).tar.gz $(EXPORT_DIR)) - rm -rf $(TMP_DIR)/$(NAME)-$(VERSION) - -# Rebuilding Makefile -##################### - -Makefile: Makefile.in - ./config.status - -config.status: configure - ./config.status --recheck - -configure: configure.in - autoconf - -# Emacs tags -############ - -TAGS: $(SRC) - otags -o $@ $^ - -# Cleaning -########## - -clean: - rm -f TAGS META $(TESTS) tests/test $(GENERATED) - for i in . src tests utils; do \ - rm -f $$i/*~ $$i/\#* $$i/*.cm[iox] $$i/*.*a $$i/*$(OBJ_EXT) $$i/a.out; \ - done - rm -f utils/example.ml - -dist-clean distclean: clean - rm -rf $(NAME).ps.gz doc $(LIBDIR) - -clean-configure cleanconfig: dist-clean - rm -f Makefile configure config.* - -# Depend -######## - -.depend depend: $(GENERATED) - rm -f .depend - $(CAMLDEP) -I src -I tests src/*.ml src/*.mli tests/*.ml tests/*.mli \ - > .depend - -view-depend: - $(CAMLDOT) .depend | dot -Tps | gv - - -include .depend @@ -1,113 +0,0 @@ -Summary -------- - -1- Introduction -2- Contents -3- Copyright -4- Installation -5- How to use -6- Documentation -7- Makefile -8- Contact the developper - -1- Introduction ---------------- - -The Calendar library is a library providing a set of operations over dates and -times. -This library requires Objective Caml (OCaml) 3.09.1 or higher. -OCaml 3.09 is usable at your own risks. -Older OCaml versions are unsupported. - -2- Contents ------------ - -CHANGES Information about the last changes -COPYING Information about copyright -LGPL Information about LGPL -README This file -Makefile.in Makefile used by configure -configure Script generating Makefile -configure.in Script generating configure (with autoconf) -calendar_faq.txt FAQ frow which some algorithms come -doc HTML documentation of the API -src Source files directory -target Directory containing the built library -tests Test files directory -utils Some utilities - -3- Copyright ------------- - -This program is distributed under the GNU LGPL 2.1. -See the enclosed file COPYING for more details. - -4- Installation ---------------- - -You need Objective Caml >= 3.09.1 to compile the sources. -You need too ocamlfind coming with findlib and available at: - http://www.ocaml-programming.de/packages/ - - 1. Configure with ./configure. - 2. Compile with make. - 3. Install with make install (you may need superuser permissions). - 4. Clean the directory with make clean. - -You can remove files installed by "make install" at any time with : - - make uninstall (you may need superuser permissions) - -5- How to use -------------- - -(a) Use the GODI package of calendar ! - - see: http://godi.ocaml-programming.de - -(b) Or: simply link calendar with your files using ocamlfind. - -For example, if you have a file foo_using_calendar.ml, compile it as follow: - - ocamlfind ocamlc -package calendar -linkpkg foo_using_calendar.ml -or - ocamlfind ocamlopt -package calendar -linkpkg foo_using_calendar.ml - -(c) Or: do not use ocamlfind, link calendar with unix and str and -specify the directory containing calendar: - - ocamlc -I /usr/local/lib/ocaml/site-lib/calendar unix.cma calendarLib.cmo foo_using_calendar.ml -or - ocamlopt -I /usr/local/lib/ocaml/site-lib/calendar unix.cmxa calendarLib.cmx foo_using_calendar.ml - -6- Documentation ----------------- - -The doc directory contains an html documentation of the .mli files. -This documentation is available online at - - http://calendar.forge.ocamlcore.org/doc/ - -7- Makefile ------------ - -A description of some Makefile entries follows : - -i. tests -Execute some tests - -ii. wc -Give informations about the size of the source files. You need ocamlwc (*). - -iii. doc -Produce the documentation of the API. You need ocamldoc (**). - -(*) ocamlwc is available at http://www.lri.fr/~filliatr/software.en.html -(**) ocamldoc is included with Objective Caml - -8- Contact the developper -------------------------- - -You can report bugs and/or give feedbacks by e-mail to : - - Julien.Signoles@NO_SPAM@gmail.com diff --git a/README.md b/README.md new file mode 100644 index 0000000..23e0a71 --- /dev/null +++ b/README.md @@ -0,0 +1,78 @@ +# Calendar + +A calendar library for OCaml. [API documentation](https://ocaml-community.github.io/calendar/calendar/CalendarLib/index.html) + +[![Travis build Status](https://travis-ci.org/ocaml-community/calendar.svg?branch=3.x)](https://travis-ci.org/ocaml-community/calendar) + +1. [Introduction](#1--introduction) +2. [Contents](#2--contents) +3. [Copyright](#3--copyright) +4. [Installation](#4--installation) +5. [How to use](#5--how-to-use) +6. [Documentation](#6--documentation) +7. [Makefile](#7--makefile) +8. [Contact the developers](#8--contact-the-developers) + +## 1- Introduction + +The Calendar library provides types and operations over dates and times. +This library requires OCaml 4.03.0 or higher. +Older OCaml versions are unsupported. + +## 2- Contents + +- `CHANGES` Information about the last changes +- `COPYING` Information about copyright +- `LGPL` Information about LGPL +- `README.md` This file +- `calendar_faq.txt` FAQ frow which some algorithms come +- `doc` HTML documentation of the API +- `src` Source files directory +- `_build/default/` Directory containing the built library +- `tests` Test files directory +- `utils` Some utilities + +## 3- Copyright + +This program is distributed under the GNU LGPL 2.1. +See the enclosed file COPYING for more details. + +## 4- Installation + +Easiest way is `opam install calendar`. + +To manually install the library, you first need to install `dune` and `re`. +Then: + +``` +$ dune build @install +$ dune install +``` + +You can remove files installed with : + +`dune uninstall` + +## 5- How to use + +Use the `calendar` library using ocamlfind. In dune, it means having +an entry `(libraries calendar)`. + +## 6- Documentation + +The doc directory contains an html documentation of the .mli files. +This documentation is available online at http://calendar.forge.ocamlcore.org/doc/ + +## 7- Makefile + +A description of some Makefile entries follows : + +- `make test` will execute some tests. You'll need [alcotest](https://github.com/mirage/alcotest). + + To run only some tests: `dune exec ./tests/test.exe test time` (for example) + +- `make doc` to produce the documentation of the API. You need [odoc](https://github.com/ocaml/odoc) + +## 8- Contact the developers + +You can report bugs at https://github.com/ocaml-community/calendar/issues diff --git a/calendar.opam b/calendar.opam new file mode 100644 index 0000000..8314e9b --- /dev/null +++ b/calendar.opam @@ -0,0 +1,26 @@ +opam-version: "2.0" +version: "3.0.0" +author: "Julien Signoles" +maintainer: "ocaml-community" +license: "LGPL-2.1 with OCaml linking exception" +synopsis: "Library for handling dates and times in your program" +build: [ + ["dune" "build" "-p" name "-j" jobs] + ["dune" "build" "@doc" "-p" name "-j" jobs] {with-doc} + ["dune" "runtest" "-p" name "-j" jobs] {with-test} +] +depends: [ + "ocaml" {>= "4.03"} + "re" {>= "1.7.2"} + "dune" {>= "1.0"} + "odoc" {with-doc} + "alcotest" {with-test} +] +tags: [ "calendar" "date" "time" "datetime" ] +homepage: "https://github.com/ocaml-community/calendar" +doc: "https://ocaml-community.github.io/calendar/" +bug-reports: "https://github.com/ocaml-community/calendar/issues" +dev-repo: "git+https://github.com/ocaml-community/calendar" +description:""" +Calendar is a library for handling dates and times in your program. +""" diff --git a/config.status b/config.status deleted file mode 100755 index 709641a..0000000 --- a/config.status +++ /dev/null @@ -1,906 +0,0 @@ -#! /bin/bash -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/bash} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Report bugs to the package provider." - -ac_cs_config="" -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.68, - with options \"$ac_cs_config\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/localhome/julien/DEV/calendar/trunk' -srcdir='.' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/bash' './configure' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/bash $*" >&6 - CONFIG_SHELL='/bin/bash' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["HAS_NATDYNLINK"]="yes" -S["LIBEXT"]=".a" -S["OBJEXT"]=".o" -S["OCAMLLIB"]="/localhome/julien/.opam/4.00.1/lib/ocaml" -S["OCAMLMAJOR"]="4" -S["OCAMLBEST"]="opt" -S["OCAMLDOT"]="ocamldot" -S["OCAMLWC"]="ocamlwc" -S["OCAMLWEB"]="ocamlweb" -S["OCAMLDOC"]="ocamldoc" -S["OCAMLFIND"]="ocamlfind" -S["OCAMLDEP"]="ocamldep" -S["OCAMLOPTDOTOPT"]="ocamlopt.opt" -S["OCAMLCDOTOPT"]="ocamlc.opt" -S["OCAMLOPT"]="ocamlopt.opt" -S["OCAMLC"]="ocamlc.opt" -S["target_alias"]="" -S["host_alias"]="" -S["build_alias"]="" -S["LIBS"]="" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DPACKAGE_NAME=\\\"\\\" -DPACKAGE_TARNAME=\\\"\\\" -DPACKAGE_VERSION=\\\"\\\" -DPACKAGE_STRING=\\\"\\\" -DPACKAGE_BUGREPORT=\\\"\\\" -DPACKAGE_URL=\\\"\\\"" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr/local" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="" -S["PACKAGE_VERSION"]="" -S["PACKAGE_TARNAME"]="" -S["PACKAGE_NAME"]="" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/bash" -_ACAWK -cat >>"$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - - -eval set X " :F $CONFIG_FILES " -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - - - - esac - -done # for ac_tag - - -as_fn_exit 0 diff --git a/configure b/configure deleted file mode 100755 index dedfdac..0000000 --- a/configure +++ /dev/null @@ -1,3410 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68. -# -# -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software -# Foundation, Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : - -else - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1" - if (eval "$as_required") 2>/dev/null; then : - as_have_required=yes -else - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : - -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : - CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : - break 2 -fi -fi - done;; - esac - as_found=false -done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } -IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : - # We cannot yet assume a decent shell, so we have to provide a - # neutralization value for shells without unset; and this also - # works around shells that cannot unset nonexistent variables. - # Preserve -v and -x to the replacement shell. - BASH_ENV=/dev/null - ENV=/dev/null - (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV - export CONFIG_SHELL - case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; - esac - exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} -fi - - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." - else - $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, -$0: including any error possibly output before this -$0: message. Then install a modern shell, or manually run -$0: the script under such a shell if you do have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -test -n "$DJDIR" || exec 7<&0 </dev/null -exec 6>&1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= -PACKAGE_URL= - -ac_unique_file="src/date.ml" -ac_subst_vars='LTLIBOBJS -LIBOBJS -HAS_NATDYNLINK -LIBEXT -OBJEXT -OCAMLLIB -OCAMLMAJOR -OCAMLBEST -OCAMLDOT -OCAMLWC -OCAMLWEB -OCAMLDOC -OCAMLFIND -OCAMLDEP -OCAMLOPTDOTOPT -OCAMLCDOTOPT -OCAMLOPT -OCAMLC -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -' - ac_precious_vars='build_alias -host_alias -target_alias' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used" >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Report bugs to the package provider. -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -configure -generated by GNU Autoconf 2.68 - -Copyright (C) 2010 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - $as_echo "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - $as_echo "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - $as_echo "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -$as_echo "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE -if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac -elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site -else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site -fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" -do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -# Check for Ocaml compilers - -# we first look for ocamlc in the path; if not present, we fail -# Extract the first word of "ocamlc", so it can be a program name with args. -set dummy ocamlc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLC"; then - ac_cv_prog_OCAMLC="$OCAMLC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLC="ocamlc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLC" && ac_cv_prog_OCAMLC="no" -fi -fi -OCAMLC=$ac_cv_prog_OCAMLC -if test -n "$OCAMLC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLC" >&5 -$as_echo "$OCAMLC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if test "$OCAMLC" = no ; then - as_fn_error $? "Cannot find ocamlc." "$LINENO" 5 -fi - -# we extract Ocaml version number and library path: ocaml 3.09.1 is required -OCAMLVERSION=`$OCAMLC -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` -echo $ECHO_N "ocaml version is $OCAMLVERSION: $ECHO_C" -case $OCAMLVERSION in - 3.09.**) OCAMLMAJOR=3; echo "${ECHO_T}Good!";; - 3.09*) OCAMLMAJOR=3; echo "${ECHO_T}Warning: unsupported version. Compile at your own risks";; - 3.0*) echo "${ECHO_T}Unsupported version!"; exit 2;; - 3.*) OCAMLMAJOR=3; echo "${ECHO_T}Good!";; - 4.*) OCAMLMAJOR=4; echo "${ECHO_T}Good!";; - *) echo "${ECHO_T}Unsupported version!"; exit 2;; -esac - -OCAMLLIB=`$OCAMLC -where | tr -d '\r'` -echo "ocaml library path is $OCAMLLIB" - -# then we look for ocamlopt; if not present, we issue a warning -# if the version is not the same, we also discard it -# we set OCAMLBEST to "opt" or "byte", whether ocamlopt is available or not -# Extract the first word of "ocamlopt", so it can be a program name with args. -set dummy ocamlopt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLOPT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLOPT"; then - ac_cv_prog_OCAMLOPT="$OCAMLOPT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLOPT="ocamlopt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLOPT" && ac_cv_prog_OCAMLOPT="no" -fi -fi -OCAMLOPT=$ac_cv_prog_OCAMLOPT -if test -n "$OCAMLOPT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPT" >&5 -$as_echo "$OCAMLOPT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -OCAMLBEST=byte -if test "$OCAMLOPT" = no ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find ocamlopt; bytecode compilation only." >&5 -$as_echo "$as_me: WARNING: Cannot find ocamlopt; bytecode compilation only." >&2;} -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking ocamlopt version" >&5 -$as_echo_n "checking ocamlopt version... " >&6; } - TMPVERSION=`$OCAMLOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVERSION" != "$OCAMLVERSION" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: differs from ocamlc; ocamlopt discarded." >&5 -$as_echo "differs from ocamlc; ocamlopt discarded." >&6; } - OCAMLOPT=no - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -$as_echo "ok" >&6; } - OCAMLBEST=opt - fi -fi - -# checking for ocamlc.opt -# Extract the first word of "ocamlc.opt", so it can be a program name with args. -set dummy ocamlc.opt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLCDOTOPT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLCDOTOPT"; then - ac_cv_prog_OCAMLCDOTOPT="$OCAMLCDOTOPT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLCDOTOPT="ocamlc.opt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLCDOTOPT" && ac_cv_prog_OCAMLCDOTOPT="no" -fi -fi -OCAMLCDOTOPT=$ac_cv_prog_OCAMLCDOTOPT -if test -n "$OCAMLCDOTOPT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLCDOTOPT" >&5 -$as_echo "$OCAMLCDOTOPT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if test "$OCAMLCDOTOPT" != no ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking ocamlc.opt version" >&5 -$as_echo_n "checking ocamlc.opt version... " >&6; } - TMPVERSION=`$OCAMLCDOTOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVERSION" != "$OCAMLVERSION" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: differs from ocamlc; ocamlc.opt discarded." >&5 -$as_echo "differs from ocamlc; ocamlc.opt discarded." >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -$as_echo "ok" >&6; } - OCAMLC=$OCAMLCDOTOPT - fi -fi - -# checking for ocamlopt.opt -if test "$OCAMLOPT" != no ; then - # Extract the first word of "ocamlopt.opt", so it can be a program name with args. -set dummy ocamlopt.opt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLOPTDOTOPT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLOPTDOTOPT"; then - ac_cv_prog_OCAMLOPTDOTOPT="$OCAMLOPTDOTOPT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLOPTDOTOPT="ocamlopt.opt" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLOPTDOTOPT" && ac_cv_prog_OCAMLOPTDOTOPT="no" -fi -fi -OCAMLOPTDOTOPT=$ac_cv_prog_OCAMLOPTDOTOPT -if test -n "$OCAMLOPTDOTOPT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPTDOTOPT" >&5 -$as_echo "$OCAMLOPTDOTOPT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if test "$OCAMLOPTDOTOPT" != no ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking ocamlc.opt version" >&5 -$as_echo_n "checking ocamlc.opt version... " >&6; } - TMPVER=`$OCAMLOPTDOTOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVER" != "$OCAMLVERSION" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: differs from ocamlc; ocamlopt.opt discarded." >&5 -$as_echo "differs from ocamlc; ocamlopt.opt discarded." >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -$as_echo "ok" >&6; } - OCAMLOPT=$OCAMLOPTDOTOPT - fi - fi -fi - -# ocamldep and ocamlfind should also be present in the path -# Extract the first word of "ocamldep", so it can be a program name with args. -set dummy ocamldep; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLDEP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLDEP"; then - ac_cv_prog_OCAMLDEP="$OCAMLDEP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLDEP="ocamldep" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLDEP" && ac_cv_prog_OCAMLDEP="no" -fi -fi -OCAMLDEP=$ac_cv_prog_OCAMLDEP -if test -n "$OCAMLDEP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLDEP" >&5 -$as_echo "$OCAMLDEP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if test "$OCAMLDEP" = no ; then - as_fn_error $? "Cannot find ocamldep." "$LINENO" 5 -fi - -# Extract the first word of "ocamlfind", so it can be a program name with args. -set dummy ocamlfind; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLFIND+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLFIND"; then - ac_cv_prog_OCAMLFIND="$OCAMLFIND" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLFIND="ocamlfind" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLFIND" && ac_cv_prog_OCAMLFIND="no" -fi -fi -OCAMLFIND=$ac_cv_prog_OCAMLFIND -if test -n "$OCAMLFIND"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLFIND" >&5 -$as_echo "$OCAMLFIND" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if test "$OCAMLFIND" = no ; then - as_fn_error $? "Cannot find ocamlfind." "$LINENO" 5 -fi - -# Not mandatory tools - -# Extract the first word of "ocamldoc", so it can be a program name with args. -set dummy ocamldoc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLDOC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLDOC"; then - ac_cv_prog_OCAMLDOC="$OCAMLDOC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLDOC="ocamldoc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLDOC" && ac_cv_prog_OCAMLDOC="true" -fi -fi -OCAMLDOC=$ac_cv_prog_OCAMLDOC -if test -n "$OCAMLDOC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLDOC" >&5 -$as_echo "$OCAMLDOC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if test "$OCAMLDOC" = true ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find ocamldoc" >&5 -$as_echo "$as_me: WARNING: Cannot find ocamldoc" >&2;} -# JS: documentation generator does not work with ocamldoc.opt :( -#else -# AC_CHECK_PROG(OCAMLDOCOPT,ocamldoc.opt,ocamldoc.opt,no) -# if test "$OCAMLDOCOPT" != no ; then -# OCAMLDOC=$OCAMLDOCOPT -# fi -fi - -# Extract the first word of "ocamlweb", so it can be a program name with args. -set dummy ocamlweb; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLWEB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLWEB"; then - ac_cv_prog_OCAMLWEB="$OCAMLWEB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLWEB="ocamlweb" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLWEB" && ac_cv_prog_OCAMLWEB="ocamlweb" -fi -fi -OCAMLWEB=$ac_cv_prog_OCAMLWEB -if test -n "$OCAMLWEB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLWEB" >&5 -$as_echo "$OCAMLWEB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -# Extract the first word of "ocamlwc", so it can be a program name with args. -set dummy ocamlwc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLWC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLWC"; then - ac_cv_prog_OCAMLWC="$OCAMLWC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLWC="ocamlwc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLWC" && ac_cv_prog_OCAMLWC="ocamlwc" -fi -fi -OCAMLWC=$ac_cv_prog_OCAMLWC -if test -n "$OCAMLWC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLWC" >&5 -$as_echo "$OCAMLWC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -# Extract the first word of "ocamldot", so it can be a program name with args. -set dummy ocamldot; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_OCAMLDOT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$OCAMLDOT"; then - ac_cv_prog_OCAMLDOT="$OCAMLDOT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OCAMLDOT="ocamldot" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_OCAMLDOT" && ac_cv_prog_OCAMLDOT="ocamldot" -fi -fi -OCAMLDOT=$ac_cv_prog_OCAMLDOT -if test -n "$OCAMLDOT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLDOT" >&5 -$as_echo "$OCAMLDOT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - -# platform -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking platform" >&5 -$as_echo_n "checking platform... " >&6; } -#if echo "let _ = Sys.os_type" | ocaml | grep -q Win32; then -if test -z "$system" ; then - system=`ocamlc -config 2>/dev/null|grep system|sed 's/system: //'` - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${system}" >&5 -$as_echo "${system}" >&6; } - # This may be - # - mingw - # - win32 - # - win64 - # - cygwin - # - some other string means Unix - # - empty means ocamlc does not support -config -fi - -use_cygpath=0 -case "$system" in - mingw) use_cygpath=1;; - win32) use_cygpath=1;; - win64) use_cygpath=1;; -esac - -if test ${use_cygpath} -gt 0 ; then - OCAMLDEP="${OCAMLDEP} -slash" -fi - -# extension for object and library files -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking extension for object files" >&5 -$as_echo_n "checking extension for object files... " >&6; } -OBJEXT=`ocamlc -config 2>/dev/null|grep ext_obj|sed 's/ext_obj: //'` -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${OBJEXT}" >&5 -$as_echo "${OBJEXT}" >&6; } - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking extension for library files" >&5 -$as_echo_n "checking extension for library files... " >&6; } -LIBEXT=`ocamlc -config 2>/dev/null|grep ext_lib|sed 's/ext_lib: //'` -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${LIBEXT}" >&5 -$as_echo "${LIBEXT}" >&6; } - -# Checking workable native dynlink -HAS_NATDYNLINK=no -as_ac_File=`$as_echo "ac_cv_file_${OCAMLLIB}/dynlink.cmxa" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${OCAMLLIB}/dynlink.cmxa" >&5 -$as_echo_n "checking for ${OCAMLLIB}/dynlink.cmxa... " >&6; } -if eval \${$as_ac_File+:} false; then : - $as_echo_n "(cached) " >&6 -else - test "$cross_compiling" = yes && - as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 -if test -r "${OCAMLLIB}/dynlink.cmxa"; then - eval "$as_ac_File=yes" -else - eval "$as_ac_File=no" -fi -fi -eval ac_res=\$$as_ac_File - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -if eval test \"x\$"$as_ac_File"\" = x"yes"; then : - HAS_NATDYNLINK=yes -else - HAS_NATDYNLINK=no -fi - - -if test "$HAS_NATDYNLINK" != "no" ; then - echo "let f x y = Dynlink.loadfile \"foo\"; ignore (Dynlink.is_native); abs_float (x -. y)" > test_dynlink.ml - if ($OCAMLOPT -shared -linkall -o test_dynlink.cmxs test_dynlink.ml) \ - 2> /dev/null ; \ - then - HAS_NATDYNLINK=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: result: native dynlink works fine. Great." >&5 -$as_echo "native dynlink works fine. Great." >&6; } - else - HAS_NATDYNLINK=no - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: native dynlink does not work on your platform. Disabled." >&5 -$as_echo "$as_me: WARNING: native dynlink does not work on your platform. Disabled." >&2;} - fi - rm -f test_dynlink.* -fi - -# substitutions to perform - - - - - - - - - - - - - - - -# Finally create the Makefile from Makefile.in -ac_config_files="$ac_config_files Makefile" - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -ac_script=' -:mline -/\\$/{ - N - s,\\\n,, - b mline -} -t clear -:clear -s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g -t quote -s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g -t quote -b any -:quote -s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g -s/\[/\\&/g -s/\]/\\&/g -s/\$/$$/g -H -:any -${ - g - s/^\n// - s/\n/ /g - p -} -' -DEFS=`sed -n "$ac_script" confdefs.h` - - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="$ac_config_files" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Report bugs to the package provider." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.68, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' <conf$$subs.awk | sed ' -/^[^""]/{ - N - s/\n// -} -' >>$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - - -eval set X " :F $CONFIG_FILES " -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - - - - esac - -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - -chmod a-w Makefile diff --git a/configure.in b/configure.in deleted file mode 100644 index 89f1df3..0000000 --- a/configure.in +++ /dev/null @@ -1,211 +0,0 @@ -########################################################################## -# # -# autoconf input for Objective Caml programs # -# Copyright (C) 2001 Jean-Christophe Filliâtre # -# from a first script by Georges Mariano # -# # -# Script modified by Julien Signoles for the Calendar library. # -# # -# This library is free software; you can redistribute it and/or # -# modify it under the terms of the GNU Library General Public # -# License version 2, as published by the Free Software Foundation. # -# # -# This library is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # -# # -# See the GNU Library General Public License version 2 for more # -# details (see <http://www.gnu.org/licenses/>). # -# # -########################################################################## - -# the script generated by autoconf from this input will set the following -# variables: -# OCAMLC "ocamlc" if present in the path, or a failure -# or "ocamlc.opt" if present with same version number as ocamlc -# OCAMLOPT "ocamlopt" (or "ocamlopt.opt" if present), or "no" -# OCAMLBEST either "byte" if no native compiler was found, -# or "opt" otherwise -# OCAMLDEP "ocamldep" -# OCAMLLIB the path to the ocaml standard library -# OCAMLFIND "ocamlfind" -# OCAMLVERSION the ocaml version number -# OCAMLDOC "ocamldoc" or "ocamldoc.opt" (not mandatory) -# OCAMLWEB "ocamlweb" (not mandatory) -# OCAMLWC "ocamlwc" (not mandatory) -# OCAMLDOT "ocamldot" (not mandatory) - -# check for one particular file of the sources -# ADAPT THE FOLLOWING LINE TO YOUR SOURCES! -AC_INIT(src/date.ml) - -# Check for Ocaml compilers - -# we first look for ocamlc in the path; if not present, we fail -AC_CHECK_PROG(OCAMLC,ocamlc,ocamlc,no) -if test "$OCAMLC" = no ; then - AC_MSG_ERROR(Cannot find ocamlc.) -fi - -# we extract Ocaml version number and library path: ocaml 3.09.1 is required -OCAMLVERSION=`$OCAMLC -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` -echo $ECHO_N "ocaml version is $OCAMLVERSION: $ECHO_C" -case $OCAMLVERSION in - 3.09.**) OCAMLMAJOR=3; echo "${ECHO_T}Good!";; - 3.09*) OCAMLMAJOR=3; echo "${ECHO_T}Warning: unsupported version. Compile at your own risks";; - 3.0*) echo "${ECHO_T}Unsupported version!"; exit 2;; - 3.*) OCAMLMAJOR=3; echo "${ECHO_T}Good!";; - 4.*) OCAMLMAJOR=4; echo "${ECHO_T}Good!";; - *) echo "${ECHO_T}Unsupported version!"; exit 2;; -esac - -OCAMLLIB=`$OCAMLC -where | tr -d '\r'` -echo "ocaml library path is $OCAMLLIB" - -# then we look for ocamlopt; if not present, we issue a warning -# if the version is not the same, we also discard it -# we set OCAMLBEST to "opt" or "byte", whether ocamlopt is available or not -AC_CHECK_PROG(OCAMLOPT,ocamlopt,ocamlopt,no) -OCAMLBEST=byte -if test "$OCAMLOPT" = no ; then - AC_MSG_WARN(Cannot find ocamlopt; bytecode compilation only.) -else - AC_MSG_CHECKING(ocamlopt version) - TMPVERSION=`$OCAMLOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVERSION" != "$OCAMLVERSION" ; then - AC_MSG_RESULT(differs from ocamlc; ocamlopt discarded.) - OCAMLOPT=no - else - AC_MSG_RESULT(ok) - OCAMLBEST=opt - fi -fi - -# checking for ocamlc.opt -AC_CHECK_PROG(OCAMLCDOTOPT,ocamlc.opt,ocamlc.opt,no) -if test "$OCAMLCDOTOPT" != no ; then - AC_MSG_CHECKING(ocamlc.opt version) - TMPVERSION=`$OCAMLCDOTOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVERSION" != "$OCAMLVERSION" ; then - AC_MSG_RESULT(differs from ocamlc; ocamlc.opt discarded.) - else - AC_MSG_RESULT(ok) - OCAMLC=$OCAMLCDOTOPT - fi -fi - -# checking for ocamlopt.opt -if test "$OCAMLOPT" != no ; then - AC_CHECK_PROG(OCAMLOPTDOTOPT,ocamlopt.opt,ocamlopt.opt,no) - if test "$OCAMLOPTDOTOPT" != no ; then - AC_MSG_CHECKING(ocamlc.opt version) - TMPVER=`$OCAMLOPTDOTOPT -v | sed -n -e 's|.*version *\(.*\)$|\1|p' ` - if test "$TMPVER" != "$OCAMLVERSION" ; then - AC_MSG_RESULT(differs from ocamlc; ocamlopt.opt discarded.) - else - AC_MSG_RESULT(ok) - OCAMLOPT=$OCAMLOPTDOTOPT - fi - fi -fi - -# ocamldep and ocamlfind should also be present in the path -AC_CHECK_PROG(OCAMLDEP,ocamldep,ocamldep,no) -if test "$OCAMLDEP" = no ; then - AC_MSG_ERROR(Cannot find ocamldep.) -fi - -AC_CHECK_PROG(OCAMLFIND,ocamlfind,ocamlfind,no) -if test "$OCAMLFIND" = no ; then - AC_MSG_ERROR(Cannot find ocamlfind.) -fi - -# Not mandatory tools - -AC_CHECK_PROG(OCAMLDOC,ocamldoc,ocamldoc,true) -if test "$OCAMLDOC" = true ; then - AC_MSG_WARN(Cannot find ocamldoc) -# JS: documentation generator does not work with ocamldoc.opt :( -#else -# AC_CHECK_PROG(OCAMLDOCOPT,ocamldoc.opt,ocamldoc.opt,no) -# if test "$OCAMLDOCOPT" != no ; then -# OCAMLDOC=$OCAMLDOCOPT -# fi -fi - -AC_CHECK_PROG(OCAMLWEB,ocamlweb,ocamlweb,ocamlweb) -AC_CHECK_PROG(OCAMLWC,ocamlwc,ocamlwc,ocamlwc) -AC_CHECK_PROG(OCAMLDOT,ocamldot,ocamldot,ocamldot) - -# platform -AC_MSG_CHECKING(platform) -#if echo "let _ = Sys.os_type" | ocaml | grep -q Win32; then -if test -z "$system" ; then - system=`ocamlc -config 2>/dev/null|grep system|sed 's/system: //'` - AC_MSG_RESULT(${system}) - # This may be - # - mingw - # - win32 - # - win64 - # - cygwin - # - some other string means Unix - # - empty means ocamlc does not support -config -fi - -use_cygpath=0 -case "$system" in - mingw) use_cygpath=1;; - win32) use_cygpath=1;; - win64) use_cygpath=1;; -esac - -if test ${use_cygpath} -gt 0 ; then - OCAMLDEP="${OCAMLDEP} -slash" -fi - -# extension for object and library files -AC_MSG_CHECKING(extension for object files) -OBJEXT=`ocamlc -config 2>/dev/null|grep ext_obj|sed 's/ext_obj: //'` -AC_MSG_RESULT(${OBJEXT}) - -AC_MSG_CHECKING(extension for library files) -LIBEXT=`ocamlc -config 2>/dev/null|grep ext_lib|sed 's/ext_lib: //'` -AC_MSG_RESULT(${LIBEXT}) - -# Checking workable native dynlink -HAS_NATDYNLINK=no -AC_CHECK_FILE(${OCAMLLIB}/dynlink.cmxa,HAS_NATDYNLINK=yes,HAS_NATDYNLINK=no) - -if test "$HAS_NATDYNLINK" != "no" ; then - echo "let f x y = Dynlink.loadfile \"foo\"; ignore (Dynlink.is_native); abs_float (x -. y)" > test_dynlink.ml - if ($OCAMLOPT -shared -linkall -o test_dynlink.cmxs test_dynlink.ml) \ - 2> /dev/null ; \ - then - HAS_NATDYNLINK=yes - AC_MSG_RESULT([native dynlink works fine. Great.]) - else - HAS_NATDYNLINK=no - AC_MSG_WARN([native dynlink does not work on your platform. Disabled.]) - fi - rm -f test_dynlink.* -fi - -# substitutions to perform -AC_SUBST(OCAMLC) -AC_SUBST(OCAMLOPT) -AC_SUBST(OCAMLDEP) -AC_SUBST(OCAMLFIND) -AC_SUBST(OCAMLBEST) -AC_SUBST(OCAMLMAJOR) -AC_SUBST(OCAMLLIB) -AC_SUBST(OCAMLDOC) -AC_SUBST(OCAMLWEB) -AC_SUBST(OCAMLWC) -AC_SUBST(OCAMLDOT) -AC_SUBST(OBJEXT) -AC_SUBST(LIBEXT) -AC_SUBST(HAS_NATDYNLINK) - -# Finally create the Makefile from Makefile.in -AC_OUTPUT(Makefile) -chmod a-w Makefile diff --git a/doc/Calendar.Precise.html b/doc/Calendar.Precise.html deleted file mode 100644 index ec57f49..0000000 --- a/doc/Calendar.Precise.html +++ /dev/null @@ -1,400 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Calendar.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Calendars are comparable" rel="Section" href="#2_Calendarsarecomparable"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on calendars and periods" rel="Section" href="#2_Arithmeticoperationsoncalendarsandperiods"> -<title>Calendar.Precise</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Calendar.html" title="Calendar">Up</a> - </div> -<h1>Module <a href="type_Calendar.Precise.html">Calendar.Precise</a></h1> -<pre><span class="keyword">module</span> Precise: <code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = Date and module Time = Time</code></pre><div class="info"> -More precise implementation of calendar in which seconds are integer.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Date.html">Date</a>: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Time.html">Time</a>: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar. -</div> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = <code class="type">Date.day</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Days of the week.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = <code class="type">Date.month</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Months of the year.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">Date.year</code> </pre> -<div class="info"> -Year as an int<br> -</div> - -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> = <code class="type">Time.second</code> </pre> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Day | `Hour | `Minute | `Month | `Second | `Week | `Year ]</code> </pre> -<div class="info"> -The different fields of a calendar.<br> -</div> - -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">second</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second".<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -> ?second:<a href="Calendar_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> (resp. of <code class="code">hour</code>, <code class="code">minute</code> - and <code class="code">second</code>) is <code class="code">1</code> (resp. <code class="code">0</code>).<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALcreate"><span class="keyword">val</span> create</span> : <code class="type">Date.t -> Time.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time.<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Julian day. - More precise than <code class="code"><span class="constructor">Date</span>.from_jd</code>: the fractional part represents the - time.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Modified Julian day. - It is <code class="code"><span class="constructor">Julian</span> day - 2 400 000.5</code> (more precise than <code class="code"><span class="constructor">Date</span>.from_mjd</code>).<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<br> -Those functions have the same behaviour as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALconvert">Time_sig.S.convert</a><br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALto_gmt">Time_sig.S.to_gmt</a><br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALfrom_gmt">Time_sig.S.from_gmt</a><br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_in_month">Date_sig.S.days_in_month</a><br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_week">Date_sig.S.days_of_week</a><br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_month">Date_sig.S.days_of_month</a><br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_year">Date_sig.S.days_of_year</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALweek">Date_sig.S.week</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALmonth">Date_sig.S.month</a><br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALyear">Date_sig.S.year</a><br> -</div> -<br> -<code class="code">to_jd</code> and <code class="code">to_mjd</code> are more precise than <a href="Date_sig.S.html#VALto_jd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_jd</code></a> and - <a href="Date_sig.S.html#VALto_mjd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_mjd</code></a>.<br> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALhour">Time_sig.S.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALminute">Time_sig.S.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALsecond">Time_sig.S.second</a><br> -</div> -<br> -<h2 id="2_Calendarsarecomparable">Calendars are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for calendars.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_leap_day">Date_sig.S.is_leap_day</a><br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_gregorian">Date_sig.S.is_gregorian</a><br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_julian">Date_sig.S.is_julian</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_pm">Time_sig.S.is_pm</a><br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_am">Time_sig.S.is_am</a><br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. - The field <code class="code">isdst</code> is always <code class="code"><span class="keyword">false</span></code>. More precise than - <a href="Date_sig.S.html#VALto_unixtm"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixtm</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assumes the current time zone. - So, The following invariant holds: - <code class="code">hour (from_unixtm u) = u.<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. - So such a float is convertible with those of the module <code class="code"><span class="constructor">Unix</span></code>. - More precise than <a href="Date_sig.S.html#VALto_unixfloat"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixfloat</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Assumes the current time zone. - So, the following invariant holds: - <code class="code">hour (from_unixfloat u) = (<span class="constructor">Unix</span>.gmtime u).<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">Date.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Convert a date to a calendar. - The time is midnight in the current time zone.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Date.t</code></pre><div class="info"> -Convert a calendar to a date. Time part of the calendar is ignored.<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Time.t</code></pre><div class="info"> -Convert a calendar to a time. Date part of the calendar is ignored.<br> -<b>Since</b> 1.03<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars. -</div> -<br> -<h2 id="2_Arithmeticoperationsoncalendarsandperiods">Arithmetic operations on calendars and periods</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALadd">Date_sig.S.add</a><br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> <a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALsub">Date_sig.S.sub</a><br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">Period.t</a></code></pre><div class="info"> -<b>Since</b> 2.03<br> -<b>See also</b> <a href="Date_sig.S.html#VALprecise_sub">Date_sig.S.precise_sub</a><br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALrem">Date_sig.S.rem</a><br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALnext">Date_sig.S.next</a><br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALprev">Date_sig.S.prev</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar.html b/doc/Calendar.html deleted file mode 100644 index 0eb466b..0000000 --- a/doc/Calendar.html +++ /dev/null @@ -1,49 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar_builder.html"> -<link rel="next" href="Fcalendar.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar_builder.html" title="Calendar_builder">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Fcalendar.html" title="Fcalendar">Next</a> -</div> -<h1>Module <a href="type_Calendar.html">Calendar</a></h1> -<pre><span class="keyword">module</span> Calendar: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Calendar implementation in which seconds are integer. -<p> - - This module uses float. Then results may be unprecise, especially - comparison of calendars which differ with few seconds. - In this case, consider to use module <code class="code"><span class="constructor">Precise</span></code>.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Calendar_sig.S.html">Calendar_sig.S</a></pre> -<pre><span class="keyword">module</span> <a href="Calendar.Precise.html">Precise</a>: <code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = Date and module Time = Time</code></pre><div class="info"> -More precise implementation of calendar in which seconds are integer. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_builder.Make.html b/doc/Calendar_builder.Make.html deleted file mode 100644 index 54debfc..0000000 --- a/doc/Calendar_builder.Make.html +++ /dev/null @@ -1,424 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Calendar_builder.Make_Precise.html"> -<link rel="Up" href="Calendar_builder.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Calendars are comparable" rel="Section" href="#2_Calendarsarecomparable"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on calendars and periods" rel="Section" href="#2_Arithmeticoperationsoncalendarsandperiods"> -<title>Calendar_builder.Make</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Calendar_builder.html" title="Calendar_builder">Up</a> - <a class="post" href="Calendar_builder.Make_Precise.html" title="Calendar_builder.Make_Precise">Next</a> -</div> -<h1>Functor <a href="type_Calendar_builder.Make.html">Calendar_builder.Make</a></h1> -<pre><span class="keyword">module</span> Make: <div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">D</span></code><code class="code"> : </code><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">T</span></code><code class="code"> : </code><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = D and module Time = T</code></div></div></pre><div class="info"> -Implement a calendar from a date implementation and a time implementation. -<p> - - This module uses float. Then results may be very unprecise.<br> -<b>Since</b> 2.0<br> -</div> -<table border="0" cellpadding="3" width="100%"> -<tr> -<td align="left" valign="top" width="1%%"><b>Parameters: </b></td> -<td> -<table class="paramstable"> -<tr> -<td align="center" valign="top" width="15%"> -<code>D</code></td> -<td align="center" valign="top">:</td> -<td><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code> -<tr> -<td align="center" valign="top" width="15%"> -<code>T</code></td> -<td align="center" valign="top">:</td> -<td><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code> -</table> -</td> -</tr> -</table> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Date.html">Date</a>: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Time.html">Time</a>: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar. -</div> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = <code class="type">Date.day</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Days of the week.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = <code class="type">Date.month</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Months of the year.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">Date.year</code> </pre> -<div class="info"> -Year as an int<br> -</div> - -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> = <code class="type">Time.second</code> </pre> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Day | `Hour | `Minute | `Month | `Second | `Week | `Year ]</code> </pre> -<div class="info"> -The different fields of a calendar.<br> -</div> - -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">second</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second".<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -> ?second:<a href="Calendar_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> (resp. of <code class="code">hour</code>, <code class="code">minute</code> - and <code class="code">second</code>) is <code class="code">1</code> (resp. <code class="code">0</code>).<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALcreate"><span class="keyword">val</span> create</span> : <code class="type">Date.t -> Time.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time.<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Julian day. - More precise than <code class="code"><span class="constructor">Date</span>.from_jd</code>: the fractional part represents the - time.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Modified Julian day. - It is <code class="code"><span class="constructor">Julian</span> day - 2 400 000.5</code> (more precise than <code class="code"><span class="constructor">Date</span>.from_mjd</code>).<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<br> -Those functions have the same behaviour as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALconvert">Time_sig.S.convert</a><br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALto_gmt">Time_sig.S.to_gmt</a><br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALfrom_gmt">Time_sig.S.from_gmt</a><br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_in_month">Date_sig.S.days_in_month</a><br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_week">Date_sig.S.days_of_week</a><br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_month">Date_sig.S.days_of_month</a><br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_year">Date_sig.S.days_of_year</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALweek">Date_sig.S.week</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALmonth">Date_sig.S.month</a><br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALyear">Date_sig.S.year</a><br> -</div> -<br> -<code class="code">to_jd</code> and <code class="code">to_mjd</code> are more precise than <a href="Date_sig.S.html#VALto_jd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_jd</code></a> and - <a href="Date_sig.S.html#VALto_mjd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_mjd</code></a>.<br> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALhour">Time_sig.S.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALminute">Time_sig.S.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALsecond">Time_sig.S.second</a><br> -</div> -<br> -<h2 id="2_Calendarsarecomparable">Calendars are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for calendars.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_leap_day">Date_sig.S.is_leap_day</a><br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_gregorian">Date_sig.S.is_gregorian</a><br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_julian">Date_sig.S.is_julian</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_pm">Time_sig.S.is_pm</a><br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_am">Time_sig.S.is_am</a><br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. - The field <code class="code">isdst</code> is always <code class="code"><span class="keyword">false</span></code>. More precise than - <a href="Date_sig.S.html#VALto_unixtm"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixtm</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assumes the current time zone. - So, The following invariant holds: - <code class="code">hour (from_unixtm u) = u.<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. - So such a float is convertible with those of the module <code class="code"><span class="constructor">Unix</span></code>. - More precise than <a href="Date_sig.S.html#VALto_unixfloat"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixfloat</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Assumes the current time zone. - So, the following invariant holds: - <code class="code">hour (from_unixfloat u) = (<span class="constructor">Unix</span>.gmtime u).<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">Date.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Convert a date to a calendar. - The time is midnight in the current time zone.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Date.t</code></pre><div class="info"> -Convert a calendar to a date. Time part of the calendar is ignored.<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Time.t</code></pre><div class="info"> -Convert a calendar to a time. Date part of the calendar is ignored.<br> -<b>Since</b> 1.03<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars. -</div> -<br> -<h2 id="2_Arithmeticoperationsoncalendarsandperiods">Arithmetic operations on calendars and periods</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALadd">Date_sig.S.add</a><br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> <a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALsub">Date_sig.S.sub</a><br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">Period.t</a></code></pre><div class="info"> -<b>Since</b> 2.03<br> -<b>See also</b> <a href="Date_sig.S.html#VALprecise_sub">Date_sig.S.precise_sub</a><br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALrem">Date_sig.S.rem</a><br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALnext">Date_sig.S.next</a><br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALprev">Date_sig.S.prev</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_builder.Make_Precise.html b/doc/Calendar_builder.Make_Precise.html deleted file mode 100644 index 451c387..0000000 --- a/doc/Calendar_builder.Make_Precise.html +++ /dev/null @@ -1,422 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar_builder.Make.html"> -<link rel="Up" href="Calendar_builder.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Calendars are comparable" rel="Section" href="#2_Calendarsarecomparable"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on calendars and periods" rel="Section" href="#2_Arithmeticoperationsoncalendarsandperiods"> -<title>Calendar_builder.Make_Precise</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar_builder.Make.html" title="Calendar_builder.Make">Previous</a> - <a class="up" href="Calendar_builder.html" title="Calendar_builder">Up</a> - </div> -<h1>Functor <a href="type_Calendar_builder.Make_Precise.html">Calendar_builder.Make_Precise</a></h1> -<pre><span class="keyword">module</span> Make_Precise: <div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">D</span></code><code class="code"> : </code><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">T</span></code><code class="code"> : </code><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = D and module Time = T</code></div></div></pre><div class="info"> -Similar to <a href="Calendar_builder.Make.html"><code class="code"><span class="constructor">Calendar_builder</span>.<span class="constructor">Make</span></code></a> but results are more precise. The counterpart is that - some operations are less efficient.<br> -<b>Since</b> 2.0<br> -</div> -<table border="0" cellpadding="3" width="100%"> -<tr> -<td align="left" valign="top" width="1%%"><b>Parameters: </b></td> -<td> -<table class="paramstable"> -<tr> -<td align="center" valign="top" width="15%"> -<code>D</code></td> -<td align="center" valign="top">:</td> -<td><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code> -<tr> -<td align="center" valign="top" width="15%"> -<code>T</code></td> -<td align="center" valign="top">:</td> -<td><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code> -</table> -</td> -</tr> -</table> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Date.html">Date</a>: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Time.html">Time</a>: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar. -</div> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = <code class="type">Date.day</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Days of the week.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = <code class="type">Date.month</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Months of the year.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">Date.year</code> </pre> -<div class="info"> -Year as an int<br> -</div> - -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> = <code class="type">Time.second</code> </pre> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Day | `Hour | `Minute | `Month | `Second | `Week | `Year ]</code> </pre> -<div class="info"> -The different fields of a calendar.<br> -</div> - -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">second</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second".<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -> ?second:<a href="Calendar_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> (resp. of <code class="code">hour</code>, <code class="code">minute</code> - and <code class="code">second</code>) is <code class="code">1</code> (resp. <code class="code">0</code>).<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALcreate"><span class="keyword">val</span> create</span> : <code class="type">Date.t -> Time.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time.<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Julian day. - More precise than <code class="code"><span class="constructor">Date</span>.from_jd</code>: the fractional part represents the - time.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Modified Julian day. - It is <code class="code"><span class="constructor">Julian</span> day - 2 400 000.5</code> (more precise than <code class="code"><span class="constructor">Date</span>.from_mjd</code>).<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<br> -Those functions have the same behaviour as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALconvert">Time_sig.S.convert</a><br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALto_gmt">Time_sig.S.to_gmt</a><br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALfrom_gmt">Time_sig.S.from_gmt</a><br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_in_month">Date_sig.S.days_in_month</a><br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_week">Date_sig.S.days_of_week</a><br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_month">Date_sig.S.days_of_month</a><br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_year">Date_sig.S.days_of_year</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALweek">Date_sig.S.week</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALmonth">Date_sig.S.month</a><br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALyear">Date_sig.S.year</a><br> -</div> -<br> -<code class="code">to_jd</code> and <code class="code">to_mjd</code> are more precise than <a href="Date_sig.S.html#VALto_jd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_jd</code></a> and - <a href="Date_sig.S.html#VALto_mjd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_mjd</code></a>.<br> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALhour">Time_sig.S.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALminute">Time_sig.S.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALsecond">Time_sig.S.second</a><br> -</div> -<br> -<h2 id="2_Calendarsarecomparable">Calendars are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for calendars.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_leap_day">Date_sig.S.is_leap_day</a><br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_gregorian">Date_sig.S.is_gregorian</a><br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_julian">Date_sig.S.is_julian</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_pm">Time_sig.S.is_pm</a><br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_am">Time_sig.S.is_am</a><br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. - The field <code class="code">isdst</code> is always <code class="code"><span class="keyword">false</span></code>. More precise than - <a href="Date_sig.S.html#VALto_unixtm"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixtm</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assumes the current time zone. - So, The following invariant holds: - <code class="code">hour (from_unixtm u) = u.<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. - So such a float is convertible with those of the module <code class="code"><span class="constructor">Unix</span></code>. - More precise than <a href="Date_sig.S.html#VALto_unixfloat"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixfloat</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Assumes the current time zone. - So, the following invariant holds: - <code class="code">hour (from_unixfloat u) = (<span class="constructor">Unix</span>.gmtime u).<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">Date.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Convert a date to a calendar. - The time is midnight in the current time zone.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Date.t</code></pre><div class="info"> -Convert a calendar to a date. Time part of the calendar is ignored.<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Time.t</code></pre><div class="info"> -Convert a calendar to a time. Date part of the calendar is ignored.<br> -<b>Since</b> 1.03<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars. -</div> -<br> -<h2 id="2_Arithmeticoperationsoncalendarsandperiods">Arithmetic operations on calendars and periods</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALadd">Date_sig.S.add</a><br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> <a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALsub">Date_sig.S.sub</a><br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">Period.t</a></code></pre><div class="info"> -<b>Since</b> 2.03<br> -<b>See also</b> <a href="Date_sig.S.html#VALprecise_sub">Date_sig.S.precise_sub</a><br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALrem">Date_sig.S.rem</a><br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALnext">Date_sig.S.next</a><br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALprev">Date_sig.S.prev</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_builder.html b/doc/Calendar_builder.html deleted file mode 100644 index f67bccf..0000000 --- a/doc/Calendar_builder.html +++ /dev/null @@ -1,47 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar_sig.html"> -<link rel="next" href="Calendar.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_builder</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar_sig.html" title="Calendar_sig">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Calendar.html" title="Calendar">Next</a> -</div> -<h1>Module <a href="type_Calendar_builder.html">Calendar_builder</a></h1> -<pre><span class="keyword">module</span> Calendar_builder: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_builder.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Generic calendar implementation.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span class="keyword">module</span> <a href="Calendar_builder.Make.html">Make</a>: <div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">D</span></code><code class="code"> : </code><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">T</span></code><code class="code"> : </code><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = D and module Time = T</code></div></div></pre><div class="info"> -Implement a calendar from a date implementation and a time implementation. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_builder.Make_Precise.html">Make_Precise</a>: <div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">D</span></code><code class="code"> : </code><code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><div class="sig_block"><code class="code"><span class="keyword">functor</span> (</code><code class="code"><span class="constructor">T</span></code><code class="code"> : </code><code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="code">) <span class="keywordsign">-></span> </code><code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = D and module Time = T</code></div></div></pre><div class="info"> -Similar to <a href="Calendar_builder.Make.html"><code class="code"><span class="constructor">Calendar_builder</span>.<span class="constructor">Make</span></code></a> but results are more precise. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_sig.S.Date.html b/doc/Calendar_sig.S.Date.html deleted file mode 100644 index 1c23f75..0000000 --- a/doc/Calendar_sig.S.Date.html +++ /dev/null @@ -1,600 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Calendar_sig.S.Time.html"> -<link rel="Up" href="Calendar_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Exceptions" rel="Section" href="#2_Exceptions"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Dates are comparable" rel="Section" href="#2_Datesarecomparable"> -<link title="Boolean operations on dates" rel="Section" href="#2_Booleanoperationsondates"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on dates and periods" rel="Section" href="#2_Arithmeticoperationsondatesandperiods"> -<link title="Operations on years" rel="Section" href="#2_Operationsonyears"> -<title>Calendar_sig.S.Date</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Calendar_sig.S.html" title="Calendar_sig.S">Up</a> - <a class="post" href="Calendar_sig.S.Time.html" title="Calendar_sig.S.Time">Next</a> -</div> -<h1>Module <a href="type_Calendar_sig.S.Date.html">Calendar_sig.S.Date</a></h1> -<pre><span class="keyword">module</span> Date: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type"><a href="Period.html#TYPEdate_field">Period.date_field</a></code> </pre> -<div class="info"> -The different fields of a date.<br> -<b>Since</b> 2.02<br> -</div> - -<pre><span id="TYPEdate"><span class="keyword">type</span> <code class="type">-[< <a href="Date_sig.S.html#TYPEfield">field</a> ]</code> date</span> </pre> -<div class="info"> -Type of a date, without specifying any precision level.<br> -<b>Since</b> 2.02<br> -</div> - -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = <code class="type"><a href="Date_sig.S.html#TYPEfield">field</a> <a href="Date_sig.S.html#TYPEdate">date</a></code> </pre> -<div class="info"> -Type of a date.<br> -</div> - -<pre><code><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = </code></pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> - -</tr></table> - -<div class="info"> -Days of the week.<br> -</div> - -<pre><code><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = </code></pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> - -</tr></table> - -<div class="info"> -Months of the year.<br> -</div> - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">int</code> </pre> -<div class="info"> -Year as an <code class="code">int</code>.<br> -</div> - -<br> -<h2 id="2_Exceptions">Exceptions</h2><br> -<pre><span id="EXCEPTIONOut_of_bounds"><span class="keyword">exception</span> Out_of_bounds</span></pre> -<div class="info"> -Raised when a date is outside the Julian period.<br> -</div> -<pre><span id="EXCEPTIONUndefined"><span class="keyword">exception</span> Undefined</span></pre> -<div class="info"> -Raised when a date belongs to - <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> 14th, 1582]</code>.<br> -</div> -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day</code> makes the date year-month-day. A BC year <code class="code">y</code> - corresponds to the year <code class="code">-(y+1)</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> years (5 BC) and (1 BC) respectively correspond to years - (-4) and 0.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:<a href="Date_sig.S.html#TYPEyear">year</a> -> ?month:int -> ?day:int -> unit -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> is <code class="code">1</code>.<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALmake_year"><span class="keyword">val</span> make_year</span> : <code class="type">int -> [< `Year ] <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">make_year y</code> makes a date only represented by its year <code class="code">y</code>. The month - and the day of such a date are not relevant.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALmake_year_month"><span class="keyword">val</span> make_year_month</span> : <code class="type">int -> int -> [< `Month | `Year ] <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">make_year_month y m</code> makes a date only represented by its year <code class="code">y</code> and - its month <code class="code">m</code>. The day of such a date is not relevant.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALtoday"><span class="keyword">val</span> today</span> : <code class="type">unit -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Date of the current day (based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from its Julian day.<br> -<b>Example:</b> <code class="code">from_jd 0</code> returns the date 4713 BC-1-1.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from its modified Julian day (i.e. Julian day - 2 400 001). - The Modified Julian day is more manageable than the Julian day.<br> -<b>Example:</b> <code class="code">from_mjd 0</code> returns the date 1858-11-17.<br> -</div> -<pre><span id="VALfrom_day_of_year"><span class="keyword">val</span> from_day_of_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from a year and its day of the year.<br> -<b>Since</b> 2.0<br> -<b>Example:</b> <code class="code">from_day_of_year 2008 39</code> returns the date 2008-2-8.<br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Month `Year ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Number of days in the month of a date.<br> -<b>Example:</b> <code class="code">days_in_month (make 2003 6 26)</code> returns <code class="code">30</code>.<br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Day of the week.<br> -<b>Example:</b> <code class="code">day_of_week (make 2003 6 26)</code> returns <code class="code"><span class="constructor">Thu</span></code>.<br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Day of the month.<br> -<b>Example:</b> <code class="code">day_of_month (make 2003 6 26)</code> returns <code class="code">26</code>.<br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Day of the year.<br> -<b>Examples:</b><ul><li><code class="code">day_of_year (make 2003 12 28)</code> returns <code class="code">362</code>.<br> -</li><li><code class="code">day_of_year (make 2003 1 5)</code> returns <code class="code">5</code><br> -</li></ul></div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Week.<br> -<b>Examples:</b><ul><li><code class="code">week (make 2003 12 29)</code> returns <code class="code">1</code>.<br> -</li><li><code class="code">week (make 2003 12 28)</code> returns <code class="code">52</code>.<br> -</li><li><code class="code">week (make 2000 1 2)</code> returns <code class="code">52</code>.<br> -</li><li><code class="code">week (make 2000 1 3)</code> returns <code class="code">1</code>.<br> -</li></ul></div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Month ] <a href="Date_sig.S.html#TYPEdate">date</a> -> <a href="Date_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -Month.<br> -<b>Example:</b> <code class="code">month (make 2003 6 26)</code> returns <code class="code"><span class="constructor">Jun</span></code>.<br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Year ] <a href="Date_sig.S.html#TYPEdate">date</a> -> <a href="Date_sig.S.html#TYPEyear">year</a></code></pre><div class="info"> -Year.<br> -<b>Example:</b> <code class="code">year (make 2003 6 26)</code> returns <code class="code">2003</code>.<br> -</div> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Julian day.<br> -<b>Example:</b> <code class="code">to_jd (make (-4712) 1 1)</code> returns 0.<br> -</div> -<pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Modified Julian day (i.e. Julian day - 2 400 001). - The Modified Julian day is more manageable than the Julian day.<br> -<b>Example:</b> <code class="code">to_mjd (make 1858 11 17)</code> returns 0.<br> -</div> -<br> -<h2 id="2_Datesarecomparable">Dates are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> bool</code></pre><div class="info"> -Equality function between two dates.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Comparison function between two dates.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Hash function for dates.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash</a><br> -</div> -<br> -<h2 id="2_Booleanoperationsondates">Boolean operations on dates</h2><br> -<pre><span id="VALis_valid_date"><span class="keyword">val</span> is_valid_date</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> int -> bool</code></pre><div class="info"> -Check if a date is valid, that is the date has not been coerced to look - like a real date.<br> -<b>Since</b> 2.0<br> -<b>Examples:</b><ul><li><code class="code">is_valid_date 2008 2 30</code> returns <code class="code"><span class="keyword">false</span></code><br> -</li><li><code class="code">is_valid_date 2008 2 8</code> returns <code class="code"><span class="keyword">true</span></code><br> -</li></ul></div> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date is a leap day - (i.e. February, 24th of a leap year); <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date belongs to the Gregorian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> iff a date belongs to the Julian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a date into the <code class="code"><span class="constructor">Unix</span>.tm</code> type. - The field <code class="code">is_isdst</code> is always <code class="code"><span class="keyword">false</span></code>. The fields <code class="code"><span class="constructor">Unix</span>.tm_sec</code>, - <code class="code"><span class="constructor">Unix</span>.tm_min</code> and <code class="code"><span class="constructor">Unix</span>.tm_hour</code> are irrelevant.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assume the current time zone.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a date to a float such than <code class="code">to_unixfloat (make 1970 1 1)</code> - returns <code class="code">0.0</code>. So such a float is convertible with those of the <code class="code"><span class="constructor">Unix</span></code> - module. The fractional part of the result is always <code class="code">0</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Ignore the fractional part of the argument. - Assume the current time zone.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_business"><span class="keyword">val</span> to_business</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> * int * <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Return the "business week" and the day in this week respecting ISO 8601. - Notice that business weeks at the beginning and end of the year can - sometimes have year numbers which don't match the real year.<br> -<b>Since</b> 1.09.0<br> -<b>Examples:</b><ul><li><code class="code">to_business (make 2003 12 29)</code> returns <code class="code">2004, 1, <span class="constructor">Mon</span></code>.<br> -</li><li><code class="code">to_business (make 2003 12 28)</code> returns <code class="code">2003, 52, <span class="constructor">Sun</span></code><br> -</li><li><code class="code">to_business (make 2000 1 2)</code> returns <code class="code">1999, 52, <span class="constructor">Sun</span></code><br> -</li><li><code class="code">to_business (make 2000 1 3)</code> returns <code class="code">2000, 1, <span class="constructor">Mon</span></code><br> -</li></ul></div> -<pre><span id="VALfrom_business"><span class="keyword">val</span> from_business</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> <a href="Date_sig.S.html#TYPEday">day</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_business</code> respecting ISO-8601. - Notice that business weeks at the beginning and end of the year - can sometimes have year numbers which don't match the real year.<br> -<b>Since</b> 1.09.0<br> -<b>Raises</b> <code>Invalid_argument</code> if the date is bad.<br> -</div> -<pre><span id="VALint_of_day"><span class="keyword">val</span> int_of_day</span> : <code class="type"><a href="Date_sig.S.html#TYPEday">day</a> -> int</code></pre><div class="info"> -Convert a day to an integer respecting ISO-8601. - So, Monday is 1, Tuesday is 2, ..., and sunday is 7.<br> -</div> -<pre><span id="VALday_of_int"><span class="keyword">val</span> day_of_int</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Inverse of <code class="code">int_of_day</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the argument does not belong to <code class="code">1; 7</code>.<br> -</div> -<pre><span id="VALint_of_month"><span class="keyword">val</span> int_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEmonth">month</a> -> int</code></pre><div class="info"> -Convert a month to an integer respecting ISO-8601. - So, January is 1, February is 2 and so on.<br> -</div> -<pre><span id="VALmonth_of_int"><span class="keyword">val</span> month_of_int</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -Inverse of <code class="code">int_of_month</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the argument does not belong to <code class="code">1; 12</code>.<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Date_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of days between two dates. -</div> -<br> -<h2 id="2_Arithmeticoperationsondatesandperiods">Arithmetic operations on dates and periods</h2><br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a Period.period -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">add d p</code> returns <code class="code">d + p</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Examples:</b><ul><li><code class="code">add (make 2003 12 31) (<span class="constructor">Period</span>.month 2)</code> returns the date - 2004-3-2 (following the coercion rule describes in the introduction).<br> -</li><li><code class="code">add (make 2003 12 31) (<span class="constructor">Period</span>.month 1)</code> returns the date - 2004-1-31<br> -</li></ul></div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> > `Day `Week ] Period.period</code></pre><div class="info"> -<code class="code">sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>.<br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a <a href="Date_sig.S.html#TYPEdate">date</a> -> Period.t</code></pre><div class="info"> -<code class="code">precise_sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>. - It is equivalent to <code class="code">sub</code>, but:<ul> -<li>the period is expressed with a number of years, months and days, not - only with a number of days;</li> -<li>it is less efficient.</li> -</ul> -<br> -<b>Since</b> 2.03<br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a Period.period -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">rem d p</code> is equivalent to <code class="code">add d (<span class="constructor">Period</span>.opp p)</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -> 'a -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">next d f</code> returns the date corresponding to the next specified field.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> <code class="code">next (make 2003 12 31) <span class="keywordsign">`</span><span class="constructor">Month</span></code> returns the date 2004-1-31 - (i.e. one month later).<br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -> 'a -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">prev d f</code> returns the date corresponding to the previous specified - field.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> <code class="code">prev (make 2003 12 31) <span class="keywordsign">`</span><span class="constructor">Year</span></code> returns the date 2002-12-31 - (i.e. one year ago).<br> -</div> -<br> -<h2 id="2_Operationsonyears">Operations on years</h2><br> -<pre><span id="VALis_leap_year"><span class="keyword">val</span> is_leap_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a year is a leap year; <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALsame_calendar"><span class="keyword">val</span> same_calendar</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if two years have the same calendar; <code class="code"><span class="keyword">false</span></code> - otherwise.<br> -</div> -<pre><span id="VALdays_in_year"><span class="keyword">val</span> days_in_year</span> : <code class="type">?month:<a href="Date_sig.S.html#TYPEmonth">month</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Number of days in a year. -<p> - - <code class="code">days_in_year ~month y</code> returns the number of days in the year <code class="code">y</code> up - to the end of the given month. Thus <code class="code">days_in_year ~month:<span class="constructor">Dec</span> y</code> is the - same as <code class="code">days_in_year y</code>.<br> -</div> -<pre><span id="VALweeks_in_year"><span class="keyword">val</span> weeks_in_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Number of weeks in a year.<br> -</div> -<pre><span id="VALweek_first_last"><span class="keyword">val</span> week_first_last</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a> * <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the first and last days of a week in a year.<br> -<b>Since</b> 1.08<br> -</div> -<pre><span id="VALnth_weekday_of_month"><span class="keyword">val</span> nth_weekday_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEmonth">month</a> -> <a href="Date_sig.S.html#TYPEday">day</a> -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">nth_weekday_of_month y m d n</code> returns the <code class="code">n</code>-th day <code class="code">d</code> in the month - <code class="code">m</code> of the year <code class="code">y</code> (for instance the 3rd Thursday of the month).<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALcentury"><span class="keyword">val</span> century</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Century of a year.<br> -<b>Examples:</b><ul><li><code class="code">century 2001</code> returns 21.<br> -</li><li><code class="code">century 2000</code> returns 20<br> -</li></ul></div> -<pre><span id="VALmillenium"><span class="keyword">val</span> millenium</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Millenium of a year.<br> -<b>Examples:</b><ul><li><code class="code">millenium 2001</code> returns 3.<br> -</li><li><code class="code">millenium 2000</code> returns 2<br> -</li></ul></div> -<pre><span id="VALsolar_number"><span class="keyword">val</span> solar_number</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Solar number. -<p> - - In the Julian calendar there is a one-to-one relationship between the - Solar number and the day on which a particular date falls.<br> -</div> -<pre><span id="VALindiction"><span class="keyword">val</span> indiction</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Indiction. -<p> - - The Indiction was used in the middle ages to specify the position of a - year in a 15 year taxation cycle. It was introduced by emperor - Constantine the Great on 1 September 312 and ceased to be used in - 1806. -<p> - - The Indiction has no astronomical significance.<br> -</div> -<pre><span id="VALgolden_number"><span class="keyword">val</span> golden_number</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Golden number. -<p> - - Considering that the relationship between the moon's phases and the - days of the year repeats itself every 19 years, it is natural to - associate a number between 1 and 19 with each year. - This number is the so-called Golden number.<br> -</div> -<pre><span id="VALepact"><span class="keyword">val</span> epact</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Epact. -<p> - - The Epact is a measure of the age of the moon (i.e. the number of days - that have passed since an "official" new moon) on a particular date.<br> -</div> -<pre><span id="VALeaster"><span class="keyword">val</span> easter</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Sunday. -<p> - - In the Christian world, Easter (and the days immediately preceding it) - is the celebration of the death and resurrection of Jesus in - (approximately) AD 30.<br> -</div> -<pre><span id="VALcarnaval"><span class="keyword">val</span> carnaval</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Carnaval Monday. <code class="code">carnaval y</code> is <code class="code">easter y - 48</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALmardi_gras"><span class="keyword">val</span> mardi_gras</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Mardi Gras. <code class="code">mardi_gras y</code> is <code class="code">easter y - 47</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALash"><span class="keyword">val</span> ash</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Ash Wednesday. <code class="code">ash y</code> is <code class="code">easter y - 46</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALpalm"><span class="keyword">val</span> palm</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Palm Sunday. <code class="code">palm y</code> is <code class="code">easter y - 7</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_friday"><span class="keyword">val</span> easter_friday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Friday. <code class="code">easter_friday y</code> is <code class="code">easter y - 2</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_saturday"><span class="keyword">val</span> easter_saturday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Saturday. <code class="code">easter_saturday y</code> is <code class="code">easter y - 1</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_monday"><span class="keyword">val</span> easter_monday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Monday. <code class="code">easter_monday y</code> is <code class="code">easter y + 1</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALascension"><span class="keyword">val</span> ascension</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Ascension. <code class="code">ascension y</code> is <code class="code">easter y + 39</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALwithsunday"><span class="keyword">val</span> withsunday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Withsunday. <code class="code">withsunday y</code> is <code class="code">easter y + 49</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALwithmonday"><span class="keyword">val</span> withmonday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Withmonday. <code class="code">withmonday y</code> is <code class="code">easter y + 50</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALcorpus_christi"><span class="keyword">val</span> corpus_christi</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Feast of Corpus Christi. <code class="code">corpus_christi y</code> is <code class="code">easter + 60</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_sig.S.Period.html b/doc/Calendar_sig.S.Period.html deleted file mode 100644 index ba91b52..0000000 --- a/doc/Calendar_sig.S.Period.html +++ /dev/null @@ -1,159 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar_sig.S.Time.html"> -<link rel="Up" href="Calendar_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Arithmetic operations" rel="Section" href="#3_Arithmeticoperations"> -<link title="Period is an additive monoid" rel="Section" href="#3_Periodisanadditivemonoid"> -<link title="Periods are comparable" rel="Section" href="#3_Periodsarecomparable"> -<link title="Constructors" rel="Section" href="#3_Constructors"> -<link title="Coercions" rel="Section" href="#3_Coercions"> -<title>Calendar_sig.S.Period</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar_sig.S.Time.html" title="Calendar_sig.S.Time">Previous</a> - <a class="up" href="Calendar_sig.S.html" title="Calendar_sig.S">Up</a> - </div> -<h1>Module <a href="type_Calendar_sig.S.Period.html">Calendar_sig.S.Period</a></h1> -<pre><span class="keyword">module</span> Period: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars.<br> -</div> -<hr width="100%"> -<br> -<h3 id="3_Arithmeticoperations">Arithmetic operations</h3><br> -<pre><span id="TYPEperiod"><span class="keyword">type</span> <code class="type">+[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ]</code> period</span> </pre> - -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = <code class="type"><a href="Period.html#TYPEdate_field">Period.date_field</a> <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code> </pre> -<div class="info"> -Type of a period.<br> -</div> - -<br> -<h3 id="3_Periodisanadditivemonoid">Period is an additive monoid</h3><br> -<pre><span id="VALempty"><span class="keyword">val</span> empty</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -The empty period.<br> -</div> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -Addition of periods.<br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -Substraction of periods.<br> -</div> -<pre><span id="VALopp"><span class="keyword">val</span> opp</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -Opposite of a period.<br> -</div> -<br> -<h3 id="3_Periodsarecomparable">Periods are comparable</h3><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> bool</code></pre><div class="info"> -Equality function between two periods.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> int</code></pre><div class="info"> -Comparison function between two periods.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> int</code></pre><div class="info"> -Hash function for periods.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash</a><br> -</div> -<br> -<h3 id="3_Constructors">Constructors</h3><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -><br> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">Calendar_sig.S.second</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes a period of the - specified length.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">?year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -><br> ?second:<a href="Calendar_sig.S.html#TYPEsecond">Calendar_sig.S.second</a> -> unit -> <a href="Calendar_sig.S.Period.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of each argument is <code class="code">0</code>.<br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.Period.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span></code></a>.<br> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Year ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.Period.html#VALyear">Date_sig.S.Period.year</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Month `Year ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.Period.html#VALmonth">Date_sig.S.Period.month</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.Period.html#VALweek">Date_sig.S.Period.week</a><br> -</div> -<pre><span id="VALday"><span class="keyword">val</span> day</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.Period.html#VALday">Date_sig.S.Period.day</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - .<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.Period.html#VALhour">Time_sig.S.Period.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.Period.html#VALminute">Time_sig.S.Period.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEsecond">Calendar_sig.S.second</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.Period.html#VALsecond">Time_sig.S.Period.second</a><br> -</div> -<br> -<h3 id="3_Coercions">Coercions</h3><br> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) Date.Period.period -><br> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -Convert a date period to a calendar period.<br> -</div> -<pre><span id="VALfrom_time"><span class="keyword">val</span> from_time</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) Time.Period.period -><br> 'a <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a></code></pre><div class="info"> -Convert a time period to a calendar period.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type">([< Date.field ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -> 'a Date.Period.period</code></pre><div class="info"> -Convert a calendar period to a date period. - The fractional time period is ignored.<br> -<b>Example:</b> <code class="code">to_date (hour 60)</code> is equivalent to <code class="code"><span class="constructor">Date</span>.<span class="constructor">Period</span>.days 2</code>.<br> -</div> -<pre><span id="EXCEPTIONNot_computable"><span class="keyword">exception</span> Not_computable</span></pre> -<div class="info"> -<code class="code">= <span class="constructor">Date</span>.<span class="constructor">Period</span>.<span class="constructor">Not_computable</span></code>.<br> -<b>Since</b> 1.04<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> 'a Time.Period.period</code></pre><div class="info"> -<span class="warning">Deprecated.</span>since 2.02: use <a href="Calendar_sig.S.Period.html#VALsafe_to_time"><code class="code"><span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.safe_to_time</code></a> instead<br> -Convert a calendar period to a date period.<br> -<b>Since</b> 1.04<br> -<b>Raises</b> <code>Not_computable</code> if the time period is not computable.<br> -<b>Examples:</b><ul><li><code class="code">to_time (year 1)</code> raises <code class="code"><span class="constructor">Not_computable</span></code> because - a year is not a constant number of days.<br> -</li><li><code class="code">to_time (second 30)</code> returns a time period of <code class="code">30</code> seconds<br> -</li><li><code class="code">to_time (day 6)</code> returns a time period of <code class="code">24 * 3600 * 6 = - 518400</code> seconds<br> -</li></ul></div> -<pre><span id="VALsafe_to_time"><span class="keyword">val</span> safe_to_time</span> : <code class="type">([< `Day | `Week ] as 'a) <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> 'a Time.Period.period</code></pre><div class="info"> -Equivalent to <a href="Calendar_sig.S.Period.html#VALto_time"><code class="code"><span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.to_time</code></a> but never raises any exception.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALymds"><span class="keyword">val</span> ymds</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> -><br> int * int * int * <a href="Calendar_sig.S.html#TYPEsecond">Calendar_sig.S.second</a></code></pre><div class="info"> -Number of years, months, days and seconds in a period.<br> -<b>Since</b> 1.09.0<br> -<b>Examples:</b><ul><li><code class="code">ymds (make (-1) (-2) (-3) (-1) (-2) (-3)</code> returns - <code class="code">-1, -2, -4, 82677</code>.<br> -</li><li><code class="code">ymds (make 1 2 3 1 2 3)</code> returns <code class="code">1, 2, 3, 3723</code><br> -</li></ul></div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_sig.S.Time.html b/doc/Calendar_sig.S.Time.html deleted file mode 100644 index 070edc2..0000000 --- a/doc/Calendar_sig.S.Time.html +++ /dev/null @@ -1,216 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar_sig.S.Date.html"> -<link rel="next" href="Calendar_sig.S.Period.html"> -<link rel="Up" href="Calendar_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Second" rel="Section" href="#2_Second"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Times are comparable" rel="Section" href="#2_Timesarecomparable"> -<link title="Boolean operations on times" rel="Section" href="#2_Booleanoperationsontimes"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on times and periods" rel="Section" href="#2_Arithmeticoperationsontimesandperiods"> -<title>Calendar_sig.S.Time</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar_sig.S.Date.html" title="Calendar_sig.S.Date">Previous</a> - <a class="up" href="Calendar_sig.S.html" title="Calendar_sig.S">Up</a> - <a class="post" href="Calendar_sig.S.Period.html" title="Calendar_sig.S.Period">Next</a> -</div> -<h1>Module <a href="type_Calendar_sig.S.Time.html">Calendar_sig.S.Time</a></h1> -<pre><span class="keyword">module</span> Time: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Type of a time.<br> -</div> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Hour | `Minute | `Second ]</code> </pre> -<div class="info"> -The different fields of a time.<br> -</div> - -<br> -<h2 id="2_Second">Second</h2><br> -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> </pre> -<div class="info"> -Type of a second.<br> -<b>Since</b> 2.0 (was an integer in previous versions).<br> -</div> - -<pre><span class="keyword">module</span> <a href="Time_sig.S.Second.html">Second</a>: <code class="type"><a href="Time_sig.Second.html">Time_sig.Second</a></code><code class="type"> with type t = second</code></pre><div class="info"> -Second implementation -</div> -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> <a href="Time_sig.S.html#TYPEsecond">second</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make hour minute second</code> makes the time hour-minute-second.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">?hour:int -> ?minute:int -> ?second:<a href="Time_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. The default value is <code class="code">0</code> for each argument.<br> -<b>Since</b> 1.05<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -The current time based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>.<br> -</div> -<pre><span id="VALmidnight"><span class="keyword">val</span> midnight</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">midnight ()</code> is midnight (expressed in the current time zone). - So, it has always the same behaviour as <code class="code">make 0 0 0</code>.<br> -</div> -<pre><span id="VALmidday"><span class="keyword">val</span> midday</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">midday ()</code> is midday (expressed in the current time zone). - So, it has always the same behaviour as <code class="code">make 12 0 0</code>.<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">convert t t1 t2</code> converts the time <code class="code">t</code> expressed in the time zone <code class="code">t1</code> - to the same time expressed in the time zone <code class="code">t2</code>.<br> -<b>Example:</b> <code class="code">convert (make 20 0 0) (<span class="constructor">Time_Zone</span>.<span class="constructor">GMT_Plus</span> 2) - (<span class="constructor">Time_Zone</span>.<span class="constructor">GMT_Plus</span> 4)</code> returns the time 22-0-0.<br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_gmt t</code> is equivalent to - <code class="code">convert t <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span> (<span class="constructor">Time_Zone</span>.current ())</code>.<br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">to_gmt t</code> is equivalent to - <code class="code">convert t (<span class="constructor">Time_Zone</span>.current ()) <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span></code>.<br> -</div> -<pre><span id="VALnormalize"><span class="keyword">val</span> normalize</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> * int</code></pre><div class="info"> -<code class="code">normalize t</code> returns <code class="code">t</code> such that <code class="code">hour t</code> belongs to <code class="code">[0; 24[</code>. The - second component of the result is the number of days needed by the - modification.<br> -<b>Example:</b> <code class="code">normalize (make 22 0 0)</code> returns the time 22-0-0 and 0, - <code class="code">normalize (make 73 0 0)</code> returns the time 1-0-0 and 3 and <code class="code">normalize - (make (-73) 0 0)</code> returns the time 23-0-0 and (-4).<br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hour.<br> -<b>Example:</b> <code class="code">hour (make 20 0 0)</code> returns 20.<br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Minute.<br> -<b>Example:</b> <code class="code">minute (make 20 10 0)</code> returns 10.<br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -Second.<br> -<b>Example:</b> <code class="code">second (make 20 10 5)</code> returns 5.<br> -</div> -<pre><span id="VALto_seconds"><span class="keyword">val</span> to_seconds</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -Number of seconds of a time.<br> -<b>Example:</b> <code class="code">to_seconds (make 1 2 3)</code> returns <code class="code">3600 + 120 + 3 = 3723</code>.<br> -</div> -<pre><span id="VALto_minutes"><span class="keyword">val</span> to_minutes</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Number of minutes of a time. The resulting fractional part represents - seconds.<br> -<b>Example:</b> <code class="code">to_minutes (make 1 2 3)</code> returns <code class="code">60+2+0.05 = 62.05</code>.<br> -</div> -<pre><span id="VALto_hours"><span class="keyword">val</span> to_hours</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Number of hours of a time. The resulting fractional part represents - minutes and seconds.<br> -<b>Example:</b> <code class="code">to_hours (make 1 3 0)</code> returns <code class="code">1 + 0.05 = 1.05</code>.<br> -</div> -<br> -<h2 id="2_Timesarecomparable">Times are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two times.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two times.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for times.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -<h2 id="2_Booleanoperationsontimes">Boolean operations on times</h2><br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is before midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -<b>Example:</b> both <code class="code">is_pm (make 10 0 0)</code> and <code class="code">is_pm (make 34 0 0)</code> return - <code class="code"><span class="keyword">true</span></code>.<br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is after midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -<b>Example:</b> both <code class="code">is_am (make 20 0 0)</code> and <code class="code">is_am (make 44 0 0)</code> return - <code class="code"><span class="keyword">true</span></code>.<br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALfrom_seconds"><span class="keyword">val</span> from_seconds</span> : <code class="type"><a href="Time_sig.S.html#TYPEsecond">second</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_seconds</code>.<br> -</div> -<pre><span id="VALfrom_minutes"><span class="keyword">val</span> from_minutes</span> : <code class="type">float -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_minutes</code>.<br> -</div> -<pre><span id="VALfrom_hours"><span class="keyword">val</span> from_hours</span> : <code class="type">float -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_hours</code>.<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Time_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two times. -</div> -<br> -<h2 id="2_Arithmeticoperationsontimesandperiods">Arithmetic operations on times and periods</h2><br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">app t p</code> returns <code class="code">t + p</code>.<br> -<b>Example:</b> <code class="code">add (make 20 0 0) (<span class="constructor">Period</span>.minute 70)</code> returns the time - 21:10:0.<br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> <a href="Time_sig.S.html#TYPEt">t</a> -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period</code></pre><div class="info"> -<code class="code">sub t1 t2</code> returns the period between <code class="code">t1</code> and <code class="code">t2</code>.<br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">rem t p</code> is equivalent to <code class="code">add t (<span class="constructor">Period</span>.opp p)</code>.<br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEfield">field</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">next t f</code> returns the time corresponding to the next specified field.<br> -<b>Example:</b> <code class="code">next (make 20 3 31) <span class="keywordsign">`</span><span class="constructor">Minute</span></code> returns the time 20:04:31. - (i.e. one minute later).<br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEfield">field</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">prev t f</code> returns the time corresponding to the previous specified - field.<br> -<b>Example:</b> <code class="code">prev (make 20 3 31) <span class="keywordsign">`</span><span class="constructor">Second</span></code> returns the time 20:03:30 - (i.e. one second ago).<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_sig.S.html b/doc/Calendar_sig.S.html deleted file mode 100644 index b13f721..0000000 --- a/doc/Calendar_sig.S.html +++ /dev/null @@ -1,400 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Calendar_sig.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Calendars are comparable" rel="Section" href="#2_Calendarsarecomparable"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on calendars and periods" rel="Section" href="#2_Arithmeticoperationsoncalendarsandperiods"> -<title>Calendar_sig.S</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Calendar_sig.html" title="Calendar_sig">Up</a> - </div> -<h1>Module type <a href="type_Calendar_sig.S.html">Calendar_sig.S</a></h1> -<pre><span class="keyword">module type</span> S = <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all calendar representations.<br> -<b>Since</b> 2.0 (this signature was before inlined in interface of Calendar).<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Date.html">Date</a>: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Time.html">Time</a>: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar. -</div> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = <code class="type">Date.day</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Days of the week.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = <code class="type">Date.month</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Months of the year.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">Date.year</code> </pre> -<div class="info"> -Year as an int<br> -</div> - -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> = <code class="type">Time.second</code> </pre> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Day | `Hour | `Minute | `Month | `Second | `Week | `Year ]</code> </pre> -<div class="info"> -The different fields of a calendar.<br> -</div> - -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">second</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second".<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -> ?second:<a href="Calendar_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> (resp. of <code class="code">hour</code>, <code class="code">minute</code> - and <code class="code">second</code>) is <code class="code">1</code> (resp. <code class="code">0</code>).<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALcreate"><span class="keyword">val</span> create</span> : <code class="type">Date.t -> Time.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time.<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Julian day. - More precise than <code class="code"><span class="constructor">Date</span>.from_jd</code>: the fractional part represents the - time.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Modified Julian day. - It is <code class="code"><span class="constructor">Julian</span> day - 2 400 000.5</code> (more precise than <code class="code"><span class="constructor">Date</span>.from_mjd</code>).<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<br> -Those functions have the same behaviour as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALconvert">Time_sig.S.convert</a><br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALto_gmt">Time_sig.S.to_gmt</a><br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALfrom_gmt">Time_sig.S.from_gmt</a><br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_in_month">Date_sig.S.days_in_month</a><br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_week">Date_sig.S.days_of_week</a><br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_month">Date_sig.S.days_of_month</a><br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_year">Date_sig.S.days_of_year</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALweek">Date_sig.S.week</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALmonth">Date_sig.S.month</a><br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALyear">Date_sig.S.year</a><br> -</div> -<br> -<code class="code">to_jd</code> and <code class="code">to_mjd</code> are more precise than <a href="Date_sig.S.html#VALto_jd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_jd</code></a> and - <a href="Date_sig.S.html#VALto_mjd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_mjd</code></a>.<br> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALhour">Time_sig.S.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALminute">Time_sig.S.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALsecond">Time_sig.S.second</a><br> -</div> -<br> -<h2 id="2_Calendarsarecomparable">Calendars are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for calendars.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_leap_day">Date_sig.S.is_leap_day</a><br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_gregorian">Date_sig.S.is_gregorian</a><br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_julian">Date_sig.S.is_julian</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_pm">Time_sig.S.is_pm</a><br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_am">Time_sig.S.is_am</a><br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. - The field <code class="code">isdst</code> is always <code class="code"><span class="keyword">false</span></code>. More precise than - <a href="Date_sig.S.html#VALto_unixtm"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixtm</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assumes the current time zone. - So, The following invariant holds: - <code class="code">hour (from_unixtm u) = u.<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. - So such a float is convertible with those of the module <code class="code"><span class="constructor">Unix</span></code>. - More precise than <a href="Date_sig.S.html#VALto_unixfloat"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixfloat</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Assumes the current time zone. - So, the following invariant holds: - <code class="code">hour (from_unixfloat u) = (<span class="constructor">Unix</span>.gmtime u).<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">Date.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Convert a date to a calendar. - The time is midnight in the current time zone.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Date.t</code></pre><div class="info"> -Convert a calendar to a date. Time part of the calendar is ignored.<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Time.t</code></pre><div class="info"> -Convert a calendar to a time. Date part of the calendar is ignored.<br> -<b>Since</b> 1.03<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars. -</div> -<br> -<h2 id="2_Arithmeticoperationsoncalendarsandperiods">Arithmetic operations on calendars and periods</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALadd">Date_sig.S.add</a><br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> <a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALsub">Date_sig.S.sub</a><br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">Period.t</a></code></pre><div class="info"> -<b>Since</b> 2.03<br> -<b>See also</b> <a href="Date_sig.S.html#VALprecise_sub">Date_sig.S.precise_sub</a><br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALrem">Date_sig.S.rem</a><br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALnext">Date_sig.S.next</a><br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALprev">Date_sig.S.prev</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Calendar_sig.html b/doc/Calendar_sig.html deleted file mode 100644 index 7447f4f..0000000 --- a/doc/Calendar_sig.html +++ /dev/null @@ -1,50 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Date.html"> -<link rel="next" href="Calendar_builder.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Date.html" title="Date">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Calendar_builder.html" title="Calendar_builder">Next</a> -</div> -<h1>Module <a href="type_Calendar_sig.html">Calendar_sig</a></h1> -<pre><span class="keyword">module</span> Calendar_sig: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Calendar interface. A calendar combines a date and a time: it may be seen - as a 6-uple (year, month, day, hour, minute, second). -<p> - - If you only need operations on dates, you should better use a date - implementation (like module <code class="code"><span class="constructor">Date</span></code>). But if you need to manage more precise - dates, use this module. The exact Julian period is now <code class="code">[<span class="constructor">January</span>, 1st 4713 - <span class="constructor">BC</span> at midday <span class="constructor">GMT</span>; <span class="constructor">January</span> 22th, 3268 <span class="constructor">AC</span> at midday <span class="constructor">GMT</span>]</code>.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">module type</span> <a href="Calendar_sig.S.html">S</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all calendar representations. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Date.html b/doc/Date.html deleted file mode 100644 index ccf331c..0000000 --- a/doc/Date.html +++ /dev/null @@ -1,41 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Date_sig.html"> -<link rel="next" href="Calendar_sig.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Date_sig.html" title="Date_sig">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Calendar_sig.html" title="Calendar_sig">Next</a> -</div> -<h1>Module <a href="type_Date.html">Date</a></h1> -<pre><span class="keyword">module</span> Date: <code class="code"><span class="keyword">sig</span></code> <a href="Date.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Date implementation.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Date_sig.S.html">Date_sig.S</a></pre> -</body></html>
\ No newline at end of file diff --git a/doc/Date_sig.S.Period.html b/doc/Date_sig.S.Period.html deleted file mode 100644 index b5c7fed..0000000 --- a/doc/Date_sig.S.Period.html +++ /dev/null @@ -1,89 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Date_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Arithmetic operations" rel="Section" href="#3_Arithmeticoperations"> -<link title="Constructors" rel="Section" href="#3_Constructors"> -<link title="Getters" rel="Section" href="#3_Getters"> -<title>Date_sig.S.Period</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Date_sig.S.html" title="Date_sig.S">Up</a> - </div> -<h1>Module <a href="type_Date_sig.S.Period.html">Date_sig.S.Period</a></h1> -<pre><span class="keyword">module</span> Period: <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of days between two dates.<br> -</div> -<hr width="100%"> -<br> -<h3 id="3_Arithmeticoperations">Arithmetic operations</h3><br> -<pre><span id="TYPEp"><span class="keyword">type</span> <code class="type">+[< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> ]</code> p</span> </pre> - -<pre><span class="keyword">include</span> <a href="Period.S.html">Period.S</a></pre> -<br> -<h3 id="3_Constructors">Constructors</h3><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> <a href="Date_sig.S.html#TYPEt">Date_sig.S.t</a></code></pre><div class="info"> -<code class="code">make year month day</code> makes a period of the specified length.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">?year:int -> ?month:int -> ?day:int -> unit -> <a href="Date_sig.S.html#TYPEt">Date_sig.S.t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of each argument is <code class="code">0</code>.<br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type">int -> [< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> > `Year ] period</code></pre><div class="info"> -<code class="code">year n</code> makes a period of <code class="code">n</code> years.<br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type">int -> [< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> > `Month `Year ] period</code></pre><div class="info"> -<code class="code">month n</code> makes a period of <code class="code">n</code> months.<br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type">int -> [< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> > `Day `Week ] period</code></pre><div class="info"> -<code class="code">week n</code> makes a period of <code class="code">n</code> weeks.<br> -</div> -<pre><span id="VALday"><span class="keyword">val</span> day</span> : <code class="type">int -> [< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> > `Day `Week ] period</code></pre><div class="info"> -<code class="code">day n</code> makes a period of <code class="code">n</code> days.<br> -</div> -<br> -<h3 id="3_Getters">Getters</h3><br> -<pre><span id="EXCEPTIONNot_computable"><span class="keyword">exception</span> Not_computable</span></pre> -<div class="info"> -<b>Since</b> 1.04<br> -</div> -<pre><span id="VALnb_days"><span class="keyword">val</span> nb_days</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> ] period -> int</code></pre><div class="info"> -<span class="warning">Deprecated.</span>since 2.02: use <a href="Date_sig.S.Period.html#VALsafe_nb_days"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.safe_nb_days</code></a> instead<br> -Number of days in a period.<br> -<b>Since</b> 1.04<br> -<b>Raises</b> <code>Not_computable</code> if the number of days is not computable.<br> -<b>Examples:</b><ul><li><code class="code">nb_days (year 1)</code> raises <code class="code"><span class="constructor">Not_computable</span></code> because a year is - not a constant number of days.<br> -</li><li><code class="code">nb_days (day 6)</code> returns <code class="code">6</code><br> -</li></ul></div> -<pre><span id="VALsafe_nb_days"><span class="keyword">val</span> safe_nb_days</span> : <code class="type">[< `Day | `Week ] period -> int</code></pre><div class="info"> -Equivalent to <a href="Date_sig.S.Period.html#VALnb_days"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.nb_days</code></a> but never raises any exception.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALymd"><span class="keyword">val</span> ymd</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">Date_sig.S.field</a> ] period -> int * int * int</code></pre><div class="info"> -Number of years, months and days in a period.<br> -<b>Since</b> 1.09.0<br> -<b>Example:</b> <code class="code">ymd (make 1 2 3)</code> returns <code class="code">1, 2, 3</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Date_sig.S.html b/doc/Date_sig.S.html deleted file mode 100644 index 0ea51e9..0000000 --- a/doc/Date_sig.S.html +++ /dev/null @@ -1,598 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Date_sig.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Exceptions" rel="Section" href="#2_Exceptions"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Dates are comparable" rel="Section" href="#2_Datesarecomparable"> -<link title="Boolean operations on dates" rel="Section" href="#2_Booleanoperationsondates"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on dates and periods" rel="Section" href="#2_Arithmeticoperationsondatesandperiods"> -<link title="Operations on years" rel="Section" href="#2_Operationsonyears"> -<title>Date_sig.S</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Date_sig.html" title="Date_sig">Up</a> - </div> -<h1>Module type <a href="type_Date_sig.S.html">Date_sig.S</a></h1> -<pre><span class="keyword">module type</span> S = <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all date representations.<br> -<b>Since</b> 2.0 (this signature was before inlined in interface of Date).<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type"><a href="Period.html#TYPEdate_field">Period.date_field</a></code> </pre> -<div class="info"> -The different fields of a date.<br> -<b>Since</b> 2.02<br> -</div> - -<pre><span id="TYPEdate"><span class="keyword">type</span> <code class="type">-[< <a href="Date_sig.S.html#TYPEfield">field</a> ]</code> date</span> </pre> -<div class="info"> -Type of a date, without specifying any precision level.<br> -<b>Since</b> 2.02<br> -</div> - -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = <code class="type"><a href="Date_sig.S.html#TYPEfield">field</a> <a href="Date_sig.S.html#TYPEdate">date</a></code> </pre> -<div class="info"> -Type of a date.<br> -</div> - -<pre><code><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = </code></pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> - -</tr></table> - -<div class="info"> -Days of the week.<br> -</div> - -<pre><code><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = </code></pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> - -</tr></table> - -<div class="info"> -Months of the year.<br> -</div> - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">int</code> </pre> -<div class="info"> -Year as an <code class="code">int</code>.<br> -</div> - -<br> -<h2 id="2_Exceptions">Exceptions</h2><br> -<pre><span id="EXCEPTIONOut_of_bounds"><span class="keyword">exception</span> Out_of_bounds</span></pre> -<div class="info"> -Raised when a date is outside the Julian period.<br> -</div> -<pre><span id="EXCEPTIONUndefined"><span class="keyword">exception</span> Undefined</span></pre> -<div class="info"> -Raised when a date belongs to - <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> 14th, 1582]</code>.<br> -</div> -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day</code> makes the date year-month-day. A BC year <code class="code">y</code> - corresponds to the year <code class="code">-(y+1)</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> years (5 BC) and (1 BC) respectively correspond to years - (-4) and 0.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:<a href="Date_sig.S.html#TYPEyear">year</a> -> ?month:int -> ?day:int -> unit -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> is <code class="code">1</code>.<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALmake_year"><span class="keyword">val</span> make_year</span> : <code class="type">int -> [< `Year ] <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">make_year y</code> makes a date only represented by its year <code class="code">y</code>. The month - and the day of such a date are not relevant.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALmake_year_month"><span class="keyword">val</span> make_year_month</span> : <code class="type">int -> int -> [< `Month | `Year ] <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">make_year_month y m</code> makes a date only represented by its year <code class="code">y</code> and - its month <code class="code">m</code>. The day of such a date is not relevant.<br> -<b>Since</b> 2.02<br> -</div> -<pre><span id="VALtoday"><span class="keyword">val</span> today</span> : <code class="type">unit -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Date of the current day (based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from its Julian day.<br> -<b>Example:</b> <code class="code">from_jd 0</code> returns the date 4713 BC-1-1.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from its modified Julian day (i.e. Julian day - 2 400 001). - The Modified Julian day is more manageable than the Julian day.<br> -<b>Example:</b> <code class="code">from_mjd 0</code> returns the date 1858-11-17.<br> -</div> -<pre><span id="VALfrom_day_of_year"><span class="keyword">val</span> from_day_of_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Make a date from a year and its day of the year.<br> -<b>Since</b> 2.0<br> -<b>Example:</b> <code class="code">from_day_of_year 2008 39</code> returns the date 2008-2-8.<br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Month `Year ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Number of days in the month of a date.<br> -<b>Example:</b> <code class="code">days_in_month (make 2003 6 26)</code> returns <code class="code">30</code>.<br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Day of the week.<br> -<b>Example:</b> <code class="code">day_of_week (make 2003 6 26)</code> returns <code class="code"><span class="constructor">Thu</span></code>.<br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Day of the month.<br> -<b>Example:</b> <code class="code">day_of_month (make 2003 6 26)</code> returns <code class="code">26</code>.<br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Day of the year.<br> -<b>Examples:</b><ul><li><code class="code">day_of_year (make 2003 12 28)</code> returns <code class="code">362</code>.<br> -</li><li><code class="code">day_of_year (make 2003 1 5)</code> returns <code class="code">5</code><br> -</li></ul></div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Week.<br> -<b>Examples:</b><ul><li><code class="code">week (make 2003 12 29)</code> returns <code class="code">1</code>.<br> -</li><li><code class="code">week (make 2003 12 28)</code> returns <code class="code">52</code>.<br> -</li><li><code class="code">week (make 2000 1 2)</code> returns <code class="code">52</code>.<br> -</li><li><code class="code">week (make 2000 1 3)</code> returns <code class="code">1</code>.<br> -</li></ul></div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Month ] <a href="Date_sig.S.html#TYPEdate">date</a> -> <a href="Date_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -Month.<br> -<b>Example:</b> <code class="code">month (make 2003 6 26)</code> returns <code class="code"><span class="constructor">Jun</span></code>.<br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> > `Year ] <a href="Date_sig.S.html#TYPEdate">date</a> -> <a href="Date_sig.S.html#TYPEyear">year</a></code></pre><div class="info"> -Year.<br> -<b>Example:</b> <code class="code">year (make 2003 6 26)</code> returns <code class="code">2003</code>.<br> -</div> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Julian day.<br> -<b>Example:</b> <code class="code">to_jd (make (-4712) 1 1)</code> returns 0.<br> -</div> -<pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Modified Julian day (i.e. Julian day - 2 400 001). - The Modified Julian day is more manageable than the Julian day.<br> -<b>Example:</b> <code class="code">to_mjd (make 1858 11 17)</code> returns 0.<br> -</div> -<br> -<h2 id="2_Datesarecomparable">Dates are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> bool</code></pre><div class="info"> -Equality function between two dates.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Comparison function between two dates.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type">[< <a href="Date_sig.S.html#TYPEfield">field</a> ] <a href="Date_sig.S.html#TYPEdate">date</a> -> int</code></pre><div class="info"> -Hash function for dates.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash</a><br> -</div> -<br> -<h2 id="2_Booleanoperationsondates">Boolean operations on dates</h2><br> -<pre><span id="VALis_valid_date"><span class="keyword">val</span> is_valid_date</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> int -> bool</code></pre><div class="info"> -Check if a date is valid, that is the date has not been coerced to look - like a real date.<br> -<b>Since</b> 2.0<br> -<b>Examples:</b><ul><li><code class="code">is_valid_date 2008 2 30</code> returns <code class="code"><span class="keyword">false</span></code><br> -</li><li><code class="code">is_valid_date 2008 2 8</code> returns <code class="code"><span class="keyword">true</span></code><br> -</li></ul></div> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date is a leap day - (i.e. February, 24th of a leap year); <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date belongs to the Gregorian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> iff a date belongs to the Julian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a date into the <code class="code"><span class="constructor">Unix</span>.tm</code> type. - The field <code class="code">is_isdst</code> is always <code class="code"><span class="keyword">false</span></code>. The fields <code class="code"><span class="constructor">Unix</span>.tm_sec</code>, - <code class="code"><span class="constructor">Unix</span>.tm_min</code> and <code class="code"><span class="constructor">Unix</span>.tm_hour</code> are irrelevant.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assume the current time zone.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a date to a float such than <code class="code">to_unixfloat (make 1970 1 1)</code> - returns <code class="code">0.0</code>. So such a float is convertible with those of the <code class="code"><span class="constructor">Unix</span></code> - module. The fractional part of the result is always <code class="code">0</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Ignore the fractional part of the argument. - Assume the current time zone.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_business"><span class="keyword">val</span> to_business</span> : <code class="type"><a href="Date_sig.S.html#TYPEt">t</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> * int * <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Return the "business week" and the day in this week respecting ISO 8601. - Notice that business weeks at the beginning and end of the year can - sometimes have year numbers which don't match the real year.<br> -<b>Since</b> 1.09.0<br> -<b>Examples:</b><ul><li><code class="code">to_business (make 2003 12 29)</code> returns <code class="code">2004, 1, <span class="constructor">Mon</span></code>.<br> -</li><li><code class="code">to_business (make 2003 12 28)</code> returns <code class="code">2003, 52, <span class="constructor">Sun</span></code><br> -</li><li><code class="code">to_business (make 2000 1 2)</code> returns <code class="code">1999, 52, <span class="constructor">Sun</span></code><br> -</li><li><code class="code">to_business (make 2000 1 3)</code> returns <code class="code">2000, 1, <span class="constructor">Mon</span></code><br> -</li></ul></div> -<pre><span id="VALfrom_business"><span class="keyword">val</span> from_business</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int -> <a href="Date_sig.S.html#TYPEday">day</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_business</code> respecting ISO-8601. - Notice that business weeks at the beginning and end of the year - can sometimes have year numbers which don't match the real year.<br> -<b>Since</b> 1.09.0<br> -<b>Raises</b> <code>Invalid_argument</code> if the date is bad.<br> -</div> -<pre><span id="VALint_of_day"><span class="keyword">val</span> int_of_day</span> : <code class="type"><a href="Date_sig.S.html#TYPEday">day</a> -> int</code></pre><div class="info"> -Convert a day to an integer respecting ISO-8601. - So, Monday is 1, Tuesday is 2, ..., and sunday is 7.<br> -</div> -<pre><span id="VALday_of_int"><span class="keyword">val</span> day_of_int</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -Inverse of <code class="code">int_of_day</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the argument does not belong to <code class="code">1; 7</code>.<br> -</div> -<pre><span id="VALint_of_month"><span class="keyword">val</span> int_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEmonth">month</a> -> int</code></pre><div class="info"> -Convert a month to an integer respecting ISO-8601. - So, January is 1, February is 2 and so on.<br> -</div> -<pre><span id="VALmonth_of_int"><span class="keyword">val</span> month_of_int</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -Inverse of <code class="code">int_of_month</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the argument does not belong to <code class="code">1; 12</code>.<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Date_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of days between two dates. -</div> -<br> -<h2 id="2_Arithmeticoperationsondatesandperiods">Arithmetic operations on dates and periods</h2><br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a Period.period -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">add d p</code> returns <code class="code">d + p</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Examples:</b><ul><li><code class="code">add (make 2003 12 31) (<span class="constructor">Period</span>.month 2)</code> returns the date - 2004-3-2 (following the coercion rule describes in the introduction).<br> -</li><li><code class="code">add (make 2003 12 31) (<span class="constructor">Period</span>.month 1)</code> returns the date - 2004-1-31<br> -</li></ul></div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a <a href="Date_sig.S.html#TYPEdate">date</a> -><br> [< <a href="Date_sig.S.html#TYPEfield">field</a> > `Day `Week ] Period.period</code></pre><div class="info"> -<code class="code">sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>.<br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a <a href="Date_sig.S.html#TYPEdate">date</a> -> Period.t</code></pre><div class="info"> -<code class="code">precise_sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>. - It is equivalent to <code class="code">sub</code>, but:<ul> -<li>the period is expressed with a number of years, months and days, not - only with a number of days;</li> -<li>it is less efficient.</li> -</ul> -<br> -<b>Since</b> 2.03<br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -><br> 'a Period.period -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">rem d p</code> is equivalent to <code class="code">add d (<span class="constructor">Period</span>.opp p)</code>.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -> 'a -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">next d f</code> returns the date corresponding to the next specified field.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> <code class="code">next (make 2003 12 31) <span class="keywordsign">`</span><span class="constructor">Month</span></code> returns the date 2004-1-31 - (i.e. one month later).<br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type">([< <a href="Date_sig.S.html#TYPEfield">field</a> ] as 'a) <a href="Date_sig.S.html#TYPEdate">date</a> -> 'a -> 'a <a href="Date_sig.S.html#TYPEdate">date</a></code></pre><div class="info"> -<code class="code">prev d f</code> returns the date corresponding to the previous specified - field.<br> -<b>Raises</b><ul><li><code>Out_of_bounds</code> when the resulting date is outside the Julian - period.</li> -<li><code>Undefined</code> when the resulting date belongs to <code class="code">[<span class="constructor">October</span> 5th, - 1582; <span class="constructor">October</span> 14th, 1582]</code>.</li> -</ul> -<b>Example:</b> <code class="code">prev (make 2003 12 31) <span class="keywordsign">`</span><span class="constructor">Year</span></code> returns the date 2002-12-31 - (i.e. one year ago).<br> -</div> -<br> -<h2 id="2_Operationsonyears">Operations on years</h2><br> -<pre><span id="VALis_leap_year"><span class="keyword">val</span> is_leap_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a year is a leap year; <code class="code"><span class="keyword">false</span></code> otherwise.<br> -</div> -<pre><span id="VALsame_calendar"><span class="keyword">val</span> same_calendar</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if two years have the same calendar; <code class="code"><span class="keyword">false</span></code> - otherwise.<br> -</div> -<pre><span id="VALdays_in_year"><span class="keyword">val</span> days_in_year</span> : <code class="type">?month:<a href="Date_sig.S.html#TYPEmonth">month</a> -> <a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Number of days in a year. -<p> - - <code class="code">days_in_year ~month y</code> returns the number of days in the year <code class="code">y</code> up - to the end of the given month. Thus <code class="code">days_in_year ~month:<span class="constructor">Dec</span> y</code> is the - same as <code class="code">days_in_year y</code>.<br> -</div> -<pre><span id="VALweeks_in_year"><span class="keyword">val</span> weeks_in_year</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Number of weeks in a year.<br> -</div> -<pre><span id="VALweek_first_last"><span class="keyword">val</span> week_first_last</span> : <code class="type">int -> <a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a> * <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the first and last days of a week in a year.<br> -<b>Since</b> 1.08<br> -</div> -<pre><span id="VALnth_weekday_of_month"><span class="keyword">val</span> nth_weekday_of_month</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEmonth">month</a> -> <a href="Date_sig.S.html#TYPEday">day</a> -> int -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">nth_weekday_of_month y m d n</code> returns the <code class="code">n</code>-th day <code class="code">d</code> in the month - <code class="code">m</code> of the year <code class="code">y</code> (for instance the 3rd Thursday of the month).<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALcentury"><span class="keyword">val</span> century</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Century of a year.<br> -<b>Examples:</b><ul><li><code class="code">century 2001</code> returns 21.<br> -</li><li><code class="code">century 2000</code> returns 20<br> -</li></ul></div> -<pre><span id="VALmillenium"><span class="keyword">val</span> millenium</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Millenium of a year.<br> -<b>Examples:</b><ul><li><code class="code">millenium 2001</code> returns 3.<br> -</li><li><code class="code">millenium 2000</code> returns 2<br> -</li></ul></div> -<pre><span id="VALsolar_number"><span class="keyword">val</span> solar_number</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Solar number. -<p> - - In the Julian calendar there is a one-to-one relationship between the - Solar number and the day on which a particular date falls.<br> -</div> -<pre><span id="VALindiction"><span class="keyword">val</span> indiction</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Indiction. -<p> - - The Indiction was used in the middle ages to specify the position of a - year in a 15 year taxation cycle. It was introduced by emperor - Constantine the Great on 1 September 312 and ceased to be used in - 1806. -<p> - - The Indiction has no astronomical significance.<br> -</div> -<pre><span id="VALgolden_number"><span class="keyword">val</span> golden_number</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Golden number. -<p> - - Considering that the relationship between the moon's phases and the - days of the year repeats itself every 19 years, it is natural to - associate a number between 1 and 19 with each year. - This number is the so-called Golden number.<br> -</div> -<pre><span id="VALepact"><span class="keyword">val</span> epact</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> int</code></pre><div class="info"> -Epact. -<p> - - The Epact is a measure of the age of the moon (i.e. the number of days - that have passed since an "official" new moon) on a particular date.<br> -</div> -<pre><span id="VALeaster"><span class="keyword">val</span> easter</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Sunday. -<p> - - In the Christian world, Easter (and the days immediately preceding it) - is the celebration of the death and resurrection of Jesus in - (approximately) AD 30.<br> -</div> -<pre><span id="VALcarnaval"><span class="keyword">val</span> carnaval</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Carnaval Monday. <code class="code">carnaval y</code> is <code class="code">easter y - 48</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALmardi_gras"><span class="keyword">val</span> mardi_gras</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Mardi Gras. <code class="code">mardi_gras y</code> is <code class="code">easter y - 47</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALash"><span class="keyword">val</span> ash</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Ash Wednesday. <code class="code">ash y</code> is <code class="code">easter y - 46</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALpalm"><span class="keyword">val</span> palm</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Palm Sunday. <code class="code">palm y</code> is <code class="code">easter y - 7</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_friday"><span class="keyword">val</span> easter_friday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Friday. <code class="code">easter_friday y</code> is <code class="code">easter y - 2</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_saturday"><span class="keyword">val</span> easter_saturday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Saturday. <code class="code">easter_saturday y</code> is <code class="code">easter y - 1</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALeaster_monday"><span class="keyword">val</span> easter_monday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Easter Monday. <code class="code">easter_monday y</code> is <code class="code">easter y + 1</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALascension"><span class="keyword">val</span> ascension</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Ascension. <code class="code">ascension y</code> is <code class="code">easter y + 39</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALwithsunday"><span class="keyword">val</span> withsunday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Withsunday. <code class="code">withsunday y</code> is <code class="code">easter y + 49</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALwithmonday"><span class="keyword">val</span> withmonday</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Withmonday. <code class="code">withmonday y</code> is <code class="code">easter y + 50</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -<pre><span id="VALcorpus_christi"><span class="keyword">val</span> corpus_christi</span> : <code class="type"><a href="Date_sig.S.html#TYPEyear">year</a> -> <a href="Date_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Feast of Corpus Christi. <code class="code">corpus_christi y</code> is <code class="code">easter + 60</code>.<br> -<b>Since</b> 1.09.0<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Date_sig.html b/doc/Date_sig.html deleted file mode 100644 index 823b483..0000000 --- a/doc/Date_sig.html +++ /dev/null @@ -1,63 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Ftime.html"> -<link rel="next" href="Date.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date_sig</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Ftime.html" title="Ftime">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Date.html" title="Date">Next</a> -</div> -<h1>Module <a href="type_Date_sig.html">Date_sig</a></h1> -<pre><span class="keyword">module</span> Date_sig: <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Date interface. A date may be seen as a triple (year, month, day). -<p> - - All the dates should belong to - <code class="code">[<span class="constructor">January</span>, 1st 4713 <span class="constructor">BC</span>; <span class="constructor">January</span> 22th, 3268 <span class="constructor">AC</span>]</code> (called the Julian period). - An <code class="code"><span class="constructor">Out_of_bounds</span></code> exception is raised if you attempt to create a date - outside the Julian period. -<p> - - If a date <code class="code">d</code> does not exists and if <code class="code">d_bef</code> (resp. <code class="code">d_aft</code>) is - the last (resp. first) existing date before (resp. after) <code class="code">d</code>, - <code class="code">d</code> is automatically coerced to <code class="code">d_aft + d - d_bef - 1</code>. - For example, both dates "February 29th, 2003" and - "February 30th, 2003" do not exist and they are coerced respectively to the - date "Mars 1st, 2003" and "Mars 2nd, 2003". - This rule is called the coercion rule. - As an exception to the coercion rule, the date belonging to - <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> 14th, 1582]</code> do not exist and an <code class="code"><span class="constructor">Undefined</span></code> - exception is raised if you attempt to create such a date. - Those dropped days correspond to the change from the Julian to the Gregorian - calendar.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">module type</span> <a href="Date_sig.S.html">S</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Date_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all date representations. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Fcalendar.Precise.html b/doc/Fcalendar.Precise.html deleted file mode 100644 index 4328b2f..0000000 --- a/doc/Fcalendar.Precise.html +++ /dev/null @@ -1,400 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Fcalendar.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Calendars are comparable" rel="Section" href="#2_Calendarsarecomparable"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on calendars and periods" rel="Section" href="#2_Arithmeticoperationsoncalendarsandperiods"> -<title>Fcalendar.Precise</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Fcalendar.html" title="Fcalendar">Up</a> - </div> -<h1>Module <a href="type_Fcalendar.Precise.html">Fcalendar.Precise</a></h1> -<pre><span class="keyword">module</span> Precise: <code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = Date and module Time = Ftime</code></pre><div class="info"> -More precise implementation of calendar in which seconds are float.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Date.html">Date</a>: <code class="type"><a href="Date_sig.S.html">Date_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Date implementation used by this calendar. -</div> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Time.html">Time</a>: <code class="type"><a href="Time_sig.S.html">Time_sig.S</a></code><code class="type"> </code></pre><div class="info"> -Time implementation used by this calendar. -</div> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="TYPEday"><span class="keyword">type</span> <code class="type"></code>day</span> = <code class="type">Date.day</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sun"><span class="constructor">Sun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Mon"><span class="constructor">Mon</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Tue"><span class="constructor">Tue</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Wed"><span class="constructor">Wed</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Thu"><span class="constructor">Thu</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Fri"><span class="constructor">Fri</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTday.Sat"><span class="constructor">Sat</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Days of the week.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEmonth"><span class="keyword">type</span> <code class="type"></code>month</span> = <code class="type">Date.month</code> = </pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jan"><span class="constructor">Jan</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Feb"><span class="constructor">Feb</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Mar"><span class="constructor">Mar</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Apr"><span class="constructor">Apr</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.May"><span class="constructor">May</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jun"><span class="constructor">Jun</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Jul"><span class="constructor">Jul</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Aug"><span class="constructor">Aug</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Sep"><span class="constructor">Sep</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Oct"><span class="constructor">Oct</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Nov"><span class="constructor">Nov</span></span></code></td> - -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTmonth.Dec"><span class="constructor">Dec</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Months of the year.</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - - -<pre><span id="TYPEyear"><span class="keyword">type</span> <code class="type"></code>year</span> = <code class="type">Date.year</code> </pre> -<div class="info"> -Year as an int<br> -</div> - -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> = <code class="type">Time.second</code> </pre> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Day | `Hour | `Minute | `Month | `Second | `Week | `Year ]</code> </pre> -<div class="info"> -The different fields of a calendar.<br> -</div> - -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> int -> int -> int -> <a href="Calendar_sig.S.html#TYPEsecond">second</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second".<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">year:int -><br> ?month:int -><br> ?day:int -><br> ?hour:int -><br> ?minute:int -> ?second:<a href="Calendar_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value of <code class="code">month</code> and <code class="code">day</code> (resp. of <code class="code">hour</code>, <code class="code">minute</code> - and <code class="code">second</code>) is <code class="code">1</code> (resp. <code class="code">0</code>).<br> -<b>Since</b> 1.05<br> -<b>Raises</b><ul><li><code>D.Out_of_bounds</code> when a date is outside the Julian period.</li> -<li><code>D.Undefined</code> when a date belongs to <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> - 14th, 1582]</code>.</li> -</ul> -</div> -<pre><span id="VALcreate"><span class="keyword">val</span> create</span> : <code class="type">Date.t -> Time.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time.<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone).<br> -</div> -<pre><span id="VALfrom_jd"><span class="keyword">val</span> from_jd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Julian day. - More precise than <code class="code"><span class="constructor">Date</span>.from_jd</code>: the fractional part represents the - time.<br> -</div> -<pre><span id="VALfrom_mjd"><span class="keyword">val</span> from_mjd</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Return the Modified Julian day. - It is <code class="code"><span class="constructor">Julian</span> day - 2 400 000.5</code> (more precise than <code class="code"><span class="constructor">Date</span>.from_mjd</code>).<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<br> -Those functions have the same behaviour as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALconvert">Time_sig.S.convert</a><br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALto_gmt">Time_sig.S.to_gmt</a><br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALfrom_gmt">Time_sig.S.from_gmt</a><br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALdays_in_month"><span class="keyword">val</span> days_in_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_in_month">Date_sig.S.days_in_month</a><br> -</div> -<pre><span id="VALday_of_week"><span class="keyword">val</span> day_of_week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEday">day</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_week">Date_sig.S.days_of_week</a><br> -</div> -<pre><span id="VALday_of_month"><span class="keyword">val</span> day_of_month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_month">Date_sig.S.days_of_month</a><br> -</div> -<pre><span id="VALday_of_year"><span class="keyword">val</span> day_of_year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALdays_of_year">Date_sig.S.days_of_year</a><br> -</div> -<pre><span id="VALweek"><span class="keyword">val</span> week</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALweek">Date_sig.S.week</a><br> -</div> -<pre><span id="VALmonth"><span class="keyword">val</span> month</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEmonth">month</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALmonth">Date_sig.S.month</a><br> -</div> -<pre><span id="VALyear"><span class="keyword">val</span> year</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALyear">Date_sig.S.year</a><br> -</div> -<br> -<code class="code">to_jd</code> and <code class="code">to_mjd</code> are more precise than <a href="Date_sig.S.html#VALto_jd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_jd</code></a> and - <a href="Date_sig.S.html#VALto_mjd"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_mjd</code></a>.<br> -<pre><span id="VALto_jd"><span class="keyword">val</span> to_jd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><pre><span id="VALto_mjd"><span class="keyword">val</span> to_mjd</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALhour">Time_sig.S.hour</a><br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALminute">Time_sig.S.minute</a><br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALsecond">Time_sig.S.second</a><br> -</div> -<br> -<h2 id="2_Calendarsarecomparable">Calendars are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two calendars.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for calendars.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_leap_day"><span class="keyword">val</span> is_leap_day</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_leap_day">Date_sig.S.is_leap_day</a><br> -</div> -<pre><span id="VALis_gregorian"><span class="keyword">val</span> is_gregorian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_gregorian">Date_sig.S.is_gregorian</a><br> -</div> -<pre><span id="VALis_julian"><span class="keyword">val</span> is_julian</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALis_julian">Date_sig.S.is_julian</a><br> -</div> -<br> -Those functions have the same behavious as those defined in - <a href="Time_sig.S.html"><code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_pm">Time_sig.S.is_pm</a><br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -<b>See also</b> <a href="Time_sig.S.html#VALis_am">Time_sig.S.is_am</a><br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALto_unixtm"><span class="keyword">val</span> to_unixtm</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Unix.tm</code></pre><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. - The field <code class="code">isdst</code> is always <code class="code"><span class="keyword">false</span></code>. More precise than - <a href="Date_sig.S.html#VALto_unixtm"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixtm</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixtm"><span class="keyword">val</span> from_unixtm</span> : <code class="type">Unix.tm -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixtm</code>. Assumes the current time zone. - So, The following invariant holds: - <code class="code">hour (from_unixtm u) = u.<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALto_unixfloat"><span class="keyword">val</span> to_unixfloat</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. - So such a float is convertible with those of the module <code class="code"><span class="constructor">Unix</span></code>. - More precise than <a href="Date_sig.S.html#VALto_unixfloat"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.to_unixfloat</code></a>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_unixfloat"><span class="keyword">val</span> from_unixfloat</span> : <code class="type">float -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. Assumes the current time zone. - So, the following invariant holds: - <code class="code">hour (from_unixfloat u) = (<span class="constructor">Unix</span>.gmtime u).<span class="constructor">Unix</span>.tm_hour</code>.<br> -<b>Since</b> 1.01<br> -</div> -<pre><span id="VALfrom_date"><span class="keyword">val</span> from_date</span> : <code class="type">Date.t -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Convert a date to a calendar. - The time is midnight in the current time zone.<br> -</div> -<pre><span id="VALto_date"><span class="keyword">val</span> to_date</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Date.t</code></pre><div class="info"> -Convert a calendar to a date. Time part of the calendar is ignored.<br> -</div> -<pre><span id="VALto_time"><span class="keyword">val</span> to_time</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> Time.t</code></pre><div class="info"> -Convert a calendar to a time. Date part of the calendar is ignored.<br> -<b>Since</b> 1.03<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Calendar_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Calendar_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two calendars. -</div> -<br> -<h2 id="2_Arithmeticoperationsoncalendarsandperiods">Arithmetic operations on calendars and periods</h2><br> -<br> -Those functions have the same behavious as those defined in - <a href="Date_sig.S.html"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></a>.<br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALadd">Date_sig.S.add</a><br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> <a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> > `Day `Week ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALsub">Date_sig.S.sub</a><br> -</div> -<pre><span id="VALprecise_sub"><span class="keyword">val</span> precise_sub</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.Period.html#TYPEt">Period.t</a></code></pre><div class="info"> -<b>Since</b> 2.03<br> -<b>See also</b> <a href="Date_sig.S.html#VALprecise_sub">Date_sig.S.precise_sub</a><br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Calendar_sig.S.Period.html#TYPEperiod">Period.period</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALrem">Date_sig.S.rem</a><br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALnext">Date_sig.S.next</a><br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Calendar_sig.S.html#TYPEt">t</a> -> <a href="Calendar_sig.S.html#TYPEfield">field</a> -> <a href="Calendar_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<b>See also</b> <a href="Date_sig.S.html#VALprev">Date_sig.S.prev</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Fcalendar.html b/doc/Fcalendar.html deleted file mode 100644 index 147b4f7..0000000 --- a/doc/Fcalendar.html +++ /dev/null @@ -1,50 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Calendar.html"> -<link rel="next" href="Printer.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Fcalendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Calendar.html" title="Calendar">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Printer.html" title="Printer">Next</a> -</div> -<h1>Module <a href="type_Fcalendar.html">Fcalendar</a></h1> -<pre><span class="keyword">module</span> Fcalendar: <code class="code"><span class="keyword">sig</span></code> <a href="Fcalendar.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Calendar implementation in which seconds are float. -<p> - - This module uses float. Then results may be very unprecise, especially - comparison of calendars which differ with few seconds. - In this case, consider to use module <code class="code"><span class="constructor">Precise</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Calendar_sig.S.html">Calendar_sig.S</a></pre> -<pre><span class="keyword">module</span> <a href="Fcalendar.Precise.html">Precise</a>: <code class="type"><a href="Calendar_sig.S.html">Calendar_sig.S</a></code><code class="type"> with module Date = Date and module Time = Ftime</code></pre><div class="info"> -More precise implementation of calendar in which seconds are float. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Ftime.html b/doc/Ftime.html deleted file mode 100644 index 1b08ea3..0000000 --- a/doc/Ftime.html +++ /dev/null @@ -1,45 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Time.html"> -<link rel="next" href="Date_sig.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Ftime</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Time.html" title="Time">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Date_sig.html" title="Date_sig">Next</a> -</div> -<h1>Module <a href="type_Ftime.html">Ftime</a></h1> -<pre><span class="keyword">module</span> Ftime: <code class="code"><span class="keyword">sig</span></code> <a href="Ftime.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Time implementation in which seconds are floats. -<p> - - This module uses float. Then results may be very unprecise.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Time_sig.S.html">Time_sig.S</a></pre> -</body></html>
\ No newline at end of file diff --git a/doc/Period.S.html b/doc/Period.S.html deleted file mode 100644 index fc7f443..0000000 --- a/doc/Period.S.html +++ /dev/null @@ -1,75 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Period.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Period is an additive monoid" rel="Section" href="#3_Periodisanadditivemonoid"> -<link title="Periods are comparable" rel="Section" href="#3_Periodsarecomparable"> -<title>Period.S</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Period.html" title="Period">Up</a> - </div> -<h1>Module type <a href="type_Period.S.html">Period.S</a></h1> -<pre><span class="keyword">module type</span> S = <code class="code"><span class="keyword">sig</span></code> <a href="Period.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common interface for all periods.<br> -</div> -<hr width="100%"> -<pre><span id="TYPEperiod"><span class="keyword">type</span> <code class="type">+[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ]</code> period</span> </pre> - -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = <code class="type"><a href="Period.html#TYPEdate_field">Period.date_field</a> <a href="Period.S.html#TYPEperiod">period</a></code> </pre> -<div class="info"> -Type of a period.<br> -</div> - -<br> -<h3 id="3_Periodisanadditivemonoid">Period is an additive monoid</h3><br> -<pre><span id="VALempty"><span class="keyword">val</span> empty</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a></code></pre><div class="info"> -The empty period.<br> -</div> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) <a href="Period.S.html#TYPEperiod">period</a> -><br> 'a <a href="Period.S.html#TYPEperiod">period</a> -> 'a <a href="Period.S.html#TYPEperiod">period</a></code></pre><div class="info"> -Addition of periods.<br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) <a href="Period.S.html#TYPEperiod">period</a> -><br> 'a <a href="Period.S.html#TYPEperiod">period</a> -> 'a <a href="Period.S.html#TYPEperiod">period</a></code></pre><div class="info"> -Substraction of periods.<br> -</div> -<pre><span id="VALopp"><span class="keyword">val</span> opp</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) <a href="Period.S.html#TYPEperiod">period</a> -> 'a <a href="Period.S.html#TYPEperiod">period</a></code></pre><div class="info"> -Opposite of a period.<br> -</div> -<br> -<h3 id="3_Periodsarecomparable">Periods are comparable</h3><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a> -> bool</code></pre><div class="info"> -Equality function between two periods.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a> -> int</code></pre><div class="info"> -Comparison function between two periods.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] <a href="Period.S.html#TYPEperiod">period</a> -> int</code></pre><div class="info"> -Hash function for periods.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash</a><br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Period.html b/doc/Period.html deleted file mode 100644 index d38bceb..0000000 --- a/doc/Period.html +++ /dev/null @@ -1,48 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Time_Zone.html"> -<link rel="next" href="Time_sig.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Period</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Time_Zone.html" title="Time_Zone">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Time_sig.html" title="Time_sig">Next</a> -</div> -<h1>Module <a href="type_Period.html">Period</a></h1> -<pre><span class="keyword">module</span> Period: <code class="code"><span class="keyword">sig</span></code> <a href="Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period represents the time passed between two events (a date, a time...). - Only an interface defining arithmetic operations on periods is defined here. - An implementation of this interface depends on the kind of an event (see - module <code class="code"><span class="constructor">Time</span>.<span class="constructor">Period</span></code>, <code class="code"><span class="constructor">Date</span>.<span class="constructor">Period</span></code> and <code class="code"><span class="constructor">Calendar</span>.<span class="constructor">Period</span></code>).<br> -</div> -<hr width="100%"> -<pre><span id="TYPEdate_field"><span class="keyword">type</span> <code class="type"></code>date_field</span> = <code class="type">[ `Day | `Month | `Week | `Year ]</code> </pre> - -<pre><span class="keyword">module type</span> <a href="Period.S.html">S</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Period.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common interface for all periods. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Calendar.html b/doc/Printer.Calendar.html deleted file mode 100644 index 9f36f1c..0000000 --- a/doc/Printer.Calendar.html +++ /dev/null @@ -1,95 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Precise_Calendar.html"> -<link rel="next" href="Printer.CalendarPrinter.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Calendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Precise_Calendar.html" title="Printer.Precise_Calendar">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.CalendarPrinter.html" title="Printer.CalendarPrinter">Next</a> -</div> -<h1>Module <a href="type_Printer.Calendar.html">Printer.Calendar</a></h1> -<pre><span class="keyword">module</span> Calendar: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Calendar.t</code></pre><div class="info"> -Calendar printer. Default format is <code class="code">%i %<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.CalendarPrinter.html b/doc/Printer.CalendarPrinter.html deleted file mode 100644 index 413b3a6..0000000 --- a/doc/Printer.CalendarPrinter.html +++ /dev/null @@ -1,94 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Calendar.html"> -<link rel="next" href="Printer.Precise_Fcalendar.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.CalendarPrinter</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Calendar.html" title="Printer.Calendar">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Precise_Fcalendar.html" title="Printer.Precise_Fcalendar">Next</a> -</div> -<h1>Module <a href="type_Printer.CalendarPrinter.html">Printer.CalendarPrinter</a></h1> -<pre><span class="keyword">module</span> CalendarPrinter: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Calendar.t</code></pre><div class="info"> -<span class="warning">Deprecated.</span>Replaced by <a href="Printer.Calendar.html"><code class="code"><span class="constructor">Printer</span>.<span class="constructor">Calendar</span></code></a>.<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Date.html b/doc/Printer.Date.html deleted file mode 100644 index 4145980..0000000 --- a/doc/Printer.Date.html +++ /dev/null @@ -1,95 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Printer.DatePrinter.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Date</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.DatePrinter.html" title="Printer.DatePrinter">Next</a> -</div> -<h1>Module <a href="type_Printer.Date.html">Printer.Date</a></h1> -<pre><span class="keyword">module</span> Date: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Date.t</code></pre><div class="info"> -Date printer. Specifiers which use time functionalities are not available - on this printer. - Default format is <code class="code">%i</code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.DatePrinter.html b/doc/Printer.DatePrinter.html deleted file mode 100644 index 3cbaa1e..0000000 --- a/doc/Printer.DatePrinter.html +++ /dev/null @@ -1,94 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Date.html"> -<link rel="next" href="Printer.Time.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.DatePrinter</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Date.html" title="Printer.Date">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Time.html" title="Printer.Time">Next</a> -</div> -<h1>Module <a href="type_Printer.DatePrinter.html">Printer.DatePrinter</a></h1> -<pre><span class="keyword">module</span> DatePrinter: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Date.t</code></pre><div class="info"> -<span class="warning">Deprecated.</span>Replaced by <a href="Printer.Date.html"><code class="code"><span class="constructor">Printer</span>.<span class="constructor">Date</span></code></a>.<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Fcalendar.html b/doc/Printer.Fcalendar.html deleted file mode 100644 index 1965161..0000000 --- a/doc/Printer.Fcalendar.html +++ /dev/null @@ -1,94 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Precise_Fcalendar.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Fcalendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Precise_Fcalendar.html" title="Printer.Precise_Fcalendar">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - </div> -<h1>Module <a href="type_Printer.Fcalendar.html">Printer.Fcalendar</a></h1> -<pre><span class="keyword">module</span> Fcalendar: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Fcalendar.t</code></pre><div class="info"> -Fcalendar printer. Seconds are rounded to integers before pretty printing. - Default format is <code class="code">%i %<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Ftime.html b/doc/Printer.Ftime.html deleted file mode 100644 index 0398198..0000000 --- a/doc/Printer.Ftime.html +++ /dev/null @@ -1,98 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.TimePrinter.html"> -<link rel="next" href="Printer.Precise_Calendar.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Ftime</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.TimePrinter.html" title="Printer.TimePrinter">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Precise_Calendar.html" title="Printer.Precise_Calendar">Next</a> -</div> -<h1>Module <a href="type_Printer.Ftime.html">Printer.Ftime</a></h1> -<pre><span class="keyword">module</span> Ftime: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Ftime.t</code></pre><div class="info"> -Ftime printer. Seconds are rounded to integers before pretty printing. - Specifiers which use date functionalities are not available - on this printer. - Default format is <code class="code">%<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Precise_Calendar.html b/doc/Printer.Precise_Calendar.html deleted file mode 100644 index f3fd1b8..0000000 --- a/doc/Printer.Precise_Calendar.html +++ /dev/null @@ -1,95 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Ftime.html"> -<link rel="next" href="Printer.Calendar.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Precise_Calendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Ftime.html" title="Printer.Ftime">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Calendar.html" title="Printer.Calendar">Next</a> -</div> -<h1>Module <a href="type_Printer.Precise_Calendar.html">Printer.Precise_Calendar</a></h1> -<pre><span class="keyword">module</span> Precise_Calendar: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = <a href="Calendar.Precise.html">Calendar.Precise</a>.t</code></pre><div class="info"> -Precise Calendar printer. Default format is <code class="code">%i %<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Precise_Fcalendar.html b/doc/Printer.Precise_Fcalendar.html deleted file mode 100644 index 6895efe..0000000 --- a/doc/Printer.Precise_Fcalendar.html +++ /dev/null @@ -1,97 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.CalendarPrinter.html"> -<link rel="next" href="Printer.Fcalendar.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Precise_Fcalendar</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.CalendarPrinter.html" title="Printer.CalendarPrinter">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Fcalendar.html" title="Printer.Fcalendar">Next</a> -</div> -<h1>Module <a href="type_Printer.Precise_Fcalendar.html">Printer.Precise_Fcalendar</a></h1> -<pre><span class="keyword">module</span> Precise_Fcalendar: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = <a href="Fcalendar.Precise.html">Fcalendar.Precise</a>.t</code></pre><div class="info"> -Precise Fcalendar printer. - Seconds are rounded to integers before pretty printing. - Default format is <code class="code">%i %<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.S.html b/doc/Printer.S.html deleted file mode 100644 index 9add055..0000000 --- a/doc/Printer.S.html +++ /dev/null @@ -1,90 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.S</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Printer.html" title="Printer">Up</a> - </div> -<h1>Module type <a href="type_Printer.S.html">Printer.S</a></h1> -<pre><span class="keyword">module type</span> S = <code class="code"><span class="keyword">sig</span></code> <a href="Printer.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Generic signature of a printer-parser.<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.Time.html b/doc/Printer.Time.html deleted file mode 100644 index 2170b09..0000000 --- a/doc/Printer.Time.html +++ /dev/null @@ -1,97 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.DatePrinter.html"> -<link rel="next" href="Printer.TimePrinter.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.Time</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.DatePrinter.html" title="Printer.DatePrinter">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.TimePrinter.html" title="Printer.TimePrinter">Next</a> -</div> -<h1>Module <a href="type_Printer.Time.html">Printer.Time</a></h1> -<pre><span class="keyword">module</span> Time: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Time.t</code></pre><div class="info"> -Time printer. Specifiers which use date functionalities are not available - on this printer. - Default format is <code class="code">%<span class="constructor">T</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.TimePrinter.html b/doc/Printer.TimePrinter.html deleted file mode 100644 index 185eec2..0000000 --- a/doc/Printer.TimePrinter.html +++ /dev/null @@ -1,94 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.Time.html"> -<link rel="next" href="Printer.Ftime.html"> -<link rel="Up" href="Printer.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Parsers from string" rel="Section" href="#3_Parsersfromstring"> -<title>Printer.TimePrinter</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.Time.html" title="Printer.Time">Previous</a> - <a class="up" href="Printer.html" title="Printer">Up</a> - <a class="post" href="Printer.Ftime.html" title="Printer.Ftime">Next</a> -</div> -<h1>Module <a href="type_Printer.TimePrinter.html">Printer.TimePrinter</a></h1> -<pre><span class="keyword">module</span> TimePrinter: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Time.t</code></pre><div class="info"> -<span class="warning">Deprecated.</span>Replaced by <a href="Printer.Time.html"><code class="code"><span class="constructor">Printer</span>.<span class="constructor">Time</span></code></a>.<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Generic type of a printer.<br> -</div> - -<pre><span id="VALfprint"><span class="keyword">val</span> fprint</span> : <code class="type">string -> Format.formatter -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>.<br> -<b>Raises</b> <code>Invalid_argument</code> if the format is incorrect.<br> -</div> -<pre><span id="VALprint"><span class="keyword">val</span> print</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code><br> -</div> -<pre><span id="VALdprint"><span class="keyword">val</span> dprint</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<pre><span id="VALsprint"><span class="keyword">val</span> sprint</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>.<br> -</div> -<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Printer.S.html#TYPEt">t</a> -> string</code></pre><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations).<br> -</div> -<br> -<h3 id="3_Parsersfromstring">Parsers from string</h3><br> -<pre><span id="VALfrom_fstring"><span class="keyword">val</span> from_fstring</span> : <code class="type">string -> string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -<p> - - Date padding (i.e. a special directive following <code class="code"><span class="string">'%'</span></code>) and - specifiers <code class="code">%e</code>, <code class="code">%k</code> and <code class="code">%l</code> are not recognized. Specifiers - <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%j</code>, <code class="code">%v</code>, <code class="code">%w</code> and <code class="code">%<span class="constructor">W</span></code> are recognized but mainly ignored: - only the validity of the format is checked. -<p> - - In order to recognize words (used by <code class="code">%a</code>, <code class="code">%<span class="constructor">A</span></code>, <code class="code">%b</code>, <code class="code">%<span class="constructor">B</span></code> and <code class="code">%p</code>), a - regular expression is used which can be configured by - <a href="Printer.html#VALset_word_regexp"><code class="code"><span class="constructor">Printer</span>.set_word_regexp</code></a>. When the format has only two digits for the - year number, 1900 are added to this number (see examples).<br> -<b>Raises</b> <code>Invalid_argument</code> if either the format is incorrect or the string - does not match the format or the event cannot be created (e.g. if you do - not specify a year for a date).<br> -<b>Examples:</b><ul><li><code class="code">from_fstring <span class="string">"the date is %B, the %dth %Y"</span> <span class="string">"the date is May, - the 14th 2007"</span></code> returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 2007 5 14</code> (with - default internationalization).<br> -</li><li><code class="code">from_fstring <span class="string">"the date is %D"</span> <span class="string">"the date is 01/06/03"</span></code> - returns a date equivalent to <code class="code"><span class="constructor">Date</span>.make 1903 1 6</code><br> -</li></ul></div> -<pre><span id="VALfrom_string"><span class="keyword">val</span> from_string</span> : <code class="type">string -> <a href="Printer.S.html#TYPEt">t</a></code></pre><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Printer.html b/doc/Printer.html deleted file mode 100644 index 0e8da9e..0000000 --- a/doc/Printer.html +++ /dev/null @@ -1,183 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Fcalendar.html"> -<link rel="next" href="Version.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Internationalization" rel="Section" href="#2_Internationalization"> -<link title="Printers (including parsers from string)" rel="Section" href="#2_Printersincludingparsersfromstring"> -<title>Printer</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Fcalendar.html" title="Fcalendar">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Version.html" title="Version">Next</a> -</div> -<h1>Module <a href="type_Printer.html">Printer</a></h1> -<pre><span class="keyword">module</span> Printer: <code class="code"><span class="keyword">sig</span></code> <a href="Printer.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Pretty printing and parsing from string. - In the following, an "event" is either a date or a time or a calendar. -<p> - - This module implements different printers: one for each kind of events. - The three printers have the same signature: - they mainly implement a <code class="code">fprint : string <span class="keywordsign">-></span> formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit</code> function - and a <code class="code">from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t</code> function. - The first one prints an event according to a format string - (see below for a description of such a format). - The second one converts a string to an event according to a format string. -<p> - - A format string follows the unix utility 'date' (with few modifications). - It is a string which contains two types of objects: plain characters and - conversion specifiers. Those specifiers are introduced by - a <code class="code">%</code> character and their meanings are:<ul> -<li><code class="code">%%</code>: a literal <code class="code">%</code></li> -<li><code class="code">%a</code>: short day name (by using a short version of <code class="code">day_name</code>)</li> -<li><code class="code">%<span class="constructor">A</span></code>: day name (by using <code class="code">day_name</code>)</li> -<li><code class="code">%b</code>: short month name (by using a short version of <code class="code">month_name</code>)</li> -<li><code class="code">%<span class="constructor">B</span></code>: month name (by using <code class="code">month_name</code>)</li> -<li><code class="code">%c</code>: shortcut for <code class="code">%a %b %d %<span class="constructor">H</span>:%<span class="constructor">M</span>:%<span class="constructor">S</span> %<span class="constructor">Y</span></code></li> -<li><code class="code">%<span class="constructor">C</span></code>: century: as %Y without the two last digits (since version 2.01)</li> -<li><code class="code">%d</code>: day of month (01..31)</li> -<li><code class="code">%<span class="constructor">D</span></code>: shortcut for <code class="code">%m/%d/%y</code></li> -<li><code class="code">%e</code>: same as <code class="code">%_d</code></li> -<li><code class="code">%<span class="constructor">F</span></code>: shortcut for <code class="code">%<span class="constructor">Y</span>-%m-%d</code>: ISO-8601 notation (since version 2.01)</li> -<li><code class="code">%h</code>: same as <code class="code">%b</code></li> -<li><code class="code">%<span class="constructor">H</span></code>: hour (00..23)</li> -<li><code class="code">%<span class="constructor">I</span></code>: hour (01..12)</li> -<li><code class="code">%i</code>: same as <code class="code">%<span class="constructor">F</span></code>; deprecated since 2.01</li> -<li><code class="code">%j</code>: day of year (001..366)</li> -<li><code class="code">%k</code>: same as <code class="code">%_H</code></li> -<li><code class="code">%l</code>: same as <code class="code">%_I</code></li> -<li><code class="code">%m</code>: month (01..12)</li> -<li><code class="code">%<span class="constructor">M</span></code>: minute (00..59)</li> -<li><code class="code">%n</code>: a newline (same as <code class="code">\n</code>)</li> -<li><code class="code">%p</code>: AM or PM</li> -<li><code class="code">%<span class="constructor">P</span></code>: am or pm (same as %p in lowercase) (since version 2.01)</li> -<li><code class="code">%r</code>: shortcut for <code class="code">%<span class="constructor">I</span>:%<span class="constructor">M</span>:%<span class="constructor">S</span> %p</code></li> -<li><code class="code">%<span class="constructor">R</span></code>: shortcut for <code class="code">%<span class="constructor">H</span>:%<span class="constructor">M</span></code> (since version 2.01)</li> -<li><code class="code">%s</code>: number of seconds since 1970/1/1 (since version 2.01)</li> -<li><code class="code">%<span class="constructor">S</span></code>: second (00..60)</li> -<li><code class="code">%t</code>: a horizontal tab (same as <code class="code">\t</code>)</li> -<li><code class="code">%<span class="constructor">T</span></code>: shortcut for <code class="code">%<span class="constructor">H</span>:%<span class="constructor">M</span>:%<span class="constructor">S</span></code></li> -<li><code class="code">%<span class="constructor">V</span></code>: week number of year (01..53)</li> -<li><code class="code">%w</code>: day of week (1..7)</li> -<li><code class="code">%<span class="constructor">W</span></code>: same as <code class="code">%<span class="constructor">V</span></code></li> -<li><code class="code">%y</code>: last two digits of year (00..99)</li> -<li><code class="code">%<span class="constructor">Y</span></code>: year (four digits)</li> -<li><code class="code">%z</code>: time zone in the form +hhmm (e.g. -0400) (since version 2.01)</li> -<li><code class="code">%:z</code>: time zone in the form +hh:mm (e.g. -04:00) (since version 2.01)</li> -<li><code class="code">%::z</code>: time zone in the form +hh:mm:ss (e.g. -04:00:00) - (since version 2.01)</li> -<li><code class="code">%:::z</code>: time zone in the form +hh (e.g. -04) (since version 2.01)</li> -</ul> - - By default, date pads numeric fields with zeroes. Two special modifiers - between <code class="code"><span class="keywordsign">`</span>%<span class="keywordsign">'</span></code> and a numeric directive are recognized:<ul> -<li><code class="code"><span class="string">'-'</span> (hyphen)</code>: do not pad the field</li> -<li><code class="code"><span class="string">'_'</span> (underscore)</code>: pad the field with spaces</li> -<li><code class="code"><span class="string">'0'</span> (zero)</code>: pad the field with zeroes (default) (since version 2.01)</li> -<li><code class="code"><span class="string">'^'</span></code>: use uppercase if possible (since version 2.01) - Padding is only available for printers, not for parsers.</li> -</ul> -<br> -<b>Since</b> 1.05<br> -<b>Examples:</b><ul><li>a possible output of <code class="code">%c</code> is <code class="code"><span class="constructor">Thu</span> <span class="constructor">Sep</span> 18 14:10:51 2003</code>.<br> -</li><li>a possible output of <code class="code">the date is %<span class="constructor">B</span>, the %-dth</code> is - <code class="code">the date is <span class="constructor">January</span>, the 6th</code> is matched by ;<br> -</li><li>a possible output of <code class="code">%<span class="constructor">D</span></code> is <code class="code">01/06/03</code><br> -</li></ul></div> -<hr width="100%"> -<br> -<h2 id="2_Internationalization">Internationalization</h2> -<p> - - You can manage the string representations of days and months. - By default, the English names are used but you can change their by - setting the references <code class="code">day_name</code> and <code class="code">month_name</code>.<br> -<pre><span id="VALday_name"><span class="keyword">val</span> day_name</span> : <code class="type">(Date.day -> string) Pervasives.ref</code></pre><div class="info"> -String representation of a day.<br> -</div> -<pre><span id="VALname_of_day"><span class="keyword">val</span> name_of_day</span> : <code class="type">Date.day -> string</code></pre><div class="info"> -<code class="code">name_of_day d</code> is equivalent to <code class="code">!day_name d</code>. - Used by the specifier <code class="code">%<span class="constructor">A</span></code>.<br> -</div> -<pre><span id="VALshort_name_of_day"><span class="keyword">val</span> short_name_of_day</span> : <code class="type">Date.day -> string</code></pre><div class="info"> -<code class="code">short_name_of_day d</code> returns the 3 first characters of <code class="code">name_of_day d</code>. - Used by the specifier <code class="code">%a</code>.<br> -</div> -<pre><span id="VALmonth_name"><span class="keyword">val</span> month_name</span> : <code class="type">(Date.month -> string) Pervasives.ref</code></pre><div class="info"> -String representation of a month.<br> -</div> -<pre><span id="VALname_of_month"><span class="keyword">val</span> name_of_month</span> : <code class="type">Date.month -> string</code></pre><div class="info"> -<code class="code">name_of_month m</code> is equivalent to <code class="code">!day_month m</code>. - Used by the specifier <code class="code">%<span class="constructor">B</span></code>.<br> -</div> -<pre><span id="VALshort_name_of_month"><span class="keyword">val</span> short_name_of_month</span> : <code class="type">Date.month -> string</code></pre><div class="info"> -<code class="code">short_name_of_month d</code> returns the 3 first characters of - <code class="code">name_of_month d</code>. - Used by the specifier <code class="code">%b</code>.<br> -</div> -<pre><span id="VALset_word_regexp"><span class="keyword">val</span> set_word_regexp</span> : <code class="type">Str.regexp -> unit</code></pre><div class="info"> -Set the regular expression used to recognize words in - <code class="code">from_fstring</code>. Default is <code class="code">[a-zA-<span class="constructor">Z</span>]*</code>.<br> -<b>Since</b> 1.10<br> -</div> -<br> -<h2 id="2_Printersincludingparsersfromstring">Printers (including parsers from string)</h2> -<p> - - Printers also contain parsers which allow to build events from strings.<br> -<pre><span class="keyword">module type</span> <a href="Printer.S.html">S</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Printer.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Generic signature of a printer-parser. -</div> -<pre><span class="keyword">module</span> <a href="Printer.Date.html">Date</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Date.t</code></pre><div class="info"> -Date printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.DatePrinter.html">DatePrinter</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Date.t</code></pre><div class="info"> -<span class="deprecated"></span></div> -<pre><span class="keyword">module</span> <a href="Printer.Time.html">Time</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Time.t</code></pre><div class="info"> -Time printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.TimePrinter.html">TimePrinter</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Time.t</code></pre><div class="info"> -<span class="deprecated"></span></div> -<pre><span class="keyword">module</span> <a href="Printer.Ftime.html">Ftime</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Ftime.t</code></pre><div class="info"> -Ftime printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.Precise_Calendar.html">Precise_Calendar</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = <a href="Calendar.Precise.html">Calendar.Precise</a>.t</code></pre><div class="info"> -Precise Calendar printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.Calendar.html">Calendar</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Calendar.t</code></pre><div class="info"> -Calendar printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.CalendarPrinter.html">CalendarPrinter</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Calendar.t</code></pre><div class="info"> -<span class="deprecated"></span></div> -<pre><span class="keyword">module</span> <a href="Printer.Precise_Fcalendar.html">Precise_Fcalendar</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = <a href="Fcalendar.Precise.html">Fcalendar.Precise</a>.t</code></pre><div class="info"> -Precise Fcalendar printer. -</div> -<pre><span class="keyword">module</span> <a href="Printer.Fcalendar.html">Fcalendar</a>: <code class="type"><a href="Printer.S.html">S</a></code><code class="type"> with type t = Fcalendar.t</code></pre><div class="info"> -Fcalendar printer. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time.html b/doc/Time.html deleted file mode 100644 index 80e9bd5..0000000 --- a/doc/Time.html +++ /dev/null @@ -1,41 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Time_sig.html"> -<link rel="next" href="Ftime.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Time_sig.html" title="Time_sig">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Ftime.html" title="Ftime">Next</a> -</div> -<h1>Module <a href="type_Time.html">Time</a></h1> -<pre><span class="keyword">module</span> Time: <code class="code"><span class="keyword">sig</span></code> <a href="Time.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Time implementation in which seconds are integers.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Time_sig.S.html">Time_sig.S</a></pre> -</body></html>
\ No newline at end of file diff --git a/doc/Time_Zone.html b/doc/Time_Zone.html deleted file mode 100644 index 3ec55ca..0000000 --- a/doc/Time_Zone.html +++ /dev/null @@ -1,105 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Utils.html"> -<link rel="next" href="Period.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_Zone</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Utils.html" title="Utils">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Period.html" title="Period">Next</a> -</div> -<h1>Module <a href="type_Time_Zone.html">Time_Zone</a></h1> -<pre><span class="keyword">module</span> Time_Zone: <code class="code"><span class="keyword">sig</span></code> <a href="Time_Zone.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Time zone management. -<p> - - You can <code class="code">change</code> the <code class="code">current</code> time zone in your program by side effect.<br> -</div> -<hr width="100%"> -<pre><code><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> = </code></pre><table class="typetable"> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTt.UTC"><span class="constructor">UTC</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Greenwich Meridian Time</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTt.Local"><span class="constructor">Local</span></span></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Local Time</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr> -<tr> -<td align="left" valign="top" > -<code><span class="keyword">|</span></code></td> -<td align="left" valign="top" > -<code><span id="TYPEELTt.UTC_Plus"><span class="constructor">UTC_Plus</span></span> <span class="keyword">of</span> <code class="type">int</code></code></td> -<td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >Another time zone specified from UTC</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> -</tr></table> - -<div class="info"> -Type of a time zone.<br> -</div> - -<pre><span id="VALcurrent"><span class="keyword">val</span> current</span> : <code class="type">unit -> <a href="Time_Zone.html#TYPEt">t</a></code></pre><div class="info"> -Return the current time zone. It is <code class="code"><span class="constructor">UTC</span></code> before any change.<br> -</div> -<pre><span id="VALchange"><span class="keyword">val</span> change</span> : <code class="type"><a href="Time_Zone.html#TYPEt">t</a> -> unit</code></pre><div class="info"> -Change the current time zone by another one. - Raise <code class="code"><span class="constructor">Invalid_argument</span></code> if the specified time zone is <code class="code"><span class="constructor">UTC_Plus</span> x</code> with - <code class="code">x < -12</code> or <code class="code">x > 11</code><br> -</div> -<pre><span id="VALgap"><span class="keyword">val</span> gap</span> : <code class="type"><a href="Time_Zone.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Return the gap between two time zone.<br> -<b>Example:</b> <code class="code">gap <span class="constructor">UTC</span> (<span class="constructor">UTC_Plus</span> 5)</code> returns 5 and, at Paris in summer, - <code class="code">gap <span class="constructor">Local</span> <span class="constructor">UTC</span></code> returns -2.<br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type">unit -> int</code></pre><div class="info"> -<code class="code">from_gmt ()</code> is equivalent to <code class="code">gap <span class="constructor">UTC</span> (current ())</code>.<br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type">unit -> int</code></pre><div class="info"> -<code class="code">to_gmt ()</code> is equivalent to <code class="code">gap (current ()) <span class="constructor">UTC</span></code>.<br> -</div> -<pre><span id="VALis_dst"><span class="keyword">val</span> is_dst</span> : <code class="type">unit -> bool</code></pre><div class="info"> -<code class="code">is_dst ()</code> checks if daylight saving time is in effect. - Only relevant in local time. - Returns alway <code class="code"><span class="keyword">false</span></code> in another time zone.<br> -<b>Since</b> 1.09.4<br> -</div> -<pre><span id="VALhour_of_dst"><span class="keyword">val</span> hour_of_dst</span> : <code class="type">unit -> int</code></pre><div class="info"> -<code class="code">hour_of_dst ()</code> returns <code class="code">1</code> if <code class="code">is_dst ()</code> and <code class="code">0</code> otherwise.<br> -<b>Since</b> 1.09.4<br> -</div> -<pre><span id="VALon"><span class="keyword">val</span> on</span> : <code class="type">('a -> 'b) -> <a href="Time_Zone.html#TYPEt">t</a> -> 'a -> 'b</code></pre><div class="info"> -<code class="code">on f tz x</code> changes the time zone to <code class="code">tz</code>, then computes <code class="code">f x</code>, and - finally reset the time zone to the initial one and returns the result of - the computation.<br> -<b>Since</b> 2.0<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time_sig.S.Period.html b/doc/Time_sig.S.Period.html deleted file mode 100644 index 0082805..0000000 --- a/doc/Time_sig.S.Period.html +++ /dev/null @@ -1,90 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Time_sig.S.Second.html"> -<link rel="Up" href="Time_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Arithmetic operations" rel="Section" href="#3_Arithmeticoperations"> -<link title="Constructors" rel="Section" href="#3_Constructors"> -<link title="Getters" rel="Section" href="#3_Getters"> -<title>Time_sig.S.Period</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Time_sig.S.Second.html" title="Time_sig.S.Second">Previous</a> - <a class="up" href="Time_sig.S.html" title="Time_sig.S">Up</a> - </div> -<h1>Module <a href="type_Time_sig.S.Period.html">Time_sig.S.Period</a></h1> -<pre><span class="keyword">module</span> Period: <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two times.<br> -</div> -<hr width="100%"> -<br> -<h3 id="3_Arithmeticoperations">Arithmetic operations</h3><br> -<pre><span class="keyword">include</span> <a href="Period.S.html">Period.S</a></pre> -<pre><span id="VALlength"><span class="keyword">val</span> length</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period -> <a href="Time_sig.S.html#TYPEsecond">Time_sig.S.second</a></code></pre><div class="info"> -Number of seconds of a period.<br> -</div> -<pre><span id="VALmul"><span class="keyword">val</span> mul</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) period -> 'a period -> 'a period</code></pre><div class="info"> -Multiplication.<br> -</div> -<pre><span id="VALdiv"><span class="keyword">val</span> div</span> : <code class="type">([< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] as 'a) period -> 'a period -> 'a period</code></pre><div class="info"> -Division.<br> -</div> -<br> -<h3 id="3_Constructors">Constructors</h3><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> <a href="Time_sig.S.html#TYPEsecond">Time_sig.S.second</a> -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period</code></pre><div class="info"> -<code class="code">make hour minute second</code> makes a period of the specified length.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">?hour:int -><br> ?minute:int -><br> ?second:<a href="Time_sig.S.html#TYPEsecond">Time_sig.S.second</a> -> unit -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period</code></pre><div class="info"> -Labelled version of <code class="code">make</code>. - The default value is <code class="code">0</code> for each argument.<br> -</div> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period</code></pre><div class="info"> -<code class="code">hour n</code> makes a period of <code class="code">n</code> hours.<br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type">int -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period</code></pre><div class="info"> -<code class="code">minute n</code> makes a period of <code class="code">n</code> minutes.<br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Time_sig.S.html#TYPEsecond">Time_sig.S.second</a> -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period</code></pre><div class="info"> -<code class="code">second n</code> makes a period of <code class="code">n</code> seconds.<br> -</div> -<br> -<h3 id="3_Getters">Getters</h3><br> -<pre><span id="VALto_seconds"><span class="keyword">val</span> to_seconds</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period -> <a href="Time_sig.S.html#TYPEsecond">Time_sig.S.second</a></code></pre><div class="info"> -Number of seconds of a period.<br> -<b>Since</b> 1.04<br> -<b>Example:</b> <code class="code">to_seconds (make 1 2 3)</code> returns <code class="code">3600 + 120 + 3 = 3723</code>.<br> -</div> -<pre><span id="VALto_minutes"><span class="keyword">val</span> to_minutes</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period -> float</code></pre><div class="info"> -Number of minutes of a period. The resulting fractional part - represents seconds.<br> -<b>Since</b> 1.04<br> -<b>Example:</b> <code class="code">to_minutes (make 1 2 3)</code> returns <code class="code">60 + 2 + 0.05 = 62.05</code>.<br> -</div> -<pre><span id="VALto_hours"><span class="keyword">val</span> to_hours</span> : <code class="type">[< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] period -> float</code></pre><div class="info"> -Number of hours of a period. The resulting fractional part represents - minutes and seconds.<br> -<b>Since</b> 1.04<br> -<b>Example:</b> <code class="code">to_hours (make 1 3 0)</code> returns <code class="code">1 + 0.05 = 1.05</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time_sig.S.Second.html b/doc/Time_sig.S.Second.html deleted file mode 100644 index a234cdf..0000000 --- a/doc/Time_sig.S.Second.html +++ /dev/null @@ -1,56 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Time_sig.S.Period.html"> -<link rel="Up" href="Time_sig.S.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.S.Second</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Time_sig.S.html" title="Time_sig.S">Up</a> - <a class="post" href="Time_sig.S.Period.html" title="Time_sig.S.Period">Next</a> -</div> -<h1>Module <a href="type_Time_sig.S.Second.html">Time_sig.S.Second</a></h1> -<pre><span class="keyword">module</span> Second: <code class="type"><a href="Time_sig.Second.html">Time_sig.Second</a></code><code class="type"> with type t = second</code></pre><div class="info"> -Second implementation<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Type of seconds.<br> -</div> - -<pre><span id="VALfrom_int"><span class="keyword">val</span> from_int</span> : <code class="type">int -> <a href="Time_sig.Second.html#TYPEt">t</a></code></pre><div class="info"> -Convert an integer to an equivalent number of seconds.<br> -</div> -<pre><span id="VALfrom_float"><span class="keyword">val</span> from_float</span> : <code class="type">float -> <a href="Time_sig.Second.html#TYPEt">t</a></code></pre><div class="info"> -Convert a float to an equivalent number of seconds.<br> -</div> -<pre><span id="VALto_int"><span class="keyword">val</span> to_int</span> : <code class="type"><a href="Time_sig.Second.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Inverse of <code class="code">from_int</code>.<br> -</div> -<pre><span id="VALto_float"><span class="keyword">val</span> to_float</span> : <code class="type"><a href="Time_sig.Second.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Inverse of <code class="code">from_float</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time_sig.S.html b/doc/Time_sig.S.html deleted file mode 100644 index 095d034..0000000 --- a/doc/Time_sig.S.html +++ /dev/null @@ -1,214 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Time_sig.Second.html"> -<link rel="Up" href="Time_sig.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><link title="Datatypes" rel="Section" href="#2_Datatypes"> -<link title="Second" rel="Section" href="#2_Second"> -<link title="Constructors" rel="Section" href="#2_Constructors"> -<link title="Conversions" rel="Section" href="#2_Conversions"> -<link title="Getters" rel="Section" href="#2_Getters"> -<link title="Times are comparable" rel="Section" href="#2_Timesarecomparable"> -<link title="Boolean operations on times" rel="Section" href="#2_Booleanoperationsontimes"> -<link title="Coercions" rel="Section" href="#2_Coercions"> -<link title="Period" rel="Section" href="#2_Period"> -<link title="Arithmetic operations on times and periods" rel="Section" href="#2_Arithmeticoperationsontimesandperiods"> -<title>Time_sig.S</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Time_sig.Second.html" title="Time_sig.Second">Previous</a> - <a class="up" href="Time_sig.html" title="Time_sig">Up</a> - </div> -<h1>Module type <a href="type_Time_sig.S.html">Time_sig.S</a></h1> -<pre><span class="keyword">module type</span> S = <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all time representations.<br> -<b>Since</b> 2.0 (this signature was before inlined in interface of Time).<br> -</div> -<hr width="100%"> -<br> -<h2 id="2_Datatypes">Datatypes</h2><br> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Type of a time.<br> -</div> - -<pre><span id="TYPEfield"><span class="keyword">type</span> <code class="type"></code>field</span> = <code class="type">[ `Hour | `Minute | `Second ]</code> </pre> -<div class="info"> -The different fields of a time.<br> -</div> - -<br> -<h2 id="2_Second">Second</h2><br> -<pre><span id="TYPEsecond"><span class="keyword">type</span> <code class="type"></code>second</span> </pre> -<div class="info"> -Type of a second.<br> -<b>Since</b> 2.0 (was an integer in previous versions).<br> -</div> - -<pre><span class="keyword">module</span> <a href="Time_sig.S.Second.html">Second</a>: <code class="type"><a href="Time_sig.Second.html">Time_sig.Second</a></code><code class="type"> with type t = second</code></pre><div class="info"> -Second implementation -</div> -<br> -<h2 id="2_Constructors">Constructors</h2><br> -<pre><span id="VALmake"><span class="keyword">val</span> make</span> : <code class="type">int -> int -> <a href="Time_sig.S.html#TYPEsecond">second</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">make hour minute second</code> makes the time hour-minute-second.<br> -</div> -<pre><span id="VALlmake"><span class="keyword">val</span> lmake</span> : <code class="type">?hour:int -> ?minute:int -> ?second:<a href="Time_sig.S.html#TYPEsecond">second</a> -> unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Labelled version of <code class="code">make</code>. The default value is <code class="code">0</code> for each argument.<br> -<b>Since</b> 1.05<br> -</div> -<pre><span id="VALnow"><span class="keyword">val</span> now</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -The current time based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>.<br> -</div> -<pre><span id="VALmidnight"><span class="keyword">val</span> midnight</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">midnight ()</code> is midnight (expressed in the current time zone). - So, it has always the same behaviour as <code class="code">make 0 0 0</code>.<br> -</div> -<pre><span id="VALmidday"><span class="keyword">val</span> midday</span> : <code class="type">unit -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">midday ()</code> is midday (expressed in the current time zone). - So, it has always the same behaviour as <code class="code">make 12 0 0</code>.<br> -</div> -<br> -<h2 id="2_Conversions">Conversions</h2><br> -<pre><span id="VALconvert"><span class="keyword">val</span> convert</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_Zone.html#TYPEt">Time_Zone.t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">convert t t1 t2</code> converts the time <code class="code">t</code> expressed in the time zone <code class="code">t1</code> - to the same time expressed in the time zone <code class="code">t2</code>.<br> -<b>Example:</b> <code class="code">convert (make 20 0 0) (<span class="constructor">Time_Zone</span>.<span class="constructor">GMT_Plus</span> 2) - (<span class="constructor">Time_Zone</span>.<span class="constructor">GMT_Plus</span> 4)</code> returns the time 22-0-0.<br> -</div> -<pre><span id="VALfrom_gmt"><span class="keyword">val</span> from_gmt</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">from_gmt t</code> is equivalent to - <code class="code">convert t <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span> (<span class="constructor">Time_Zone</span>.current ())</code>.<br> -</div> -<pre><span id="VALto_gmt"><span class="keyword">val</span> to_gmt</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">to_gmt t</code> is equivalent to - <code class="code">convert t (<span class="constructor">Time_Zone</span>.current ()) <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span></code>.<br> -</div> -<pre><span id="VALnormalize"><span class="keyword">val</span> normalize</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> * int</code></pre><div class="info"> -<code class="code">normalize t</code> returns <code class="code">t</code> such that <code class="code">hour t</code> belongs to <code class="code">[0; 24[</code>. The - second component of the result is the number of days needed by the - modification.<br> -<b>Example:</b> <code class="code">normalize (make 22 0 0)</code> returns the time 22-0-0 and 0, - <code class="code">normalize (make 73 0 0)</code> returns the time 1-0-0 and 3 and <code class="code">normalize - (make (-73) 0 0)</code> returns the time 23-0-0 and (-4).<br> -</div> -<br> -<h2 id="2_Getters">Getters</h2><br> -<pre><span id="VALhour"><span class="keyword">val</span> hour</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hour.<br> -<b>Example:</b> <code class="code">hour (make 20 0 0)</code> returns 20.<br> -</div> -<pre><span id="VALminute"><span class="keyword">val</span> minute</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Minute.<br> -<b>Example:</b> <code class="code">minute (make 20 10 0)</code> returns 10.<br> -</div> -<pre><span id="VALsecond"><span class="keyword">val</span> second</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -Second.<br> -<b>Example:</b> <code class="code">second (make 20 10 5)</code> returns 5.<br> -</div> -<pre><span id="VALto_seconds"><span class="keyword">val</span> to_seconds</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEsecond">second</a></code></pre><div class="info"> -Number of seconds of a time.<br> -<b>Example:</b> <code class="code">to_seconds (make 1 2 3)</code> returns <code class="code">3600 + 120 + 3 = 3723</code>.<br> -</div> -<pre><span id="VALto_minutes"><span class="keyword">val</span> to_minutes</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Number of minutes of a time. The resulting fractional part represents - seconds.<br> -<b>Example:</b> <code class="code">to_minutes (make 1 2 3)</code> returns <code class="code">60+2+0.05 = 62.05</code>.<br> -</div> -<pre><span id="VALto_hours"><span class="keyword">val</span> to_hours</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Number of hours of a time. The resulting fractional part represents - minutes and seconds.<br> -<b>Example:</b> <code class="code">to_hours (make 1 3 0)</code> returns <code class="code">1 + 0.05 = 1.05</code>.<br> -</div> -<br> -<h2 id="2_Timesarecomparable">Times are comparable</h2><br> -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality function between two times.<br> -<b>Since</b> 1.09.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALequal">Utils.Comparable.equal.</a><br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison function between two times.<br> -<b>See also</b> <a href="Utils.Comparable.html#VALcompare">Utils.Comparable.compare.</a><br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Hash function for times.<br> -<b>Since</b> 2.0<br> -<b>See also</b> <a href="Utils.Comparable.html#VALhash">Utils.Comparable.hash.</a><br> -</div> -<br> -<h2 id="2_Booleanoperationsontimes">Boolean operations on times</h2><br> -<pre><span id="VALis_pm"><span class="keyword">val</span> is_pm</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is before midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -<b>Example:</b> both <code class="code">is_pm (make 10 0 0)</code> and <code class="code">is_pm (make 34 0 0)</code> return - <code class="code"><span class="keyword">true</span></code>.<br> -</div> -<pre><span id="VALis_am"><span class="keyword">val</span> is_am</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is after midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise.<br> -<b>Example:</b> both <code class="code">is_am (make 20 0 0)</code> and <code class="code">is_am (make 44 0 0)</code> return - <code class="code"><span class="keyword">true</span></code>.<br> -</div> -<br> -<h2 id="2_Coercions">Coercions</h2><br> -<pre><span id="VALfrom_seconds"><span class="keyword">val</span> from_seconds</span> : <code class="type"><a href="Time_sig.S.html#TYPEsecond">second</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_seconds</code>.<br> -</div> -<pre><span id="VALfrom_minutes"><span class="keyword">val</span> from_minutes</span> : <code class="type">float -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_minutes</code>.<br> -</div> -<pre><span id="VALfrom_hours"><span class="keyword">val</span> from_hours</span> : <code class="type">float -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -Inverse of <code class="code">to_hours</code>.<br> -</div> -<br> -<h2 id="2_Period">Period</h2><br> -<pre><span class="keyword">module</span> <a href="Time_sig.S.Period.html">Period</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.S.Period.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -A period is the number of seconds between two times. -</div> -<br> -<h2 id="2_Arithmeticoperationsontimesandperiods">Arithmetic operations on times and periods</h2><br> -<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">app t p</code> returns <code class="code">t + p</code>.<br> -<b>Example:</b> <code class="code">add (make 20 0 0) (<span class="constructor">Period</span>.minute 70)</code> returns the time - 21:10:0.<br> -</div> -<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> <a href="Time_sig.S.html#TYPEt">t</a> -> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period</code></pre><div class="info"> -<code class="code">sub t1 t2</code> returns the period between <code class="code">t1</code> and <code class="code">t2</code>.<br> -</div> -<pre><span id="VALrem"><span class="keyword">val</span> rem</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -><br> [< <a href="Period.html#TYPEdate_field">Period.date_field</a> ] Period.period -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">rem t p</code> is equivalent to <code class="code">add t (<span class="constructor">Period</span>.opp p)</code>.<br> -</div> -<pre><span id="VALnext"><span class="keyword">val</span> next</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEfield">field</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">next t f</code> returns the time corresponding to the next specified field.<br> -<b>Example:</b> <code class="code">next (make 20 3 31) <span class="keywordsign">`</span><span class="constructor">Minute</span></code> returns the time 20:04:31. - (i.e. one minute later).<br> -</div> -<pre><span id="VALprev"><span class="keyword">val</span> prev</span> : <code class="type"><a href="Time_sig.S.html#TYPEt">t</a> -> <a href="Time_sig.S.html#TYPEfield">field</a> -> <a href="Time_sig.S.html#TYPEt">t</a></code></pre><div class="info"> -<code class="code">prev t f</code> returns the time corresponding to the previous specified - field.<br> -<b>Example:</b> <code class="code">prev (make 20 3 31) <span class="keywordsign">`</span><span class="constructor">Second</span></code> returns the time 20:03:30 - (i.e. one second ago).<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time_sig.Second.html b/doc/Time_sig.Second.html deleted file mode 100644 index 74803ac..0000000 --- a/doc/Time_sig.Second.html +++ /dev/null @@ -1,56 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Time_sig.S.html"> -<link rel="Up" href="Time_sig.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.Second</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Time_sig.html" title="Time_sig">Up</a> - <a class="post" href="Time_sig.S.html" title="Time_sig.S">Next</a> -</div> -<h1>Module type <a href="type_Time_sig.Second.html">Time_sig.Second</a></h1> -<pre><span class="keyword">module type</span> Second = <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.Second.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Interface for seconds.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> -<div class="info"> -Type of seconds.<br> -</div> - -<pre><span id="VALfrom_int"><span class="keyword">val</span> from_int</span> : <code class="type">int -> <a href="Time_sig.Second.html#TYPEt">t</a></code></pre><div class="info"> -Convert an integer to an equivalent number of seconds.<br> -</div> -<pre><span id="VALfrom_float"><span class="keyword">val</span> from_float</span> : <code class="type">float -> <a href="Time_sig.Second.html#TYPEt">t</a></code></pre><div class="info"> -Convert a float to an equivalent number of seconds.<br> -</div> -<pre><span id="VALto_int"><span class="keyword">val</span> to_int</span> : <code class="type"><a href="Time_sig.Second.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Inverse of <code class="code">from_int</code>.<br> -</div> -<pre><span id="VALto_float"><span class="keyword">val</span> to_float</span> : <code class="type"><a href="Time_sig.Second.html#TYPEt">t</a> -> float</code></pre><div class="info"> -Inverse of <code class="code">from_float</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Time_sig.html b/doc/Time_sig.html deleted file mode 100644 index 8dcabdd..0000000 --- a/doc/Time_sig.html +++ /dev/null @@ -1,59 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Period.html"> -<link rel="next" href="Time.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Period.html" title="Period">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Time.html" title="Time">Next</a> -</div> -<h1>Module <a href="type_Time_sig.html">Time_sig</a></h1> -<pre><span class="keyword">module</span> Time_sig: <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Time interface. A time may be seen as a triple (hour, minute, second). -<p> - - If minutes and seconds do not belong to <code class="code">[0; 60[</code>, they are coerced into - this interval.<br> -<b>Example:</b> "30 hours, 60 minutes, 80 seconds" is coerced to "31 hours, 1 - minute, 20 seconds". -<p> - - Each time is interpreted in the current time zone (given by - <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>). So, if you change the time zone (by - <a href="Time_Zone.html#VALchange"><code class="code"><span class="constructor">Time_Zone</span>.change</code></a>), each time consequently changes. - If you want to express a time in another time zone (and do not affect - others times), use the <code class="code">convert</code> function.<br> -</div> -<hr width="100%"> -<pre><span class="keyword">module type</span> <a href="Time_sig.Second.html">Second</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.Second.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Interface for seconds. -</div> -<pre><span class="keyword">module type</span> <a href="Time_sig.S.html">S</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Time_sig.S.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Common operations for all time representations. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Utils.Comparable.html b/doc/Utils.Comparable.html deleted file mode 100644 index b1c9fba..0000000 --- a/doc/Utils.Comparable.html +++ /dev/null @@ -1,53 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="Up" href="Utils.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Comparable</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Utils.html" title="Utils">Up</a> - </div> -<h1>Module type <a href="type_Utils.Comparable.html">Utils.Comparable</a></h1> -<pre><span class="keyword">module type</span> Comparable = <code class="code"><span class="keyword">sig</span></code> <a href="Utils.Comparable.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Interface for comparable and hashable types. - Modules implementing this interface can be an argument of <code class="code"><span class="constructor">Map</span>.<span class="constructor">Make</span></code>, - <code class="code"><span class="constructor">Set</span>.<span class="constructor">Make</span></code> or <code class="code"><span class="constructor">Hashtbl</span>.<span class="constructor">Make</span></code>.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> <a href="Utils.Comparable.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality over <code class="code">t</code>.<br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> <a href="Utils.Comparable.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison over <code class="code">t</code>. - <code class="code">compare x y</code> returns <code class="code">0</code> iff <code class="code">equal x y = 0</code>. If <code class="code">x</code> and <code class="code">y</code> are not - equal, it returns a negative integer iff <code class="code">x</code> is lesser than <code class="code">y</code> and a - positive integer otherwise.<br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> int</code></pre><div class="info"> -A hash function over <code class="code">t</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Utils.Float.html b/doc/Utils.Float.html deleted file mode 100644 index 9b3b5f8..0000000 --- a/doc/Utils.Float.html +++ /dev/null @@ -1,49 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Utils.Int.html"> -<link rel="Up" href="Utils.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Float</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Utils.Int.html" title="Utils.Int">Previous</a> - <a class="up" href="Utils.html" title="Utils">Up</a> - </div> -<h1>Module <a href="type_Utils.Float.html">Utils.Float</a></h1> -<pre><span class="keyword">module</span> Float: <code class="code"><span class="keyword">sig</span></code> <a href="Utils.Float.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Float implementation.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span class="keyword">include</span> <a href="Utils.Comparable.html">Utils.Comparable</a></pre> -<pre><span id="VALset_precision"><span class="keyword">val</span> set_precision</span> : <code class="type">float -> unit</code></pre><div class="info"> -Set the precision of <code class="code">equal</code> and <code class="code">compare</code> for float. - If the precision is <code class="code">p</code>, then the floats <code class="code">x</code> and <code class="code">y</code> are equal iff - <code class="code">abs(x-y) < p</code>. By default, the precision is <code class="code">1e-3</code> (that is one - millisecond if floats represents seconds).<br> -</div> -<pre><span id="VALround"><span class="keyword">val</span> round</span> : <code class="type">t -> int</code></pre><div class="info"> -Round a float to the nearest integer.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Utils.Int.html b/doc/Utils.Int.html deleted file mode 100644 index 30bff74..0000000 --- a/doc/Utils.Int.html +++ /dev/null @@ -1,53 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Utils.Float.html"> -<link rel="Up" href="Utils.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Int</title> -</head> -<body> -<div class="navbar"> <a class="up" href="Utils.html" title="Utils">Up</a> - <a class="post" href="Utils.Float.html" title="Utils.Float">Next</a> -</div> -<h1>Module <a href="type_Utils.Int.html">Utils.Int</a></h1> -<pre><span class="keyword">module</span> Int: <code class="type"><a href="Utils.Comparable.html">Comparable</a></code><code class="type"> with type t = int</code></pre><div class="info"> -Integer implementation.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre> - -<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> <a href="Utils.Comparable.html#TYPEt">t</a> -> bool</code></pre><div class="info"> -Equality over <code class="code">t</code>.<br> -</div> -<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> <a href="Utils.Comparable.html#TYPEt">t</a> -> int</code></pre><div class="info"> -Comparison over <code class="code">t</code>. - <code class="code">compare x y</code> returns <code class="code">0</code> iff <code class="code">equal x y = 0</code>. If <code class="code">x</code> and <code class="code">y</code> are not - equal, it returns a negative integer iff <code class="code">x</code> is lesser than <code class="code">y</code> and a - positive integer otherwise.<br> -</div> -<pre><span id="VALhash"><span class="keyword">val</span> hash</span> : <code class="type"><a href="Utils.Comparable.html#TYPEt">t</a> -> int</code></pre><div class="info"> -A hash function over <code class="code">t</code>.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Utils.html b/doc/Utils.html deleted file mode 100644 index d9d6e0e..0000000 --- a/doc/Utils.html +++ /dev/null @@ -1,48 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="next" href="Time_Zone.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - <a class="post" href="Time_Zone.html" title="Time_Zone">Next</a> -</div> -<h1>Module <a href="type_Utils.html">Utils</a></h1> -<pre><span class="keyword">module</span> Utils: <code class="code"><span class="keyword">sig</span></code> <a href="Utils.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Some utilities.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span class="keyword">module type</span> <a href="Utils.Comparable.html">Comparable</a> = <code class="code"><span class="keyword">sig</span></code> <a href="Utils.Comparable.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Interface for comparable and hashable types. -</div> -<pre><span class="keyword">module</span> <a href="Utils.Int.html">Int</a>: <code class="type"><a href="Utils.Comparable.html">Comparable</a></code><code class="type"> with type t = int</code></pre><div class="info"> -Integer implementation. -</div> -<pre><span class="keyword">module</span> <a href="Utils.Float.html">Float</a>: <code class="code"><span class="keyword">sig</span></code> <a href="Utils.Float.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Float implementation. -</div> -</body></html>
\ No newline at end of file diff --git a/doc/Version.html b/doc/Version.html deleted file mode 100644 index 23a92b3..0000000 --- a/doc/Version.html +++ /dev/null @@ -1,45 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link rel="previous" href="Printer.html"> -<link rel="Up" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Version</title> -</head> -<body> -<div class="navbar"><a class="pre" href="Printer.html" title="Printer">Previous</a> - <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Module <a href="type_Version.html">Version</a></h1> -<pre><span class="keyword">module</span> Version: <code class="code"><span class="keyword">sig</span></code> <a href="Version.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info"> -Information about version of calendar.<br> -<b>Since</b> 2.0<br> -</div> -<hr width="100%"> -<pre><span id="VALversion"><span class="keyword">val</span> version</span> : <code class="type">string</code></pre><div class="info"> -Name of this version.<br> -</div> -<pre><span id="VALdate"><span class="keyword">val</span> date</span> : <code class="type">string</code></pre><div class="info"> -Date of compilation.<br> -</div> -</body></html>
\ No newline at end of file diff --git a/doc/index.html b/doc/index.html deleted file mode 100644 index 4e3bf43..0000000 --- a/doc/index.html +++ /dev/null @@ -1,96 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title></title> -</head> -<body> -<h1></h1> -<ul class="indexlist"> -<li><a href="index_types.html">Index of types</a></li> -<li><a href="index_exceptions.html">Index of exceptions</a></li> -<li><a href="index_values.html">Index of values</a></li> -<li><a href="index_modules.html">Index of modules</a></li> -<li><a href="index_module_types.html">Index of module types</a></li> -</ul> -<br/><br> -<table class="indextable"> -<tr><td class="module"><a href="Utils.html">Utils</a></td><td><div class="info"> -Some utilities. -</div> -</td></tr> -<tr><td class="module"><a href="Time_Zone.html">Time_Zone</a></td><td><div class="info"> -Time zone management. -</div> -</td></tr> -<tr><td class="module"><a href="Period.html">Period</a></td><td><div class="info"> -A period represents the time passed between two events (a date, a time...). -</div> -</td></tr> -<tr><td class="module"><a href="Time_sig.html">Time_sig</a></td><td><div class="info"> -Time interface. -</div> -</td></tr> -<tr><td class="module"><a href="Time.html">Time</a></td><td><div class="info"> -Time implementation in which seconds are integers. -</div> -</td></tr> -<tr><td class="module"><a href="Ftime.html">Ftime</a></td><td><div class="info"> -Time implementation in which seconds are floats. -</div> -</td></tr> -<tr><td class="module"><a href="Date_sig.html">Date_sig</a></td><td><div class="info"> -Date interface. -</div> -</td></tr> -<tr><td class="module"><a href="Date.html">Date</a></td><td><div class="info"> -Date implementation. -</div> -</td></tr> -<tr><td class="module"><a href="Calendar_sig.html">Calendar_sig</a></td><td><div class="info"> -Calendar interface. -</div> -</td></tr> -<tr><td class="module"><a href="Calendar_builder.html">Calendar_builder</a></td><td><div class="info"> -Generic calendar implementation. -</div> -</td></tr> -<tr><td class="module"><a href="Calendar.html">Calendar</a></td><td><div class="info"> -Calendar implementation in which seconds are integer. -</div> -</td></tr> -<tr><td class="module"><a href="Fcalendar.html">Fcalendar</a></td><td><div class="info"> -Calendar implementation in which seconds are float. -</div> -</td></tr> -<tr><td class="module"><a href="Printer.html">Printer</a></td><td><div class="info"> -Pretty printing and parsing from string. -</div> -</td></tr> -<tr><td class="module"><a href="Version.html">Version</a></td><td><div class="info"> -Information about version of calendar. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_attributes.html b/doc/index_attributes.html deleted file mode 100644 index cdd77e2..0000000 --- a/doc/index_attributes.html +++ /dev/null @@ -1,33 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of class attributes</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of class attributes</h1> -<table> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_class_types.html b/doc/index_class_types.html deleted file mode 100644 index 08686ba..0000000 --- a/doc/index_class_types.html +++ /dev/null @@ -1,33 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of class types</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of class types</h1> -<table> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_classes.html b/doc/index_classes.html deleted file mode 100644 index de18ee6..0000000 --- a/doc/index_classes.html +++ /dev/null @@ -1,33 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of classes</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of classes</h1> -<table> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_exceptions.html b/doc/index_exceptions.html deleted file mode 100644 index 2195cc9..0000000 --- a/doc/index_exceptions.html +++ /dev/null @@ -1,56 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of exceptions</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of exceptions</h1> -<table> -<tr><td align="left"><br>N</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#EXCEPTIONNot_computable">Not_computable</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">= <span class="constructor">Date</span>.<span class="constructor">Period</span>.<span class="constructor">Not_computable</span></code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#EXCEPTIONNot_computable">Not_computable</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td align="left"><br>O</td></tr> -<tr><td><a href="Date_sig.S.html#EXCEPTIONOut_of_bounds">Out_of_bounds</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Raised when a date is outside the Julian period. -</div> -</td></tr> -<tr><td align="left"><br>U</td></tr> -<tr><td><a href="Date_sig.S.html#EXCEPTIONUndefined">Undefined</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Raised when a date belongs to - <code class="code">[<span class="constructor">October</span> 5th, 1582; <span class="constructor">October</span> 14th, 1582]</code>. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_methods.html b/doc/index_methods.html deleted file mode 100644 index 09708ab..0000000 --- a/doc/index_methods.html +++ /dev/null @@ -1,33 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of class methods</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of class methods</h1> -<table> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_module_types.html b/doc/index_module_types.html deleted file mode 100644 index 747f77e..0000000 --- a/doc/index_module_types.html +++ /dev/null @@ -1,70 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of module types</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of module types</h1> -<table> -<tr><td align="left"><br>C</td></tr> -<tr><td><a href="Utils.Comparable.html">Comparable</a> [<a href="Utils.html">Utils</a>]</td> -<td><div class="info"> -Interface for comparable and hashable types. -</div> -</td></tr> -<tr><td align="left"><br>S</td></tr> -<tr><td><a href="Printer.S.html">S</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Generic signature of a printer-parser. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html">S</a> [<a href="Calendar_sig.html">Calendar_sig</a>]</td> -<td><div class="info"> -Common operations for all calendar representations. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html">S</a> [<a href="Date_sig.html">Date_sig</a>]</td> -<td><div class="info"> -Common operations for all date representations. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html">S</a> [<a href="Time_sig.html">Time_sig</a>]</td> -<td><div class="info"> -Common operations for all time representations. -</div> -</td></tr> -<tr><td><a href="Period.S.html">S</a> [<a href="Period.html">Period</a>]</td> -<td><div class="info"> -Common interface for all periods. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html">Second</a> [<a href="Time_sig.html">Time_sig</a>]</td> -<td><div class="info"> -Interface for seconds. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_modules.html b/doc/index_modules.html deleted file mode 100644 index 34910fa..0000000 --- a/doc/index_modules.html +++ /dev/null @@ -1,220 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of modules</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of modules</h1> -<table> -<tr><td align="left"><br>C</td></tr> -<tr><td><a href="Printer.Calendar.html">Calendar</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Calendar printer. -</div> -</td></tr> -<tr><td><a href="Calendar.html">Calendar</a> </td> -<td><div class="info"> -Calendar implementation in which seconds are integer. -</div> -</td></tr> -<tr><td><a href="Printer.CalendarPrinter.html">CalendarPrinter</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<span class="deprecated"></span></div> -</td></tr> -<tr><td><a href="Calendar_builder.html">Calendar_builder</a> </td> -<td><div class="info"> -Generic calendar implementation. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.html">Calendar_sig</a> </td> -<td><div class="info"> -Calendar interface. -</div> -</td></tr> -<tr><td align="left"><br>D</td></tr> -<tr><td><a href="Printer.Date.html">Date</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Date printer. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Date.html">Date</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Date implementation used by this calendar. -</div> -</td></tr> -<tr><td><a href="Date.html">Date</a> </td> -<td><div class="info"> -Date implementation. -</div> -</td></tr> -<tr><td><a href="Printer.DatePrinter.html">DatePrinter</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<span class="deprecated"></span></div> -</td></tr> -<tr><td><a href="Date_sig.html">Date_sig</a> </td> -<td><div class="info"> -Date interface. -</div> -</td></tr> -<tr><td align="left"><br>F</td></tr> -<tr><td><a href="Printer.Fcalendar.html">Fcalendar</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Fcalendar printer. -</div> -</td></tr> -<tr><td><a href="Fcalendar.html">Fcalendar</a> </td> -<td><div class="info"> -Calendar implementation in which seconds are float. -</div> -</td></tr> -<tr><td><a href="Utils.Float.html">Float</a> [<a href="Utils.html">Utils</a>]</td> -<td><div class="info"> -Float implementation. -</div> -</td></tr> -<tr><td><a href="Printer.Ftime.html">Ftime</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Ftime printer. -</div> -</td></tr> -<tr><td><a href="Ftime.html">Ftime</a> </td> -<td><div class="info"> -Time implementation in which seconds are floats. -</div> -</td></tr> -<tr><td align="left"><br>I</td></tr> -<tr><td><a href="Utils.Int.html">Int</a> [<a href="Utils.html">Utils</a>]</td> -<td><div class="info"> -Integer implementation. -</div> -</td></tr> -<tr><td align="left"><br>M</td></tr> -<tr><td><a href="Calendar_builder.Make.html">Make</a> [<a href="Calendar_builder.html">Calendar_builder</a>]</td> -<td><div class="info"> -Implement a calendar from a date implementation and a time implementation. -</div> -</td></tr> -<tr><td><a href="Calendar_builder.Make_Precise.html">Make_Precise</a> [<a href="Calendar_builder.html">Calendar_builder</a>]</td> -<td><div class="info"> -Similar to <a href="Calendar_builder.Make.html"><code class="code"><span class="constructor">Calendar_builder</span>.<span class="constructor">Make</span></code></a> but results are more precise. -</div> -</td></tr> -<tr><td align="left"><br>P</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html">Period</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -A period is the number of seconds between two calendars. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html">Period</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -A period is the number of days between two dates. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html">Period</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -A period is the number of seconds between two times. -</div> -</td></tr> -<tr><td><a href="Period.html">Period</a> </td> -<td><div class="info"> -A period represents the time passed between two events (a date, a time...). -</div> -</td></tr> -<tr><td><a href="Fcalendar.Precise.html">Precise</a> [<a href="Fcalendar.html">Fcalendar</a>]</td> -<td><div class="info"> -More precise implementation of calendar in which seconds are float. -</div> -</td></tr> -<tr><td><a href="Calendar.Precise.html">Precise</a> [<a href="Calendar.html">Calendar</a>]</td> -<td><div class="info"> -More precise implementation of calendar in which seconds are integer. -</div> -</td></tr> -<tr><td><a href="Printer.Precise_Calendar.html">Precise_Calendar</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Precise Calendar printer. -</div> -</td></tr> -<tr><td><a href="Printer.Precise_Fcalendar.html">Precise_Fcalendar</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Precise Fcalendar printer. -</div> -</td></tr> -<tr><td><a href="Printer.html">Printer</a> </td> -<td><div class="info"> -Pretty printing and parsing from string. -</div> -</td></tr> -<tr><td align="left"><br>S</td></tr> -<tr><td><a href="Time_sig.S.Second.html">Second</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Second implementation -</div> -</td></tr> -<tr><td align="left"><br>T</td></tr> -<tr><td><a href="Printer.Time.html">Time</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Time printer. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Time.html">Time</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Time implementation used by this calendar. -</div> -</td></tr> -<tr><td><a href="Time.html">Time</a> </td> -<td><div class="info"> -Time implementation in which seconds are integers. -</div> -</td></tr> -<tr><td><a href="Printer.TimePrinter.html">TimePrinter</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<span class="deprecated"></span></div> -</td></tr> -<tr><td><a href="Time_Zone.html">Time_Zone</a> </td> -<td><div class="info"> -Time zone management. -</div> -</td></tr> -<tr><td><a href="Time_sig.html">Time_sig</a> </td> -<td><div class="info"> -Time interface. -</div> -</td></tr> -<tr><td align="left"><br>U</td></tr> -<tr><td><a href="Utils.html">Utils</a> </td> -<td><div class="info"> -Some utilities. -</div> -</td></tr> -<tr><td align="left"><br>V</td></tr> -<tr><td><a href="Version.html">Version</a> </td> -<td><div class="info"> -Information about version of calendar. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_types.html b/doc/index_types.html deleted file mode 100644 index 3ef03f6..0000000 --- a/doc/index_types.html +++ /dev/null @@ -1,138 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of types</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of types</h1> -<table> -<tr><td align="left"><br>D</td></tr> -<tr><td><a href="Date_sig.S.html#TYPEdate">date</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Type of a date, without specifying any precision level. -</div> -</td></tr> -<tr><td><a href="Period.html#TYPEdate_field">date_field</a> [<a href="Period.html">Period</a>]</td> -<td></td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEday">day</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Date_sig.S.html#TYPEday">day</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Days of the week. -</div> -</td></tr> -<tr><td align="left"><br>F</td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEfield">field</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -The different fields of a calendar. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#TYPEfield">field</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -The different fields of a date. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#TYPEfield">field</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -The different fields of a time. -</div> -</td></tr> -<tr><td align="left"><br>M</td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEmonth">month</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Date_sig.S.html#TYPEmonth">month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Months of the year. -</div> -</td></tr> -<tr><td align="left"><br>P</td></tr> -<tr><td><a href="Date_sig.S.Period.html#TYPEp">p</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td></td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#TYPEperiod">period</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td></td></tr> -<tr><td><a href="Period.S.html#TYPEperiod">period</a> [<a href="Period.S.html">Period.S</a>]</td> -<td></td></tr> -<tr><td align="left"><br>S</td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEsecond">second</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Time_sig.S.html#TYPEsecond">second</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Type of a second. -</div> -</td></tr> -<tr><td align="left"><br>T</td></tr> -<tr><td><a href="Printer.S.html#TYPEt">t</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -Generic type of a printer. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#TYPEt">t</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Type of a period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEt">t</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Date_sig.S.html#TYPEt">t</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Type of a date. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#TYPEt">t</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Type of a time. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html#TYPEt">t</a> [<a href="Time_sig.Second.html">Time_sig.Second</a>]</td> -<td><div class="info"> -Type of seconds. -</div> -</td></tr> -<tr><td><a href="Period.S.html#TYPEt">t</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Type of a period. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#TYPEt">t</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -Type of a time zone. -</div> -</td></tr> -<tr><td><a href="Utils.Comparable.html#TYPEt">t</a> [<a href="Utils.Comparable.html">Utils.Comparable</a>]</td> -<td></td></tr> -<tr><td align="left"><br>Y</td></tr> -<tr><td><a href="Calendar_sig.S.html#TYPEyear">year</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Year as an int -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#TYPEyear">year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Year as an <code class="code">int</code>. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/index_values.html b/doc/index_values.html deleted file mode 100644 index 54d0488..0000000 --- a/doc/index_values.html +++ /dev/null @@ -1,1122 +0,0 @@ -<html> -<head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Index of values</title> -</head> -<body> -<div class="navbar"> <a class="up" href="index.html" title="Index">Up</a> - </div> -<h1>Index of values</h1> -<table> -<tr><td align="left"><br>A</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALadd">add</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Addition of periods. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALadd">add</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALadd">add</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">add d p</code> returns <code class="code">d + p</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALadd">add</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">app t p</code> returns <code class="code">t + p</code>. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALadd">add</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Addition of periods. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALascension">ascension</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Ascension. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALash">ash</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Ash Wednesday. -</div> -</td></tr> -<tr><td align="left"><br>C</td></tr> -<tr><td><a href="Date_sig.S.html#VALcarnaval">carnaval</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Carnaval Monday. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALcentury">century</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Century of a year. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALchange">change</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -Change the current time zone by another one. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALcompare">compare</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Comparison function between two periods. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALcompare">compare</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Comparison function between two calendars. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALcompare">compare</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Comparison function between two dates. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALcompare">compare</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Comparison function between two times. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALcompare">compare</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Comparison function between two periods. -</div> -</td></tr> -<tr><td><a href="Utils.Comparable.html#VALcompare">compare</a> [<a href="Utils.Comparable.html">Utils.Comparable</a>]</td> -<td><div class="info"> -Comparison over <code class="code">t</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALconvert">convert</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALconvert">convert</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">convert t t1 t2</code> converts the time <code class="code">t</code> expressed in the time zone <code class="code">t1</code> - to the same time expressed in the time zone <code class="code">t2</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALcorpus_christi">corpus_christi</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Feast of Corpus Christi. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALcreate">create</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -<code class="code">create d t</code> creates a calendar from the given date and time. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALcurrent">current</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -Return the current time zone. -</div> -</td></tr> -<tr><td align="left"><br>D</td></tr> -<tr><td><a href="Version.html#VALdate">date</a> [<a href="Version.html">Version</a>]</td> -<td><div class="info"> -Date of compilation. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALday">day</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALday">day</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">day n</code> makes a period of <code class="code">n</code> days. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALday_name">day_name</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -String representation of a day. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALday_of_int">day_of_int</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">int_of_day</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALday_of_month">day_of_month</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALday_of_month">day_of_month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Day of the month. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALday_of_week">day_of_week</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALday_of_week">day_of_week</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Day of the week. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALday_of_year">day_of_year</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALday_of_year">day_of_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Day of the year. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALdays_in_month">days_in_month</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALdays_in_month">days_in_month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Number of days in the month of a date. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALdays_in_year">days_in_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Number of days in a year. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALdiv">div</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Division. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALdprint">dprint</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -Same as <code class="code">print d</code> where <code class="code">d</code> is the default format - (see the printer implementations). -</div> -</td></tr> -<tr><td align="left"><br>E</td></tr> -<tr><td><a href="Date_sig.S.html#VALeaster">easter</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Easter Sunday. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALeaster_friday">easter_friday</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Easter Friday. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALeaster_monday">easter_monday</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Easter Monday. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALeaster_saturday">easter_saturday</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Easter Saturday. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALempty">empty</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -The empty period. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALempty">empty</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -The empty period. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALepact">epact</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Epact. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALequal">equal</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Equality function between two periods. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALequal">equal</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Equality function between two calendars. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALequal">equal</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Equality function between two dates. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALequal">equal</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Equality function between two times. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALequal">equal</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Equality function between two periods. -</div> -</td></tr> -<tr><td><a href="Utils.Comparable.html#VALequal">equal</a> [<a href="Utils.Comparable.html">Utils.Comparable</a>]</td> -<td><div class="info"> -Equality over <code class="code">t</code>. -</div> -</td></tr> -<tr><td align="left"><br>F</td></tr> -<tr><td><a href="Printer.S.html#VALfprint">fprint</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -<code class="code">fprint format formatter x</code> outputs <code class="code">x</code> on <code class="code">formatter</code> according to - the specified <code class="code">format</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_business">from_business</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_business</code> respecting ISO-8601. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALfrom_date">from_date</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Convert a date period to a calendar period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_date">from_date</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Convert a date to a calendar. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_day_of_year">from_day_of_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Make a date from a year and its day of the year. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html#VALfrom_float">from_float</a> [<a href="Time_sig.Second.html">Time_sig.Second</a>]</td> -<td><div class="info"> -Convert a float to an equivalent number of seconds. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALfrom_fstring">from_fstring</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -<code class="code">from_fstring format s</code> converts <code class="code">s</code> to a date according to <code class="code">format</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_gmt">from_gmt</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALfrom_gmt">from_gmt</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">from_gmt t</code> is equivalent to - <code class="code">convert t <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span> (<span class="constructor">Time_Zone</span>.current ())</code>. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALfrom_gmt">from_gmt</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -<code class="code">from_gmt ()</code> is equivalent to <code class="code">gap <span class="constructor">UTC</span> (current ())</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALfrom_hours">from_hours</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_hours</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html#VALfrom_int">from_int</a> [<a href="Time_sig.Second.html">Time_sig.Second</a>]</td> -<td><div class="info"> -Convert an integer to an equivalent number of seconds. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_jd">from_jd</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Return the Julian day. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_jd">from_jd</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Make a date from its Julian day. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALfrom_minutes">from_minutes</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_minutes</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_mjd">from_mjd</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Return the Modified Julian day. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_mjd">from_mjd</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Make a date from its modified Julian day (i.e. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALfrom_seconds">from_seconds</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_seconds</code>. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALfrom_string">from_string</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -Same as <code class="code">from_fstring d</code> where <code class="code">d</code> is the default format. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALfrom_time">from_time</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Convert a time period to a calendar period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_unixfloat">from_unixfloat</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_unixfloat">from_unixfloat</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_unixfloat</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALfrom_unixtm">from_unixtm</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_unixtm</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALfrom_unixtm">from_unixtm</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">to_unixtm</code>. -</div> -</td></tr> -<tr><td align="left"><br>G</td></tr> -<tr><td><a href="Time_Zone.html#VALgap">gap</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -Return the gap between two time zone. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALgolden_number">golden_number</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Golden number. -</div> -</td></tr> -<tr><td align="left"><br>H</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALhash">hash</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Hash function for periods. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALhash">hash</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Hash function for calendars. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALhash">hash</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Hash function for dates. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALhash">hash</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Hash function for times. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALhash">hash</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Hash function for periods. -</div> -</td></tr> -<tr><td><a href="Utils.Comparable.html#VALhash">hash</a> [<a href="Utils.Comparable.html">Utils.Comparable</a>]</td> -<td><div class="info"> -A hash function over <code class="code">t</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALhour">hour</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALhour">hour</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALhour">hour</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">hour n</code> makes a period of <code class="code">n</code> hours. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALhour">hour</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Hour. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALhour_of_dst">hour_of_dst</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -<code class="code">hour_of_dst ()</code> returns <code class="code">1</code> if <code class="code">is_dst ()</code> and <code class="code">0</code> otherwise. -</div> -</td></tr> -<tr><td align="left"><br>I</td></tr> -<tr><td><a href="Date_sig.S.html#VALindiction">indiction</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Indiction. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALint_of_day">int_of_day</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Convert a day to an integer respecting ISO-8601. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALint_of_month">int_of_month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Convert a month to an integer respecting ISO-8601. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALis_am">is_am</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALis_am">is_am</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is after midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALis_dst">is_dst</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -<code class="code">is_dst ()</code> checks if daylight saving time is in effect. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALis_gregorian">is_gregorian</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALis_gregorian">is_gregorian</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date belongs to the Gregorian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALis_julian">is_julian</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALis_julian">is_julian</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> iff a date belongs to the Julian calendar; - <code class="code"><span class="keyword">false</span></code> otherwise. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALis_leap_day">is_leap_day</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALis_leap_day">is_leap_day</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a date is a leap day - (i.e. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALis_leap_year">is_leap_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if a year is a leap year; <code class="code"><span class="keyword">false</span></code> otherwise. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALis_pm">is_pm</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALis_pm">is_pm</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> is the time is before midday in the current time zone; - <code class="code"><span class="keyword">false</span></code> otherwise. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALis_valid_date">is_valid_date</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Check if a date is valid, that is the date has not been coerced to look - like a real date. -</div> -</td></tr> -<tr><td align="left"><br>L</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALlength">length</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Number of seconds of a period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALlmake">lmake</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALlmake">lmake</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALlmake">lmake</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALlmake">lmake</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALlmake">lmake</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALlmake">lmake</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Labelled version of <code class="code">make</code>. -</div> -</td></tr> -<tr><td align="left"><br>M</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALmake">make</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">make year month day hour minute second</code> makes a period of the - specified length. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALmake">make</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -<code class="code">make year month day hour minute second</code> makes the calendar - "year-month-day; hour-minute-second". -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALmake">make</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">make year month day</code> makes a period of the specified length. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmake">make</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">make year month day</code> makes the date year-month-day. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALmake">make</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">make hour minute second</code> makes a period of the specified length. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALmake">make</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">make hour minute second</code> makes the time hour-minute-second. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmake_year">make_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">make_year y</code> makes a date only represented by its year <code class="code">y</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmake_year_month">make_year_month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">make_year_month y m</code> makes a date only represented by its year <code class="code">y</code> and - its month <code class="code">m</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmardi_gras">mardi_gras</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Mardi Gras. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALmidday">midday</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">midday ()</code> is midday (expressed in the current time zone). -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALmidnight">midnight</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">midnight ()</code> is midnight (expressed in the current time zone). -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmillenium">millenium</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Millenium of a year. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALminute">minute</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALminute">minute</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALminute">minute</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">minute n</code> makes a period of <code class="code">n</code> minutes. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALminute">minute</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Minute. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALmonth">month</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALmonth">month</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALmonth">month</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">month n</code> makes a period of <code class="code">n</code> months. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmonth">month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Month. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALmonth_name">month_name</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -String representation of a month. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALmonth_of_int">month_of_int</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Inverse of <code class="code">int_of_month</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALmul">mul</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Multiplication. -</div> -</td></tr> -<tr><td align="left"><br>N</td></tr> -<tr><td><a href="Printer.html#VALname_of_day">name_of_day</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<code class="code">name_of_day d</code> is equivalent to <code class="code">!day_name d</code>. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALname_of_month">name_of_month</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<code class="code">name_of_month m</code> is equivalent to <code class="code">!day_month m</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALnb_days">nb_days</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<span class="deprecated">Number of days in a period. -</span></div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALnext">next</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALnext">next</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">next d f</code> returns the date corresponding to the next specified field. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALnext">next</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">next t f</code> returns the time corresponding to the next specified field. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALnormalize">normalize</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">normalize t</code> returns <code class="code">t</code> such that <code class="code">hour t</code> belongs to <code class="code">[0; 24[</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALnow">now</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -<code class="code">now ()</code> returns the current date and time (in the current time - zone). -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALnow">now</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -The current time based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALnth_weekday_of_month">nth_weekday_of_month</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">nth_weekday_of_month y m d n</code> returns the <code class="code">n</code>-th day <code class="code">d</code> in the month - <code class="code">m</code> of the year <code class="code">y</code> (for instance the 3rd Thursday of the month). -</div> -</td></tr> -<tr><td align="left"><br>O</td></tr> -<tr><td><a href="Time_Zone.html#VALon">on</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -<code class="code">on f tz x</code> changes the time zone to <code class="code">tz</code>, then computes <code class="code">f x</code>, and - finally reset the time zone to the initial one and returns the result of - the computation. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALopp">opp</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Opposite of a period. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALopp">opp</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Opposite of a period. -</div> -</td></tr> -<tr><td align="left"><br>P</td></tr> -<tr><td><a href="Date_sig.S.html#VALpalm">palm</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Palm Sunday. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALprecise_sub">precise_sub</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALprecise_sub">precise_sub</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">precise_sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALprev">prev</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALprev">prev</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">prev d f</code> returns the date corresponding to the previous specified - field. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALprev">prev</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">prev t f</code> returns the time corresponding to the previous specified - field. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALprint">print</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -<code class="code">print format</code> is equivalent to <code class="code">fprint format <span class="constructor">Format</span>.std_formatter</code> -</div> -</td></tr> -<tr><td align="left"><br>R</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALrem">rem</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALrem">rem</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">rem d p</code> is equivalent to <code class="code">add d (<span class="constructor">Period</span>.opp p)</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALrem">rem</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">rem t p</code> is equivalent to <code class="code">add t (<span class="constructor">Period</span>.opp p)</code>. -</div> -</td></tr> -<tr><td><a href="Utils.Float.html#VALround">round</a> [<a href="Utils.Float.html">Utils.Float</a>]</td> -<td><div class="info"> -Round a float to the nearest integer. -</div> -</td></tr> -<tr><td align="left"><br>S</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALsafe_nb_days">safe_nb_days</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -Equivalent to <a href="Date_sig.S.Period.html#VALnb_days"><code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.nb_days</code></a> but never raises any exception. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALsafe_to_time">safe_to_time</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Equivalent to <a href="Calendar_sig.S.Period.html#VALto_time"><code class="code"><span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.to_time</code></a> but never raises any exception. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALsame_calendar">same_calendar</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return <code class="code"><span class="keyword">true</span></code> if two years have the same calendar; <code class="code"><span class="keyword">false</span></code> - otherwise. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALsecond">second</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALsecond">second</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALsecond">second</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">second n</code> makes a period of <code class="code">n</code> seconds. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALsecond">second</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Second. -</div> -</td></tr> -<tr><td><a href="Utils.Float.html#VALset_precision">set_precision</a> [<a href="Utils.Float.html">Utils.Float</a>]</td> -<td><div class="info"> -Set the precision of <code class="code">equal</code> and <code class="code">compare</code> for float. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALset_word_regexp">set_word_regexp</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -Set the regular expression used to recognize words in - <code class="code">from_fstring</code>. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALshort_name_of_day">short_name_of_day</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<code class="code">short_name_of_day d</code> returns the 3 first characters of <code class="code">name_of_day d</code>. -</div> -</td></tr> -<tr><td><a href="Printer.html#VALshort_name_of_month">short_name_of_month</a> [<a href="Printer.html">Printer</a>]</td> -<td><div class="info"> -<code class="code">short_name_of_month d</code> returns the 3 first characters of - <code class="code">name_of_month d</code>. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALsolar_number">solar_number</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Solar number. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALsprint">sprint</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -<code class="code">sprint format date</code> converts <code class="code">date</code> to a string according to - <code class="code">format</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALsub">sub</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Substraction of periods. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALsub">sub</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALsub">sub</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -<code class="code">sub d1 d2</code> returns the period between <code class="code">d1</code> and <code class="code">d2</code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALsub">sub</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">sub t1 t2</code> returns the period between <code class="code">t1</code> and <code class="code">t2</code>. -</div> -</td></tr> -<tr><td><a href="Period.S.html#VALsub">sub</a> [<a href="Period.S.html">Period.S</a>]</td> -<td><div class="info"> -Substraction of periods. -</div> -</td></tr> -<tr><td align="left"><br>T</td></tr> -<tr><td><a href="Date_sig.S.html#VALto_business">to_business</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return the "business week" and the day in this week respecting ISO 8601. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALto_date">to_date</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Convert a calendar period to a date period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_date">to_date</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Convert a calendar to a date. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html#VALto_float">to_float</a> [<a href="Time_sig.Second.html">Time_sig.Second</a>]</td> -<td><div class="info"> -Inverse of <code class="code">from_float</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_gmt">to_gmt</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALto_gmt">to_gmt</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -<code class="code">to_gmt t</code> is equivalent to - <code class="code">convert t (<span class="constructor">Time_Zone</span>.current ()) <span class="constructor">Time_Zone</span>.<span class="constructor">GMT</span></code>. -</div> -</td></tr> -<tr><td><a href="Time_Zone.html#VALto_gmt">to_gmt</a> [<a href="Time_Zone.html">Time_Zone</a>]</td> -<td><div class="info"> -<code class="code">to_gmt ()</code> is equivalent to <code class="code">gap (current ()) <span class="constructor">UTC</span></code>. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALto_hours">to_hours</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Number of hours of a period. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALto_hours">to_hours</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Number of hours of a time. -</div> -</td></tr> -<tr><td><a href="Time_sig.Second.html#VALto_int">to_int</a> [<a href="Time_sig.Second.html">Time_sig.Second</a>]</td> -<td><div class="info"> -Inverse of <code class="code">from_int</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_jd">to_jd</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Date_sig.S.html#VALto_jd">to_jd</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Julian day. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALto_minutes">to_minutes</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Number of minutes of a period. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALto_minutes">to_minutes</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Number of minutes of a time. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_mjd">to_mjd</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td></td></tr> -<tr><td><a href="Date_sig.S.html#VALto_mjd">to_mjd</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Modified Julian day (i.e. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.Period.html#VALto_seconds">to_seconds</a> [<a href="Time_sig.S.Period.html">Time_sig.S.Period</a>]</td> -<td><div class="info"> -Number of seconds of a period. -</div> -</td></tr> -<tr><td><a href="Time_sig.S.html#VALto_seconds">to_seconds</a> [<a href="Time_sig.S.html">Time_sig.S</a>]</td> -<td><div class="info"> -Number of seconds of a time. -</div> -</td></tr> -<tr><td><a href="Printer.S.html#VALto_string">to_string</a> [<a href="Printer.S.html">Printer.S</a>]</td> -<td><div class="info"> -Same as <code class="code">sprint d</code> where <code class="code">d</code> is the default format - (see the printer implementations). -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALto_time">to_time</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -<span class="deprecated">Convert a calendar period to a date period. -</span></div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_time">to_time</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Convert a calendar to a time. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_unixfloat">to_unixfloat</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Convert a calendar to a float such than - <code class="code">to_unixfloat (make 1970 1 1 0 0 0)</code> returns <code class="code">0.0</code> at UTC. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALto_unixfloat">to_unixfloat</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Convert a date to a float such than <code class="code">to_unixfloat (make 1970 1 1)</code> - returns <code class="code">0.0</code>. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALto_unixtm">to_unixtm</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -Convert a calendar into the <code class="code">unix.tm</code> type. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALto_unixtm">to_unixtm</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Convert a date into the <code class="code"><span class="constructor">Unix</span>.tm</code> type. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALtoday">today</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Date of the current day (based on <code class="code"><span class="constructor">Time_Zone</span>.current ()</code>). -</div> -</td></tr> -<tr><td align="left"><br>V</td></tr> -<tr><td><a href="Version.html#VALversion">version</a> [<a href="Version.html">Version</a>]</td> -<td><div class="info"> -Name of this version. -</div> -</td></tr> -<tr><td align="left"><br>W</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALweek">week</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALweek">week</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALweek">week</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">week n</code> makes a period of <code class="code">n</code> weeks. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALweek">week</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Week. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALweek_first_last">week_first_last</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Return the first and last days of a week in a year. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALweeks_in_year">weeks_in_year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Number of weeks in a year. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALwithmonday">withmonday</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Withmonday. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALwithsunday">withsunday</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Withsunday. -</div> -</td></tr> -<tr><td align="left"><br>Y</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALyear">year</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.html#VALyear">year</a> [<a href="Calendar_sig.S.html">Calendar_sig.S</a>]</td> -<td><div class="info"> -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALyear">year</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -<code class="code">year n</code> makes a period of <code class="code">n</code> years. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.html#VALyear">year</a> [<a href="Date_sig.S.html">Date_sig.S</a>]</td> -<td><div class="info"> -Year. -</div> -</td></tr> -<tr><td><a href="Date_sig.S.Period.html#VALymd">ymd</a> [<a href="Date_sig.S.Period.html">Date_sig.S.Period</a>]</td> -<td><div class="info"> -Number of years, months and days in a period. -</div> -</td></tr> -<tr><td><a href="Calendar_sig.S.Period.html#VALymds">ymds</a> [<a href="Calendar_sig.S.Period.html">Calendar_sig.S.Period</a>]</td> -<td><div class="info"> -Number of years, months, days and seconds in a period. -</div> -</td></tr> -</table> -</body> -</html>
\ No newline at end of file diff --git a/doc/style.css b/doc/style.css deleted file mode 100644 index 993fd5c..0000000 --- a/doc/style.css +++ /dev/null @@ -1,41 +0,0 @@ -.keyword { font-weight : bold ; color : Red } -.keywordsign { color : #C04600 } -.superscript { font-size : 4 } -.subscript { font-size : 4 } -.comment { color : Green } -.constructor { color : Blue } -.type { color : #5C6585 } -.string { color : Maroon } -.warning { color : Red ; font-weight : bold } -.info { margin-left : 3em; margin-right: 3em } -.param_info { margin-top: 4px; margin-left : 3em; margin-right : 3em } -.code { color : #465F91 ; } -.typetable { border-style : hidden } -.paramstable { border-style : hidden ; padding: 5pt 5pt} -tr { background-color : White } -td.typefieldcomment { background-color : #FFFFFF ; font-size: smaller ;} -div.sig_block {margin-left: 2em} -*:target { background: yellow; } -body {font: 13px sans-serif; color: black; text-align: left; padding: 5px; margin: 0} -h1 { font-size : 20pt ; text-align: center; } -h2 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90BDFF ;padding: 2px; } -h3 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90DDFF ;padding: 2px; } -h4 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90EDFF ;padding: 2px; } -h5 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90FDFF ;padding: 2px; } -h6 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90BDFF ; padding: 2px; } -div.h7 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #E0FFFF ; padding: 2px; } -div.h8 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #F0FFFF ; padding: 2px; } -div.h9 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #FFFFFF ; padding: 2px; } -a {color: #416DFF; text-decoration: none} -a:hover {background-color: #ddd; text-decoration: underline} -pre { margin-bottom: 4px; font-family: monospace; } -pre.verbatim, pre.codepre { } -.indextable {border: 1px #ddd solid; border-collapse: collapse} -.indextable td, .indextable th {border: 1px #ddd solid; min-width: 80px} -.indextable td.module {background-color: #eee ; padding-left: 2px; padding-right: 2px} -.indextable td.module a {color: 4E6272; text-decoration: none; display: block; width: 100%} -.indextable td.module a:hover {text-decoration: underline; background-color: transparent} -.deprecated {color: #888; font-style: italic} -.indextable tr td div.info { margin-left: 2px; margin-right: 2px } -ul.indexlist { margin-left: 0; padding-left: 0;} -ul.indexlist li { list-style-type: none ; margin-left: 0; padding-left: 0; }
\ No newline at end of file diff --git a/doc/type_Calendar.Precise.html b/doc/type_Calendar.Precise.html deleted file mode 100644 index 3d53536..0000000 --- a/doc/type_Calendar.Precise.html +++ /dev/null @@ -1,330 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar.Precise</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = int<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date : ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar.html b/doc/type_Calendar.html deleted file mode 100644 index 73dda6b..0000000 --- a/doc/type_Calendar.html +++ /dev/null @@ -1,648 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = int<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date : ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Precise</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = int<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_builder.Make.html b/doc/type_Calendar_builder.Make.html deleted file mode 100644 index dd746ac..0000000 --- a/doc/type_Calendar_builder.Make.html +++ /dev/null @@ -1,344 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_builder.Make</title> -</head> -<body> -<code class="code"><span class="keyword">functor</span> (<span class="constructor">D</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">functor</span> (<span class="constructor">T</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">D</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">D</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">D</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">D</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">T</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = <span class="constructor">T</span>.second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">T</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_builder.Make_Precise.html b/doc/type_Calendar_builder.Make_Precise.html deleted file mode 100644 index 9db6826..0000000 --- a/doc/type_Calendar_builder.Make_Precise.html +++ /dev/null @@ -1,344 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_builder.Make_Precise</title> -</head> -<body> -<code class="code"><span class="keyword">functor</span> (<span class="constructor">D</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">functor</span> (<span class="constructor">T</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">D</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">D</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">D</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">D</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">T</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = <span class="constructor">T</span>.second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">T</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_builder.html b/doc/type_Calendar_builder.html deleted file mode 100644 index 2339793..0000000 --- a/doc/type_Calendar_builder.html +++ /dev/null @@ -1,695 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_builder</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Make</span> :<br> - <span class="keyword">functor</span> (<span class="constructor">D</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">functor</span> (<span class="constructor">T</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">D</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">D</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">D</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">D</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">T</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = <span class="constructor">T</span>.second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">T</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second :<br> - second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub :<br> - t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Make_Precise</span> :<br> - <span class="keyword">functor</span> (<span class="constructor">D</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">functor</span> (<span class="constructor">T</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>) <span class="keywordsign">-></span><br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">D</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">D</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">D</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">D</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">T</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = <span class="constructor">T</span>.second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">T</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second :<br> - second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub :<br> - t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_sig.S.Date.html b/doc/type_Calendar_sig.S.Date.html deleted file mode 100644 index 2f1e0fc..0000000 --- a/doc/type_Calendar_sig.S.Date.html +++ /dev/null @@ -1,26 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig.S.Date</title> -</head> -<body> -<code class="code"><span class="constructor">Date_sig</span>.<span class="constructor">S</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_sig.S.Period.html b/doc/type_Calendar_sig.S.Period.html deleted file mode 100644 index 34ec8b5..0000000 --- a/doc/type_Calendar_sig.S.Period.html +++ /dev/null @@ -1,91 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig.S.Period</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> year :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> month :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> week :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> day :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> hour :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> minute :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> second :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - int * int * int * <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_sig.S.Time.html b/doc/type_Calendar_sig.S.Time.html deleted file mode 100644 index 0bf4f31..0000000 --- a/doc/type_Calendar_sig.S.Time.html +++ /dev/null @@ -1,26 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig.S.Time</title> -</head> -<body> -<code class="code"><span class="constructor">Time_sig</span>.<span class="constructor">S</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_sig.S.html b/doc/type_Calendar_sig.S.html deleted file mode 100644 index bb55fe2..0000000 --- a/doc/type_Calendar_sig.S.html +++ /dev/null @@ -1,180 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig.S</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span> ?second:<span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> convert :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_gmt : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_gmt : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> days_in_month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> day_of_month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">val</span> year : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> equal : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_unixfloat : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_date : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> year :<br> - int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> month :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> week :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> day :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> hour :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> minute :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> second :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - int * int * int * <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> sub :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> next : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> prev : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Calendar_sig.html b/doc/type_Calendar_sig.html deleted file mode 100644 index 775d74f..0000000 --- a/doc/type_Calendar_sig.html +++ /dev/null @@ -1,193 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Calendar_sig</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">S</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> : <span class="constructor">Date_sig</span>.<span class="constructor">S</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> : <span class="constructor">Time_sig</span>.<span class="constructor">S</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> convert :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_gmt : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_gmt : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> days_in_month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> day_of_month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">val</span> year : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> equal : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_unixfloat : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_date : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a)<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span><br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> year :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> month :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> week :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> day :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> hour :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> minute :<br> - int <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> second :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - int * int * int * <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> sub :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span><br> - <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> next : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> prev : <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Calendar_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Date.html b/doc/type_Date.html deleted file mode 100644 index dfc932f..0000000 --- a/doc/type_Date.html +++ /dev/null @@ -1,141 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Date_sig.S.Period.html b/doc/type_Date_sig.S.Period.html deleted file mode 100644 index 8d39441..0000000 --- a/doc/type_Date_sig.S.Period.html +++ /dev/null @@ -1,49 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date_sig.S.Period</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int * int * int<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Date_sig.S.html b/doc/type_Date_sig.S.html deleted file mode 100644 index 4a4d4e2..0000000 --- a/doc/type_Date_sig.S.html +++ /dev/null @@ -1,160 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date_sig.S</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">type</span> day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - year:<span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_day_of_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> days_in_month :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> day_of_month : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">val</span> year : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year<br> - <span class="keyword">val</span> to_jd : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_unixfloat : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_business : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year * int * <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> from_business :<br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> int_of_day : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> int_of_month : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> next :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> prev :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> is_leap_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:<span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t * <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> nth_weekday_of_month :<br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span><br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> century : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> carnaval : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> mardi_gras : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> ash : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> palm : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_friday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_saturday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_monday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> ascension : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> withsunday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> withmonday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> corpus_christi : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Date_sig.html b/doc/type_Date_sig.html deleted file mode 100644 index 2311890..0000000 --- a/doc/type_Date_sig.html +++ /dev/null @@ -1,171 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Date_sig</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">S</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">type</span> day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - year:<span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_day_of_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> days_in_month :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> day_of_month : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">val</span> year :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year<br> - <span class="keyword">val</span> to_jd : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_unixfloat : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_business :<br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year * int * <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> from_business :<br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> int_of_day : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day<br> - <span class="keyword">val</span> int_of_month : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - [< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> next :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> prev :<br> - ([< <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.date<br> - <span class="keyword">val</span> is_leap_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:<span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last :<br> - int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t * <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> nth_weekday_of_month :<br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span><br> - <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.month <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> century : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> carnaval : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> mardi_gras : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> ash : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> palm : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_friday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_saturday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> easter_monday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> ascension : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> withsunday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> withmonday : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> corpus_christi : <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.year <span class="keywordsign">-></span> <span class="constructor">Date_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Fcalendar.Precise.html b/doc/type_Fcalendar.Precise.html deleted file mode 100644 index 5783696..0000000 --- a/doc/type_Fcalendar.Precise.html +++ /dev/null @@ -1,330 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Fcalendar.Precise</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Ftime</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = float<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Ftime</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date : ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Fcalendar.html b/doc/type_Fcalendar.html deleted file mode 100644 index bcc26dc..0000000 --- a/doc/type_Fcalendar.html +++ /dev/null @@ -1,648 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Fcalendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Ftime</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = float<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Ftime</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date : ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Precise</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> field = <span class="constructor">Period</span>.date_field<br> - <span class="keyword">type</span> -<span class="keywordsign">'</span>a date = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.date <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = field date<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = int<br> - <span class="keyword">exception</span> <span class="constructor">Out_of_bounds</span><br> - <span class="keyword">exception</span> <span class="constructor">Undefined</span><br> - <span class="keyword">val</span> make : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : year:year <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> make_year : int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> make_year_month : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> [< <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date<br> - <span class="keyword">val</span> today : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_day_of_year : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> ] date <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] date <span class="keywordsign">-></span> year<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> equal : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : [< field ] date <span class="keywordsign">-></span> [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< field ] date <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_valid_date : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_business : t <span class="keywordsign">-></span> year * int * day<br> - <span class="keyword">val</span> from_business : year <span class="keywordsign">-></span> int <span class="keywordsign">-></span> day <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> int_of_day : day <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_int : int <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> int_of_month : month <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month_of_int : int <span class="keywordsign">-></span> month<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a p = <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a p <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?year:int <span class="keywordsign">-></span> ?month:int <span class="keywordsign">-></span> ?day:int <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> nb_days : [< field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> safe_nb_days : [< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> ymd : [< field ] period <span class="keywordsign">-></span> int * int * int<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> sub :<br> - ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> [< field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> next : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> prev : ([< field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) date <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>a date<br> - <span class="keyword">val</span> is_leap_year : year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> same_calendar : year <span class="keywordsign">-></span> year <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> days_in_year : ?month:month <span class="keywordsign">-></span> year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> weeks_in_year : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week_first_last : int <span class="keywordsign">-></span> year <span class="keywordsign">-></span> t * t<br> - <span class="keyword">val</span> nth_weekday_of_month : year <span class="keywordsign">-></span> month <span class="keywordsign">-></span> day <span class="keywordsign">-></span> int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> century : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> millenium : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> solar_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> indiction : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> golden_number : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> epact : year <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> easter : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> carnaval : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> mardi_gras : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ash : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> palm : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_friday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_saturday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> easter_monday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> ascension : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withsunday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> withmonday : year <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> corpus_christi : year <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Ftime</span>.t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = float<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period = <span class="keywordsign">'</span>a <span class="constructor">Ftime</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> day = <span class="constructor">Date</span>.day = <span class="constructor">Sun</span> <span class="keywordsign">|</span> <span class="constructor">Mon</span> <span class="keywordsign">|</span> <span class="constructor">Tue</span> <span class="keywordsign">|</span> <span class="constructor">Wed</span> <span class="keywordsign">|</span> <span class="constructor">Thu</span> <span class="keywordsign">|</span> <span class="constructor">Fri</span> <span class="keywordsign">|</span> <span class="constructor">Sat</span><br> - <span class="keyword">type</span> month =<br> - <span class="constructor">Date</span>.month =<br> - <span class="constructor">Jan</span><br> - <span class="keywordsign">|</span> <span class="constructor">Feb</span><br> - <span class="keywordsign">|</span> <span class="constructor">Mar</span><br> - <span class="keywordsign">|</span> <span class="constructor">Apr</span><br> - <span class="keywordsign">|</span> <span class="constructor">May</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jun</span><br> - <span class="keywordsign">|</span> <span class="constructor">Jul</span><br> - <span class="keywordsign">|</span> <span class="constructor">Aug</span><br> - <span class="keywordsign">|</span> <span class="constructor">Sep</span><br> - <span class="keywordsign">|</span> <span class="constructor">Oct</span><br> - <span class="keywordsign">|</span> <span class="constructor">Nov</span><br> - <span class="keywordsign">|</span> <span class="constructor">Dec</span><br> - <span class="keyword">type</span> year = <span class="constructor">Date</span>.year<br> - <span class="keyword">type</span> second = <span class="constructor">Time</span>.second<br> - <span class="keyword">type</span> field =<br> - [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span> ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> create : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_jd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_mjd : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> days_in_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_week : t <span class="keywordsign">-></span> day<br> - <span class="keyword">val</span> day_of_month : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> day_of_year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> week : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> month : t <span class="keywordsign">-></span> month<br> - <span class="keyword">val</span> year : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_jd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_mjd : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_leap_day : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_gregorian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_julian : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> to_unixtm : t <span class="keywordsign">-></span> <span class="constructor">Unix</span>.tm<br> - <span class="keyword">val</span> from_unixtm : <span class="constructor">Unix</span>.tm <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_unixfloat : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> from_unixfloat : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_date : <span class="constructor">Date</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_date : t <span class="keywordsign">-></span> <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> to_time : t <span class="keywordsign">-></span> <span class="constructor">Time</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake :<br> - ?year:int <span class="keywordsign">-></span><br> - ?month:int <span class="keywordsign">-></span><br> - ?day:int <span class="keywordsign">-></span><br> - ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> year : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> month : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ] period<br> - <span class="keyword">val</span> week : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> day : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] period<br> - <span class="keyword">val</span> from_date :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Date</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> from_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Time</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> to_date :<br> - ([< <span class="constructor">Date</span>.field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Date</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">exception</span> <span class="constructor">Not_computable</span><br> - <span class="keyword">val</span> to_time :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> safe_to_time :<br> - ([< <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Time</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> ymds :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int * int * int * second<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field > <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">`</span><span class="constructor">Week</span> ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> precise_sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> <span class="constructor">Period</span>.t<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Ftime.html b/doc/type_Ftime.html deleted file mode 100644 index 7dd794b..0000000 --- a/doc/type_Ftime.html +++ /dev/null @@ -1,99 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Ftime</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = float<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Period.S.html b/doc/type_Period.S.html deleted file mode 100644 index dc232b2..0000000 --- a/doc/type_Period.S.html +++ /dev/null @@ -1,45 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Period.S</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> int<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Period.html b/doc/type_Period.html deleted file mode 100644 index cf5f6ae..0000000 --- a/doc/type_Period.html +++ /dev/null @@ -1,49 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Period</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> date_field = [ <span class="keywordsign">`</span><span class="constructor">Day</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Month</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Week</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Year</span> ]<br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">S</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> opp :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Period</span>.<span class="constructor">S</span>.period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.<span class="constructor">S</span>.period <span class="keywordsign">-></span> int<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Calendar.html b/doc/type_Printer.Calendar.html deleted file mode 100644 index 206e040..0000000 --- a/doc/type_Printer.Calendar.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Calendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.CalendarPrinter.html b/doc/type_Printer.CalendarPrinter.html deleted file mode 100644 index 9b368a7..0000000 --- a/doc/type_Printer.CalendarPrinter.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.CalendarPrinter</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Date.html b/doc/type_Printer.Date.html deleted file mode 100644 index 0c3e5d9..0000000 --- a/doc/type_Printer.Date.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Date</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.DatePrinter.html b/doc/type_Printer.DatePrinter.html deleted file mode 100644 index ed37ae4..0000000 --- a/doc/type_Printer.DatePrinter.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.DatePrinter</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Fcalendar.html b/doc/type_Printer.Fcalendar.html deleted file mode 100644 index ddc08fa..0000000 --- a/doc/type_Printer.Fcalendar.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Fcalendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Fcalendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Ftime.html b/doc/type_Printer.Ftime.html deleted file mode 100644 index 99089ca..0000000 --- a/doc/type_Printer.Ftime.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Ftime</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Ftime</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Precise_Calendar.html b/doc/type_Printer.Precise_Calendar.html deleted file mode 100644 index e3f05c4..0000000 --- a/doc/type_Printer.Precise_Calendar.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Precise_Calendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.<span class="constructor">Precise</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Precise_Fcalendar.html b/doc/type_Printer.Precise_Fcalendar.html deleted file mode 100644 index 7b5af27..0000000 --- a/doc/type_Printer.Precise_Fcalendar.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Precise_Fcalendar</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Fcalendar</span>.<span class="constructor">Precise</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.S.html b/doc/type_Printer.S.html deleted file mode 100644 index a04ad71..0000000 --- a/doc/type_Printer.S.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.S</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.Time.html b/doc/type_Printer.Time.html deleted file mode 100644 index 2900abd..0000000 --- a/doc/type_Printer.Time.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.Time</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.TimePrinter.html b/doc/type_Printer.TimePrinter.html deleted file mode 100644 index 7870d5f..0000000 --- a/doc/type_Printer.TimePrinter.html +++ /dev/null @@ -1,35 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer.TimePrinter</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Printer.html b/doc/type_Printer.html deleted file mode 100644 index e1b7675..0000000 --- a/doc/type_Printer.html +++ /dev/null @@ -1,155 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Printer</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">val</span> day_name : (<span class="constructor">Date</span>.day <span class="keywordsign">-></span> string) <span class="constructor">Pervasives</span>.ref<br> - <span class="keyword">val</span> name_of_day : <span class="constructor">Date</span>.day <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> short_name_of_day : <span class="constructor">Date</span>.day <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> month_name : (<span class="constructor">Date</span>.month <span class="keywordsign">-></span> string) <span class="constructor">Pervasives</span>.ref<br> - <span class="keyword">val</span> name_of_month : <span class="constructor">Date</span>.month <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> short_name_of_month : <span class="constructor">Date</span>.month <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> set_word_regexp : <span class="constructor">Str</span>.regexp <span class="keywordsign">-></span> unit<br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">S</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : <span class="constructor">Printer</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> <span class="constructor">Printer</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Date</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">DatePrinter</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Date</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Time</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">TimePrinter</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Time</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Ftime</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Ftime</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Precise_Calendar</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.<span class="constructor">Precise</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Calendar</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">CalendarPrinter</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Calendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Precise_Fcalendar</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Fcalendar</span>.<span class="constructor">Precise</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Fcalendar</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">Fcalendar</span>.t<br> - <span class="keyword">val</span> fprint : string <span class="keywordsign">-></span> <span class="constructor">Format</span>.formatter <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> print : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> dprint : t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> sprint : string <span class="keywordsign">-></span> t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> - <span class="keyword">val</span> from_fstring : string <span class="keywordsign">-></span> string <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time.html b/doc/type_Time.html deleted file mode 100644 index 4cb5109..0000000 --- a/doc/type_Time.html +++ /dev/null @@ -1,99 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second = int<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> lmake : ?hour:int <span class="keywordsign">-></span> ?minute:int <span class="keywordsign">-></span> ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> convert : t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_gmt : t <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> normalize : t <span class="keywordsign">-></span> t * int<br> - <span class="keyword">val</span> hour : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_seconds : t <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : second <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> sub : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem : t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Period</span>.period <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> next : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> prev : t <span class="keywordsign">-></span> field <span class="keywordsign">-></span> t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_Zone.html b/doc/type_Time_Zone.html deleted file mode 100644 index 4c32a2c..0000000 --- a/doc/type_Time_Zone.html +++ /dev/null @@ -1,36 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_Zone</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = <span class="constructor">UTC</span> <span class="keywordsign">|</span> <span class="constructor">Local</span> <span class="keywordsign">|</span> <span class="constructor">UTC_Plus</span> <span class="keyword">of</span> int<br> - <span class="keyword">val</span> current : unit <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t<br> - <span class="keyword">val</span> change : <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> gap : <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> from_gmt : unit <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_gmt : unit <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_dst : unit <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> hour_of_dst : unit <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> on : (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>b) <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>b<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_sig.S.Period.html b/doc/type_Time_sig.S.Period.html deleted file mode 100644 index ae0badb..0000000 --- a/doc/type_Time_sig.S.Period.html +++ /dev/null @@ -1,52 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.S.Period</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> mul : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_sig.S.Second.html b/doc/type_Time_sig.S.Second.html deleted file mode 100644 index 50ce849..0000000 --- a/doc/type_Time_sig.S.Second.html +++ /dev/null @@ -1,32 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.S.Second</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_sig.S.html b/doc/type_Time_sig.S.html deleted file mode 100644 index 4ae96eb..0000000 --- a/doc/type_Time_sig.S.html +++ /dev/null @@ -1,108 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.S</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span> ?second:<span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> convert : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_gmt : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_gmt : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> normalize : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t * int<br> - <span class="keyword">val</span> hour : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_seconds : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_minutes : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> sub :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> next : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> prev : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_sig.Second.html b/doc/type_Time_sig.Second.html deleted file mode 100644 index c4643db..0000000 --- a/doc/type_Time_sig.Second.html +++ /dev/null @@ -1,32 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig.Second</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t<br> - <span class="keyword">val</span> to_int : <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t <span class="keywordsign">-></span> float<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Time_sig.html b/doc/type_Time_sig.html deleted file mode 100644 index 811deda..0000000 --- a/doc/type_Time_sig.html +++ /dev/null @@ -1,122 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Time_sig</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Second</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t<br> - <span class="keyword">val</span> to_int : <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : <span class="constructor">Time_sig</span>.<span class="constructor">Second</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">S</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">type</span> field = [ <span class="keywordsign">`</span><span class="constructor">Hour</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Minute</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Second</span> ]<br> - <span class="keyword">type</span> second<br> - <span class="keyword">module</span> <span class="constructor">Second</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = second<br> - <span class="keyword">val</span> from_int : int <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> from_float : float <span class="keywordsign">-></span> t<br> - <span class="keyword">val</span> to_int : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> to_float : t <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> make : int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span> ?second:<span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> now : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> midnight : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> midday : unit <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> convert :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_Zone</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_gmt : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> to_gmt : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> normalize : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t * int<br> - <span class="keyword">val</span> hour : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> minute : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> second : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_seconds : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_minutes : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> equal : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> is_pm : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> is_am : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> from_seconds : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_minutes : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> from_hours : float <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">module</span> <span class="constructor">Period</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> +<span class="keywordsign">'</span>a period <span class="keyword">constraint</span> <span class="keywordsign">'</span>a = [< <span class="constructor">Period</span>.date_field ]<br> - <span class="keyword">type</span> t = <span class="constructor">Period</span>.date_field period<br> - <span class="keyword">val</span> empty : [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> add :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> sub :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> opp : ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> equal :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare :<br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> length : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> mul :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> div :<br> - ([< <span class="constructor">Period</span>.date_field ] <span class="keyword">as</span> <span class="keywordsign">'</span>a) period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period <span class="keywordsign">-></span> <span class="keywordsign">'</span>a period<br> - <span class="keyword">val</span> make :<br> - int <span class="keywordsign">-></span> int <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> lmake :<br> - ?hour:int <span class="keywordsign">-></span><br> - ?minute:int <span class="keywordsign">-></span><br> - ?second:<span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span><br> - unit <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> hour : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> minute : int <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> second : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] period<br> - <span class="keyword">val</span> to_seconds : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.second<br> - <span class="keyword">val</span> to_minutes : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">val</span> to_hours : [< <span class="constructor">Period</span>.date_field ] period <span class="keywordsign">-></span> float<br> - <span class="keyword">end</span><br> - <span class="keyword">val</span> add :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> sub :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period<br> - <span class="keyword">val</span> rem :<br> - <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span><br> - [< <span class="constructor">Period</span>.date_field ] <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.<span class="constructor">Period</span>.period <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> next : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">val</span> prev : <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.field <span class="keywordsign">-></span> <span class="constructor">Time_sig</span>.<span class="constructor">S</span>.t<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Utils.Comparable.html b/doc/type_Utils.Comparable.html deleted file mode 100644 index 45217ae..0000000 --- a/doc/type_Utils.Comparable.html +++ /dev/null @@ -1,31 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Comparable</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> equal : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> int<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Utils.Float.html b/doc/type_Utils.Float.html deleted file mode 100644 index f37c14a..0000000 --- a/doc/type_Utils.Float.html +++ /dev/null @@ -1,33 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Float</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> set_precision : float <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> round : t <span class="keywordsign">-></span> int<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Utils.Int.html b/doc/type_Utils.Int.html deleted file mode 100644 index 8b631c8..0000000 --- a/doc/type_Utils.Int.html +++ /dev/null @@ -1,31 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils.Int</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">type</span> t = int<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Utils.html b/doc/type_Utils.html deleted file mode 100644 index 1c55e5a..0000000 --- a/doc/type_Utils.html +++ /dev/null @@ -1,50 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Utils</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span><br> - <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Comparable</span> =<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t<br> - <span class="keyword">val</span> equal : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : <span class="constructor">Utils</span>.<span class="constructor">Comparable</span>.t <span class="keywordsign">-></span> int<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Int</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = int<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">end</span><br> - <span class="keyword">module</span> <span class="constructor">Float</span> :<br> - <span class="keyword">sig</span><br> - <span class="keyword">type</span> t = float<br> - <span class="keyword">val</span> equal : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> bool<br> - <span class="keyword">val</span> compare : t <span class="keywordsign">-></span> t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> hash : t <span class="keywordsign">-></span> int<br> - <span class="keyword">val</span> set_precision : float <span class="keywordsign">-></span> unit<br> - <span class="keyword">val</span> round : t <span class="keywordsign">-></span> int<br> - <span class="keyword">end</span><br> -<span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/doc/type_Version.html b/doc/type_Version.html deleted file mode 100644 index 2680608..0000000 --- a/doc/type_Version.html +++ /dev/null @@ -1,26 +0,0 @@ -<html><head> -<link rel="stylesheet" href="style.css" type="text/css"> -<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> -<link rel="Start" href="index.html"> -<link title="Index of types" rel=Appendix href="index_types.html"> -<link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> -<link title="Index of values" rel=Appendix href="index_values.html"> -<link title="Index of modules" rel=Appendix href="index_modules.html"> -<link title="Index of module types" rel=Appendix href="index_module_types.html"> -<link title="Utils" rel="Chapter" href="Utils.html"> -<link title="Time_Zone" rel="Chapter" href="Time_Zone.html"> -<link title="Period" rel="Chapter" href="Period.html"> -<link title="Time_sig" rel="Chapter" href="Time_sig.html"> -<link title="Time" rel="Chapter" href="Time.html"> -<link title="Ftime" rel="Chapter" href="Ftime.html"> -<link title="Date_sig" rel="Chapter" href="Date_sig.html"> -<link title="Date" rel="Chapter" href="Date.html"> -<link title="Calendar_sig" rel="Chapter" href="Calendar_sig.html"> -<link title="Calendar_builder" rel="Chapter" href="Calendar_builder.html"> -<link title="Calendar" rel="Chapter" href="Calendar.html"> -<link title="Fcalendar" rel="Chapter" href="Fcalendar.html"> -<link title="Printer" rel="Chapter" href="Printer.html"> -<link title="Version" rel="Chapter" href="Version.html"><title>Version</title> -</head> -<body> -<code class="code"><span class="keyword">sig</span> <span class="keyword">val</span> version : string <span class="keyword">val</span> date : string <span class="keyword">end</span></code></body></html>
\ No newline at end of file diff --git a/dune-project b/dune-project new file mode 100644 index 0000000..7b1c2ce --- /dev/null +++ b/dune-project @@ -0,0 +1,3 @@ +(lang dune 1.0) +(name calendar) +(version 3.0.0) diff --git a/src/date.ml b/src/date.ml index d59cea1..ed64587 100644 --- a/src/date.ml +++ b/src/date.ml @@ -65,12 +65,21 @@ external int_of_month : month -> int = "%identity" let compare = Utils.Int.compare let equal = Utils.Int.equal +let ( > ) x y = compare x y = 1 +let ( >= ) x y = compare x y > -1 +let ( < ) x y = compare x y = -1 +let ( <= ) x y = compare x y < 1 +let ( <?> ) c (ord, x, y) = + if c = 0 then ord x y else c +let cmp_date (y1, m1, d1) (y2, m2, d2) = + compare y1 y2 <?> (compare, m1, m2) <?> (compare, d1, d2) + + let hash = Utils.Int.hash (* Constructors. *) -let lt (d1 : int * int * int) (d2 : int * int * int) = - Pervasives.compare d1 d2 < 0 +let lt d1 d2 = (cmp_date d1 d2) < 0 (* [date_ok] returns [true] is the date belongs to the Julian period; [false] otherwise. *) @@ -251,8 +260,8 @@ module Period = struct (* exactly equivalent to [Pervasives.compare] but more flexible typing *) let compare x y = - let n = Pervasives.compare x.m y.m in - if n = 0 then Pervasives.compare x.d y.d else n + let n = compare x.m y.m in + if n = 0 then compare x.d y.d else n let equal x y = compare x y = 0 let hash = Hashtbl.hash @@ -337,7 +346,7 @@ let weeks_in_year y = | _ -> 52 let week_first_last w y = - let d = make y 1 1 in + let d = make y 1 4 in (* January 4th must be in the first week (ISO 8601) *) let d = d - d mod 7 in let b = d + 7 * (w - 1) in b, 6 + b diff --git a/src/date_sig.mli b/src/date_sig.mli index 0e75243..1f62524 100644 --- a/src/date_sig.mli +++ b/src/date_sig.mli @@ -176,6 +176,18 @@ module type S = sig (** Comparison function between two dates. @see <Utils.Comparable.html#VALcompare> Utils.Comparable.compare *) + val ( > ) : 'a date -> 'b date -> bool + (** Check if the first date is later than the second *) + + val ( >= ) : 'a date -> 'b date -> bool + (** Check if the first date is later or equal to the second *) + + val ( < ) : 'a date -> 'b date -> bool + (** Check if the first date is earlier than the second *) + + val ( <= ) : 'a date -> 'b date -> bool + (** Check if the first date is earlier or equal to the second *) + val hash: 'a date -> int (** Hash function for dates. @see <Utils.Comparable.html#VALhash> Utils.Comparable.hash diff --git a/src/dune b/src/dune new file mode 100644 index 0000000..e0e74b7 --- /dev/null +++ b/src/dune @@ -0,0 +1,14 @@ + +(library + (name calendarLib) + (public_name calendar) + (libraries re unix) + (modules_without_implementation calendar_sig date_sig period time_sig) + (flags :standard -warn-error -32 -safe-string)) + +(rule + (targets version.ml) + (action + (with-stdout-to %{targets} + (echo "let version = String.trim \"" %{version:calendar} "\"\n")))) + diff --git a/src/printer.ml b/src/printer.ml index 32c1f2d..aa1614b 100644 --- a/src/printer.ml +++ b/src/printer.ml @@ -121,7 +121,7 @@ let gen_day_of_name f fmt name = let day_of_name = gen_day_of_name name_of_day "%a" let day_of_short_name = gen_day_of_name short_name_of_day "%A" -let word_regexp = ref (Str.regexp "[a-zA-Z]+") +let word_regexp = ref (Re.Str.regexp "[a-zA-Z]+") let set_word_regexp r = word_regexp := r @@ -181,7 +181,7 @@ struct let print_int pad k n = print_number fmt pad k (Lazy.force n) in let print_string pad s = let pad s = match pad with - | Uppercase -> String.uppercase s + | Uppercase -> String.uppercase_ascii s | Empty | Zero | Blank -> s in Format.pp_print_string fmt (pad (Lazy.force s)) @@ -236,7 +236,7 @@ struct | 'n' -> print_char '\n' | 'p' -> print_string pad apm | 'P' -> - Format.pp_print_string fmt (String.lowercase (Lazy.force apm)) + Format.pp_print_string fmt (String.lowercase_ascii (Lazy.force apm)) | 'r' -> print_time pad shour; print_char ' '; @@ -259,10 +259,10 @@ struct print_number fmt Zero 10 0 | ':' -> let idx = - try Str.search_forward (Str.regexp "z\\|:z\\|::z") f (i+1) + try Re.Str.search_forward (Re.Str.regexp "z\\|:z\\|::z") f (i+1) with Not_found -> bad_format f in - let next = Str.matched_string f in + let next = Re.Str.matched_string f in if idx <> i+1 then bad_format f; if Lazy.force tz >= 0 then print_char '+'; print_int pad 10 tz; @@ -352,15 +352,15 @@ struct in let read_word ?(regexp=(!word_regexp)) () = let jn = - try Str.search_forward regexp s !j with Not_found -> not_match f s + try Re.Str.search_forward regexp s !j with Not_found -> not_match f s in if jn <> !j then not_match f s; - let w = Str.matched_string s in + let w = Re.Str.matched_string s in j := jn + String.length w; w in let read_float = - let regexp = Str.regexp "[0-9][0-9]\\(\\.[0-9]*\\)?" in + let regexp = Re.Str.regexp "[0-9][0-9]\\(\\.[0-9]*\\)?" in fun () -> try float_of_string (read_word ~regexp ()) with Failure _ -> not_match f s @@ -390,7 +390,7 @@ struct let parse_y () = year := read_number 2 + 1900 in let parse_Y () = year := read_number 4 in let parse_tz () = - let sign = match read_word ~regexp:(Str.regexp "[\\+-]") () with + let sign = match read_word ~regexp:(Re.Str.regexp "[\\+-]") () with | "+" -> -1 | "-" -> 1 | _ -> assert false diff --git a/src/printer.mli b/src/printer.mli index 49d2570..78747f9 100644 --- a/src/printer.mli +++ b/src/printer.mli @@ -125,7 +125,7 @@ val short_name_of_month : Date.month -> string [name_of_month d]. Used by the specifier [%b]. *) -val set_word_regexp: Str.regexp -> unit +val set_word_regexp: Re.Str.regexp -> unit (** Set the regular expression used to recognize words in [from_fstring]. Default is [[a-zA-Z]*]. @since 1.10 *) diff --git a/src/time_Zone.ml b/src/time_Zone.ml index 5a1fd8b..dcbad4e 100644 --- a/src/time_Zone.ml +++ b/src/time_Zone.ml @@ -44,7 +44,6 @@ let gap_gmt_local = let current () = !tz let change = function - | UTC_Plus x when out_of_bounds x -> invalid_arg "Not a valid time zone" | _ as t -> tz := t let gap t1 t2 = diff --git a/src/utils.ml b/src/utils.ml index 9cee0d4..86640d1 100644 --- a/src/utils.ml +++ b/src/utils.ml @@ -29,8 +29,8 @@ end module Int = struct type t = int - let equal = Pervasives.(=) - let compare = Pervasives.compare + let equal (a: int) b = a = b + let compare (a: int) b = compare a b let hash = Hashtbl.hash end @@ -38,7 +38,7 @@ module Float = struct type t = float - let precision = ref 1e-3 + let precision = ref 1e-8 let set_precision f = precision := f diff --git a/src/utils.mli b/src/utils.mli index 40d285b..46f0e4d 100644 --- a/src/utils.mli +++ b/src/utils.mli @@ -58,8 +58,8 @@ module Float: sig val set_precision: float -> unit (** Set the precision of [equal] and [compare] for float. If the precision is [p], then the floats [x] and [y] are equal iff - [abs(x-y) < p]. By default, the precision is [1e-3] (that is one - millisecond if floats represents seconds). *) + [abs(x-y) < p]. By default, the precision is [1e-8] (that is 0.864 + milliseconds if floats represent days). *) val round: t -> int (** Round a float to the nearest integer. *) diff --git a/src/version.mli b/src/version.mli index 82d53e9..07c6a8a 100644 --- a/src/version.mli +++ b/src/version.mli @@ -26,5 +26,3 @@ val version: string (** Name of this version. *) -val date: string - (** Date of compilation. *) diff --git a/tests/dune b/tests/dune new file mode 100644 index 0000000..b0a4ce7 --- /dev/null +++ b/tests/dune @@ -0,0 +1,9 @@ + +(executable + (name test) + (libraries calendar alcotest)) + +(alias + (name runtest) + (deps test.exe) + (action (run ./test.exe -e))) diff --git a/tests/gen_test.ml b/tests/gen_test.ml index 4c466e8..8b176af 100644 --- a/tests/gen_test.ml +++ b/tests/gen_test.ml @@ -20,7 +20,7 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: gen_test.ml 259 2014-10-29 10:00:46Z signoles $ i*) +(*i $Id$ i*) let ok_ref = ref 0 let ok () = incr ok_ref @@ -40,7 +40,6 @@ let test x s = let test_exn x s = try ignore (Lazy.force x); - Printf.printf "%s\n" s; - bug () + Alcotest.failf "expected exception: %s" s with _ -> - ok ();; + () diff --git a/tests/gen_test.mli b/tests/gen_test.mli index 64b1c6f..ba22014 100644 --- a/tests/gen_test.mli +++ b/tests/gen_test.mli @@ -20,7 +20,7 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: gen_test.mli 259 2014-10-29 10:00:46Z signoles $ i*) +(*i $Id$ i*) (* Generic functions used in the tests. *) diff --git a/tests/test.ml b/tests/test.ml index 0af8f95..1475484 100644 --- a/tests/test.ml +++ b/tests/test.ml @@ -20,25 +20,20 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test.ml 259 2014-10-29 10:00:46Z signoles $ i*) +(*i $Id$ i*) (* Display the results *) -let ok = - Test_timezone.ok + Test_time.ok + Test_ftime.ok - + Test_date.ok + Test_calendar.ok + Test_pcalendar.ok - + Test_fcalendar.ok + Test_fpcalendar.ok - + Test_printer.ok;; +let suite = [ + "timezone", Test_timezone.suite; + "time", Test_time.suite; + "ftime", Test_ftime.suite; + "date", Test_date.suite; + "calendar", Test_calendar.suite; + "pcalendar", Test_pcalendar.suite; + "fpcalendar", Test_fpcalendar.suite; + "printer", Test_printer.suite; +] -let bug = - Test_timezone.bug + Test_time.bug + Test_ftime.bug - + Test_date.bug + Test_calendar.bug + Test_pcalendar.bug - + Test_fcalendar.bug + Test_fpcalendar.bug - + Test_printer.bug;; - -Printf.printf "\nFinal results:\n";; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; - -assert (bug >= 0);; - -if bug > 0 then exit 1;; +let () = + Alcotest.run "calendar tests" suite diff --git a/tests/test_calendar.ml b/tests/test_calendar.ml index 6ed1ee1..26a9d14 100644 --- a/tests/test_calendar.ml +++ b/tests/test_calendar.ml @@ -24,176 +24,174 @@ Printf.printf "Tests of Calendar:\n";; open CalendarLib;; open Calendar;; -include Gen_test;; -reset ();; - -let eps = 0.000001;; - -Time_Zone.change Time_Zone.UTC;; - -(* Calendar *) - -test_exn (lazy (make (-4712) 1 1 12 0 (-1))) "-4713-12-31-23-59-59";; -test (make (-4712) 1 1 12 0 0 = make (-4712) 1 0 36 0 0) "calendar coercion";; -test (from_jd 0. = make (-4712) 1 1 12 0 0) "from_jd 0 = 4713 BC-1-1";; -test (from_mjd 0. = make 1858 11 17 0 0 0) "from_mjd 0 = 1858-11-17";; - -test (Precise.compare (Precise.make 2009 12 14 13 49 0) (Precise.make 2009 12 14 13 49 1) < 0) - "Precise.compare 2009/12/14/13/19/0 2009/12/14/13/19/1";; - -Utils.Float.set_precision 1e-5;; -test (compare (make 2009 12 14 13 49 0) (make 2009 12 14 13 49 1) < 0) - "compare 2009/12/14/13/19/0 2009/12/14/13/19/1";; -Utils.Float.set_precision 1e-3;; - -Time_Zone.change (Time_Zone.UTC_Plus 5);; - -test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) - "to_jd (from_jd x) = x";; -test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) - "to_mjd (from_mjd x) = x";; -test (Period.to_date (Period.hour 60) = Date.Period.day 2) - "period(60h) = period(2d)";; -test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <";; -test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >";; -test (Period.compare - (Period.add (Period.day 2) (Period.hour 12)) - (Period.hour 60) = 0) "Period.compare =";; -test - (add (make 1 2 3 4 5 6) (Period.make 9 8 7 6 5 4) = make 10 10 10 10 10 10) - "add 1-2-3-4-5-6 9-8-7-6-5-4";; -test - (add (make 3 1 1 0 0 0) (Period.make 0 0 0 (-25) 0 (-1)) = - make 2 12 30 22 59 59) - "add 3-1-1-0-0-0 0-0-0-(-25)-0-(-1)";; - -test - (equal (rem (make 9 8 7 6 5 4) (Period.make 1 2 3 4 5 6)) - (make 8 6 4 1 59 58)) - "rem 9-8-7-6-5-4 1-2-3-4-5-6";; -test (Period.equal - (sub (make 0 0 7 6 5 4) (make 0 0 3 54 5 6)) - (Period.make 0 0 1 23 59 58)) - "sub 0-0-7-6-5-4 0-0-3-54-5-6";; - -test (Date.Period.ymd - (Period.to_date - (precise_sub (make 2010 10 5 0 0 0) (make 2010 6 2 0 0 0))) - = (0, 4, 3)) -"precise_sub 2010-10-5 2010-6-2";; -test (Date.Period.ymd - (Period.to_date - (precise_sub (make 2010 10 5 0 2 3) (make 2010 6 5 0 0 0))) = - (0, 4, 0)) -"precise_sub 2010-10-5 2010-6-2";; -test (Date.Period.ymd - (Period.to_date - (precise_sub (make 2010 10 5 0 32 12) (make 2010 6 6 0 31 3))) - = (0, 3, 29)) -"precise_sub 2010-10-5 2010-6-6";; -test (Date.Period.ymd - (Period.to_date - (precise_sub (make 2010 10 5 1 3 3) (make 2010 6 4 0 23 3))) = - (0, 4, 1)) -"precise_sub 2010-10-5 2010-6-4";; -test (Date.Period.ymd - (Period.to_date - (precise_sub (make 2010 1 1 0 0 0) (make 2000 1 1 0 0 0))) - = (10, 0, 0)) -"precise_sub 2010-1-1 2000-1-1";; - -test (Period.equal - (Period.opp (Period.make 0 0 2 3 0 0)) - (Period.make 0 0 (-2) (-3) 0 0)) - "period opp";; - -(* Date *) - -let d = make 2003 12 31 12 24 48;; -test (next d `Month = make 2004 1 31 12 24 48) "2003-12-31 + 1 mois";; -test (add d (Period.month 2) = make 2004 3 2 12 24 48) "2003-12-31 + 2 mois";; -let d3 = make 2011 3 24 0 0 0;; -test (prev d3 `Year = make 2010 3 24 0 0 0) "2011-3-24 - 1 year";; -let d2 = make (-3000) 1 1 6 12 24;; -test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y";; -test (is_leap_day (make 2000 2 24 0 0 0)) "2000-2-24 leap day";; -test (not (is_leap_day (make 2000 2 25 0 0 0))) "2000-2-25 not leap day";; -test (is_gregorian (make 1600 1 1 0 0 0)) "1600-1-1 gregorian";; -test (not (is_gregorian (make 1400 1 1 0 0 0))) "1400-1-1 not gregorian";; -test (is_julian (make 1582 1 1 0 0 0)) "1582-1-1 julian";; -test (not (is_julian (make 1583 1 1 0 0 0))) "1583-1-1 not julian";; - -(* Time *) - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC";; - -Time_Zone.change (Time_Zone.UTC_Plus 10);; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant +10";; - -test (equal (add (make 0 0 0 10 0 0) (Period.hour 30)) (make 0 0 1 16 0 0)) - "add 0-0-0-20-0-0 30h";; -test (equal (next (make 1999 12 31 23 59 59) `Second) (make 2000 1 1 0 0 0)) - "next 1999-31-12-23-59-59 `Second";; -let n = now ();; -test (equal (prev (next n `Minute) `Minute) n) "prev next = id";; -test (equal - (convert - (make 0 0 0 23 0 0) - (Time_Zone.UTC_Plus 2) - (Time_Zone.UTC_Plus 4)) - (make 0 0 1 1 0 0)) "convert";; -test (hour (make 0 0 0 20 0 0) = 20) "hour";; -test (minute (make 0 0 0 20 10 0) = 10) "minute";; -test (second (make 0 0 0 20 10 5) = 5) "second";; -test (is_pm (make 0 0 0 10 0 0)) "is_pm 10-0-0";; -test (is_pm (make 0 0 0 34 0 0)) "is_pm 34-0-0";; -test (not (is_pm (make 0 0 0 (- 10) 0 0))) "not (is_pm (- 10) 0 0)";; -test (is_am (make 0 0 0 20 0 0)) "is_am 20-0-0";; -test (is_am (make 0 0 0 (- 34) 0 0)) "is_am (- 34) 0 0";; -test (not (is_am (make 0 0 0 34 0 0))) "not (is_pm 34 0 0)";; - -Time_Zone.change Time_Zone.UTC;; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC2";; - -test (to_unixfloat (make 1970 1 1 0 0 0) = 0.) "to_unixfloat 1 Jan 1970";; -test (from_unixfloat 0. = make 1970 1 1 0 0 0) "from_unixfloat 1 Jan 1970";; -test (Utils.Float.equal (to_unixfloat (make 2004 11 13 19 17 9)) 1100373429.) - "to_unixfloat";; -test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 9)) - "from_unixfloat";; -test (from_unixtm (to_unixtm (make 2003 7 16 23 22 21)) = - make 2003 7 16 23 22 21) - "from_unixtm to_unixtm = id";; - -test (Period.to_time (Period.second 30) = Time.Period.second 30) - "Period.to_time second";; -test (Period.to_time (Period.day 6) = Time.Period.second 518400) - "Period.to_time day";; -test (Period.safe_to_time (Period.second 30) = Time.Period.second 30) - "Period.safe_to_time second";; -test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400) - "Period.safe_to_time day";; -test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year";; -test (Period.ymds (Period.make 1 2 3 1 2 3) = (1, 2, 3, 3723)) "Period.ymds";; -test - (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3)) = (-1,-2,-4,82677)) - "Period.ymds neg";; - -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; + +let test() = + let test x s = Alcotest.(check bool) s true x in + let eps = 0.000001 in + + Time_Zone.change Time_Zone.UTC; + + (* Calendar *) + + Gen_test.test_exn (lazy (make (-4712) 1 1 12 0 (-1))) "-4713-12-31-23-59-59"; + test (make (-4712) 1 1 12 0 0 = make (-4712) 1 0 36 0 0) "calendar coercion"; + test (from_jd 0. = make (-4712) 1 1 12 0 0) "from_jd 0 = 4713 BC-1-1"; + test (from_mjd 0. = make 1858 11 17 0 0 0) "from_mjd 0 = 1858-11-17"; + + test (Precise.compare (Precise.make 2009 12 14 13 49 0) (Precise.make 2009 12 14 13 49 1) < 0) + "Precise.compare 2009/12/14/13/19/0 2009/12/14/13/19/1"; + + Utils.Float.set_precision 1e-5; + test (compare (make 2009 12 14 13 49 0) (make 2009 12 14 13 49 1) < 0) + "compare 2009/12/14/13/19/0 2009/12/14/13/19/1"; + Utils.Float.set_precision 1e-3; + + Time_Zone.change (Time_Zone.UTC_Plus 5); + + test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) + "to_jd (from_jd x) = x"; + test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) + "to_mjd (from_mjd x) = x"; + test (Period.to_date (Period.hour 60) = Date.Period.day 2) + "period(60h) = period(2d)"; + test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <"; + test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >"; + test (Period.compare + (Period.add (Period.day 2) (Period.hour 12)) + (Period.hour 60) = 0) "Period.compare ="; + test + (add (make 1 2 3 4 5 6) (Period.make 9 8 7 6 5 4) = make 10 10 10 10 10 10) + "add 1-2-3-4-5-6 9-8-7-6-5-4"; + test + (add (make 3 1 1 0 0 0) (Period.make 0 0 0 (-25) 0 (-1)) = + make 2 12 30 22 59 59) + "add 3-1-1-0-0-0 0-0-0-(-25)-0-(-1)"; + + test + (equal (rem (make 9 8 7 6 5 4) (Period.make 1 2 3 4 5 6)) + (make 8 6 4 1 59 58)) + "rem 9-8-7-6-5-4 1-2-3-4-5-6"; + test (Period.equal + (sub (make 0 0 7 6 5 4) (make 0 0 3 54 5 6)) + (Period.make 0 0 1 23 59 58)) + "sub 0-0-7-6-5-4 0-0-3-54-5-6"; + + test (Date.Period.ymd + (Period.to_date + (precise_sub (make 2010 10 5 0 0 0) (make 2010 6 2 0 0 0))) + = (0, 4, 3)) + "precise_sub 2010-10-5 2010-6-2"; + test (Date.Period.ymd + (Period.to_date + (precise_sub (make 2010 10 5 0 2 3) (make 2010 6 5 0 0 0))) = + (0, 4, 0)) + "precise_sub 2010-10-5 2010-6-2"; + test (Date.Period.ymd + (Period.to_date + (precise_sub (make 2010 10 5 0 32 12) (make 2010 6 6 0 31 3))) + = (0, 3, 29)) + "precise_sub 2010-10-5 2010-6-6"; + test (Date.Period.ymd + (Period.to_date + (precise_sub (make 2010 10 5 1 3 3) (make 2010 6 4 0 23 3))) = + (0, 4, 1)) + "precise_sub 2010-10-5 2010-6-4"; + test (Date.Period.ymd + (Period.to_date + (precise_sub (make 2010 1 1 0 0 0) (make 2000 1 1 0 0 0))) + = (10, 0, 0)) + "precise_sub 2010-1-1 2000-1-1"; + + test (Period.equal + (Period.opp (Period.make 0 0 2 3 0 0)) + (Period.make 0 0 (-2) (-3) 0 0)) + "period opp"; + + (* Date *) + + let d = make 2003 12 31 12 24 48 in + test (next d `Month = make 2004 1 31 12 24 48) "2003-12-31 + 1 mois"; + test (add d (Period.month 2) = make 2004 3 2 12 24 48) "2003-12-31 + 2 mois"; + let d3 = make 2011 3 24 0 0 0 in + test (prev d3 `Year = make 2010 3 24 0 0 0) "2011-3-24 - 1 year"; + let d2 = make (-3000) 1 1 6 12 24 in + test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y"; + test (is_leap_day (make 2000 2 24 0 0 0)) "2000-2-24 leap day"; + test (not (is_leap_day (make 2000 2 25 0 0 0))) "2000-2-25 not leap day"; + test (is_gregorian (make 1600 1 1 0 0 0)) "1600-1-1 gregorian"; + test (not (is_gregorian (make 1400 1 1 0 0 0))) "1400-1-1 not gregorian"; + test (is_julian (make 1582 1 1 0 0 0)) "1582-1-1 julian"; + test (not (is_julian (make 1583 1 1 0 0 0))) "1583-1-1 not julian"; + + (* Time *) + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC"; + + Time_Zone.change (Time_Zone.UTC_Plus 10); + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant +10"; + + test (equal (add (make 0 0 0 10 0 0) (Period.hour 30)) (make 0 0 1 16 0 0)) + "add 0-0-0-20-0-0 30h"; + test (equal (next (make 1999 12 31 23 59 59) `Second) (make 2000 1 1 0 0 0)) + "next 1999-31-12-23-59-59 `Second"; + let n = now () in + test (equal (prev (next n `Minute) `Minute) n) "prev next = id"; + test (equal + (convert + (make 0 0 0 23 0 0) + (Time_Zone.UTC_Plus 2) + (Time_Zone.UTC_Plus 4)) + (make 0 0 1 1 0 0)) "convert"; + test (hour (make 0 0 0 20 0 0) = 20) "hour"; + test (minute (make 0 0 0 20 10 0) = 10) "minute"; + test (second (make 0 0 0 20 10 5) = 5) "second"; + test (is_pm (make 0 0 0 10 0 0)) "is_pm 10-0-0"; + test (is_pm (make 0 0 0 34 0 0)) "is_pm 34-0-0"; + test (not (is_pm (make 0 0 0 (- 10) 0 0))) "not (is_pm (- 10) 0 0)"; + test (is_am (make 0 0 0 20 0 0)) "is_am 20-0-0"; + test (is_am (make 0 0 0 (- 34) 0 0)) "is_am (- 34) 0 0"; + test (not (is_am (make 0 0 0 34 0 0))) "not (is_pm 34 0 0)"; + + Time_Zone.change Time_Zone.UTC; + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC2"; + + test (to_unixfloat (make 1970 1 1 0 0 0) = 0.) "to_unixfloat 1 Jan 1970"; + test (from_unixfloat 0. = make 1970 1 1 0 0 0) "from_unixfloat 1 Jan 1970"; + test (Utils.Float.equal (to_unixfloat (make 2004 11 13 19 17 9)) 1100373429.) + "to_unixfloat"; + test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 9)) + "from_unixfloat"; + test (from_unixtm (to_unixtm (make 2003 7 16 23 22 21)) = + make 2003 7 16 23 22 21) + "from_unixtm to_unixtm = id"; + + test (Period.to_time (Period.second 30) = Time.Period.second 30) + "Period.to_time second"; + test (Period.to_time (Period.day 6) = Time.Period.second 518400) + "Period.to_time day"; + test (Period.safe_to_time (Period.second 30) = Time.Period.second 30) + "Period.safe_to_time second"; + test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400) + "Period.safe_to_time day"; + Gen_test.test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year"; + test (Period.ymds (Period.make 1 2 3 1 2 3) = (1, 2, 3, 3723)) "Period.ymds"; + test + (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3)) = (-1,-2,-4,82677)) + "Period.ymds neg"; + () + +let suite = ["test-calendar", `Quick, test] diff --git a/tests/test_date.ml b/tests/test_date.ml index 51893b5..b2ad9ef 100644 --- a/tests/test_date.ml +++ b/tests/test_date.ml @@ -20,154 +20,169 @@ (* LICENSE. *) (**************************************************************************) -Printf.printf "Tests of Date:\n";; - open CalendarLib;; open Date;; -include Gen_test;; -reset ();; -test_exn (lazy (make (-4713) 1 1)) "make (-4713) 1 1";; -test_exn (lazy (make 3268 1 23)) "make 3268 1 23";; -test_exn (lazy (make 1582 10 5)) "make 1582 10 10";; -test (compare (make 2003 2 29) (make 2003 3 1) = 0) "2003-2-29 = 2003-3-1";; -let d = make 2003 12 31;; -test (next d `Month = make 2004 1 31) "2003-12-31 + 1 mois";; -test (add d (Period.month 2) = make 2004 3 2) "2003-12-31 + 2 mois";; -test (add (make 2008 12 31) (Period.month 6) = make 2009 7 1) - "2008-12-31 + 6 mois";; -test (rem (make 2008 6 2) (Period.month 12) = make 2007 6 2) - "2008-6-2 - 12 mois";; -test (rem (make 2007 2 30) (Period.month 4) = make 2006 11 2) - "2008-2-30 - 4 mois";; -test (make 2007 (-38) 30 = make 2003 10 30) - "2007-(-38)-30 - 2003 10 30";; -test (rem (make 2007 2 30) (Period.month 40) = make 2003 11 2) - "2008-2-30 - 40 mois";; -let d2 = make (-3000) 1 1;; -test (rem d (sub d d2) = d2) "rem x (sub x y) = y";; -test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 2)) = (0, 4, 3)) -"precise_sub 2010-10-5 2010-6-2";; -test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 5)) = (0, 4, 0)) -"precise_sub 2010-10-5 2010-6-2";; -test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 6)) = (0, 3, 29)) -"precise_sub 2010-10-5 2010-6-6";; -test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 4)) = (0, 4, 1)) -"precise_sub 2010-10-5 2010-6-4";; -test (Period.ymd (precise_sub (make 2010 1 1) (make 2000 1 1)) = (10, 0, 0)) -"precise_sub 2010-1-1 2000-1-1";; -test (from_jd 0 = make (-4712) 1 1) "from_jd 0 = 4713 BC-1-1";; -test (to_jd (from_jd 12345) = 12345) "to_jd (from_jd x) = x";; -test (from_mjd 0 = make 1858 11 17) "from_mjd 0 = 1858-11-17";; -test (to_mjd (from_mjd 12345) = 12345) "to_mjd (from_mjd x) = x";; -test (is_leap_day (make 2000 2 24)) "2000-2-24 leap day";; -test (not (is_leap_day (make 2000 2 25))) "2000-2-25 not leap day";; -test (is_gregorian (make 1600 1 1)) "1600-1-1 gregorian";; -test (not (is_gregorian (make 1400 1 1))) "1400-1-1 not gregorian";; -test (is_julian (make 1582 1 1)) "1582-1-1 julian";; -test (not (is_julian (make 1583 1 1))) "1583-1-1 not julian";; -test (int_of_day Mon = 1) "Monday = 1";; -test (int_of_day Sun = 7) "Sunday = 7";; -test (day_of_int 1 = Mon) "1 = Monday";; -test (day_of_int 7 = Sun) "1 = Monday";; -test (int_of_month Jan = 1) "January = 1";; -test (month_of_int 12 = Dec) "12 = December";; -test (not (is_leap_year 1999)) "1999 not leap year";; -test (not (is_leap_year 1800)) "1800 not leap year";; -test (is_leap_year 1996) "1996 leap year";; -test (is_leap_year 1600) "1600 leap year";; -test (same_calendar 1956 1900) "same calendar 1956 1900";; -test (same_calendar 2001 2013) "same calendar 2001 2013";; -test (same_calendar 1998 2009) "same calendar 1998 2009";; -test (same_calendar 2003 2025) "same calendar 2003 2025";; -test (days_in_year 2000 = 366) "days_in_year 2000";; -test (days_in_year 1900 = 365) "days_in_year 1900";; -test (days_in_year ~month:Jan 2000 = 31) "days_in_year Jan 2000";; -test (days_in_year ~month:Feb 2000 = 60) "days_in_year Feb 2000";; -test (days_in_year ~month:Jan 2000 = 31) "days_in_year Jan 2000";; -test (days_in_year ~month:Mar 1900 = 90) "days_in_year Mar 1900";; -test (weeks_in_year 2000 = 52) "weeks_in_year 2000";; -test (weeks_in_year 2020 = 53) "weeks_in_year 2020";; -test (weeks_in_year 1991 = 52) "weeks_in_year 1991";; -test (weeks_in_year 1999 = 52) "weeks_in_year 1999";; -test (days_in_month (make 2000 2 18) = 29) "days_in_month 2000-2-18";; -test (days_in_month (make_year_month 2000 2) = 29) "days_in_month 2000-2";; -(* untypable: *) -(* test (days_in_month ((make_year 2000 :> [ `Year | `Month ] Date.date)) = 29) "days_in_month 2000-2";; *) -test (days_in_year 1900 = 365) "days_in_year 1900";; -test (century 2000 = 20) "century 2000";; -test (century 2001 = 21) "century 2001";; -test (millenium 2000 = 2) "millenium 2000";; -test (millenium 2001 = 3) "millenium 2001";; -test (year (make_year_month 2000 3) = 2000) "year 2000-3";; -test (year (make_year 2000) = 2000) "year 2000";; -test (month (make 2000 4 23) = Apr) "year 2000-4-23";; -test (month (make_year_month 2000 3) = Mar) "year 2000-3";; -(* untypable: *) -(*test (month (make_year 2000) = Mar) "year 2000";;*) -test (easter 2003 = make 2003 4 20) "Paques 2003";; -test (Period.nb_days (Period.make 0 0 6) = 6) "Period.nb_days ok";; -test (Period.safe_nb_days (Period.week 3) = 21) "Period.safe_nb_days ok";; -test_exn (lazy (Period.nb_days (Period.make 1 0 0))) "Period.nb_days ko";; -test (week_first_last 21 2004 = (make 2004 5 17, make 2004 5 23)) - "week_beggining_end";; -test (Period.ymd (Period.make 1 2 3) = (1, 2, 3)) "Period.ymd";; -test (nth_weekday_of_month 2004 Oct Thu 4 = make 2004 10 28) - "nth_weekday_of_month";; -test (nth_weekday_of_month 2006 Mar Fri 3 = make 2006 3 17) - "nth_weekday_of_month";; -test (equal (from_day_of_year 2008 39) (make 2008 2 8)) - "from_day_of_year";; -test (is_valid_date 2008 2 8) "is_valid_date";; -test (not (is_valid_date 2008 2 30)) "not is_valid_date";; +let test() = + let test x s = Alcotest.(check bool) s true x in + + Gen_test.test_exn (lazy (make (-4713) 1 1)) "make (-4713) 1 1"; + Gen_test.test_exn (lazy (make 3268 1 23)) "make 3268 1 23"; + Gen_test.test_exn (lazy (make 1582 10 5)) "make 1582 10 10"; + test (compare (make 2003 2 29) (make 2003 3 1) = 0) "2003-2-29 = 2003-3-1"; + + test ((make 2018 10 29) > (make 2018 10 28)) "2018-10-29 > 2018-10-28"; + test ((make 2018 10 29) >= (make 2018 10 28)) "2018-10-29 >= 2018-10-28"; + test ((make 2018 10 29) >= (make 2018 10 29)) "2018-10-29 >= 2018-10-29"; + test ((make 2018 10 29) < (make 2018 10 30)) "2018-10-29 < 2018-10-30"; + test ((make 2018 10 29) <= (make 2018 10 30)) "2018-10-29 <= 2018-10-30"; + test ((make 2018 10 29) <= (make 2018 10 29)) "2018-10-29 <= 2018-10-29"; + + let d = make 2003 12 31 in + test (next d `Month = make 2004 1 31) "2003-12-31 + 1 mois"; + test (add d (Period.month 2) = make 2004 3 2) "2003-12-31 + 2 mois"; + test (add (make 2008 12 31) (Period.month 6) = make 2009 7 1) + "2008-12-31 + 6 mois"; + test (rem (make 2008 6 2) (Period.month 12) = make 2007 6 2) + "2008-6-2 - 12 mois"; + test (rem (make 2007 2 30) (Period.month 4) = make 2006 11 2) + "2008-2-30 - 4 mois"; + test (make 2007 (-38) 30 = make 2003 10 30) + "2007-(-38)-30 - 2003 10 30"; + test (rem (make 2007 2 30) (Period.month 40) = make 2003 11 2) + "2008-2-30 - 40 mois"; + let d2 = make (-3000) 1 1 in + test (rem d (sub d d2) = d2) "rem x (sub x y) = y"; + test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 2)) = (0, 4, 3)) + "precise_sub 2010-10-5 2010-6-2"; + test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 5)) = (0, 4, 0)) + "precise_sub 2010-10-5 2010-6-2"; + test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 6)) = (0, 3, 29)) + "precise_sub 2010-10-5 2010-6-6"; + test (Period.ymd (precise_sub (make 2010 10 5) (make 2010 6 4)) = (0, 4, 1)) + "precise_sub 2010-10-5 2010-6-4"; + test (Period.ymd (precise_sub (make 2010 1 1) (make 2000 1 1)) = (10, 0, 0)) + "precise_sub 2010-1-1 2000-1-1"; + test (from_jd 0 = make (-4712) 1 1) "from_jd 0 = 4713 BC-1-1"; + test (to_jd (from_jd 12345) = 12345) "to_jd (from_jd x) = x"; + test (from_mjd 0 = make 1858 11 17) "from_mjd 0 = 1858-11-17"; + test (to_mjd (from_mjd 12345) = 12345) "to_mjd (from_mjd x) = x"; + test (is_leap_day (make 2000 2 24)) "2000-2-24 leap day"; + test (not (is_leap_day (make 2000 2 25))) "2000-2-25 not leap day"; + test (is_gregorian (make 1600 1 1)) "1600-1-1 gregorian"; + test (not (is_gregorian (make 1400 1 1))) "1400-1-1 not gregorian"; + test (is_julian (make 1582 1 1)) "1582-1-1 julian"; + test (not (is_julian (make 1583 1 1))) "1583-1-1 not julian"; + test (int_of_day Mon = 1) "Monday = 1"; + test (int_of_day Sun = 7) "Sunday = 7"; + test (day_of_int 1 = Mon) "1 = Monday"; + test (day_of_int 7 = Sun) "1 = Monday"; + test (int_of_month Jan = 1) "January = 1"; + test (month_of_int 12 = Dec) "12 = December"; + test (not (is_leap_year 1999)) "1999 not leap year"; + test (not (is_leap_year 1800)) "1800 not leap year"; + test (is_leap_year 1996) "1996 leap year"; + test (is_leap_year 1600) "1600 leap year"; + test (same_calendar 1956 1900) "same calendar 1956 1900"; + test (same_calendar 2001 2013) "same calendar 2001 2013"; + test (same_calendar 1998 2009) "same calendar 1998 2009"; + test (same_calendar 2003 2025) "same calendar 2003 2025"; + test (days_in_year 2000 = 366) "days_in_year 2000"; + test (days_in_year 1900 = 365) "days_in_year 1900"; + test (days_in_year ~month:Jan 2000 = 31) "days_in_year Jan 2000"; + test (days_in_year ~month:Feb 2000 = 60) "days_in_year Feb 2000"; + test (days_in_year ~month:Jan 2000 = 31) "days_in_year Jan 2000"; + test (days_in_year ~month:Mar 1900 = 90) "days_in_year Mar 1900"; + test (weeks_in_year 2000 = 52) "weeks_in_year 2000"; + test (weeks_in_year 2020 = 53) "weeks_in_year 2020"; + test (weeks_in_year 1991 = 52) "weeks_in_year 1991"; + test (weeks_in_year 1999 = 52) "weeks_in_year 1999"; + test (days_in_month (make 2000 2 18) = 29) "days_in_month 2000-2-18"; + test (days_in_month (make_year_month 2000 2) = 29) "days_in_month 2000-2"; + (* untypable: *) + (* test (days_in_month ((make_year 2000 :> [ `Year | `Month ] Date.date)) = 29) "days_in_month 2000-2"; *) + test (days_in_year 1900 = 365) "days_in_year 1900"; + test (century 2000 = 20) "century 2000"; + test (century 2001 = 21) "century 2001"; + test (millenium 2000 = 2) "millenium 2000"; + test (millenium 2001 = 3) "millenium 2001"; + test (year (make_year_month 2000 3) = 2000) "year 2000-3"; + test (year (make_year 2000) = 2000) "year 2000"; + test (month (make 2000 4 23) = Apr) "year 2000-4-23"; + test (month (make_year_month 2000 3) = Mar) "year 2000-3"; + (* untypable: *) + (*test (month (make_year 2000) = Mar) "year 2000";*) + test (easter 2003 = make 2003 4 20) "Paques 2003"; + test (Period.nb_days (Period.make 0 0 6) = 6) "Period.nb_days ok"; + test (Period.safe_nb_days (Period.week 3) = 21) "Period.safe_nb_days ok"; + Gen_test.test_exn (lazy (Period.nb_days (Period.make 1 0 0))) "Period.nb_days ko"; + + test (week_first_last 21 2004 = (make 2004 5 17, make 2004 5 23)) + "week_beggining_end"; + + (* January 4th must be in the first week (ISO 8601) *) + (* 2015 is an interesting year in this regard as it tests this rule + to its extreme *) + test (week_first_last 1 2015 = (make 2014 12 29, make 2015 1 4)) + "iso_week_number_startof_2015"; + test (week_first_last 53 2015 = (make 2015 12 28, make 2016 1 3)) + "iso_week_number_endof_2015"; + + test (Period.ymd (Period.make 1 2 3) = (1, 2, 3)) "Period.ymd"; + test (nth_weekday_of_month 2004 Oct Thu 4 = make 2004 10 28) + "nth_weekday_of_month"; + test (nth_weekday_of_month 2006 Mar Fri 3 = make 2006 3 17) + "nth_weekday_of_month"; + test (equal (from_day_of_year 2008 39) (make 2008 2 8)) + "from_day_of_year"; + test (is_valid_date 2008 2 8) "is_valid_date"; + test (not (is_valid_date 2008 2 30)) "not is_valid_date"; -(* Unix *) -Time_Zone.change Time_Zone.UTC;; -test (to_unixfloat (make 1970 1 1) = 0.) "to_unixfloat 1 Jan 1970";; -test (from_unixfloat 0. = make 1970 1 1) "from_unixfloat 0.";; -test (to_unixfloat (make 2004 11 13) = 1100304000.) "to_unixfloat";; -test (from_unixfloat 1100304000. = make 2004 11 13) "from_unixfloat";; -test (from_unixtm (to_unixtm (make 2003 7 16)) = make 2003 7 16) - "from_unixtm to_unixtm = id";; -Time_Zone.change (Time_Zone.UTC_Plus (-1));; -test (from_unixfloat 0. = make 1969 12 31) "from_unixfloat 0. (dec-)";; -test (from_unixtm { Unix.tm_sec = 0; tm_min = 0; tm_hour = 0; tm_mday = 1; - tm_mon = 0; tm_year = 70; tm_wday = 4; tm_yday = 0; - tm_isdst = false } = make 1969 12 31) - "from_unixtm (dec-)";; -Time_Zone.change (Time_Zone.UTC_Plus 1);; -test (from_unixfloat 1100390390. = make 2004 11 14) "from_unixfloat (dec+)";; -test (from_unixtm { Unix.tm_sec = 0; tm_min = 0; tm_hour = 0; tm_mday = 14; - tm_mon = 10; tm_year = 104; tm_wday = 0; tm_yday = 318; - tm_isdst = false } = make 2004 11 14) - "from_unixtm (dec+)";; -test (from_unixtm (to_unixtm (make 2003 7 16)) = make 2003 7 16) - "from_unixtm to_unixtm = id";; + (* Unix *) + Time_Zone.change Time_Zone.UTC; + test (to_unixfloat (make 1970 1 1) = 0.) "to_unixfloat 1 Jan 1970"; + test (from_unixfloat 0. = make 1970 1 1) "from_unixfloat 0."; + test (to_unixfloat (make 2004 11 13) = 1100304000.) "to_unixfloat"; + test (from_unixfloat 1100304000. = make 2004 11 13) "from_unixfloat"; + test (from_unixtm (to_unixtm (make 2003 7 16)) = make 2003 7 16) + "from_unixtm to_unixtm = id"; + Time_Zone.change (Time_Zone.UTC_Plus (-1)); + test (from_unixfloat 0. = make 1969 12 31) "from_unixfloat 0. (dec-)"; + test (from_unixtm { Unix.tm_sec = 0; tm_min = 0; tm_hour = 0; tm_mday = 1; + tm_mon = 0; tm_year = 70; tm_wday = 4; tm_yday = 0; + tm_isdst = false } = make 1969 12 31) + "from_unixtm (dec-)"; + Time_Zone.change (Time_Zone.UTC_Plus 1); + test (from_unixfloat 1100390390. = make 2004 11 14) "from_unixfloat (dec+)"; + test (from_unixtm { Unix.tm_sec = 0; tm_min = 0; tm_hour = 0; tm_mday = 14; + tm_mon = 10; tm_year = 104; tm_wday = 0; tm_yday = 318; + tm_isdst = false } = make 2004 11 14) + "from_unixtm (dec+)"; + test (from_unixtm (to_unixtm (make 2003 7 16)) = make 2003 7 16) + "from_unixtm to_unixtm = id"; -(* to_business *) -test (to_business (make 2003 1 1) = (2003, 1, Wed)) "to_business 1";; -test (to_business (make 2003 12 31) = (2004, 1, Wed)) "to_business 2";; -test (to_business (make 2002 12 31) = (2003, 1, Tue)) "to_business 3";; -test (to_business (make 2005 1 1) = (2004, 53, Sat)) "to_business 4";; -test (to_business (make 2004 12 31) = (2004, 53, Fri)) "to_business 5";; -test (to_business (make 2006 1 1) = (2005, 52, Sun)) "to_business 6";; -test (to_business (make 2005 1 17) = (2005, 3, Mon)) "to_business 7";; -test (to_business (make 2006 1 31) = (2006, 5, Tue)) "to_business 8";; -test (to_business (make 2005 1 31) = (2005, 5, Mon)) "to_business 9";; -(* from_business *) -test (from_business 2003 1 Wed = make 2003 1 1) "from_business 1";; -test (from_business 2004 1 Wed = make 2003 12 31) "from_business 2";; -test (from_business 2003 1 Tue = make 2002 12 31) "from_business 3";; -test (from_business 2004 53 Sat = make 2005 1 1) "from_business 4";; -test (from_business 2004 53 Fri = make 2004 12 31) "from_business 5";; -test (from_business 2005 52 Sun = make 2006 1 1) "from_business 6";; -test (from_business 2005 3 Mon = make 2005 1 17) "from_business 7";; -test (from_business 2006 5 Tue = make 2006 1 31) "from_business 8";; -test (from_business 2005 5 Mon = make 2005 1 31) "from_business 9";; -test_exn (lazy (from_business 2005 0 Sun)) "from_business_bad 1";; -test_exn (lazy (from_business 2005 53 Sun)) "from_business_bad 2";; + (* to_business *) + test (to_business (make 2003 1 1) = (2003, 1, Wed)) "to_business 1"; + test (to_business (make 2003 12 31) = (2004, 1, Wed)) "to_business 2"; + test (to_business (make 2002 12 31) = (2003, 1, Tue)) "to_business 3"; + test (to_business (make 2005 1 1) = (2004, 53, Sat)) "to_business 4"; + test (to_business (make 2004 12 31) = (2004, 53, Fri)) "to_business 5"; + test (to_business (make 2006 1 1) = (2005, 52, Sun)) "to_business 6"; + test (to_business (make 2005 1 17) = (2005, 3, Mon)) "to_business 7"; + test (to_business (make 2006 1 31) = (2006, 5, Tue)) "to_business 8"; + test (to_business (make 2005 1 31) = (2005, 5, Mon)) "to_business 9"; + (* from_business *) + test (from_business 2003 1 Wed = make 2003 1 1) "from_business 1"; + test (from_business 2004 1 Wed = make 2003 12 31) "from_business 2"; + test (from_business 2003 1 Tue = make 2002 12 31) "from_business 3"; + test (from_business 2004 53 Sat = make 2005 1 1) "from_business 4"; + test (from_business 2004 53 Fri = make 2004 12 31) "from_business 5"; + test (from_business 2005 52 Sun = make 2006 1 1) "from_business 6"; + test (from_business 2005 3 Mon = make 2005 1 17) "from_business 7"; + test (from_business 2006 5 Tue = make 2006 1 31) "from_business 8"; + test (from_business 2005 5 Mon = make 2005 1 31) "from_business 9"; + Gen_test.test_exn (lazy (from_business 2005 0 Sun)) "from_business_bad 1"; + Gen_test.test_exn (lazy (from_business 2005 53 Sun)) "from_business_bad 2"; + () -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; +let suite = ["test_date", `Quick, test] diff --git a/tests/test_fcalendar.ml b/tests/test_fcalendar.ml index b6f4afc..88e13dd 100644 --- a/tests/test_fcalendar.ml +++ b/tests/test_fcalendar.ml @@ -20,9 +20,7 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_fcalendar.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of Fcalendar:\n";; +(*i $Id$ i*) open CalendarLib;; open Fcalendar;; diff --git a/tests/test_fpcalendar.ml b/tests/test_fpcalendar.ml index e1299e1..b21e0d0 100644 --- a/tests/test_fpcalendar.ml +++ b/tests/test_fpcalendar.ml @@ -20,153 +20,151 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_fpcalendar.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of FPcalendar:\n";; +(*i $Id$ i*) open CalendarLib;; open Fcalendar.Precise;; -include Gen_test;; -reset ();; - -let eps = 0.000001;; - -Time_Zone.change Time_Zone.UTC;; - -(* Fcalendar *) - -test_exn (lazy (make (-4712) 1 1 12 0 (-1.))) "-4713-12-31-23-59-59";; -test (make (-4712) 1 1 12 0 0. = make (-4712) 1 0 36 0 0.) "calendar coercion";; -test (from_jd 0. = make (-4712) 1 1 12 0 0.) "from_jd 0 = 4713 BC-1-1";; -test (from_mjd 0. = make 1858 11 17 0 0 0.) "from_mjd 0 = 1858-11-17";; - -Time_Zone.change (Time_Zone.UTC_Plus 5);; - -test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) - "to_jd (from_jd x) = x";; -test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) - "to_mjd (from_mjd x) = x";; -test (Period.to_date (Period.hour 60) = Date.Period.day 2) - "period(60h) = period(2d)";; -test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <";; -test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >";; -test (Period.compare - (Period.add (Period.day 2) (Period.hour 12)) - (Period.hour 60) = 0) "Period.compare =";; -test - (add (make 1 2 3 4 5 6.) (Period.make 9 8 7 6 5 4.5) = - make 10 10 10 10 10 10.5) - "add 1-2-3-4-5-6 9-8-7-6-5-4.5";; -test - (add (make 3 1 1 0 0 0.7) (Period.make 0 0 0 (-25) 0 (-1.3)) = - make 2 12 30 22 59 59.4) - "add 3-1-1-0-0-0.7 0-0-0-(-25)-0-(-1.3)";; - -test - (equal (rem (make 9 8 7 6 5 4.9) (Period.make 1 2 3 4 5 6.4)) - (make 8 6 4 1 59 58.5)) - "rem 9-8-7-6-5-4 1-2-3-4-5-6";; - -test (Period.equal - (sub (make 0 0 7 6 5 4.) (make 0 0 3 54 5 6.)) - (Period.make 0 0 1 23 59 58.)) - "sub 0-0-7-6-5-4 0-0-3-54-5-6";; - -test (Period.equal - (Period.opp (Period.make 0 0 2 3 0 0.)) - (Period.make 0 0 (-2) (-3) 0 0.)) - "period opp";; - -(* Date *) - -let d = make 2003 12 31 12 24 48.;; -test (next d `Month = make 2004 1 31 12 24 48.) "2003-12-31 + 1 mois";; -test (add d (Period.month 2) = make 2004 3 2 12 24 48.) "2003-12-31 + 2 mois";; -let d3 = make 2011 3 24 0 0 0.;; -test (prev d3 `Year = make 2010 3 24 0 0 0.) "2011-3-24 - 1 year";; -let d2 = make (-3000) 1 1 6 12 24.5;; -test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y";; -test (is_leap_day (make 2000 2 24 0 0 0.)) "2000-2-24 leap day";; -test (not (is_leap_day (make 2000 2 25 0 0 0.))) "2000-2-25 not leap day";; -test (is_gregorian (make 1600 1 1 0 0 0.4)) "1600-1-1 gregorian";; -test (not (is_gregorian (make 1400 1 1 0 0 0.1))) "1400-1-1 not gregorian";; -test (is_julian (make 1582 1 1 0 0 0.1)) "1582-1-1 julian";; -test (not (is_julian (make 1583 1 1 0 0 0.9832))) "1583-1-1 not julian";; - -(* Time *) - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC";; - -Time_Zone.change (Time_Zone.UTC_Plus 10);; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant +10";; - -test (equal (add (make 0 0 0 10 0 0.1) (Period.hour 30)) (make 0 0 1 16 0 0.1)) - "add 0-0-0-20-0-0 30h";; -test (equal - (next (make 1999 12 31 23 59 59.43) `Second) - (make 2000 1 1 0 0 0.43)) - "next 1999-31-12-23-59-59 `Second";; -let n = now ();; -test (equal (prev (next n `Minute) `Minute) n) "prev next = id";; -test (equal - (convert - (make 0 0 0 23 0 0.1234) - (Time_Zone.UTC_Plus 2) - (Time_Zone.UTC_Plus 4)) - (make 0 0 1 1 0 0.1234)) "convert";; - -test (hour (make 0 0 0 20 0 0.) = 20) "hour";; -test (minute (make 0 0 0 20 10 0.2) = 10) "minute";; -test (Utils.Float.equal (second (make 0 0 0 20 10 5.123)) 5.123) "second";; - -test (is_pm (make 0 0 0 10 0 0.1)) "is_pm 10-0-0";; -test (is_pm (make 0 0 0 34 0 0.)) "is_pm 34-0-0";; -test (not (is_pm (make 0 0 0 (- 10) 0 0.))) "not (is_pm (- 10) 0 0)";; -test (is_am (make 0 0 0 20 0 0.)) "is_am 20-0-0";; -test (is_am (make 0 0 0 (- 34) 0 0.)) "is_am (- 34) 0 0";; -test (not (is_am (make 0 0 0 34 0 0.))) "not (is_pm 34 0 0)";; - -Time_Zone.change Time_Zone.UTC;; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC2";; - -test (to_unixfloat (make 1970 1 1 0 0 0.) = 0.) "to_unixfloat 1 Jan 1970";; -test (from_unixfloat 0. = make 1970 1 1 0 0 0.) "from_unixfloat 1 Jan 1970";; -test (floor (to_unixfloat (make 2004 11 13 19 17 10.)) = 1100373429.) - "to_unixfloat";; -test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 09.)) - "from_unixfloat";; - -test (equal - (from_unixtm (to_unixtm (make 2003 7 16 23 22 21.))) - (make 2003 7 16 23 22 21.)) - "from_unixtm to_unixtm = id";; - -test (Period.safe_to_time (Period.second 30.12) = Time.Period.second 30.12) - "Period.safe_to_time second";; -test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400.) - "Period.safe_to_time day";; -test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year";; -test (Period.ymds (Period.make 1 2 3 1 2 3.1) = (1, 2, 3, 3723.1)) - "Period.ymds";; -test - (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3.)) = (-1,-2,-4,82677.)) - "Period.ymds neg";; - -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; + + +let test () = + let test x s = Alcotest.(check bool) s true x in + + let eps = 0.000001 in + + Time_Zone.change Time_Zone.UTC; + + (* Fcalendar *) + + Gen_test.test_exn (lazy (make (-4712) 1 1 12 0 (-1.))) "-4713-12-31-23-59-59"; + test (make (-4712) 1 1 12 0 0. = make (-4712) 1 0 36 0 0.) "calendar coercion"; + test (from_jd 0. = make (-4712) 1 1 12 0 0.) "from_jd 0 = 4713 BC-1-1"; + test (from_mjd 0. = make 1858 11 17 0 0 0.) "from_mjd 0 = 1858-11-17"; + + Time_Zone.change (Time_Zone.UTC_Plus 5); + + test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) + "to_jd (from_jd x) = x"; + test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) + "to_mjd (from_mjd x) = x"; + test (Period.to_date (Period.hour 60) = Date.Period.day 2) + "period(60h) = period(2d)"; + test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <"; + test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >"; + test (Period.compare + (Period.add (Period.day 2) (Period.hour 12)) + (Period.hour 60) = 0) "Period.compare ="; + test + (add (make 1 2 3 4 5 6.) (Period.make 9 8 7 6 5 4.5) = + make 10 10 10 10 10 10.5) + "add 1-2-3-4-5-6 9-8-7-6-5-4.5"; + test + (add (make 3 1 1 0 0 0.7) (Period.make 0 0 0 (-25) 0 (-1.3)) = + make 2 12 30 22 59 59.4) + "add 3-1-1-0-0-0.7 0-0-0-(-25)-0-(-1.3)"; + + test + (equal (rem (make 9 8 7 6 5 4.9) (Period.make 1 2 3 4 5 6.4)) + (make 8 6 4 1 59 58.5)) + "rem 9-8-7-6-5-4 1-2-3-4-5-6"; + + test (Period.equal + (sub (make 0 0 7 6 5 4.) (make 0 0 3 54 5 6.)) + (Period.make 0 0 1 23 59 58.)) + "sub 0-0-7-6-5-4 0-0-3-54-5-6"; + + test (Period.equal + (Period.opp (Period.make 0 0 2 3 0 0.)) + (Period.make 0 0 (-2) (-3) 0 0.)) + "period opp"; + + (* Date *) + + let d = make 2003 12 31 12 24 48. in + test (next d `Month = make 2004 1 31 12 24 48.) "2003-12-31 + 1 mois"; + test (add d (Period.month 2) = make 2004 3 2 12 24 48.) "2003-12-31 + 2 mois"; + let d3 = make 2011 3 24 0 0 0. in + test (prev d3 `Year = make 2010 3 24 0 0 0.) "2011-3-24 - 1 year"; + let d2 = make (-3000) 1 1 6 12 24.5 in + test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y"; + test (is_leap_day (make 2000 2 24 0 0 0.)) "2000-2-24 leap day"; + test (not (is_leap_day (make 2000 2 25 0 0 0.))) "2000-2-25 not leap day"; + test (is_gregorian (make 1600 1 1 0 0 0.4)) "1600-1-1 gregorian"; + test (not (is_gregorian (make 1400 1 1 0 0 0.1))) "1400-1-1 not gregorian"; + test (is_julian (make 1582 1 1 0 0 0.1)) "1582-1-1 julian"; + test (not (is_julian (make 1583 1 1 0 0 0.9832))) "1583-1-1 not julian"; + + (* Time *) + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC"; + + Time_Zone.change (Time_Zone.UTC_Plus 10); + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant +10"; + + test (equal (add (make 0 0 0 10 0 0.1) (Period.hour 30)) (make 0 0 1 16 0 0.1)) + "add 0-0-0-20-0-0 30h"; + test (equal + (next (make 1999 12 31 23 59 59.43) `Second) + (make 2000 1 1 0 0 0.43)) + "next 1999-31-12-23-59-59 `Second"; + let n = now () in + test (equal (prev (next n `Minute) `Minute) n) "prev next = id"; + test (equal + (convert + (make 0 0 0 23 0 0.1234) + (Time_Zone.UTC_Plus 2) + (Time_Zone.UTC_Plus 4)) + (make 0 0 1 1 0 0.1234)) "convert"; + + test (hour (make 0 0 0 20 0 0.) = 20) "hour"; + test (minute (make 0 0 0 20 10 0.2) = 10) "minute"; + test (Utils.Float.equal (second (make 0 0 0 20 10 5.123)) 5.123) "second"; + + test (is_pm (make 0 0 0 10 0 0.1)) "is_pm 10-0-0"; + test (is_pm (make 0 0 0 34 0 0.)) "is_pm 34-0-0"; + test (not (is_pm (make 0 0 0 (- 10) 0 0.))) "not (is_pm (- 10) 0 0)"; + test (is_am (make 0 0 0 20 0 0.)) "is_am 20-0-0"; + test (is_am (make 0 0 0 (- 34) 0 0.)) "is_am (- 34) 0 0"; + test (not (is_am (make 0 0 0 34 0 0.))) "not (is_pm 34 0 0)"; + + Time_Zone.change Time_Zone.UTC; + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC2"; + + test (to_unixfloat (make 1970 1 1 0 0 0.) = 0.) "to_unixfloat 1 Jan 1970"; + test (from_unixfloat 0. = make 1970 1 1 0 0 0.) "from_unixfloat 1 Jan 1970"; + test (floor (to_unixfloat (make 2004 11 13 19 17 10.)) = 1100373429.) + "to_unixfloat"; + test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 09.)) + "from_unixfloat"; + + test (equal + (from_unixtm (to_unixtm (make 2003 7 16 23 22 21.))) + (make 2003 7 16 23 22 21.)) + "from_unixtm to_unixtm = id"; + + test (Period.safe_to_time (Period.second 30.12) = Time.Period.second 30.12) + "Period.safe_to_time second"; + test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400.) + "Period.safe_to_time day"; + Gen_test.test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year"; + test (Period.ymds (Period.make 1 2 3 1 2 3.1) = (1, 2, 3, 3723.1)) + "Period.ymds"; + test + (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3.)) = (-1,-2,-4,82677.)) + "Period.ymds neg"; + () + +let suite = ["fpcalendar", `Quick, test] diff --git a/tests/test_ftime.ml b/tests/test_ftime.ml index 9e6d4ae..5d68c76 100644 --- a/tests/test_ftime.ml +++ b/tests/test_ftime.ml @@ -20,65 +20,75 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_ftime.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of Ftime:\n";; +(*i $Id$ i*) open CalendarLib open Ftime;; -include Gen_test;; -reset ();; -Time_Zone.change (Time_Zone.UTC_Plus 10);; +let test x s = Alcotest.(check bool) s true x +let test_f x y s = Alcotest.(check @@ testable Fmt.float Utils.Float.equal) s x y + +let test1 () = + Time_Zone.change (Time_Zone.UTC_Plus 10); -(* Some [=] are used which should be replaced by [equal]. *) + (* Some [=] are used which should be replaced by [equal]. *) -test (make 30 60 80.5 = make 31 1 20.5) "30-60-80.5 = 31-1-20.5";; -test (normalize (make 22 0 0.1) = (make 22 0 0.1, 0)) "normalize 22-0-0.1";; -test (normalize (make 73 0 0.) = (make 1 0 0., 3)) "normalize 73-0-0";; -test (normalize (make (-73) 0 0.) = (make 23 0 0., -4)) "normalize (-73)-0-0";; -test (add (make 20 0 0.2) (Period.minute 70) = make 21 10 0.2) - "add 20-0-0.2 70mn";; -test (next (make 20 3 31.) `Minute = make 20 4 31.) "next 20-3-31 `Minute"; -test (prev (make 20 3 31.34) `Second = make 20 3 30.34) - "prev 20-3-31.34 `Second";; -test (Period.equal (sub (make 6 5 4.) (make 4 5 6.1)) (Period.make 1 59 57.9)) - "sub 6-5-4. 4-5-6.1";; -test (convert (make 20 0 0.123) (Time_Zone.UTC_Plus 2) (Time_Zone.UTC_Plus 4) = - make 22 0 0.123) "convert";; -test (to_gmt (make 20 0 0.) = make 10 0 0.) "to_gmt";; -test (from_gmt (make 20 0 0.) = make 30 0 0.) "from_gmt";; -test (midnight () = make 0 0 0.) "midnight";; -test (midday () = make 12 0 0.) "midday";; -test (hour (make 20 0 59.99) = 20) "hour";; -test (minute (make 20 10 0.) = 10) "minute";; -test (second (make 20 10 5.) = 5.) "second";; + test (make 30 60 80.5 = make 31 1 20.5) "30-60-80.5 = 31-1-20.5"; + test (normalize (make 22 0 0.1) = (make 22 0 0.1, 0)) "normalize 22-0-0.1"; + test (normalize (make 73 0 0.) = (make 1 0 0., 3)) "normalize 73-0-0"; + test (normalize (make (-73) 0 0.) = (make 23 0 0., -4)) "normalize (-73)-0-0"; + test (add (make 20 0 0.2) (Period.minute 70) = make 21 10 0.2) + "add 20-0-0.2 70mn"; + test (next (make 20 3 31.) `Minute = make 20 4 31.) "next 20-3-31 `Minute"; + test (prev (make 20 3 31.34) `Second = make 20 3 30.34) + "prev 20-3-31.34 `Second"; + test (Period.equal (sub (make 6 5 4.) (make 4 5 6.1)) (Period.make 1 59 57.9)) + "sub 6-5-4. 4-5-6.1"; + test (convert (make 20 0 0.123) (Time_Zone.UTC_Plus 2) (Time_Zone.UTC_Plus 4) = + make 22 0 0.123) "convert"; + test (to_gmt (make 20 0 0.) = make 10 0 0.) "to_gmt"; + test (from_gmt (make 20 0 0.) = make 30 0 0.) "from_gmt"; + test (midnight () = make 0 0 0.) "midnight"; + test (midday () = make 12 0 0.) "midday"; + test (hour (make 20 0 59.99) = 20) "hour"; + test (minute (make 20 10 0.) = 10) "minute"; + test (second (make 20 10 5.) = 5.) "second"; + () -let one_two_three = make 1 2 3.;; -test (to_seconds one_two_three = 3723.) "to_seconds";; -test (to_minutes one_two_three = 62.05) "to_minutes";; -test (Utils.Float.equal (to_hours (make 1 3 0.4)) 1.050111) "to_hours";; -test (equal (from_seconds 3723.2) (from_minutes 62.053333333)) - "from_seconds; from_minutes";; -test (from_hours 1.05 = make 1 3 0.) "from_hours";; -test (is_pm (midnight ())) "is_pm midnight";; -test (is_pm (make 10 0 0.)) "is_pm 10-0-0";; -test (is_pm (make 34 0 0.)) "is_pm 34-0-0";; -test (not (is_pm (make (- 10) 0 0.))) "not (is_pm (- 10) 0 0)";; -test (is_am (midday ())) "is_am midday";; -test (is_am (make 20 0 0.)) "is_am 20-0-0";; -test (is_am (make (- 34) 0 0.)) "is_am (- 34) 0 0";; -test (not (is_am (make 34 0 0.))) "not (is_pm 34 0 0)";; +let test2() = + Time_Zone.change (Time_Zone.UTC_Plus 10); + Utils.Float.set_precision 1e-6; + let one_two_three = make 1 2 3. in + test (to_seconds one_two_three = 3723.) "to_seconds"; + test (to_minutes one_two_three = 62.05) "to_minutes"; + test_f (to_hours (make 1 3 0.4)) 1.050111 "to_hours"; + test (equal (from_seconds 3723.2) (from_minutes 62.053333333)) + "from_seconds; from_minutes"; + test (from_hours 1.05 = make 1 3 0.) "from_hours"; + test (is_pm (midnight ())) "is_pm midnight"; + test (is_pm (make 10 0 0.)) "is_pm 10-0-0"; + test (is_pm (make 34 0 0.)) "is_pm 34-0-0"; + test (not (is_pm (make (- 10) 0 0.))) "not (is_pm (- 10) 0 0)"; + test (is_am (midday ())) "is_am midday"; + test (is_am (make 20 0 0.)) "is_am 20-0-0"; + test (is_am (make (- 34) 0 0.)) "is_am (- 34) 0 0"; + test (not (is_am (make 34 0 0.))) "not (is_pm 34 0 0)"; + () -let one_two_three = Period.make 1 2 3.;; -test (Utils.Float.equal (Period.to_seconds one_two_three) 3723.) - "Period.to_seconds";; -test (Utils.Float.equal (Period.to_minutes one_two_three) 62.05) - "Period.to_minutes";; -test (Utils.Float.equal (Period.to_hours (Period.make 1 3 0.1)) 1.050028) - "Period.to_hours";; +let test3() = + Time_Zone.change (Time_Zone.UTC_Plus 10); + Utils.Float.set_precision 1e-6; + let one_two_three = Period.make 1 2 3. in + test_f (Period.to_seconds one_two_three) 3723. + "Period.to_seconds"; + test_f (Period.to_minutes one_two_three) 62.05 + "Period.to_minutes"; + test_f (Period.to_hours (Period.make 1 3 0.1)) 1.050028 + "Period.to_hours"; + () -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; +let suite = [ + "ftime1", `Quick, test1; + "ftime2", `Quick, test2; + "ftime3", `Quick, test3; +] diff --git a/tests/test_pcalendar.ml b/tests/test_pcalendar.ml index 304bf92..e5c8224 100644 --- a/tests/test_pcalendar.ml +++ b/tests/test_pcalendar.ml @@ -20,148 +20,145 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_pcalendar.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of Precise Calendar:\n";; +(*i $Id$ i*) open CalendarLib;; open Calendar.Precise;; -include Gen_test;; -reset ();; - -let eps = 0.000001;; - -Time_Zone.change Time_Zone.UTC;; - -(* Calendar *) - -test_exn (lazy (make (-4712) 1 1 12 0 (-1))) "-4713-12-31-23-59-59";; -test (make (-4712) 1 1 12 0 0 = make (-4712) 1 0 36 0 0) "calendar coercion";; -test (from_jd 0. = make (-4712) 1 1 12 0 0) "from_jd 0 = 4713 BC-1-1";; -test (from_mjd 0. = make 1858 11 17 0 0 0) "from_mjd 0 = 1858-11-17";; - -Time_Zone.change (Time_Zone.UTC_Plus 5);; - -test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) - "to_jd (from_jd x) = x";; -test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) - "to_mjd (from_mjd x) = x";; -test (Period.to_date (Period.hour 60) = Date.Period.day 2) - "period(60h) = period(2d)";; -test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <";; -test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >";; -test (Period.compare - (Period.add (Period.day 2) (Period.hour 12)) - (Period.hour 60) = 0) "Period.compare =";; - -test - (add (make 1 2 3 4 5 6) (Period.make 9 8 7 6 5 4) = make 10 10 10 10 10 10) - "add 1-2-3-4-5-6 9-8-7-6-5-4";; -test - (add (make 3 1 1 0 0 0) (Period.make 0 0 0 (-25) 0 (-1)) = - make 2 12 30 22 59 59) - "add 3-1-1-0-0-0 0-0-0-(-25)-0-(-1)";; - -test - (equal (rem (make 9 8 7 6 5 4) (Period.make 1 2 3 4 5 6)) - (make 8 6 4 1 59 58)) - "rem 9-8-7-6-5-4 1-2-3-4-5-6";; -test (sub (make 0 0 7 6 5 4) (make 0 0 3 54 5 6) = Period.make 0 0 1 23 59 58) - "sub 0-0-7-6-5-4 0-0-3-54-5-6";; - -test (Period.equal - (Period.opp (Period.make 0 0 2 3 0 0)) - (Period.make 0 0 (-2) (-3) 0 0)) - "period opp";; - -(* Date *) - -let d = make 2003 12 31 12 24 48;; -test (next d `Month = make 2004 1 31 12 24 48) "2003-12-31 + 1 mois";; -test (add d (Period.month 2) = make 2004 3 2 12 24 48) "2003-12-31 + 2 mois";; -let d3 = make 2011 3 24 0 0 0;; -test (prev d3 `Year = make 2010 3 24 0 0 0) "2011-3-24 - 1 year";; -let d2 = make (-3000) 1 1 6 12 24;; -test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y";; -test (is_leap_day (make 2000 2 24 0 0 0)) "2000-2-24 leap day";; -test (not (is_leap_day (make 2000 2 25 0 0 0))) "2000-2-25 not leap day";; -test (is_gregorian (make 1600 1 1 0 0 0)) "1600-1-1 gregorian";; -test (not (is_gregorian (make 1400 1 1 0 0 0))) "1400-1-1 not gregorian";; -test (is_julian (make 1582 1 1 0 0 0)) "1582-1-1 julian";; -test (not (is_julian (make 1583 1 1 0 0 0))) "1583-1-1 not julian";; - -(* Time *) - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC";; - -Time_Zone.change (Time_Zone.UTC_Plus 10);; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant +10";; - -test (equal (add (make 0 0 0 10 0 0) (Period.hour 30)) (make 0 0 1 16 0 0)) - "add 0-0-0-20-0-0 30h";; -test (equal (next (make 1999 12 31 23 59 59) `Second) (make 2000 1 1 0 0 0)) - "next 1999-31-12-23-59-59 `Second";; -let n = now ();; -test (equal (prev (next n `Minute) `Minute) n) "prev next = id";; - -test (equal - (convert - (make 0 0 0 23 0 0) - (Time_Zone.UTC_Plus 2) - (Time_Zone.UTC_Plus 4)) - (make 0 0 1 1 0 0)) "convert";; -test (hour (make 0 0 0 20 0 0) = 20) "hour";; -test (minute (make 0 0 0 20 10 0) = 10) "minute";; -test (second (make 0 0 0 20 10 5) = 5) "second";; -test (is_pm (make 0 0 0 10 0 0)) "is_pm 10-0-0";; -test (is_pm (make 0 0 0 34 0 0)) "is_pm 34-0-0";; -test (not (is_pm (make 0 0 0 (- 10) 0 0))) "not (is_pm (- 10) 0 0)";; -test (is_am (make 0 0 0 20 0 0)) "is_am 20-0-0";; -test (is_am (make 0 0 0 (- 34) 0 0)) "is_am (- 34) 0 0";; -test (not (is_am (make 0 0 0 34 0 0))) "not (is_pm 34 0 0)";; - -Time_Zone.change Time_Zone.UTC;; - -test (let n = Unix.gmtime (Unix.time ()) in - hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2";; -test (let n = Unix.time () in - hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) - "from_unixfloat invariant UTC2";; - -test (to_unixfloat (make 1970 1 1 0 0 0) = 0.) "to_unixfloat 1 Jan 1970";; -test (from_unixfloat 0. = make 1970 1 1 0 0 0) "from_unixfloat 1 Jan 1970";; -test (Utils.Float.equal (to_unixfloat (make 2004 11 13 19 17 9)) 1100373429.) - "to_unixfloat";; -test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 9)) - "from_unixfloat";; -test (from_unixtm (to_unixtm (make 2003 7 16 23 22 21)) = - make 2003 7 16 23 22 21) - "from_unixtm to_unixtm = id";; - -test (Period.to_time (Period.second 30) = Time.Period.second 30) - "Period.to_time second";; -test (Period.safe_to_time (Period.second 30) = Time.Period.second 30) - "Period.safe_to_time second";; -test (Period.to_time (Period.day 6) = Time.Period.second 518400) - "Period.to_time day";; -test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400) - "Period.safe_to_time day";; -test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year";; -test (Period.ymds (Period.make 1 2 3 1 2 3) = (1, 2, 3, 3723)) "Period.ymds";; -test - (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3)) = (-1,-2,-4,82677)) - "Period.ymds neg";; - -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; + +let test() = + let test x s = Alcotest.(check bool) s true x in + + let eps = 0.000001 in + + Time_Zone.change Time_Zone.UTC; + + (* Calendar *) + + Gen_test.test_exn (lazy (make (-4712) 1 1 12 0 (-1))) "-4713-12-31-23-59-59"; + test (make (-4712) 1 1 12 0 0 = make (-4712) 1 0 36 0 0) "calendar coercion"; + test (from_jd 0. = make (-4712) 1 1 12 0 0) "from_jd 0 = 4713 BC-1-1"; + test (from_mjd 0. = make 1858 11 17 0 0 0) "from_mjd 0 = 1858-11-17"; + + Time_Zone.change (Time_Zone.UTC_Plus 5); + + test (abs_float (to_jd (from_jd 12345.6789) -. 12345.6789) < eps) + "to_jd (from_jd x) = x"; + test (abs_float (to_mjd (from_mjd 12345.6789) -. 12345.6789) < eps) + "to_mjd (from_mjd x) = x"; + test (Period.to_date (Period.hour 60) = Date.Period.day 2) + "period(60h) = period(2d)"; + test (Period.compare (Period.day 2) (Period.hour 60) < 0) "Period.compare <"; + test (Period.compare (Period.day 3) (Period.hour 60) > 0) "Period.compare >"; + test (Period.compare + (Period.add (Period.day 2) (Period.hour 12)) + (Period.hour 60) = 0) "Period.compare ="; + + test + (add (make 1 2 3 4 5 6) (Period.make 9 8 7 6 5 4) = make 10 10 10 10 10 10) + "add 1-2-3-4-5-6 9-8-7-6-5-4"; + test + (add (make 3 1 1 0 0 0) (Period.make 0 0 0 (-25) 0 (-1)) = + make 2 12 30 22 59 59) + "add 3-1-1-0-0-0 0-0-0-(-25)-0-(-1)"; + + test + (equal (rem (make 9 8 7 6 5 4) (Period.make 1 2 3 4 5 6)) + (make 8 6 4 1 59 58)) + "rem 9-8-7-6-5-4 1-2-3-4-5-6"; + test (sub (make 0 0 7 6 5 4) (make 0 0 3 54 5 6) = Period.make 0 0 1 23 59 58) + "sub 0-0-7-6-5-4 0-0-3-54-5-6"; + + test (Period.equal + (Period.opp (Period.make 0 0 2 3 0 0)) + (Period.make 0 0 (-2) (-3) 0 0)) + "period opp"; + + (* Date *) + + let d = make 2003 12 31 12 24 48 in + test (next d `Month = make 2004 1 31 12 24 48) "2003-12-31 + 1 mois"; + test (add d (Period.month 2) = make 2004 3 2 12 24 48) "2003-12-31 + 2 mois"; + let d3 = make 2011 3 24 0 0 0 in + test (prev d3 `Year = make 2010 3 24 0 0 0) "2011-3-24 - 1 year"; + let d2 = make (-3000) 1 1 6 12 24 in + test (equal (rem d (sub d d2)) d2) "rem x (sub x y) = y"; + test (is_leap_day (make 2000 2 24 0 0 0)) "2000-2-24 leap day"; + test (not (is_leap_day (make 2000 2 25 0 0 0))) "2000-2-25 not leap day"; + test (is_gregorian (make 1600 1 1 0 0 0)) "1600-1-1 gregorian"; + test (not (is_gregorian (make 1400 1 1 0 0 0))) "1400-1-1 not gregorian"; + test (is_julian (make 1582 1 1 0 0 0)) "1582-1-1 julian"; + test (not (is_julian (make 1583 1 1 0 0 0))) "1583-1-1 not julian"; + + (* Time *) + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC"; + + Time_Zone.change (Time_Zone.UTC_Plus 10); + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant +10"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant +10"; + + test (equal (add (make 0 0 0 10 0 0) (Period.hour 30)) (make 0 0 1 16 0 0)) + "add 0-0-0-20-0-0 30h"; + test (equal (next (make 1999 12 31 23 59 59) `Second) (make 2000 1 1 0 0 0)) + "next 1999-31-12-23-59-59 `Second"; + let n = now () in + test (equal (prev (next n `Minute) `Minute) n) "prev next = id"; + + test (equal + (convert + (make 0 0 0 23 0 0) + (Time_Zone.UTC_Plus 2) + (Time_Zone.UTC_Plus 4)) + (make 0 0 1 1 0 0)) "convert"; + test (hour (make 0 0 0 20 0 0) = 20) "hour"; + test (minute (make 0 0 0 20 10 0) = 10) "minute"; + test (second (make 0 0 0 20 10 5) = 5) "second"; + test (is_pm (make 0 0 0 10 0 0)) "is_pm 10-0-0"; + test (is_pm (make 0 0 0 34 0 0)) "is_pm 34-0-0"; + test (not (is_pm (make 0 0 0 (- 10) 0 0))) "not (is_pm (- 10) 0 0)"; + test (is_am (make 0 0 0 20 0 0)) "is_am 20-0-0"; + test (is_am (make 0 0 0 (- 34) 0 0)) "is_am (- 34) 0 0"; + test (not (is_am (make 0 0 0 34 0 0))) "not (is_pm 34 0 0)"; + + Time_Zone.change Time_Zone.UTC; + + test (let n = Unix.gmtime (Unix.time ()) in + hour (from_unixtm n) = n.Unix.tm_hour) "from_unixtm invariant UTC2"; + test (let n = Unix.time () in + hour (from_unixfloat n) = (Unix.gmtime n).Unix.tm_hour) + "from_unixfloat invariant UTC2"; + + test (to_unixfloat (make 1970 1 1 0 0 0) = 0.) "to_unixfloat 1 Jan 1970"; + test (from_unixfloat 0. = make 1970 1 1 0 0 0) "from_unixfloat 1 Jan 1970"; + test (Utils.Float.equal (to_unixfloat (make 2004 11 13 19 17 9)) 1100373429.) + "to_unixfloat"; + test (equal (from_unixfloat 1100373429.) (make 2004 11 13 19 17 9)) + "from_unixfloat"; + test (from_unixtm (to_unixtm (make 2003 7 16 23 22 21)) = + make 2003 7 16 23 22 21) + "from_unixtm to_unixtm = id"; + + test (Period.to_time (Period.second 30) = Time.Period.second 30) + "Period.to_time second"; + test (Period.safe_to_time (Period.second 30) = Time.Period.second 30) + "Period.safe_to_time second"; + test (Period.to_time (Period.day 6) = Time.Period.second 518400) + "Period.to_time day"; + test (Period.safe_to_time (Period.day 6) = Time.Period.second 518400) + "Period.safe_to_time day"; + Gen_test.test_exn (lazy (Period.to_time (Period.year 1))) "Period.to_time year"; + test (Period.ymds (Period.make 1 2 3 1 2 3) = (1, 2, 3, 3723)) "Period.ymds"; + test + (Period.ymds (Period.make (-1) (-2) (-3) (-1) (-2) (-3)) = (-1,-2,-4,82677)) + "Period.ymds neg"; + () + +let suite = ["pcalendar", `Quick, test] diff --git a/tests/test_printer.ml b/tests/test_printer.ml index fd4768f..4ef7148 100644 --- a/tests/test_printer.ml +++ b/tests/test_printer.ml @@ -20,107 +20,103 @@ (* LICENSE. *) (**************************************************************************) -Printf.printf "Tests of Printer:\n";; - open CalendarLib;; -include Gen_test;; -reset ();; - open Printer.Date;; -let d = Date.make 2003 1 6;; -test (sprint "%D" d = "01/06/03") "sprint %D";; -test (sprint "the date is %B, the %-dth" d = "the date is January, the 6th") - "sprint (long sentence)";; -test (sprint "%^B, the %0dth" d = "JANUARY, the 06th") "sprint padding";; -test (sprint "%j" d = "006") "sprint %j";; -test (sprint "%-j" d = "6") "sprint %j";; -test (sprint "%_j" d = " 6") "sprint %j";; -test (sprint "%j" (Date.make 2003 1 10) = "010") "sprint %j";; -test (sprint "%-j" (Date.make 2003 1 10) = "10") "sprint %j";; -test (sprint "%_j" (Date.make 2003 1 10) = " 10") "sprint %j";; -test (sprint "%C" (Date.make 2008 12 5) = "21") "sprint %C";; -test (from_string "2003-01-06" = Date.make 2003 1 6) "from_string";; -test (from_fstring "%y-%m-%d" "03-01-06" = Date.make 1903 1 6) "from_fstring";; -test - (from_fstring "%Y%t%m%t%d" "1903\t01\t06" = Date.make 1903 1 6) - "from_fstring %t";; -test - (from_fstring "%Y-%B-%d" "2007-May-14" = Date.make 2007 5 14) - "from_fstring %B";; -test - (from_fstring "%Y-%b-%d" "2007-Jan-14" = Date.make 2007 1 14) - "from_fstring %B";; +let test () = + let test x s = Alcotest.(check bool) s true x in + let d = Date.make 2003 1 6 in + test (sprint "%D" d = "01/06/03") "sprint %D"; + test (sprint "the date is %B, the %-dth" d = "the date is January, the 6th") + "sprint (long sentence)"; + test (sprint "%^B, the %0dth" d = "JANUARY, the 06th") "sprint padding"; + test (sprint "%j" d = "006") "sprint %j"; + test (sprint "%-j" d = "6") "sprint %j"; + test (sprint "%_j" d = " 6") "sprint %j"; + test (sprint "%j" (Date.make 2003 1 10) = "010") "sprint %j"; + test (sprint "%-j" (Date.make 2003 1 10) = "10") "sprint %j"; + test (sprint "%_j" (Date.make 2003 1 10) = " 10") "sprint %j"; + test (sprint "%C" (Date.make 2008 12 5) = "21") "sprint %C"; + test (from_string "2003-01-06" = Date.make 2003 1 6) "from_string"; + test (from_fstring "%y-%m-%d" "03-01-06" = Date.make 1903 1 6) "from_fstring"; + test + (from_fstring "%Y%t%m%t%d" "1903\t01\t06" = Date.make 1903 1 6) + "from_fstring %t"; + test + (from_fstring "%Y-%B-%d" "2007-May-14" = Date.make 2007 5 14) + "from_fstring %B"; + + test + (from_fstring "%Y-%b-%d" "2007-Jan-14" = Date.make 2007 1 14) + "from_fstring %B"; -test (from_fstring "%Y %V %w" "2004 01 1" = Date.make 2003 12 29) - "from_fstring %Y %V %w";; -test (from_fstring "%V %Y %w" "52 1999 7" = Date.make 2000 1 2) - "from_fstring %V %Y %w";; -test_exn (lazy (from_fstring "%Y %w" "1999 7")) "from_fstring_exn";; -test (from_fstring "%Y%j" "1903001" = Date.make 1903 1 1) "from_fstring %Y%j";; -test (from_fstring "%j%Y" "0011903" = Date.make 1903 1 1) "from_fstring %j%Y";; -test_exn (lazy (from_fstring "%j" "001")) "from_fstring_exn 2";; + test (from_fstring "%Y %V %w" "2004 01 1" = Date.make 2003 12 29) + "from_fstring %Y %V %w"; + test (from_fstring "%V %Y %w" "52 1999 7" = Date.make 2000 1 2) + "from_fstring %V %Y %w"; + Gen_test.test_exn (lazy (from_fstring "%Y %w" "1999 7")) "from_fstring_exn"; + test (from_fstring "%Y%j" "1903001" = Date.make 1903 1 1) "from_fstring %Y%j"; + test (from_fstring "%j%Y" "0011903" = Date.make 1903 1 1) "from_fstring %j%Y"; + Gen_test.test_exn (lazy (from_fstring "%j" "001")) "from_fstring_exn 2"; -open Printer.Time;; -test (to_string (Time.make 12 1 4) = "12:01:04") "to_string (on TimePrinter)";; -test (sprint "%I" (Time.make 36 4 3) = "12") "sprint %I (on TimePrinter)";; -test (sprint "%r" (Time.make 24 4 3) = "12:04:03 AM") - "sprint %r (on TimePrinter)";; -test (sprint "%R %z" (Time.make 12 24 5) = "12:24 +0000") "sprint %R %z";; -test - (Time_Zone.on (fun () -> sprint "%R %z" (Time.make 12 24 5)) - (Time_Zone.UTC_Plus (-3)) () = "12:24 -0300") - "sprint %R %z neg";; -test (sprint "%R %S %:z" (Time.make 23 47 55) = "23:47 55 +00:00") - "sprint %R %S %:z";; -test - (Time_Zone.on (fun () -> sprint "%R %S %::z" (Time.make 7 47 55)) - (Time_Zone.UTC_Plus 3) () = "07:47 55 +03:00:00") - "sprint %R %S %::z";; -test_exn (lazy (sprint "%R %:a" (Time.make 23 47 55))) "sprint %R %:a";; -test_exn (lazy (sprint "%::::z %R" (Time.make 23 47 55))) "sprint %::::z %R";; + let open Printer.Time in + test (to_string (Time.make 12 1 4) = "12:01:04") "to_string (on TimePrinter)"; + test (sprint "%I" (Time.make 36 4 3) = "12") "sprint %I (on TimePrinter)"; + test (sprint "%r" (Time.make 24 4 3) = "12:04:03 AM") + "sprint %r (on TimePrinter)"; + test (sprint "%R %z" (Time.make 12 24 5) = "12:24 +0000") "sprint %R %z"; + test + (Time_Zone.on (fun () -> sprint "%R %z" (Time.make 12 24 5)) + (Time_Zone.UTC_Plus (-3)) () = "12:24 -0300") + "sprint %R %z neg"; + test (sprint "%R %S %:z" (Time.make 23 47 55) = "23:47 55 +00:00") + "sprint %R %S %:z"; + test + (Time_Zone.on (fun () -> sprint "%R %S %::z" (Time.make 7 47 55)) + (Time_Zone.UTC_Plus 3) () = "07:47 55 +03:00:00") + "sprint %R %S %::z"; + Gen_test.test_exn (lazy (sprint "%R %:a" (Time.make 23 47 55))) "sprint %R %:a"; + Gen_test.test_exn (lazy (sprint "%::::z %R" (Time.make 23 47 55))) "sprint %::::z %R"; -test (from_fstring "%R %S %z" "10:47 55 -0300" = Time.make 13 47 55) - "from_fstring %R %S %z";; -test (from_fstring "%R %S %:z" "10:47 55 -13:00" = Time.make 23 47 55) - "from_fstring %R %S %:z";; -test_exn (lazy (from_fstring "%R %S %:z" "10:47 55 -0300")) - "from_fstring %R %S %:z bug1";; -test_exn (lazy (from_fstring "%R %S %:z" "10:47 55 -03:00:00")) - "from_fstring %R %S %:z bug2";; -test (from_fstring "%R %S %::z" "10:47 55 +03:00:00" = Time.make 7 47 55) - "from_fstring %R %S %::z";; -test (from_fstring "%R %S %:::z" "10:47 55 -03" = Time.make 13 47 55) - "from_fstring %R %S %:::z";; -test_exn (lazy (from_fstring "%R %S %::::z" "10:47 55 -0300")) - "from_fstring %R %S %::::z";; -test (from_fstring "%r" "10:47:25 AM" = Time.make 10 47 25) - "from_fstring AM (on TimePrinter)";; -test (from_fstring "%r" "10:47:25 PM" = Time.make 22 47 25) - "from_fstring PM (on TimePrinter)";; -test_exn (lazy (from_fstring "%p %I:%M:%S" "TM 5:26:17")) - "from_fstring error on %p (on TimePrinter)";; + test (from_fstring "%R %S %z" "10:47 55 -0300" = Time.make 13 47 55) + "from_fstring %R %S %z"; + test (from_fstring "%R %S %:z" "10:47 55 -13:00" = Time.make 23 47 55) + "from_fstring %R %S %:z"; + Gen_test.test_exn (lazy (from_fstring "%R %S %:z" "10:47 55 -0300")) + "from_fstring %R %S %:z bug1"; + Gen_test.test_exn (lazy (from_fstring "%R %S %:z" "10:47 55 -03:00:00")) + "from_fstring %R %S %:z bug2"; + test (from_fstring "%R %S %::z" "10:47 55 +03:00:00" = Time.make 7 47 55) + "from_fstring %R %S %::z"; + test (from_fstring "%R %S %:::z" "10:47 55 -03" = Time.make 13 47 55) + "from_fstring %R %S %:::z"; + Gen_test.test_exn (lazy (from_fstring "%R %S %::::z" "10:47 55 -0300")) + "from_fstring %R %S %::::z"; + test (from_fstring "%r" "10:47:25 AM" = Time.make 10 47 25) + "from_fstring AM (on TimePrinter)"; + test (from_fstring "%r" "10:47:25 PM" = Time.make 22 47 25) + "from_fstring PM (on TimePrinter)"; + Gen_test.test_exn (lazy (from_fstring "%p %I:%M:%S" "TM 5:26:17")) + "from_fstring error on %p (on TimePrinter)"; -open Printer.Calendar;; -test (sprint "%c" (Calendar.make 2003 1 6 12 1 4) = "Mon Jan 06 12:01:04 2003") - "sprint %c";; -test (to_string (Calendar.make 2004 10 25 24 0 1) = "2004-10-26 00:00:01") - "to_string (on CalendarPrinter)";; -test - (from_fstring "%c" "Mon May 14 10:30:00 2007" - = Calendar.make 2007 5 14 10 30 0) - "from_fstring (on CalendarPrinter)";; -test (sprint "%s" (Calendar.make 1971 1 1 0 0 0) = "31536000") - "sprint %s";; + let open Printer.Calendar in + test (sprint "%c" (Calendar.make 2003 1 6 12 1 4) = "Mon Jan 06 12:01:04 2003") + "sprint %c"; + test (to_string (Calendar.make 2004 10 25 24 0 1) = "2004-10-26 00:00:01") + "to_string (on CalendarPrinter)"; + test + (from_fstring "%c" "Mon May 14 10:30:00 2007" + = Calendar.make 2007 5 14 10 30 0) + "from_fstring (on CalendarPrinter)"; + test (sprint "%s" (Calendar.make 1971 1 1 0 0 0) = "31536000") + "sprint %s"; -test (Utils.Float.equal - (Ftime.second - (Printer.Ftime.from_fstring - "%Y-%m-%dT%H:%M:%S%:z" "2014-03-19T15:51:25.05-07:00")) - 25.05) - "from_string with floating seconds";; + test (Utils.Float.equal + (Ftime.second + (Printer.Ftime.from_fstring + "%Y-%m-%dT%H:%M:%S%:z" "2014-03-19T15:51:25.05-07:00")) + 25.05) + "from_string with floating seconds"; + () -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; +let suite = ["printer", `Quick, test] diff --git a/tests/test_time.ml b/tests/test_time.ml index ba2fd37..211e48a 100644 --- a/tests/test_time.ml +++ b/tests/test_time.ml @@ -20,58 +20,57 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_time.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of Time:\n";; +(*i $Id$ i*) open CalendarLib open Time;; -include Gen_test;; -reset ();; -Time_Zone.change (Time_Zone.UTC_Plus 10);; +let test () = + let test x s = Alcotest.(check bool) s true x in + Time_Zone.change (Time_Zone.UTC_Plus 10); + + test (make 30 60 80 = make 31 1 20) "30-60-80 = 31-1-20"; + test (normalize (make 22 0 0) = (make 22 0 0, 0)) "normalize 22-0-0"; + test (normalize (make 73 0 0) = (make 1 0 0, 3)) "normalize 73-0-0"; + test (normalize (make (-73) 0 0) = (make 23 0 0, -4)) "normalize (-73)-0-0"; + test (add (make 20 0 0) (Period.minute 70) = make 21 10 0) "add 20-0-0 70mn"; + test (next (make 20 3 31) `Minute = make 20 4 31) "next 20-3-31 `Minute"; + test (prev (make 20 3 31) `Second = make 20 3 30) "prev 20-3-31 `Second"; + test (sub (make 6 5 4) (make 4 5 6) = Period.make 1 59 58) "sub 6-5-4 4-5-6"; + test (convert (make 20 0 0) (Time_Zone.UTC_Plus 2) (Time_Zone.UTC_Plus 4) = + make 22 0 0) "convert"; + test (to_gmt (make 20 0 0) = make 10 0 0) "to_gmt"; + test (from_gmt (make 20 0 0) = make 30 0 0) "from_gmt"; + test (midnight () = make 0 0 0) "midnight"; + test (midday () = make 12 0 0) "midday"; + test (hour (make 20 0 0) = 20) "hour"; + test (minute (make 20 10 0) = 10) "minute"; + test (second (make 20 10 5) = 5) "second"; -test (make 30 60 80 = make 31 1 20) "30-60-80 = 31-1-20";; -test (normalize (make 22 0 0) = (make 22 0 0, 0)) "normalize 22-0-0";; -test (normalize (make 73 0 0) = (make 1 0 0, 3)) "normalize 73-0-0";; -test (normalize (make (-73) 0 0) = (make 23 0 0, -4)) "normalize (-73)-0-0";; -test (add (make 20 0 0) (Period.minute 70) = make 21 10 0) "add 20-0-0 70mn";; -test (next (make 20 3 31) `Minute = make 20 4 31) "next 20-3-31 `Minute"; -test (prev (make 20 3 31) `Second = make 20 3 30) "prev 20-3-31 `Second";; -test (sub (make 6 5 4) (make 4 5 6) = Period.make 1 59 58) "sub 6-5-4 4-5-6";; -test (convert (make 20 0 0) (Time_Zone.UTC_Plus 2) (Time_Zone.UTC_Plus 4) = - make 22 0 0) "convert";; -test (to_gmt (make 20 0 0) = make 10 0 0) "to_gmt";; -test (from_gmt (make 20 0 0) = make 30 0 0) "from_gmt";; -test (midnight () = make 0 0 0) "midnight";; -test (midday () = make 12 0 0) "midday";; -test (hour (make 20 0 0) = 20) "hour";; -test (minute (make 20 10 0) = 10) "minute";; -test (second (make 20 10 5) = 5) "second";; + let one_two_three = make 1 2 3 in + test (to_seconds one_two_three = 3723) "to_seconds"; + test (Utils.Float.equal (to_minutes one_two_three) 62.05) "to_minutes"; + test (to_hours (make 1 3 0) = 1.05) "to_hours"; + test (from_seconds 3723 = from_minutes 62.05) "from_seconds; from_minutes"; + test (from_hours 1.05 = make 1 3 0) "from_hours"; + test (is_pm (midnight ())) "is_pm midnight"; + test (is_pm (make 10 0 0)) "is_pm 10-0-0"; + test (is_pm (make 34 0 0)) "is_pm 34-0-0"; + test (not (is_pm (make (- 10) 0 0))) "not (is_pm (- 10) 0 0)"; + test (is_am (midday ())) "is_am midday"; + test (is_am (make 20 0 0)) "is_am 20-0-0"; + test (is_am (make (- 34) 0 0)) "is_am (- 34) 0 0"; + test (not (is_am (make 34 0 0))) "not (is_pm 34 0 0)"; -let one_two_three = make 1 2 3;; -test (to_seconds one_two_three = 3723) "to_seconds";; -test (Utils.Float.equal (to_minutes one_two_three) 62.05) "to_minutes";; -test (to_hours (make 1 3 0) = 1.05) "to_hours";; -test (from_seconds 3723 = from_minutes 62.05) "from_seconds; from_minutes";; -test (from_hours 1.05 = make 1 3 0) "from_hours";; -test (is_pm (midnight ())) "is_pm midnight";; -test (is_pm (make 10 0 0)) "is_pm 10-0-0";; -test (is_pm (make 34 0 0)) "is_pm 34-0-0";; -test (not (is_pm (make (- 10) 0 0))) "not (is_pm (- 10) 0 0)";; -test (is_am (midday ())) "is_am midday";; -test (is_am (make 20 0 0)) "is_am 20-0-0";; -test (is_am (make (- 34) 0 0)) "is_am (- 34) 0 0";; -test (not (is_am (make 34 0 0))) "not (is_pm 34 0 0)";; + let one_two_three = Period.make 1 2 3 in + test (Period.to_seconds one_two_three = 3723) "Period.to_seconds"; + test (Utils.Float.equal (Period.to_minutes one_two_three) 62.05) + "Period.to_minutes"; + test (Utils.Float.equal (Period.to_hours (Period.make 1 3 0)) 1.05) + "Period.to_hours"; + () -let one_two_three = Period.make 1 2 3;; -test (Period.to_seconds one_two_three = 3723) "Period.to_seconds";; -test (Utils.Float.equal (Period.to_minutes one_two_three) 62.05) - "Period.to_minutes";; -test (Utils.Float.equal (Period.to_hours (Period.make 1 3 0)) 1.05) - "Period.to_hours";; -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; +let suite = [ + "time", `Quick, test; +] diff --git a/tests/test_timezone.ml b/tests/test_timezone.ml index 940a460..16143f2 100644 --- a/tests/test_timezone.ml +++ b/tests/test_timezone.ml @@ -20,30 +20,28 @@ (* LICENSE. *) (**************************************************************************) -(*i $Id: test_timezone.ml 259 2014-10-29 10:00:46Z signoles $ i*) - -Printf.printf "Tests of Time_Zone:\n";; +(*i $Id$ i*) open CalendarLib open Time_Zone;; -include Gen_test;; -reset ();; -test (current () = UTC) "current () = UTC";; -change Local;; -test (current () = Local) "current () = Local";; -test (gap UTC (UTC_Plus (-5)) = -5) "gap UTC (UTC_Plus (-5)) = -5";; -let g6 = UTC_Plus 6;; -test - (gap g6 Local = gap g6 UTC + gap UTC Local) - "gap g6 Local = gap g6 UTC + gap UTC Local";; -test_exn (lazy (change (UTC_Plus 13))) "change 13";; -test_exn (lazy (change (UTC_Plus (-15)))) "change (-15)";; -change (UTC_Plus 4);; -test (from_gmt () = 4) "from_gmt () = 4";; -test (to_gmt () = -4) "to_gmt () = -4";; +let tz = Alcotest.testable (Fmt.always "timezone") (=) ;; + +let test () = + change UTC; + Alcotest.(check tz) "current () = UTC" UTC (current ()); + change Local; + Alcotest.(check tz) "current () = Local" Local (current ()); + Alcotest.(check int) "gap UTC (UTC_Plus (-5)) = -5" ~-5 (gap UTC (UTC_Plus ~-5)); + let g6 = UTC_Plus 6 in + Alcotest.(check int) + "gap g6 Local = gap g6 UTC + gap UTC Local" + (gap g6 Local) (gap g6 UTC + gap UTC Local); + Gen_test.test_exn (lazy (change (UTC_Plus 13))) "change 13"; + Gen_test.test_exn (lazy (change (UTC_Plus (-15)))) "change (-15)"; + change (UTC_Plus 4); + Alcotest.(check int) "from_gmt () = 4" 4 (from_gmt ()) ; + Alcotest.(check int) "to_gmt () = -4" ~-4 (to_gmt ()); + () -let ok = nb_ok ();; -let bug = nb_bug ();; -Printf.printf "tests ok : %d; tests ko : %d\n" ok bug;; -flush stdout;; +let suite = ["timezone", `Quick, test] |