Sha256: 856b0aebce73130a500a3faf3d053c747f5959195d55ffe51ef3256859bfff77

Contents?: true

Size: 638 Bytes

Versions: 5

Compression:

Stored size: 638 Bytes

Contents

require "./lib/timeboss/calendars"

namespace :timeboss do
  namespace :calendars do
    TimeBoss::Calendars.each do |entry|
      namespace entry.name do
        desc "Evaluate an expression for the #{entry.name} calendar"
        task :evaluate, %i[expression] => ["timeboss:init"] do |_, args|
          puts entry.calendar.parse(args[:expression])
        end

        desc "Open a REPL with the #{entry.name} calendar"
        task repl: ["timeboss:init"] do
          require "shellable"
          Shellable.open(entry.calendar)
        end

        task shell: ["timeboss:calendars:#{entry.name}:repl"]
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
timeboss-1.1.3 lib/tasks/calendars.rake
timeboss-1.1.2 lib/tasks/calendars.rake
timeboss-1.1.1 lib/tasks/calendars.rake
timeboss-1.1.0 lib/tasks/calendars.rake
timeboss-1.0.5 lib/tasks/calendars.rake