Commit f77c6675 authored by Philip Makedonski's avatar Philip Makedonski
Browse files

+ fix for issue with missing function statements in checkOrderOfLocalDefinitions

parent e4faa65b
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -708,19 +708,25 @@ class CodeStyleValidator extends AbstractDeclarativeValidator {
		if (function !== null) {
			if (function.statement !== null && function.statement.defOrStatementList !== null) {
				var last = function.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionBodyDef].toList.last
				var firstStatement = function.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionStatement].toList.first
				lastDef = NodeModelUtils.getNode(last).startLine
				var statements = function.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionStatement].toList
				if (!statements.isEmpty) {
					var firstStatement = statements.first
					firstStat = NodeModelUtils.getNode(firstStatement).startLine
				}
				lastDef = NodeModelUtils.getNode(last).startLine
			}
		}

		if (testcase !== null) {
			if (testcase.statement !== null && testcase.statement.defOrStatementList !== null) {
				var last = testcase.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionBodyDef].toList.last
				var firstStatement = testcase.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionStatement].toList.first
				lastDef = NodeModelUtils.getNode(last).startLine
				var statements = testcase.statement.defOrStatementList.defOrStatement.filter[it instanceof FunctionStatement].toList
				if (!statements.isEmpty) {
					var firstStatement = statements.toList.first
					firstStat = NodeModelUtils.getNode(firstStatement).startLine
				}
				lastDef = NodeModelUtils.getNode(last).startLine
			}
		}

		if (altstep != null && altstep.local.defs != null) {