summaryrefslogtreecommitdiff
path: root/tools/eslint-rules/buffer-constructor.js
blob: 412fdaa934664bbbf0edeecf6caa3980c5924282 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
 * @fileoverview Require use of new Buffer constructor methods in lib
 * @author James M Snell
 */
'use strict';

//------------------------------------------------------------------------------
// Rule Definition
//------------------------------------------------------------------------------
const msg = 'Use of the Buffer() constructor has been deprecated. ' +
            'Please use either Buffer.alloc(), Buffer.allocUnsafe(), ' +
            'or Buffer.from()';
const astSelector = 'NewExpression[callee.name="Buffer"],' +
                    'CallExpression[callee.name="Buffer"]';

module.exports = function(context) {
  return {
    [astSelector]: (node) => context.report(node, msg)
  };
};