Class: WorkingClass::Tasklist

Inherits:
Object
  • Object
show all
Defined in:
lib/working_class/tasklist.rb

Overview

A represantation of a Tasklist

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, tasks = []) ⇒ WorkingClass::Tasklist

Initializes a new Tasklist with a name and optional Tasks

Parameters:

  • name (String)

    the tasklist name

  • tasks (Array<WorkingClass::Task>) (defaults to: [])

    an array with Tasks



19
20
21
22
# File 'lib/working_class/tasklist.rb', line 19

def initialize(name, tasks = [])
  @name = name
  @tasks = tasks
end

Instance Attribute Details

#nameString (readonly)

the name of the Tasklist

Returns:

  • (String)

    the current value of name



7
8
9
# File 'lib/working_class/tasklist.rb', line 7

def name
  @name
end

#tasksArray<WorkingClass::Task> (readonly)

the tasks of the Tasklist

Returns:



7
8
9
# File 'lib/working_class/tasklist.rb', line 7

def tasks
  @tasks
end

Instance Method Details

#finished_tasksArray<WorkingClass::Task>

Returns all the finished tasks

Returns:



44
45
46
# File 'lib/working_class/tasklist.rb', line 44

def finished_tasks
  @tasks.select { |task| task.is_finished }
end

#tasks_due_tomorrowArray<WorkingClass::Task>

Returns all the tasks that are due tomorrow

Returns:



36
37
38
# File 'lib/working_class/tasklist.rb', line 36

def tasks_due_tomorrow
  @tasks.select { |task| task.is_tomorrow }
end

#unfinished_tasksArray<WorkingClass::Task>

Returns all the unfinished tasks

Returns:



52
53
54
# File 'lib/working_class/tasklist.rb', line 52

def unfinished_tasks
  @tasks.select { |task| !task.is_finished }
end

#upcoming_tasksArray<WorkingClass::Task>

Returns all the upcoming tasks

Returns:



28
29
30
# File 'lib/working_class/tasklist.rb', line 28

def upcoming_tasks
  @tasks.select { |task| task.is_upcoming }
end