Represents a relative resource template, meaning that it will never contain a leading slash or
trailing verb (":").

Examples:
projects
projects/{project}
foo/{bar=**}/fizz/*

Templates use the syntax of the API platform; see
https://github.com/googleapis/api-common-protos/blob/master/google/api/http.proto
for details. A template consists of a sequence of literals, wildcards, and variable bindings,
where each binding can have a sub-path. A string representation can be parsed into an
instance of AbsoluteResourceTemplate, which can then be used to perform matching and instantiation.

CloneableInstantiable
ImplementsGoogle\ApiCore\ResourceTemplate\ResourceTemplateInterface
Methods
public __construct( $path)
 

RelativeResourceTemplate constructor.

  • throws ValidationException
public __toString()
 
    public match( $path)
     
      public matches( $path)
       
        public render(array $bindings)
         
          Properties
          private $segments
           
          • var Segment[] $segments
          Methods
          private static buildKeySegmentTuples(array $segments)
           
          • return array[] A list of [string, Segment] tuples
          private static countDoubleWildcards(array $segments)
           
          • return int
          private static flattenKeySegmentTuples(array $keySegmentTuples)
           
          • return array[] A list of [string, Segment] tuples
          private matchException( $path, $reason)
          private renderingException( $bindings, $reason)
          Methods
          private static buildKeySegmentTuples(array $segments)
           
          • return array[] A list of [string, Segment] tuples
          private static countDoubleWildcards(array $segments)
           
          • return int
          private static flattenKeySegmentTuples(array $keySegmentTuples)
           
          • return array[] A list of [string, Segment] tuples
          © 2020 Bruce Wells
          Search Namespaces \ Classes
          ConfigurationNumbers (0-9.) only