Module: Gapic::PathPattern::Parser

Defined in:
lib/gapic/path_pattern/parser.rb

Overview

A path pattern parser. takes a pattern and transforms it into a collection of parsed segments

Class Method Summary collapse

Class Method Details

.parse(path_pattern) ⇒ Gapic::PathPattern::Pattern

Parameters:

  • path_pattern (String)

    The path pattern to be parsed

Returns:



33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/gapic/path_pattern/parser.rb', line 33

def self.parse path_pattern
  remainder = path_pattern.sub(%r{^/}, "").sub(%r{/$}, "")

  segments = []
  position = 0
  until remainder.empty?
    segment, position, remainder = parse_first_segment_with_position remainder, position
    segments << segment
  end

  Pattern.new format_pattern(path_pattern), segments
end