This rule applies whenever an if statement is followed by one or more elsif statements; the final elsif should be followed by an else statement.

The requirement for a final else statement is defensive programming.

The else statement should either take appropriate action or contain a suitable comment as to why no action is taken. This is consistent with the requirement to have a final else clause in a case statement.

Noncompliant Code Example

if x == 0
  doSomething
elsif x == 1
  doSomethingElse
end

Compliant Solution

if x == 0
  doSomething
elsif x == 1
  doSomethingElse
else
  raise 'An error has occured'
end

See