resourcename

package
v0.32.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2021 License: MIT Imports: 3 Imported by: 22

Documentation

Overview

Package resourcename implements simple functions to manipulate UTF-8 encoded AIP resource names.

Index

Constants

View Source
const RevisionSeparator = '@'

RevisionSeparator is the separator character used to separate resource IDs from revision IDs.

Variables

This section is empty.

Functions

func ContainsWildcard added in v0.32.0

func ContainsWildcard(name string) bool

ContainsWildcard reports whether the specified resource name contains any wildcard segments.

func HasParent added in v0.28.0

func HasParent(name, parent string) bool

HasParent tests whether name has the specified parent. Wildcard segments (-) are considered.

func Match added in v0.31.0

func Match(pattern, name string) bool

Match reports whether the specified resource name matches the specified resource name pattern.

func Sprint added in v0.30.0

func Sprint(pattern string, variables ...string) string

Sprint formats resource name variables according to a pattern and returns the resulting string.

func Sscan added in v0.29.0

func Sscan(name, pattern string, variables ...*string) error

Sscan scans a resource name, storing successive segments into successive variables as determined by the provided pattern.

Types

type Literal added in v0.28.0

type Literal string

Literal is the literal part of a resource name segment.

EBNF

Literal  = RESOURCE_ID | RevisionLiteral ;
RevisionLiteral = RESOURCE_ID "@" REVISION_ID ;

func (Literal) HasRevision added in v0.28.0

func (l Literal) HasRevision() bool

HasRevision returns true if the literal has a valid revision.

func (Literal) ResourceID added in v0.28.0

func (l Literal) ResourceID() string

ResourceID returns the literal's resource ID.

func (Literal) RevisionID added in v0.28.0

func (l Literal) RevisionID() string

RevisionID returns the literal's revision ID.

type Scanner added in v0.28.0

type Scanner struct {
	// contains filtered or unexported fields
}

Scanner scans a resource name.

func (*Scanner) Full added in v0.28.0

func (s *Scanner) Full() bool

Full returns true if the scanner has detected a full resource name.

func (*Scanner) Init added in v0.28.0

func (s *Scanner) Init(name string)

Init initializes the scanner.

func (*Scanner) Scan added in v0.28.0

func (s *Scanner) Scan() bool

Scan to the next segment.

func (*Scanner) Segment added in v0.28.0

func (s *Scanner) Segment() Segment

Segment returns the current segment.

func (*Scanner) ServiceName added in v0.28.0

func (s *Scanner) ServiceName() string

ServiceName returns the service name, when the scanner has detected a full resource name.

type Segment

type Segment string

Segment is a segment of a resource name or a resource name pattern.

EBNF

Segment  = Literal | Variable ;
Variable = "{" Literal "}" ;

func (Segment) IsVariable added in v0.28.0

func (s Segment) IsVariable() bool

IsVariable reports whether the segment is a variable segment.

func (Segment) IsWildcard added in v0.28.0

func (s Segment) IsWildcard() bool

IsWildcard reports whether the segment is a wildcard.

func (Segment) Literal added in v0.28.0

func (s Segment) Literal() Literal

Literal returns the literal value of the segment. For variables, the literal value is the name of the variable.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL