class Locraft::SwiftConstantsGenerator
Public Instance Methods
const_template()
click to toggle source
# File lib/locraft/generators/swift_constants_generator.rb, line 28 def const_template <<EOF static var %<const>s: String { return localized("%<key>s") } EOF end
constant_from(key)
click to toggle source
# File lib/locraft/generators/swift_constants_generator.rb, line 36 def constant_from(key) parts = key.split(/\W/).reject(&:empty?) parts.map! do |p| p[0] = p[0].capitalize if p != parts[0] p end parts.join end
file_content(localizations)
click to toggle source
# File lib/locraft/generators/swift_constants_generator.rb, line 23 def file_content(localizations) content = constants_keys_with(localizations).map { |d| const_template % d }.join("\n") Utils.resource_file('swift_macro_template.txt') % content end
generate(localizations_hash)
click to toggle source
# File lib/locraft/generators/swift_constants_generator.rb, line 9 def generate(localizations_hash) if @config.relative_plist_destination.nil? warn 'Skipping objc constants generation. No destination path provided.' return end localizations = localizations_hash[@config.default_lang] destination_dir = @config.relative_macro_destination file_content = file_content(localizations) mkdir_p destination_dir unless Dir.exist?(destination_dir) write_file_content("#{destination_dir}/#{files_name}.swift", file_content) puts 'constants files was created for [swift] language' end
valid?()
click to toggle source
# File lib/locraft/generators/swift_constants_generator.rb, line 5 def valid? !@config.relative_macro_destination.nil? end