Module: Virtual::Assertions

Defined in:
lib/virtual/activate.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.subject_class(subject) ⇒ Object



19
20
21
22
23
24
25
# File 'lib/virtual/activate.rb', line 19

def self.subject_class(subject)
  if [Module, Class].include?(subject)
    return subject
  else
    return subject.class
  end
end

Instance Method Details

#activated?Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
17
# File 'lib/virtual/activate.rb', line 11

def activated?
  subject = Assertions.subject_class(self)

  ['virtual', 'pure_virtual', 'abstract'].each do |mthd|
    fail mthd unless subject.respond_to?(mthd)
  end
end