Module: Bable::Index

Defined in:
lib/bable/index.rb,
lib/bable/index/ari.rb,
lib/bable/index/base.rb,
lib/bable/index/coleman_liau.rb

Defined Under Namespace

Classes: Ari, Base, ColemanLiau, NotExistingIndexError

Class Method Summary collapse

Class Method Details

.available_indexesArray<Symbol>

List the implemented readability indexes.

Returns:

  • (Array<Symbol>)

    list of indexes in underscored format.



7
8
9
10
11
12
13
# File 'lib/bable/index.rb', line 7

def available_indexes
  indexes = constants.select do |constant|
    c = const_get(constant)
    c.is_a?(Class) && c < Base
  end
  indexes.map { |c| c.to_s.underscore.to_sym }
end

.target_class(index) ⇒ Object



15
16
17
18
19
20
# File 'lib/bable/index.rb', line 15

def target_class(index)
  camelized_class = index.to_s.camelize

  fail NotExistingIndexError unless const_defined?(camelized_class)
  const_get(camelized_class)
end