memoize-path
Easily create reusable, stackable file paths from memoized path segments.
Install
Install with npm:
$ npm install memoize-path --save
Usage
A function is returned when a string is passed on the arguments. Otherwise the memoized value is returned either when the function is called (the memoized value is also exposed on the function's .path
property);
Example
var memo = ; /** * When a string is passed, a function is returned */ var cwd = ; // use `cwd`var foo = ;var bar = ;var baz = ; // use `foo`var qux = ;// use `qux`var fez = ; /** * Get a memoized path by calling the function */ console;//=> /User/dev/memo-pathconsole;//=> /User/dev/memo-path/fooconsole;//=> /User/dev/memo-path/barconsole;//=> /User/dev/memo-path/bazconsole;//=> /User/dev/memo-path/foo/a/b/cconsole;//=> /User/dev/memo-path/foo/a/b/c/x/y/z /** * The memoized path is also exposed on the function's `.path` property */ console;//=> /User/dev/memo-pathconsole;//=> /User/dev/memo-path/fooconsole;//=> /User/dev/memo-path/barconsole;//=> /User/dev/memo-path/bazconsole;//=> /User/dev/memo-path/foo/a/b/cconsole;//=> /User/dev/memo-path/foo/a/b/c/x/y/z /** * The parent directory is exposed as `.parent` */ console;//=> /User/devconsole;//=> /User/dev/memo-pathconsole;//=> /User/dev/memo-pathconsole;//=> /User/dev/memo-pathconsole;//=> /User/dev/memo-path/foo/a/b/cconsole;//=> /User/dev/memo-path/foo/a/b/c/x/y/z
Related projects
You might also be interested in these projects:
- is-absolute: Returns true if a file path is absolute. | homepage
- is-relative: Returns
true
if the path appears to be relative. | homepage - micromatch: Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. Just… more | homepage
- parse-filepath: Parse a filepath into an object. Falls back on the native node.js
path.parse
method if… more | homepage - relative: Get the relative filepath from path A to path B. Calculates from file-to-directory, file-to-file, directory-to-file,… more | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Running tests
Install dev dependencies:
$ npm install -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v, on March 27, 2016.