UNPKG

1.31 kBJavaScriptView Raw
1/**
2 * @fileoverview disallow use of the Buffer() constructor
3 * @author Teddy Katz
4 */
5"use strict";
6
7//------------------------------------------------------------------------------
8// Rule Definition
9//------------------------------------------------------------------------------
10
11module.exports = {
12 meta: {
13 docs: {
14 description: "disallow use of the Buffer() constructor",
15 category: "Node.js and CommonJS",
16 recommended: false,
17 url: "https://eslint.org/docs/rules/no-buffer-constructor"
18 },
19 schema: [],
20 messages: {
21 deprecated: "{{expr}} is deprecated. Use Buffer.from(), Buffer.alloc(), or Buffer.allocUnsafe() instead."
22 }
23 },
24
25 create(context) {
26
27 //----------------------------------------------------------------------
28 // Public
29 //----------------------------------------------------------------------
30
31 return {
32 "CallExpression[callee.name='Buffer'], NewExpression[callee.name='Buffer']"(node) {
33 context.report({
34 node,
35 messageId: "deprecated",
36 data: { expr: node.type === "CallExpression" ? "Buffer()" : "new Buffer()" }
37 });
38 }
39 };
40 }
41};