Crate nodejs_path

Source
Expand description

§Description

The default operation of the path module varies based on the operating system on which crate is compiling. Specifically, when compiling on a Windows operating system, the path module will assume that Windows-style paths are being used. So using nodejs_path::basename() might yield different results on POSIX and Windows:

On POSIX:

 nodejs_path::basename!("C:\\temp\\myfile.html");
 // Returns: "C:\\temp\\myfile.html"

On Windows:

nodejs_path::basename!("C:\\temp\\myfile.html");
// Returns: "myfile.html"

To achieve consistent results when working with Windows file paths on any operating system, use nodejs_path::win32: On POSIX and Windows:

assert_eq!(&nodejs_path::win32::basename!("C:\\temp\\myfile.html"), "myfile.html")

To achieve consistent results when working with POSIX file paths on any operating system, use nodejs_path::posix: On POSIX and Windows:

assert_eq!(&nodejs_path::posix::basename!("/tmp/myfile.html"), "myfile.html")

§Porting

Rust doesn’t support variadic function. So, variadic functions of Node.js must be ported to macros.

Modules§

posix
nodejs_path::posix provides access to POSIX specific implementations of the path methods.
win32
nodejs_path::win32 provides access to Windows-specific implementations of the path methods.

Macros§

basename
Returns the last portion of a path, similar to the Unix basename command. Trailing directory separators are ignored.
join
The method joins all given path segments together using the platform-specific separator as a delimiter, then normalizes the resulting path.
resolve
Resolves a sequence of paths or path segments into an absolute path.

Structs§

Parsed

Constants§

delimiter
Provides the platform-specific path delimiter:
sep
Provides the platform-specific path segment separator:

Functions§

basename_impl
basename_impl_without_ext
cwd
Get current working directory. Just like process.cwd()
dirname
Returns the directory name of a path, similar to the Unix dirname command. Trailing directory separators are ignored,
extname
Returns the extension of the path, from the last occurrence of the . (period) character to end of string in the last portion of the path. If there is no . in the last portion of the path, or if there are no . characters other than the first character of the basename of path, an empty string is returned.
format
Returns a path string from an object. This is the opposite of nodejs_path::parse().
is_absolute
The method determines if path is an absolute path. If the given path is a zero-length string, false will be returned. #Example
join_impl
normalize
The path.normalize() method normalizes the given path, resolving ‘..’ and ‘.’ segments.
parse
Example
relative
method returns the relative path from from to to based on the current working directory. If from and to each resolve to the same path (after calling resolve() on each), a zero-length string is returned.
resolve_impl
to_namespaced_path