class Resources::Writer
Attributes
generated_at[RW]
resources[RW]
Public Class Methods
new(resources)
click to toggle source
# File lib/robjc/writer.rb, line 9 def initialize(resources) @resources = resources end
Public Instance Methods
add_to_target(target)
click to toggle source
# File lib/robjc/writer.rb, line 21 def add_to_target(target) references = [ header_file_reference, implementation_file_reference ] target.add_file_references end
write()
click to toggle source
# File lib/robjc/writer.rb, line 13 def write @generated_at = Time.now ensure_directory write_resources_class write_images_class write_strings_class end
Private Instance Methods
directory_path()
click to toggle source
# File lib/robjc/writer.rb, line 53 def directory_path 'Resources/CMDResources' end
ensure_directory()
click to toggle source
# File lib/robjc/writer.rb, line 57 def ensure_directory `mkdir -p #{directory_path}` end
erb(template)
click to toggle source
# File lib/robjc/writer.rb, line 61 def erb(template) template_path = File.expand_path("../../../data/views/#{template}.erb", __FILE__) template = ERB.new(File.read(template_path), nil, nil) template.result(binding) end
render_template_for_class(template, klass)
click to toggle source
# File lib/robjc/writer.rb, line 40 def render_template_for_class(template, klass) [ "h", "m" ].each do |e| render_template_to_file "#{template}.#{e}", "#{klass}.#{e}" end end
render_template_to_file(template, file)
click to toggle source
# File lib/robjc/writer.rb, line 46 def render_template_to_file(template, file) File.open(File.join(directory_path, file), 'w') do |f| result = erb template f.write(result) end end
write_images_class()
click to toggle source
# File lib/robjc/writer.rb, line 32 def write_images_class render_template_for_class 'image_resources', 'CMDImageResources' end
write_resources_class()
click to toggle source
# File lib/robjc/writer.rb, line 28 def write_resources_class render_template_for_class 'resources', 'CMDResources' end
write_strings_class()
click to toggle source
# File lib/robjc/writer.rb, line 36 def write_strings_class render_template_for_class 'string_resources', 'CMDStringResources' end