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