Module: Riffer::Helpers::ClassNameConverter

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

Overview

Helper module for converting class names.

Instance Method Summary collapse

Instance Method Details

#class_name_to_path(class_name) ⇒ Object

Converts a class name to snake_case path format.

class_name

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

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



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

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