Class: JLDrill::KanjiProblem

Inherits:
Problem
  • Object
show all
Defined in:
lib/jldrill/model/problems/KanjiProblem.rb

Overview

Test your kanji reading. Read the kanji and guess the reading and definitions

Instance Attribute Summary

Attributes inherited from Problem

#answerParts, #item, #level, #questionParts, #requestedLevel

Instance Method Summary collapse

Methods inherited from Problem

#answer, #assign, #contains?, #displayOnly?, #eql?, #evaluateAttribute, #evaluateParts, #largeReading?, #parse, #preview?, #publishAnswer, #publishParts, #publishQuestion, #question, #setDisplayOnly, #setPreview, #status, #to_s, #vocab=

Constructor Details

#initialize(item) ⇒ KanjiProblem

Returns a new instance of KanjiProblem.



8
9
10
11
12
13
# File 'lib/jldrill/model/problems/KanjiProblem.rb', line 8

def initialize(item)
    super(item)
    @level = 2
    @questionParts = ["kanji"]
    @answerParts = ["reading", "definitions", "hint"]
end

Instance Method Details

#cloneObject



19
20
21
22
23
# File 'lib/jldrill/model/problems/KanjiProblem.rb', line 19

def clone
    value = KanjiProblem.new(item)
    value.assign(self)
    return value
end

#nameObject



15
16
17
# File 'lib/jldrill/model/problems/KanjiProblem.rb', line 15

def name
    return "KanjiProblem"
end

#valid?Boolean

Returns false if the kanji is empty and we can’t drill this item.

Returns:

  • (Boolean)


27
28
29
# File 'lib/jldrill/model/problems/KanjiProblem.rb', line 27

def valid?
    return !(evaluateAttribute("kanji").empty?)
end