Method: JsDuck::DocParser#parse_balanced

Defined in:
lib/jsduck/doc_parser.rb

#parse_balanced(re_open, re_close, re_rest) ⇒ Object

Helper method to parse a string up to a closing brace, balancing opening-closing braces in between.

Parameters:

  • re_open

    The beginning brace regex

  • re_close

    The closing brace regex

  • re_rest

    Regex to match text without any braces and strings



542
543
544
545
546
547
548
549
550
551
# File 'lib/jsduck/doc_parser.rb', line 542

def parse_balanced(re_open, re_close, re_rest)
  result = parse_with_strings(re_rest)
  while look(re_open)
    result += match(re_open)
    result += parse_balanced(re_open, re_close, re_rest)
    result += match(re_close)
    result += parse_with_strings(re_rest)
  end
  result
end