Module: GEDCOM_DATE_PARSER

Defined in:
lib/gedcom_ruby/date_parser.rb

Overview


gedcom_date_parser.rb – module definition for GEDCOM date parser Copyright © 2008 Phillip Davies ([email protected])


This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

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 Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA


Defined Under Namespace

Classes: DateParseException, DateParser, GEDDate, GEDDateGeneral, GEDDateGreg, GEDDateValue, GEDParserState, GEDStateEntry, Token

Constant Summary collapse

TKERROR =

Token Constants General Tokens

-2
TKEOF =
-1
TKNONE =
0
TKNUMBER =
1
TKMONTH =
2
TKAPPROXIMATED =
3
TKRANGE =
4
TKPERIOD =
5
TKINTERPRETED =
6
TKLPAREN =
7
TKRPAREN =
8
TKBC =
9
TKAND =
10
TKTO =
11
TKSLASH =
12
TKSTATUS =
13
TKOTHER =
14
TKJANUARY =

Specific Tokens

1
TKFEBRUARY =
2
TKMARCH =
3
TKAPRIL =
4
TKMAY =
5
TKJUNE =
6
TKJULY =
7
TKAUGUST =
8
TKSEPTEMBER =
9
TKOCTOBER =
10
TKNOVEMBER =
11
TKDECEMBER =
12
TKVENDEMIAIRE =
13
TKBRUMAIRE =
14
TKFRIMAIRE =
15
TKNIVOSE =
16
TKPLUVIOSE =
17
TKVENTOSE =
18
TKGERMINAL =
19
TKFLOREAL =
20
TKPRAIRIAL =
21
TKMESSIDOR =
22
TKTHERMIDOR =
23
TKFRUCTIDOR =
24
TKJOUR_COMP =
25
TKJOUR =
26
TKCOMP =
27
TKTISHRI =
28
TKCHESHVAN =
29
TKKISLEV =
30
TKTEVET =
31
TKSHEVAT =
32
TKADAR =
33
TKADAR_SHENI =
34
TKNISAN =
35
TKIYAR =
36
TKSIVAN =
37
TKTAMMUZ =
38
TKAV =
39
TKELUL =
40
TKSHENI =
41
TKABOUT =
80
TKCALCULATED =
81
TKESTIMATED =
82
TKBEFORE =
83
TKAFTER =
84
TKBETWEEN =
85
TKFROM =
86
TKCHILD =
87
TKCLEARED =
88
TKCOMPLETED =
89
TKINFANT =
90
TKPRE1970 =
91
TKQUALIFIED =
92
TKSTILLBORN =
93
TKSUBMITTED =
94
TKUNCLEARED =
95
TKBIC =

Born In the Covenant

96
TKDNS =

Do Not Submit

97
TKDNSCAN =

Do Not Submit / Cancelled

98
TKDEAD =
99
ST_DV_ERROR =

states

-1
ST_DV_START =
1
ST_DV_DATE =
2
ST_DV_DATE_APPROX =
3
ST_DV_DATE_RANGE =
4
ST_DV_TO =
5
ST_DV_DATE_PERIOD =
6
ST_DV_DATE_INTERP =
7
ST_DV_DATE_PHRASE =
8
ST_DV_AND =
9
ST_DV_STATUS =
10
ST_DV_END =
11
ST_DT_ERROR =
-1
ST_DT_START =
1
ST_DT_NUMBER =
2
ST_DT_MONTH =
3
ST_DT_SLASH =
4
ST_DT_BC =
5
ST_DT_END =
6
GCTGREGORIAN =

After parsing, all flags should be available as booleans with accessors

0
GCTJULIAN =
1
GCTHEBREW =
2
GCTFRENCH =
3
GCTFUTURE =
4
GCTUNKNOWN =
99
GCTDEFAULT =
GCTGREGORIAN
GCNONE =

date constants

0
GCABOUT =

approximated date constants

1
GCCALCULATED =
2
GCESTIMATED =
3
GCBEFORE =

date range constants

4
GCAFTER =
5
GCBETWEEN =
6
GCFROM =

date period constants

7
GCTO =
8
GCFROMTO =
9
GCINTERPRETED =

other date constants

10
GCCHILD =

LDS ordinance constants

11
GCCLEARED =
12
GCCOMPLETED =
13
GCINFANT =
14
GCPRE1970 =
15
GCQUALIFIED =
16
GCSTILLBORN =
17
GCSUBMITTED =
18
GCUNCLEARED =
19
GCBIC =

Born In the Covenant

20
GCDNS =

Do Not Submit

21
GCDNSCAN =

Do Not Submit / Cancelled

22
GCDEAD =
23
GFNONE =

date flags

0
GFPHRASE =
1
GFNONSTANDARD =
2
GFNOFLAG =

date bit flags

0
GFNODAY =
1
GFNOMONTH =
2
GFNOYEAR =
4
GFYEARSPAN =
8
GCMAXPHRASEBUFFERSIZE =

data type constants

35
GEDADBCBC =

BC / AD

0
GEDADBCAD =
1
Default_Months =
[ "Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ]
Hebrew_Months =
[ "Tishri", "Cheshvan", "Kislev", "Tevet", "Shevat", "Adar",
"Adar Sheni", "Nisan", "Iyar", "Sivan", "Tammuz", "Av",
"Elul", "Sheni" ]
French_Months =
[ "Vend", "Brum", "Frim", "Niv", "Pluv", "Vent", "Germ", "Flor",
"Prair", "Mess", "Therm", "Fruct", "J. Comp", "Jour", "Comp" ]
TokenTable =
[]
DateValueStateTable =
[]
DateStateTable =
[]