Class: HMap::HMapHelper
- Inherits:
-
Object
- Object
- HMap::HMapHelper
- Defined in:
- lib/hmap/helper/hmap_helper.rb
Overview
Gen hmap file and vfs file
Instance Attribute Summary collapse
-
#directory ⇒ Object
readonly
Returns the value of attribute directory.
-
#framework_entrys ⇒ Object
readonly
Returns the value of attribute framework_entrys.
-
#headers ⇒ Object
readonly
Returns the value of attribute headers.
-
#i_headers ⇒ Object
readonly
Returns the value of attribute i_headers.
-
#iquote_headers ⇒ Object
readonly
Returns the value of attribute iquote_headers.
Instance Method Summary collapse
- #add_framework_entry(configurations, platforms, name, framework_name, module_path, headers) ⇒ Object
- #header_mappings(headers, headers_sandbox, module_name, type) ⇒ Object
-
#initialize(directory) ⇒ HMapHelper
constructor
A new instance of HMapHelper.
- #write_hmap_vfs_to_paths(hmap_name = nil, vfs_name = '') ⇒ Object
- #write_hmapfile(name = nil) ⇒ Object
- #write_vfsfiles(name = '') ⇒ Object
- #xcconfig_header_setting(is_framework, path = nil, name = nil) ⇒ Object
Constructor Details
#initialize(directory) ⇒ HMapHelper
Returns a new instance of HMapHelper.
135 136 137 138 139 140 |
# File 'lib/hmap/helper/hmap_helper.rb', line 135 def initialize(directory) puts "Current hmap files dir: #{directory}" @directory = Pathname(directory) @framework_entrys = [] @headers = HMapHeaders.new end |
Instance Attribute Details
#directory ⇒ Object (readonly)
Returns the value of attribute directory.
133 134 135 |
# File 'lib/hmap/helper/hmap_helper.rb', line 133 def directory @directory end |
#framework_entrys ⇒ Object (readonly)
Returns the value of attribute framework_entrys.
133 134 135 |
# File 'lib/hmap/helper/hmap_helper.rb', line 133 def framework_entrys @framework_entrys end |
#headers ⇒ Object (readonly)
Returns the value of attribute headers.
133 134 135 |
# File 'lib/hmap/helper/hmap_helper.rb', line 133 def headers @headers end |
#i_headers ⇒ Object (readonly)
Returns the value of attribute i_headers.
133 134 135 |
# File 'lib/hmap/helper/hmap_helper.rb', line 133 def i_headers @i_headers end |
#iquote_headers ⇒ Object (readonly)
Returns the value of attribute iquote_headers.
133 134 135 |
# File 'lib/hmap/helper/hmap_helper.rb', line 133 def iquote_headers @iquote_headers end |
Instance Method Details
#add_framework_entry(configurations, platforms, name, framework_name, module_path, headers) ⇒ Object
165 166 167 168 169 170 |
# File 'lib/hmap/helper/hmap_helper.rb', line 165 def add_framework_entry(configurations, platforms, name, framework_name, module_path, headers) entry = Target::FrameworkEntry.new_entrys_from_configurations_platforms(configurations, platforms, name, framework_name, module_path, headers) @framework_entrys += entry end |
#header_mappings(headers, headers_sandbox, module_name, type) ⇒ Object
172 173 174 |
# File 'lib/hmap/helper/hmap_helper.rb', line 172 def header_mappings(headers, headers_sandbox, module_name, type) @headers.add_headers(type, headers, module_name, headers_sandbox) end |
#write_hmap_vfs_to_paths(hmap_name = nil, vfs_name = '') ⇒ Object
160 161 162 163 |
# File 'lib/hmap/helper/hmap_helper.rb', line 160 def write_hmap_vfs_to_paths(hmap_name = nil, vfs_name = '') write_vfsfiles(vfs_name) write_hmapfile(hmap_name) end |
#write_hmapfile(name = nil) ⇒ Object
142 143 144 145 146 147 148 149 |
# File 'lib/hmap/helper/hmap_helper.rb', line 142 def write_hmapfile(name = nil) return if directory.nil? @headers.headers.each do |entry| path = directory.join(entry.file_name(name)) hmap_write_headers_to_path(path, entry.headers) end end |
#write_vfsfiles(name = '') ⇒ Object
151 152 153 154 155 156 157 158 |
# File 'lib/hmap/helper/hmap_helper.rb', line 151 def write_vfsfiles(name = '') return if framework_entrys.empty? vfs_directory = directory.join(name).join('vfs') puts "Current vfs files dir: #{vfs_directory}" Target::FrameworkVFS.new(framework_entrys).write(vfs_directory) puts 'vfs files write finish.' end |
#xcconfig_header_setting(is_framework, path = nil, name = nil) ⇒ Object
176 177 178 179 180 181 182 183 184 185 186 187 |
# File 'lib/hmap/helper/hmap_helper.rb', line 176 def xcconfig_header_setting(is_framework, path = nil, name = nil) i_s = @headers.(path, name) setting_values = [[BuildSettingConstants::INGERITED, i_s].join(' ')] setting_values << xcconfig_vfs_setting(path) if is_framework setting_values << @headers.(path, name) setting_values.each_with_object({}) do |value, setting| setting.merge!({ BuildSettingConstants::OTHER_CFLAGS => value, BuildSettingConstants::OTHER_CPLUSPLUSFLAGS => value }) { |_, oldval, newval| [oldval, newval].join(' ') } end end |