eloquent/pathogen API
Class

Eloquent\Pathogen\Unix\AbsoluteUnixPath

class AbsoluteUnixPath extends AbsolutePath implements AbsoluteFileSystemPathInterface, AbsoluteUnixPathInterface

Represents an absolute Unix path.

Constants

ATOM_SEPARATOR

The character used to separate path atoms.

EXTENSION_SEPARATOR

The character used to separate path name atoms.

PARENT_ATOM

The atom used to represent 'parent'.

SELF_ATOM

The atom used to represent 'self'.

Methods

static AbsolutePathInterface fromString(string $path)

Creates a new absolute path from its string representation.

from AbsolutePath
static AbsolutePathInterface fromAtoms(mixed<string> $atoms, boolean|null $hasTrailingSeparator = null)

Creates a new absolute path from a set of path atoms.

from AbsolutePath
string string()

Generate a string representation of this path.

from AbsolutePath
PathInterface joinTrailingSlash()

Adds a trailing slash to this path.

from AbsolutePath
AbsolutePathInterface toAbsolute()

Get an absolute version of this path.

from AbsolutePath
RelativePathInterface toRelative()

Get a relative version of this path.

from AbsolutePath
boolean isRoot()

Determine whether this path is the root path.

from AbsolutePath
boolean isParentOf(AbsolutePathInterface $path)

Determine if this path is the direct parent of the supplied path.

from AbsolutePath
boolean isAncestorOf(AbsolutePathInterface $path)

Determine if this path is an ancestor of the supplied path.

from AbsolutePath
RelativePathInterface relativeTo(AbsolutePathInterface $path)

Determine the shortest path from the supplied path to this path.

from AbsolutePath
AbsolutePathInterface resolve(PathInterface $path)

Resolve the supplied path against this path.

from AbsolutePath

Details

in AbsolutePath at line 27
static public AbsolutePathInterface fromString(string $path)

Creates a new absolute path from its string representation.

Parameters

string $path The string representation of the absolute path.

Return Value

AbsolutePathInterface The newly created absolute path.

Exceptions

NonAbsolutePathException If the supplied string represents a non-absolute path.

in AbsolutePath at line 47
static public AbsolutePathInterface fromAtoms(mixed<string> $atoms, boolean|null $hasTrailingSeparator = null)

Creates a new absolute path from a set of path atoms.

Parameters

mixed<string> $atoms The path atoms.
boolean|null $hasTrailingSeparator True if the path has a trailing separator.

Return Value

AbsolutePathInterface The newly created absolute path.

Exceptions

InvalidPathAtomExceptionInterface If any of the supplied atoms are invalid.
InvalidPathStateException If the supplied arguments would produce an invalid path.

in AbsolutePath at line 63
public string string()

Generate a string representation of this path.

Return Value

string A string representation of this path.

in AbsolutePath at line 73
public PathInterface joinTrailingSlash()

Adds a trailing slash to this path.

Return Value

PathInterface A new path instance with a trailing slash suffixed to this path.

in AbsolutePath at line 91
public AbsolutePathInterface toAbsolute()

Get an absolute version of this path.

If this path is relative, a new absolute path with equivalent atoms will be returned. Otherwise, this path will be retured unaltered.

Return Value

AbsolutePathInterface An absolute version of this path.

Exceptions

InvalidPathStateException If absolute conversion is not possible for this path.

in AbsolutePath at line 105
public RelativePathInterface toRelative()

Get a relative version of this path.

If this path is absolute, a new relative path with equivalent atoms will be returned. Otherwise, this path will be retured unaltered.

Return Value

RelativePathInterface A relative version of this path.

Exceptions

EmptyPathException If this path has no atoms.

in AbsolutePath at line 123
public boolean isRoot()

Determine whether this path is the root path.

The root path is an absolute path with no atoms.

Return Value

boolean True if this path is the root path.

in AbsolutePath at line 135
public boolean isParentOf(AbsolutePathInterface $path)

Determine if this path is the direct parent of the supplied path.

Parameters

AbsolutePathInterface $path The child path.

Return Value

boolean True if this path is the direct parent of the supplied path.

in AbsolutePath at line 149
public boolean isAncestorOf(AbsolutePathInterface $path)

Determine if this path is an ancestor of the supplied path.

Parameters

AbsolutePathInterface $path The child path.

Return Value

boolean True if this path is an ancestor of the supplied path.

in AbsolutePath at line 170
public RelativePathInterface relativeTo(AbsolutePathInterface $path)

Determine the shortest path from the supplied path to this path.

For example, given path A equal to '/foo/bar', and path B equal to '/foo/baz', A relative to B would be '../bar'.

Parameters

AbsolutePathInterface $path The path that the generated path will be relative to.

Return Value

RelativePathInterface A relative path from the supplied path to this path.

in AbsolutePath at line 207
public AbsolutePathInterface resolve(PathInterface $path)

Resolve the supplied path against this path.

Parameters

PathInterface $path The path to resolve.

Return Value

AbsolutePathInterface The resolved path.