Collection size should not always be true or false

This product is not supported for your selected Datadog site. ().

Metadata

ID: swift-code-style/collection-size

Language: Unknown

Severity: Notice

Category: Best Practices

Description

This rule identifies conditions where a collection’s size is compared in a way that will always evaluate to true or false, such as checking if count < 0 or count >= 0. Since collection counts are never negative, these comparisons are logically incorrect and indicate a potential flaw or misunderstanding in the code.

To avoid violations of this rule, ensure that comparisons involving collection sizes use valid and meaningful operators. For example, use count == 0 to check if a collection is empty, or count > 0 to verify it contains elements. Reviewing the logic behind size comparisons helps maintain correct and readable code.

Non-Compliant Code Examples

if (something.count < 0) {
    // some statement
} 
if (something.count >= 0) {
    // some statement
} 

Compliant Code Examples

if (something.count == 0) {
    // some statement
} 
if (something.count > 0) {
    // some statement
} 
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Security