code: function RouteMacroManager(routePathFormat, opt_patternFormat, opt_separators) {
    this.routePathFormat = routePathFormat;
  
    this.convertPatternsToRegex(opt_patternFormat);
  
    if (opt_separators) {
      this.separators = opt_separators;
    }
  
    this.macros = this.extractMacros();
  }
docs: Handles macros presence on a route path. Assumes that macros are defined in
  the following way: <code>[prefix]name[split]pattern[suffix]</code>.
  @param {!String} routePathFormat The original path string for a route.
  @param {String=} opt_patternFormat The format the macro patterns are in. The
  default is the regex format, but other formats are also supported (see
  the PATTERN_FORMAT) functions in this file).
  @param {Array.String=} opt_separators The separators to be used as the prefix,
  split and suffix of the macro pattern. If none are given,
  RouteMacroManager.SEPARATORS will be used.
  @constructor