Module: I18nContextGenerator::Writers::Helpers
- Included in:
- ContextExtractor, AndroidXmlWriter, StringsWriter, SwiftWriter, XcstringsWriter
- Defined in:
- lib/i18n_context_generator/writers/helpers.rb
Overview
Shared utilities for writer classes (description filtering, file discovery).
Instance Method Summary collapse
- #find_swift_files(path, ignore_patterns: []) ⇒ Object
- #result_matches_source_path?(result, source_path) ⇒ Boolean
- #skip_description?(description) ⇒ Boolean
- #writable_result?(result) ⇒ Boolean
Instance Method Details
#find_swift_files(path, ignore_patterns: []) ⇒ Object
29 30 31 32 33 |
# File 'lib/i18n_context_generator/writers/helpers.rb', line 29 def find_swift_files(path, ignore_patterns: []) PathPolicy.new(ignore_patterns: ignore_patterns, roots: [path]) .files([path]) { |file| FileClassifier.swift_source?(file) } .sort end |
#result_matches_source_path?(result, source_path) ⇒ Boolean
23 24 25 26 27 |
# File 'lib/i18n_context_generator/writers/helpers.rb', line 23 def result_matches_source_path?(result, source_path) return true unless result.respond_to?(:source_file) && result.source_file File.(result.source_file) == File.(source_path) end |
#skip_description?(description) ⇒ Boolean
10 11 12 |
# File 'lib/i18n_context_generator/writers/helpers.rb', line 10 def skip_description?(description) description.include?('No usage found') || description.include?('Processing failed') end |
#writable_result?(result) ⇒ Boolean
14 15 16 17 18 19 20 21 |
# File 'lib/i18n_context_generator/writers/helpers.rb', line 14 def writable_result?(result) return false unless result&.description return false if result.respond_to?(:actionable?) && !result.actionable? return false unless result.error.nil? return false if result.description.strip.empty? !skip_description?(result.description) end |