Class: TraceViz::Utils::AliasGenerator
- Inherits:
-
Object
- Object
- TraceViz::Utils::AliasGenerator
- Defined in:
- lib/trace_viz/utils/alias_generator.rb
Constant Summary collapse
- COMPONENT_DELIMITER =
"::"- ALIAS_DELIMITER =
"_"
Class Method Summary collapse
-
.generate(name:, assigned_aliases:) ⇒ Object
Generates a unique alias for a given name and ensures it doesn’t conflict with existing aliases.
Class Method Details
.generate(name:, assigned_aliases:) ⇒ Object
Generates a unique alias for a given name and ensures it doesn’t conflict with existing aliases.
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/trace_viz/utils/alias_generator.rb', line 14 def generate(name:, assigned_aliases:) raise ArgumentError, "name cannot be nil" if name.nil? # Break the name into components and extract initials alias_candidate = extract_initials(name.to_s) # Ensure the alias is unique unique_alias = ensure_unique_alias( candidate: alias_candidate, assigned_aliases: assigned_aliases, original_name: name, ) # Record the alias in the map assigned_aliases[name] = unique_alias unique_alias end |