Method: PathList::GitignoreRuleBuilder#process_two_stars

Defined in:
lib/path_list/gitignore_rule_builder.rb

#process_two_starsObject

rubocop:disable Metrics/MethodLength



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/path_list/gitignore_rule_builder.rb', line 94

def process_two_stars # rubocop:disable Metrics/MethodLength
  return unless @s.two_stars?
  return break! if @s.end?

  if @s.slash?
    if @s.end?
      @re.append_any_non_dir
      dir_only!
    elsif @s.slash?
      unmatchable_rule!
    else
      if nothing_emitted?
        never_anchored!
      else
        emit_any_dir
      end
      process_star_end_after_slash
    end
  else
    @re.append_any_non_dir
  end
end