RecursiveGlob

case object RecursiveGlob extends RelativeGlob

A RelativeGlob that matches any path. Can be combined with other Glob instances to build recursive queries:

 val scalaSources = Glob("/foo/bar") / RecursiveGlob / "*.scala"
 scalaSources.matches(Paths.get("/foo/bar/Foo.scala")) // true
 scalaSources.matches(Paths.get("/foo/bar/baz/fizz/buzz/Bar.scala")) // true
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait Glob
class Object
trait Matchable
class Any

Type members

Inherited types

type MirroredElemLabels = EmptyTuple
Inherited from:
Singleton
type MirroredElemTypes = EmptyTuple
Inherited from:
Singleton
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from:
Mirror
type MirroredMonoType = Singleton
Inherited from:
Singleton
type MirroredType = Singleton
Inherited from:
Singleton

Value members

Concrete methods

def matches(path: Path): Boolean

Inherited methods

def /(regex: Regex): RelativeGlob

Appends a relative glob specified by a regex pattern to an existing Glob. For example:

Appends a relative glob specified by a regex pattern to an existing Glob. For example:

 val glob = Glob("foo/bar")
 val scalaSources = glob / "^[^.].*\\.scala".r
 scalaSources.matches(Paths.get("foo/bar/Foo.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/.hidden.scala")) // false

Note that it is not possible to specify a recursive glob this way because ** is not valid in regex. To make a recursive glob, combine with RecursiveGlob:

 val scalaSources = Glob("foo/bar") / ** / "^[^.].*\\.scala".r
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/Foo.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/.hidden.scala")) // false

On Windows, \ will be treated as a regex escape character but / will be treated as a path separator.

Value parameters:
regex

the pattern to apply

Returns:

a Glob with the new RelativeGlob appended to the query.

Inherited from:
RelativeGlob
def /(relativeGlob: RelativeGlob): RelativeGlob

Appends an additional RelativeGlob to this RelativeGlob:

Appends an additional RelativeGlob to this RelativeGlob:

 val glob = Glob("foo/bar")
 val scalaSources = glob / ** / "*.scala"
 scalaSources.matches(Paths.get("foo/bar/Foo.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/Bar.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/Baz.java")) // false
Value parameters:
relativeGlob

the additional query string to parse and append

Returns:

a Glob with the new RelativeGlob appended to the query.

Inherited from:
RelativeGlob
def /(relativeGlob: String): RelativeGlob

Appends additional components to this RelativeGlob:

Appends additional components to this RelativeGlob:

 val glob = Glob("foo/bar")
 val scalaSources = glob / "**<code>/</code>*.scala"
 scalaSources.matches(Paths.get("foo/bar/Foo.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/Bar.scala")) // true
 scalaSources.matches(Paths.get("foo/bar/baz/fizz/buzz/Baz.java")) // false
Value parameters:
relativeGlob

the additional query string to parse and append

Returns:

a Glob with the new RelativeGlob appended to the query.

Inherited from:
RelativeGlob
def fromProduct(p: Product): MirroredMonoType
Inherited from:
Singleton
def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product
override def toString: String
Definition Classes
SingleComponentMatcher -> Any
Inherited from:
SingleComponentMatcher (hidden)