Class: Gitlab::Git::GitmodulesParser::State
- Inherits:
-
Object
- Object
- Gitlab::Git::GitmodulesParser::State
- Defined in:
- lib/gitlab/git/gitmodules_parser.rb
Instance Method Summary collapse
-
#initialize ⇒ State
constructor
A new instance of State.
- #section_started? ⇒ Boolean
- #set_attribute(attr, value) ⇒ Object
- #start_section(section) ⇒ Object
- #submodules_by_name ⇒ Object
Constructor Details
#initialize ⇒ State
Returns a new instance of State.
21 22 23 24 |
# File 'lib/gitlab/git/gitmodules_parser.rb', line 21 def initialize @result = {} @current_submodule = nil end |
Instance Method Details
#section_started? ⇒ Boolean
38 39 40 |
# File 'lib/gitlab/git/gitmodules_parser.rb', line 38 def section_started? !@current_submodule.nil? end |
#set_attribute(attr, value) ⇒ Object
34 35 36 |
# File 'lib/gitlab/git/gitmodules_parser.rb', line 34 def set_attribute(attr, value) @current_submodule[attr] = value end |
#start_section(section) ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/gitlab/git/gitmodules_parser.rb', line 26 def start_section(section) # In some .gitmodules files (e.g. nodegit's), a header # with the same name appears multiple times; we want to # accumulate the configs across these @current_submodule = @result[section] || { 'name' => section } @result[section] = @current_submodule end |
#submodules_by_name ⇒ Object
42 43 44 |
# File 'lib/gitlab/git/gitmodules_parser.rb', line 42 def submodules_by_name @result end |