Skip to content

should detect @example, @public and @private #6

@tunnckoCore

Description

@tunnckoCore

Currently it won't work if you just give @public, instead of @api public.
Same applies for examples which works if it find **Example** in codeblock, but not works if find @example

this works as expected

/**
 * Will try to promisify `fn` with native Promise,
 * otherwise will use `Bluebird` or you can give
 * different promise module as `Prome`, for example `q` or `promise` or `pinkie`.
 *
 * **Example**
 *
 * ```js
 * const fs = require('fs')
 * const request = require('request')
 * const redolent = require('redolent')
 *
 * redolent(fs.readFile)('package.json', 'utf-8').then(data => {
 *   console.log(JSON.parse(data).name)
 * })
 *
 * // handles multiple arguments by default
 * redolent(request)('http://www.tunnckocore.tk/').then(result => {
 *   const [httpResponse, body] = result
 * })
 * ```
 *
 * @name   redolent
 * @param  {Function} `<fn>` callback-style function to promisify
 * @param  {Function} `[Prome]` custom Promise module to use, e.g. `Q`
 * @return {Function} promisified function
 * @api public
 */
module.exports = function redolent (fn, Prome) {
  if (typeof fn !== 'function') {
    throw new TypeError('redolent expect a function')
  }

I'm not sure if the issue is exactly for here, I can't remember but I think this module is behind verb-ish things and behind my apidocs-cli which use helper-apidocs.

Another ugly thing is that it adds one line from where codeblock ends, means that tools on top of this module will show and create link to line where is the if statement and not where the module.exports is which requires you to add empty line above the module.exports which in some cases aren't good. For example, recently I've just tried https://inch-ci.org/, which seems to read jsdoc comments to create "documentation analytics". So it assumes that the code comment starts right before the function or in case module.exports. It also assumes using @example.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions