Sha256: 073f0095bd432f01c35245f58aa2a9a8274a7dd00eb756932d906b4b8054162b
Contents?: true
Size: 1.8 KB
Versions: 1
Compression:
Stored size: 1.8 KB
Contents
# encoding: UTF-8 grammar ScientificNameDirty include ScientificNameClean rule root super end rule species a:species_epitheton space b:year { def value a.value + " " + b.value end def canonical a.canonical end def pos a.pos.merge(b.pos) end def details {:species => a.details[:species].merge(b.details)} end } / super end rule right_paren ")" space ")" / super end rule left_paren "(" space "(" / super end rule year a:year_number space b:approximate_year { def value a.value + " " + b.value end def pos a.pos.merge(b.pos) end def details {:year => a.value, :approximate_year => b.value} end } / a:year_number space page_number { def value a.text_value end def pos {a.interval.begin => ['year', a.interval.end]} end def details {:year => value} end } / approximate_year / double_year / super end rule approximate_year "[" space a:year_number space "]"+ { def value "(" + a.text_value + ")" end def pos {a.interval.begin => ['year', a.interval.end]} end def details {:approximate_year => value} end } end rule double_year year_number "-" [0-9]+ [A-Za-z]? [\?]? { def value text_value end def pos {interval.begin => ['year', interval.end]} end def details {:year => value} end } end rule page_number ":" space [\d]+ { def value end } end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dimus-biodiversity-0.5.1 | lib/biodiversity/parser/scientific_name_dirty.treetop |