Skip to content
This repository was archived by the owner on Jan 17, 2020. It is now read-only.

readmeio/node-comments-parser

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

node-comments-parser

Description

This scripts extracts comments from JavaScript code. It's built on esprima.

Example

Transform the following example.js:

'use strict';

/**
 * Class description
 * @class Test
 * @constructor
 */
function Test() {
  
}

Test.prototype = {
  /**
   * 
   * @param {string} text
   */
  log: function(text) {
    console.log(text);
  }
};

module.exports = Test;

to Object:

[
  {
	start: 3,
	end: 7,
	jsDoc: true,
	lines: [ 'Class description' ],
	tags: [
	  { name: 'class',       value: 'Test' },
	  { name: 'constructor', value: true   }
	]
  },
  {
	start: 13,
	end: 16,
	jsDoc: true,
	lines: [],
	tags: [
	  { name: 'param', value: '{string} text' }
	]
  }
]

Installation

Install with npm:

npm install comments-parser

Usage

var fs     = require('fs');
var parser = require('comments-parser');

var source = fs.readFileSync(__dirname + '/example.js', 'utf-8');
var comments = parser(source);

// Test parsed data
expect(comments[0].lines).to.equal([ 'Class description' ]);

Options

parser(options:Object):

Name Default Description
addEsprimaInfo false Add esprima parser data to a comment
parseJsDocTags true If false jsdoc tags processed as text
hideJsDocTags true If parseJsDocTags is true remove tags from lines property
trim true Trim lines, values: true, false, 'right'

License

Licensed under MIT.

About

This scripts extracts comments from JavaScript code

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%