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 multiplatform values and inheritance.

Instance Method Summary collapse

Instance Method Details

#authorsHash

Note:

The value is coherced 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.

Examples:

Possible values


{ 'Author' => '[email protected]' }
[ 'Author', { 'Author_2' => '[email protected]' } ]
[ 'Author', 'Author_2' ]
'Author'


47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 47

def authors
  authors = attributes_hash["authors"]
  if authors.is_a?(Hash)
    authors
  elsif authors.is_a?(Array)
    result = {}
    authors.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 authors.is_a?(String)
    { authors => nil }
  end
end

#base_nameString



13
14
15
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 13

def base_name
  attributes_hash["name"]
end

#descriptionString

Note:

The indentation is stripped from the description.

Returns A longer description of the Pod.



106
107
108
109
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 106

def description
  description = attributes_hash["description"]
  description.strip_heredoc if description
end

#homepageString



85
86
87
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 85

def homepage
  attributes_hash["homepage"]
end

#licenseHash

Note:

The indentation is stripped from the license text.

Returns A hash containing the license information of the Pod.



70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 70

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

#nameString



20
21
22
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 20

def name
  parent ? "#{parent.name}/#{base_name}" : base_name
end

#prepare_commandObject



121
122
123
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 121

def prepare_command
  attributes_hash["prepare_command"]
end

#screenshotsArray<String>

Note:

The value is coherced to an array.

Returns The list of the URL for the screenshots of the Pod.



116
117
118
119
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 116

def screenshots
  value = attributes_hash["screenshots"]
  [*value]
end

#sourceHash{Symbol=>String}



92
93
94
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 92

def source
  convert_keys_to_symbol(attributes_hash["source"])
end

#summaryString



98
99
100
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 98

def summary
  attributes_hash["summary"]
end

#versionVersion



31
32
33
# File 'lib/cocoapods-core/specification/root_attribute_accessors.rb', line 31

def version
   @version ||= root? ? Version.new(attributes_hash["version"]) : root.version
end