code: function isBlockLikeStatement(sourceCode, node) {
  
      // do-while with a block is a block-like statement.
      if (node.type === "DoWhileStatement" && node.body.type === "BlockStatement") {
          return true;
      }
  
      /*
       * IIFE is a block-like statement specially from
       * JSCS#disallowPaddingNewLinesAfterBlocks.
       */
      if (isIIFEStatement(node)) {
          return true;
      }
  
      // Checks the last token is a closing brace of blocks.
      const lastToken = sourceCode.getLastToken(node, astUtils.isNotSemicolonToken);
      const belongingNode = lastToken && astUtils.isClosingBraceToken(lastToken)
          ? sourceCode.getNodeByRangeIndex(lastToken.range[0])
          : null;
  
      return Boolean(belongingNode) && (
          belongingNode.type === "BlockStatement" ||
          belongingNode.type === "SwitchStatement"
      );
  }
docs: Checks whether the given node is a block-like statement.
  This checks the last token of the node is the closing brace of a block.
  
  @param {SourceCode} sourceCode The source code to get tokens.
  @param {ASTNode} node The node to check.
  @returns {boolean} `true` if the node is a block-like statement.
  @private