lib/rules/indent.js
function blockIndentationCheck(node) {
		// Skip inline blocks
		if (isSingleLineNode(node)) {
			return;
		}

		if (node.parent && (
				node.parent.type === "FunctionExpression" ||
				node.parent.type === "FunctionDeclaration" ||
				node.parent.type === "ArrowFunctionExpression"
			)) {
			checkIndentInFunctionBlock(node);
			return;
		}

		var indent;
		var nodesToCheck = [];

		// For this statements we should check indent from statement begin
		// (not from block begin)
		var statementsWithProperties = [
			"IfStatement", "WhileStatement", "ForStatement", "ForInStatement", "ForOfStatement", "DoWhileStatement"
		];

		if (node.parent && statementsWithProperties.indexOf(node.parent.type) !== -1 && isNodeBodyBlock(node)) {
			indent = getNodeIndent(node.parent);
		} else {
			indent = getNodeIndent(node);
		}

		if (node.type === "IfStatement" && node.consequent.type !== "BlockStatement") {
			nodesToCheck = [node.consequent];
		} else if (util.isArray(node.body)) {
			nodesToCheck = node.body;
		} else {
			nodesToCheck = [node.body];
		}

		if (nodesToCheck.length > 0) {
			checkNodesIndent(nodesToCheck, indent + indentSize);
		}

		if (node.type === "BlockStatement") {
			checkLastNodeLineIndent(node, indent);
		}
	}
function blockIndentationCheck(node) {
		// Skip inline blocks
		if (isSingleLineNode(node)) {
			return;
		}

		if (node.parent && (
				node.parent.type === "FunctionExpression" ||
				node.parent.type === "FunctionDeclaration" ||
				node.parent.type === "ArrowFunctionExpression"
			)) {
			checkIndentInFunctionBlock(node);
			return;
		}

		var indent;
		var nodesToCheck = [];

		// For this statements we should check indent from statement begin
		// (not from block begin)
		var statementsWithProperties = [
			"IfStatement", "WhileStatement", "ForStatement", "ForInStatement", "ForOfStatement", "DoWhileStatement"
		];

		if (node.parent && statementsWithProperties.indexOf(node.parent.type) !== -1 && isNodeBodyBlock(node)) {
			indent = getNodeIndent(node.parent);
		} else {
			indent = getNodeIndent(node);
		}

		if (node.type === "IfStatement" && node.consequent.type !== "BlockStatement") {
			nodesToCheck = [node.consequent];
		} else if (util.isArray(node.body)) {
			nodesToCheck = node.body;
		} else {
			nodesToCheck = [node.body];
		}

		if (nodesToCheck.length > 0) {
			checkNodesIndent(nodesToCheck, indent + indentSize);
		}

		if (node.type === "BlockStatement") {
			checkLastNodeLineIndent(node, indent);
		}
	}
function blockIndentationCheck ( node ) { // Skip inline blocks if ( isSingleLineNode ( node ) ) { return ; } if ( node . parent && ( node . parent . type === "FunctionExpression" || node . parent . type === "FunctionDeclaration" || node . parent . type === "ArrowFunctionExpression" ) ) { checkIndentInFunctionBlock ( node ) ; return ; } var indent ; var nodesToCheck = [ ] ; // For this statements we should check indent from statement begin // (not from block begin) var statementsWithProperties = [ "IfStatement" , "WhileStatement" , "ForStatement" , "ForInStatement" , "ForOfStatement" , "DoWhileStatement" ] ; if ( node . parent && statementsWithProperties . indexOf ( node . parent . type ) !== - 1 && isNodeBodyBlock ( node ) ) { indent = getNodeIndent ( node . parent ) ; } else { indent = getNodeIndent ( node ) ; } if ( node . type === "IfStatement" && node . consequent . type !== "BlockStatement" ) { nodesToCheck = [ node . consequent ] ; } else if ( util . isArray ( node . body ) ) { nodesToCheck = node . body ; } else { nodesToCheck = [ node . body ] ; } if ( nodesToCheck . length > 0 ) { checkNodesIndent ( nodesToCheck , indent + indentSize ) ; } if ( node . type === "BlockStatement" ) { checkLastNodeLineIndent ( node , indent ) ; } }
Check indentation for blocks
@param {ASTNode} node node to check
@returns {void}
Check indentation for blocks