module Aquarium::Utils::NameUtils

NameUtils

Convert various strings, symbols, object ids, etc. into valid “names” that can be used as method names, etc.

Public Class Methods

make_type_or_object_key(type_or_object) click to toggle source
# File lib/aquarium/utils/name_utils.rb, line 32
def self.make_type_or_object_key type_or_object
  if Aquarium::Utils::TypeUtils.is_type?(type_or_object) 
    make_valid_type_name type_or_object
  else
    make_valid_object_name type_or_object
  end
end
make_valid_attr_name_from_method_name(method_name) click to toggle source
# File lib/aquarium/utils/name_utils.rb, line 53
def self.make_valid_attr_name_from_method_name method_name
  new_name = method_name.to_s
  @@char_expr_map.keys.sort{|x,y| y.length <=> x.length}.each do |expr|
    new_name.gsub! expr, @@char_expr_map[expr]
  end
  new_name.intern
end
make_valid_object_id_name(object_id) click to toggle source

Fixes Tracker #13864.

# File lib/aquarium/utils/name_utils.rb, line 49
def self.make_valid_object_id_name object_id
  object_id.to_s.gsub(/^-/, "_neg_")
end
make_valid_object_name(type_or_object) click to toggle source
# File lib/aquarium/utils/name_utils.rb, line 44
def self.make_valid_object_name type_or_object
  "#{make_valid_type_name(type_or_object.class)}_#{make_valid_object_id_name(type_or_object.object_id)}"
end
make_valid_type_name(type) click to toggle source
# File lib/aquarium/utils/name_utils.rb, line 40
def self.make_valid_type_name type
  type.name.gsub(/:/, '_')
end