Class: XcodeArchiveCache::BuildSettings::StringInterpolator

Inherits:
Object
  • Object
show all
Defined in:
lib/build_settings/string_interpolator.rb

Instance Method Summary collapse

Constructor Details

#initializeStringInterpolator

Returns a new instance of StringInterpolator.



5
6
7
# File 'lib/build_settings/string_interpolator.rb', line 5

def initialize
  @parser = Parser.new
end

Instance Method Details

#interpolate(string, build_settings) ⇒ String

Parameters:

Returns:

  • (String)


14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/build_settings/string_interpolator.rb', line 14

def interpolate(string, build_settings)
  names = parser.find_all_names(string)
  result = string

  names.each do |name|
    value = build_settings[name]
    next unless value

    replacement_regex = parser.create_entry_regex(name)
    result = result.gsub(replacement_regex, value)
  end

  result
end