Module: Riffer::Helpers::ClassNameConverter

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

Instance Method Summary collapse

Instance Method Details

#class_name_to_path(class_name) ⇒ String

Converts a class name to snake_case path format

Parameters:

  • class_name (String)

    the class name (e.g., “Riffer::Agent”)

Returns:

  • (String)

    the snake_case path (e.g., “riffer/agent”)



7
8
9
10
11
12
13
14
# File 'lib/riffer/helpers/class_name_converter.rb', line 7

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