When two functions have the same implementation, either it was a mistake - something else was intended - or the duplication was intentional, but may be confusing to maintainers. In the latter case, the code should be refactored.

Noncompliant Code Example

class MyClass {
  fun calculateCode(): String {
    doTheThing()
    doOtherThing()
    return "done"
  }

  fun getStatus(): String {  // Noncompliant
    doTheThing()
    doOtherThing()
    return "done"
  }
}

Compliant Solution

class MyClass {
  fun calculateCode(): String {
    doTheThing()
    doOtherThing()
    return "done"
  }

  fun getStatus(): String = calculateCode()
}

Exceptions

Methods with fewer than 2 statements are ignored.