module Fugit::Duration::IsoParser

Public Instance Methods

date(i) click to toggle source
# File lib/fugit/duration.rb, line 392
def date(i); rep(nil, i, :delt, 1); end
day(i) click to toggle source
# File lib/fugit/duration.rb, line 384
def day(i); rex(:day, i, /-?\d+D/); end
delt(i) click to toggle source
# File lib/fugit/duration.rb, line 389
def delt(i); alt(nil, i, :yea, :mon, :wee, :day); end
dur(i) click to toggle source
# File lib/fugit/duration.rb, line 396
def dur(i); seq(:dur, i, :p, :date, '?', :t_time, '?'); end
hou(i) click to toggle source
# File lib/fugit/duration.rb, line 385
def hou(i); rex(:hou, i, /-?\d+H/); end
min(i) click to toggle source
# File lib/fugit/duration.rb, line 386
def min(i); rex(:min, i, /-?\d+M/); end
mon(i) click to toggle source
# File lib/fugit/duration.rb, line 382
def mon(i); rex(:mon, i, /-?\d+M/); end
p(i) click to toggle source

piece parsers bottom to top

# File lib/fugit/duration.rb, line 378
def p(i); rex(nil, i, /P/); end
rewrite_dur(t) click to toggle source

rewrite parsed tree

# File lib/fugit/duration.rb, line 400
def rewrite_dur(t); Fugit::Duration.common_rewrite_dur(t); end
sec(i) click to toggle source
# File lib/fugit/duration.rb, line 387
def sec(i); rex(:sec, i, /-?(\d*\.)?\d+S/); end
t(i) click to toggle source
# File lib/fugit/duration.rb, line 379
def t(i); rex(nil, i, /T/); end
t_time(i) click to toggle source
# File lib/fugit/duration.rb, line 394
def t_time(i); seq(nil, i, :t, :time); end
telt(i) click to toggle source
# File lib/fugit/duration.rb, line 390
def telt(i); alt(nil, i, :hou, :min, :sec); end
time(i) click to toggle source
# File lib/fugit/duration.rb, line 393
def time(i); rep(nil, i, :telt, 1); end
wee(i) click to toggle source
# File lib/fugit/duration.rb, line 383
def wee(i); rex(:wee, i, /-?\d+W/); end
yea(i) click to toggle source
# File lib/fugit/duration.rb, line 381
def yea(i); rex(:yea, i, /-?\d+Y/); end