class I18nChecker::Unused::Result
Detection result of unused translated text
@attr_reader [Array<I18nChecker::Unused::Text>] unused_texts
@attr_reader [Hash<String, Array<I18nChecker::Unused::File>>] locale_files
Attributes
locale_files[R]
unused_texts[R]
Public Class Methods
new(unused_texts = [])
click to toggle source
@param unused_texts
[Array<I18nChecker::Unused::Text>]
# File lib/i18n_checker/unused/result.rb, line 13 def initialize(unused_texts = []) @unused_texts = unused_texts @locale_files = unused_texts.group_by(&:file_name) end
Public Instance Methods
apply(target_locale_files)
click to toggle source
Apply the detected unused translated text to the current translation file. Unused
text has been deleted from the translation file.
@param target_locale_files [Array<I18nChecker::Locale::File>] @return [Array<I18nChecker::Locale::File>]
# File lib/i18n_checker/unused/result.rb, line 30 def apply(target_locale_files) locale_files = target_locale_files. group_by(&:file_name). map { |k, v| [k, v.first] } cleanup_locale_files = locale_files.map do |file_name, locale_file| return locale_file unless @locale_files.key?(file_name) unused_texts = @locale_files[file_name] locale_file.remove_texts(unused_texts.map(&:text)) end cleanup_locale_files.each(&:save) end
empty?()
click to toggle source
@return [Boolean]
# File lib/i18n_checker/unused/result.rb, line 21 def empty? unused_texts.empty? end