class Task

Public Class Methods

attr_names() click to toggle source
# File lib/tisket/task.rb, line 3
def self.attr_names
  %i[ id manager ]
end
defaults() click to toggle source
# File lib/tisket/task.rb, line 7
def self.defaults
  { }
end
new(manager = nil, **kwargs) click to toggle source
# File lib/tisket/task.rb, line 11
def initialize(manager = nil, **kwargs)
  self.class.attr_names.each do |a|
    instance_variable_set("@#{a}", kwargs[a] || self.class.defaults[a])
  end
  @manager = manager
end

Public Instance Methods

run() { || ... } click to toggle source
# File lib/tisket/task.rb, line 18
def run
  yield
  @manager.complete(@id) if @manager
end