class Rails::Generators::Base
def class_collisions(*class_names)
Check whether the given class names are already taken by user
def class_collisions(*class_names) return unless behavior == :invoke return if options.skip_collision_check? return if options.force? class_names.flatten.each do |class_name| class_name = class_name.to_s next if class_name.strip.empty? # Split the class from its module nesting nesting = class_name.split("::") last_name = nesting.pop last = extract_last_module(nesting) if last && last.const_defined?(last_name.camelize, false) raise Error, "The name '#{class_name}' is either already used in your application " \ "or reserved by Ruby on Rails. Please choose an alternative or use --skip-collision-check " \ "or --force to skip this check and run this generator again." end end end