module RuboCop::AST::NodePattern::Sets
Utility to assign a set of values to a constant
Constants
- MAX
- REGISTRY
Public Class Methods
[](set)
click to toggle source
# File lib/rubocop/ast/node_pattern/sets.rb, line 31 def self.[](set) REGISTRY[set] end
name(set)
click to toggle source
# File lib/rubocop/ast/node_pattern/sets.rb, line 15 def self.name(set) elements = set elements = set.first(MAX - 1) << :etc if set.size > MAX name = elements.to_a.join('_').upcase.gsub(/[^A-Z0-9_]/, '') uniq("SET_#{name}") end
uniq(name)
click to toggle source
# File lib/rubocop/ast/node_pattern/sets.rb, line 22 def self.uniq(name) return name unless Sets.const_defined?(name) (2..Float::INFINITY).each do |i| uniq = "#{name}_#{i}" return uniq unless Sets.const_defined?(uniq) end end