Path

dotty.tools.io.Path
See thePath companion object
class Path

The Path constructor is private so we can enforce some semantics regarding how a Path might relate to the world.

''Note: This library is considered experimental and should not be used unless you know what you are doing.''

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Directory
class File

Members list

Value members

Concrete methods

def /(child: String): Path

Creates a new Path with the specified path appended. Assumes the type of the new component implies the type of the result.

Creates a new Path with the specified path appended. Assumes the type of the new component implies the type of the result.

Attributes

def /(child: Path): Path
def /(child: Directory): Directory
def /(child: File): File
def addExtension(ext: String): Path
def createDirectory(force: Boolean, failIfExists: Boolean): Directory
def createFile(failIfExists: Boolean): File
def delete(): Unit

Deletes the path recursively. Returns false on failure. Use with caution!

Deletes the path recursively. Returns false on failure. Use with caution!

Attributes

def endsWith(other: Path): Boolean
override def equals(other: Any): Boolean

Compares the receiver object (this) with the argument object (that) for equivalence.

Compares the receiver object (this) with the argument object (that) for equivalence.

Any implementation of this method should be an equivalence relation:

  • It is reflexive: for any instance x of type Any, x.equals(x) should return true.
  • It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any instances x, y, and z of type Any if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is usually necessary to override hashCode to ensure that objects which are "equal" (o1.equals(o2) returns true) hash to the same scala.Int. (o1.hashCode.equals(o2.hashCode)).

Value parameters

that

the object to compare against this object for equality.

Attributes

Returns

true if the receiver object is equivalent to the argument; false otherwise.

Definition Classes
Any
def hasExtension(ext: String, exts: String*): Boolean
override def hashCode(): Int

Calculates a hash code value for the object.

Calculates a hash code value for the object.

The default hashing algorithm is platform dependent.

Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.

Attributes

Returns

the hash code value for this object.

Definition Classes
Any
def ifDirectory[T](f: Directory => T): Option[T]
def ifFile[T](f: File => T): Option[T]
def isFresher(other: Path): Boolean
def isSame(other: Path): Boolean
def length: Long
def name: String

Attributes

Returns

The path of the parent directory, or root if path is already root

def path: String
def relativize(other: Path): Path
def resolve(other: Path): Path

If this path is absolute, returns it: otherwise, returns an absolute path made up of root / this.

If this path is absolute, returns it: otherwise, returns an absolute path made up of root / this.

Attributes

def toFile: File
override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Any
def toURI: URI
def toURL: URL
def truncate(): Boolean

Equivalent to walkFilter(_ => true).

Equivalent to walkFilter(_ => true).

Attributes

def walkFilter(cond: Path => Boolean): Iterator[Path]

If this path is a directory, recursively iterate over its contents. The supplied condition is a filter which is applied to each element, with that branch of the tree being closed off if it is false. So for example if the condition is false for some subdirectory, nothing under that directory will be in the Iterator. If it's true, all files for which the condition holds and are directly in that subdirectory are in the Iterator, and all sub-subdirectories are recursively evaluated

If this path is a directory, recursively iterate over its contents. The supplied condition is a filter which is applied to each element, with that branch of the tree being closed off if it is false. So for example if the condition is false for some subdirectory, nothing under that directory will be in the Iterator. If it's true, all files for which the condition holds and are directly in that subdirectory are in the Iterator, and all sub-subdirectories are recursively evaluated

Attributes

Concrete fields

val jpath: JPath