This is inspired by the code in [vinyl-fs][] `src`. I needed a function that essentially did the same thing but could be used with stream or non-stream code. ## Usage ```js {%= replace(docs("example.js"), "./", name) %} ``` **async** An `.async()` method is exposed for non-stream, async usage. ```js contents.async({path: 'README.md'}, function (err, file) { // results in something like: // // { path: 'README.md', // stat: // { dev: 16777218, // mode: 33188, // nlink: 1, // uid: 501, // gid: 20, // rdev: 0, // blksize: 4096, // ino: 26436116, // size: 2443, // blocks: 8, // atime: Fri Jul 17 2015 03:01:54 GMT-0400 (EDT), // mtime: Wed Jul 15 2015 02:46:55 GMT-0400 (EDT), // ctime: Wed Jul 15 2015 02:46:55 GMT-0400 (EDT), // birthtime: Tue Jul 14 2015 23:03:58 GMT-0400 (EDT) }, // contents: } }); ``` **sync** A `.sync()` method is exposed for non-stream, sync usage. ```js var file = {path: 'README.md'}; contents.sync(file); // results in something like: // // { path: 'README.md', // stat: // { dev: 16777218, // mode: 33188, // nlink: 1, // uid: 501, // gid: 20, // rdev: 0, // blksize: 4096, // ino: 26436116, // size: 2443, // blocks: 8, // atime: Fri Jul 17 2015 03:01:54 GMT-0400 (EDT), // mtime: Wed Jul 15 2015 02:46:55 GMT-0400 (EDT), // ctime: Wed Jul 15 2015 02:46:55 GMT-0400 (EDT), // birthtime: Tue Jul 14 2015 23:03:58 GMT-0400 (EDT) }, // contents: } ``` ## History **v0.2.0** - renames `.getContents` method to `.async` - adds `.sync` method