module Fugit::Nat
A natural language set of parsers for fugit. Focuses on cron expressions. The rest is better left to Chronic and friends.
Public Class Methods
do_parse(s, opts={})
click to toggle source
# File lib/fugit/nat.rb, line 28 def do_parse(s, opts={}) parse(s, opts) || fail(ArgumentError.new("could not parse a nat #{s.inspect}")) end
parse(s, opts={})
click to toggle source
# File lib/fugit/nat.rb, line 12 def parse(s, opts={}) return s if s.is_a?(Fugit::Cron) || s.is_a?(Fugit::Duration) return nil unless s.is_a?(String) #p s; Raabro.pp(Parser.parse(s, debug: 3), colours: true) #(p s; Raabro.pp(Parser.parse(s, debug: 1), colours: true)) rescue nil if slots = Parser.parse(s) slots.to_crons(opts.merge(_s: s)) else nil end end