Module: Riffer::Helpers::ClassNameConverter

Included in:
Agent
Defined in:
lib/riffer/helpers/class_name_converter.rb

Overview

Helper module for converting class names.

Constant Summary collapse

DEFAULT_SEPARATOR =

: String

"/"

Instance Method Summary collapse

Instance Method Details

#class_name_to_path(class_name, separator: DEFAULT_SEPARATOR) ⇒ Object

Converts a class name to snake_case identifier format.

– : (String, ?separator: String) -> String



12
13
14
15
16
17
18
19
# File 'lib/riffer/helpers/class_name_converter.rb', line 12

def class_name_to_path(class_name, separator: DEFAULT_SEPARATOR)
  class_name
    .to_s
    .gsub("::", separator)
    .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
    .gsub(/([a-z\d])([A-Z])/, '\1_\2')
    .downcase
end