Sha256: f1e183ed478ebb23714ddc2b84caba6cb976dbbdf1100ef5957aea2d724f00d6
Contents?: true
Size: 1.36 KB
Versions: 1
Compression:
Stored size: 1.36 KB
Contents
class String def camelize(uppercase_first_letter = true) string = self if uppercase_first_letter string = string.sub(/^[a-z\d]*/) { |match| match.capitalize } else string = string.sub(/^(?:(?=\b|[A-Z_])|\w)/) { |match| match.downcase } end string.gsub(/(?:_|(\/))([a-z\d]*)/) { "#{$1}#{$2.capitalize}" }.gsub("/", "::") end end module KCommercial module Resources class CodeGenerator # The super module default is MKResources # @return [String] attr_reader :super_module # The key defines for the generator # @return [Array<String>] attr_reader :keys # Create a new SwiftGenerator # @param [Array<String>] keys the defines for keys def initialize(keys, options = {}) @keys = keys @keys ||= [] @super_module = options.delete(:super) { :MKResources } end def implementation_contents raise NotImplementedError end private def class_name "Colors" end def key_to_code(key) raise NotImplementedError end def key_to_function_name(key) key = key.camelize(false) if key.length > 0 key[0] = key[0].downcase end key end def append_prefix(contents, prefix) contents.lines.map { |l| "#{prefix}#{l}"}.join('') end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
KCommercialPipeline-0.2.5.1 | lib/KCommercialPipeline/core/resource/code_generator/code_generator.rb |