UNPKG

code-context

Version:

Parse a string of javascript to determine the context for functions, variables and comments based on the code that follows.

97 lines (69 loc) 2.25 kB
# code-context [![NPM version](https://badge.fury.io/js/code-context.svg)](http://badge.fury.io/js/code-context) [![Build Status](https://travis-ci.org/jonschlinkert/code-context.svg)](https://travis-ci.org/jonschlinkert/code-context) > Parse a string of javascript to determine the context for functions, variables and comments based on the code that follows. **Currently supports:** * code comments * function statements * function expressions * prototype methods * prototype properties * methods * properties * declarations ## Install Install with [npm](https://www.npmjs.com/) ```sh $ npm i code-context --save ``` ## Usage ```js var parseContext = require('code-context'); ``` Given the following code in `my-app.js`: ```js /** * My app */ var app = function(str) { return str }; ``` Pass `my-app.js` as a string: ```js var str = fs.readFileSync('my-app.js', 'utf8'); var context = parseContext(str); ``` Results in: ```js [{ type: 'comment', begin: 1, end: 3 }, { begin: 4, type: 'function', name: 'app', string: 'app()', original: 'var app = function(str) {' }] ``` ## Related projects * [extract-comments](https://github.com/jonschlinkert/extract-comments): Extract code comments from string or from a glob of files. * [parse-code-context](https://github.com/jonschlinkert/parse-code-context): Parse code context in a single line of javascript, for functions, variable declarations, methods, prototype… [more](https://github.com/jonschlinkert/parse-code-context) * [parse-comments](https://github.com/jonschlinkert/parse-comments): Parse code comments from JavaScript or any language that uses the same format. ## Running tests Install dev dependencies: ```sh $ npm i -d && npm test ``` ## Contributing Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/code-context/issues/new) ## Authors **Jon Schlinkert** + [github/jonschlinkert](https://github.com/jonschlinkert) + [twitter/jonschlinkert](http://twitter.com/jonschlinkert) ## License Copyright © 2015 Jon Schlinkert Released under the MIT license. *** _This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on August 01, 2015._