Module: I18nContextGenerator::GeneratedComment
- Defined in:
- lib/i18n_context_generator/generated_comment.rb
Overview
Shared ownership and merge rules for context generated into destination comments. Writers remain responsible for destination-specific escaping.
Class Method Summary collapse
- .managed?(comment, prefix:) ⇒ Boolean
- .merge(existing:, generated:, prefix:, mode:, separator:) ⇒ Object
Class Method Details
.managed?(comment, prefix:) ⇒ Boolean
23 24 25 |
# File 'lib/i18n_context_generator/generated_comment.rb', line 23 def managed?(comment, prefix:) prefix.empty? || comment.to_s.include?(prefix) end |
.merge(existing:, generated:, prefix:, mode:, separator:) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/i18n_context_generator/generated_comment.rb', line 9 def merge(existing:, generated:, prefix:, mode:, separator:) return generated if existing.nil? || existing.empty? || mode.to_s == 'replace' if prefix.empty? return existing if existing.include?(generated) return "#{existing}#{separator}#{generated}" end return replace_managed(existing, generated, prefix) if managed?(existing, prefix: prefix) "#{existing}#{separator}#{generated}" end |