code: function enterFunction(node) {
              const isBlock = node.body.type === "BlockStatement",
                  useStrictDirectives = isBlock
                      ? getUseStrictDirectives(node.body.body) : [];
  
              if (mode === "function") {
                  enterFunctionInFunctionMode(node, useStrictDirectives);
              } else if (useStrictDirectives.length > 0) {
                  if (isSimpleParameterList(node.params)) {
                      reportAll(useStrictDirectives, mode, shouldFix(mode));
                  } else {
                      context.report({ node: useStrictDirectives[0], messageId: "nonSimpleParameterList" });
                      reportAllExceptFirst(useStrictDirectives, "multiple", true);
                  }
              }
          }
docs: Enter a function and either:
  - Push a new nested scope onto the stack (in 'function' mode).
  - Report all the Use Strict Directives (in the other modes).
  @param {ASTNode} node The function declaration or expression.
  @returns {void}