How to use comment-parser - 10 common examples

To help you get started, we’ve selected a few comment-parser examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github jscs-dev / jscs-jsdoc / lib / jsdoc.js View on Github external
var commentParser = require('comment-parser');

var TypeParser = require('jsdoctypeparser').Parser;
var TypeBuilder = require('jsdoctypeparser').Builder;

var getNodeColumn = require('./utils').getNodeColumn;
var getLineInfo = require('./utils').getLineInfo;

// wtf but it needed to stop writing warnings to stdout
// and revert exceptions functionality
TypeBuilder.ENABLE_EXCEPTIONS = true;

// jscs:disable requireCamelCaseOrUpperCaseIdentifiers
var PARSERS = {
    tag: commentParser.PARSERS.parse_tag,
    type: commentParser.PARSERS.parse_type,
    description: commentParser.PARSERS.parse_description,
};
// jscs:enable
var RE_SPACE = /\s/;

module.exports = {

    /**
     * @param {string} commentNode
     * @returns {DocComment}
     */
    createDocCommentByCommentNode: function(commentNode) {
        var column = getNodeColumn(commentNode);
        var lines = [(new Array(column + 1)).join(' '), '/*', commentNode.value, '*/']
            .join('').split('\n').map(function(v) {
                return v.substr(column);
github jscs-dev / jscs-jsdoc / lib / jsdoc.js View on Github external
var assert = require('assert');
var commentParser = require('comment-parser');

var TypeParser = require('jsdoctypeparser').Parser;
var TypeBuilder = require('jsdoctypeparser').Builder;

var getNodeColumn = require('./utils').getNodeColumn;
var getLineInfo = require('./utils').getLineInfo;

// wtf but it needed to stop writing warnings to stdout
// and revert exceptions functionality
TypeBuilder.ENABLE_EXCEPTIONS = true;

// jscs:disable requireCamelCaseOrUpperCaseIdentifiers
var PARSERS = {
    tag: commentParser.PARSERS.parse_tag,
    type: commentParser.PARSERS.parse_type,
    description: commentParser.PARSERS.parse_description,
};
// jscs:enable
var RE_SPACE = /\s/;

module.exports = {

    /**
     * @param {string} commentNode
     * @returns {DocComment}
     */
    createDocCommentByCommentNode: function(commentNode) {
        var column = getNodeColumn(commentNode);
        var lines = [(new Array(column + 1)).join(' '), '/*', commentNode.value, '*/']
            .join('').split('\n').map(function(v) {
github gajus / eslint-plugin-jsdoc / src / iterateJsdoc.js View on Github external
const parseComment = (commentNode, indent, trim = true) => {
  // Preserve JSDoc block start/end indentation.
  return commentParser(`${indent}/*${commentNode.value}${indent}*/`, {
    // @see https://github.com/yavorskiy/comment-parser/issues/21
    parsers: [
      commentParser.PARSERS.parse_tag,
      skipSeeLink(commentParser.PARSERS.parse_type),
      skipSeeLink(
        (str, data) => {
          if ([
            'example', 'return', 'returns', 'throws', 'exception',
            'access', 'version', 'since', 'license', 'author',
          ].includes(data.tag)) {
            return null;
          }

          return commentParser.PARSERS.parse_name(str, data);
        },
      ),

      // parse_description
      (str, data) => {
github gajus / eslint-plugin-jsdoc / src / iterateJsdoc.js View on Github external
const parseComment = (commentNode, indent, trim = true) => {
  // Preserve JSDoc block start/end indentation.
  return commentParser(`${indent}/*${commentNode.value}${indent}*/`, {
    // @see https://github.com/yavorskiy/comment-parser/issues/21
    parsers: [
      commentParser.PARSERS.parse_tag,
      skipSeeLink(commentParser.PARSERS.parse_type),
      skipSeeLink(
        (str, data) => {
          if ([
            'example', 'return', 'returns', 'throws', 'exception',
            'access', 'version', 'since', 'license', 'author',
          ].includes(data.tag)) {
            return null;
          }

          return commentParser.PARSERS.parse_name(str, data);
        },
      ),
github flood-io / element / packages / element / src / test-script / Compiler.ts View on Github external
private parsedComments(key: string) {
		if (!this.parsedCommentsMemo) {
			let comments = parseComments(this.originalSource)
			let description = '',
				name = ''
			if (comments.length) {
				let { description: body } = comments[0]
				let [line1, ...lines] = body.split('\n')
				name = line1
				description = lines
					.filter((l: string) => l.length)
					.join('\n')
					.trim()
			}
			this.parsedCommentsMemo = { name, description }
		}

		return this.parsedCommentsMemo[key]
	}
github UX-and-I / storybook-design-token / src / parsers / less.parser.ts View on Github external
private parseCommentBlock(string: string): any {
    return parseCommentBlock(`/*${string}*/`)[0];
  }
}
github UX-and-I / storybook-design-token / src / parsers / scss.parser.ts View on Github external
private parseCommentBlock(string: string): any {
    return parseCommentBlock(`/*${string}*/`)[0];
  }
}
github UX-and-I / storybook-design-token / src / parsers / css.parser.ts View on Github external
private parseCommentBlock(string: string): any {
    return parseCommentBlock(`/*${string}*/`)[0];
  }
}
github forcedotcom / lightning-language-server / packages / lwc-language-server / src / javascript / compiler.ts View on Github external
function sanitizeComment(comment: string): string {
    const parsed = commentParser('/*' + comment + '*/');
    return parsed && parsed.length > 0 ? parsed[0].source : null;
}
github sugarcoat / sugarcoat / generators / pattern-library / library / js / parser.js View on Github external
var util = require( 'util' );
var log = require( 'npmlog' );
var commentParser = require( 'comment-parser' );
var parserFunctions = commentParser.PARSERS;
var beautify_html = require( 'js-beautify' ).html;

/**
 * 
 * Takes a section object with title key and files string or array and returns the parsed comments
 *
 */
function Parser() {}

Parser.prototype = {
    
    customParsers: {
        parsers: [
            
            parserFunctions.parse_tag,

comment-parser

Generic JSDoc-like comment parser

MIT
Latest version published 6 months ago

Package Health Score

76 / 100
Full package analysis