Module: Pod::Specification::DSL::RootAttributesAccessors
- Defined in:
- lib/cocoapods-core/specification/root_attribute_accessors.rb
Overview
Provides the accessors methods for the root attributes. Root attributes do not support multi-platform values and inheritance.
Instance Method Summary collapse
-
#authors ⇒ Hash
A hash containing the authors as the keys and their email address as the values.
-
#base_name ⇒ String
The name of the specification not including the names of the parents, in case of ‘sub-specifications’.
-
#cocoapods_version ⇒ Requirement
The CocoaPods version required to use the specification.
-
#deprecated ⇒ Bool
Whether the Pod has been deprecated.
-
#deprecated? ⇒ Bool
Wether the pod is deprecated either in favor of some other pod or simply deprecated.
-
#deprecated_in_favor_of ⇒ String
The name of the Pod that this one has been deprecated in favor of.
-
#description ⇒ String
A longer description of the Pod.
-
#docset_url ⇒ String
The docset URL.
-
#documentation_url ⇒ String, Nil
The documentation URL of the Pod if specified.
-
#homepage ⇒ String
The URL of the homepage of the Pod.
-
#license ⇒ Hash
A hash containing the license information of the Pod.
-
#module_map ⇒ String, Nil
The custom module map file of the Pod, if specified.
-
#name ⇒ String
The name of the specification including the names of the parents, in case of ‘sub-specifications’.
-
#prepare_command ⇒ String, Nil
The prepare command of the Pod if specified.
-
#screenshots ⇒ Array<String>
The list of the URL for the screenshots of the Pod.
-
#social_media_url ⇒ String
The social media URL.
-
#source ⇒ Hash{Symbol=>String}
The location from where the library should be retrieved.
-
#summary ⇒ String
A short description of the Pod.
-
#version ⇒ Version
The version of the Pod.
Instance Method Details
#authors ⇒ Hash
The value is coerced to a hash with a nil email if needed.
Returns a hash containing the authors as the keys and their email address as the values.
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 55 def = attributes_hash['authors'] if .is_a?(Hash) elsif .is_a?(Array) result = {} .each do |name_or_hash| if name_or_hash.is_a?(String) result[name_or_hash] = nil else result.merge!(name_or_hash) end end result elsif .is_a?(String) { => nil } end end |
#base_name ⇒ String
11 12 13 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 11 def base_name attributes_hash['name'] end |
#cocoapods_version ⇒ Requirement
39 40 41 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 39 def cocoapods_version @cocoapods_version ||= Requirement.create(attributes_hash['cocoapods_version']) end |
#deprecated ⇒ Bool
157 158 159 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 157 def deprecated attributes_hash['deprecated'] end |
#deprecated? ⇒ Bool
171 172 173 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 171 def deprecated? deprecated || !deprecated_in_favor_of.nil? end |
#deprecated_in_favor_of ⇒ String
164 165 166 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 164 def deprecated_in_favor_of attributes_hash['deprecated_in_favor_of'] end |
#description ⇒ String
The indentation is stripped from the description.
Returns A longer description of the Pod.
127 128 129 130 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 127 def description description = attributes_hash['description'] description.strip_heredoc.chomp if description end |
#docset_url ⇒ String
82 83 84 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 82 def docset_url attributes_hash['docset_url'] end |
#documentation_url ⇒ String, Nil
144 145 146 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 144 def documentation_url attributes_hash['documentation_url'] end |
#homepage ⇒ String
105 106 107 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 105 def homepage attributes_hash['homepage'] end |
#license ⇒ Hash
The indentation is stripped from the license text.
Returns A hash containing the license information of the Pod.
90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 90 def license license = attributes_hash['license'] if license.is_a?(String) { :type => license } elsif license.is_a?(Hash) license = convert_keys_to_symbol(license) license[:text] = license[:text].strip_heredoc if license[:text] license else {} end end |
#module_map ⇒ String, Nil
178 179 180 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 178 def module_map attributes_hash['module_map'] end |
#name ⇒ String
18 19 20 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 18 def name parent ? "#{parent.name}/#{base_name}" : base_name end |
#prepare_command ⇒ String, Nil
150 151 152 153 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 150 def prepare_command command = attributes_hash['prepare_command'] command.strip_heredoc.chomp if command end |
#screenshots ⇒ Array<String>
The value is coerced to an array.
Returns The list of the URL for the screenshots of the Pod.
137 138 139 140 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 137 def screenshots value = attributes_hash['screenshots'] [*value] end |
#social_media_url ⇒ String
76 77 78 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 76 def attributes_hash['social_media_url'] end |
#source ⇒ Hash{Symbol=>String}
112 113 114 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 112 def source convert_keys_to_symbol(attributes_hash['source']) end |
#summary ⇒ String
118 119 120 121 |
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 118 def summary summary = attributes_hash['summary'] summary.strip_heredoc.chomp if summary end |