class AnyStyle::Feature::Number

Public Instance Methods

observe(token, **opts) click to toggle source
   # File lib/anystyle/feature/number.rb
 4 def observe(token, **opts)
 5   case token
 6   when /\d[\(:;]\d/
 7     :volume
 8   when /^97[89](\p{Pd}?\d){10}$/,
 9        /^\d(\p{Pd}?\d){9}$/
10     :isbn
11   when /\b(1\d|20)\d\d\b/
12     :year
13   when /^\d\d\d\d$/
14     :quad
15   when /^\d\d\d$/
16     :triple
17   when /^\d\d$/
18     :double
19   when /^\d$/
20     :single
21   when /^\d+$/
22     :all
23   when /^\d+\p{Pd}+\d+$/
24     :range
25   when /^\p{Lu}[\p{Lu}\p{Pd}\/]+\d+[,.:]?$/
26     :idnum
27   when /\d\p{Alpha}{1,3}\b/i
28     :ordinal
29   when /\d/
30     :numeric
31   when /^([IVXLDCM]+|[ivx]+)\b/
32     :roman
33   else
34     :none
35   end
36 end