# frozen_string_literal: true def read_json_file(file) JSON.parse(File.read(file)) rescue StandardError => e raise "JSON parsing error in #{file} #{e}" end # @return [ Symbol ] # @note As a class can not start with a digit or underscore, a D_ is # put as a prefix in such case. Ugly but well :x # Not only used to classify slugs though, but Dynamic Finder names as well def classify_slug(slug) classified = slug.to_s.tr('-', '_').camelize.to_s classified = "D_#{classified}" if classified[0] =~ /\d/ classified.to_sym end