|
- require_relative 'roster'
- require_relative 'task'
-
- module KGrader
- class Course
- attr_reader :name
-
- def initialize(filesystem, name)
- @fs = filesystem
- @name = name
- @config = @fs.load @fs.course_config(@name)
- end
-
- def roster(semester)
- # TODO: cache
- Roster.new @fs, self, semester
- end
-
- def task(semester, assignment)
- # TODO: cache
- Task.new @fs, self, semester, assignment
- end
- end
- end
|