# prefer-else

Prefer else in compact terminal value decisions

An adjacent sequence of terminal value branches forms one decision.
You SHOULD write that decision as an `if`/`else if`/`else` chain.

- Category: style
- Level: warning
- Fix: none
- Scope: module

## Reported

```ds title="main.ds"
function sign(value: int32): string {
    if (value < 0) {
        return "negative";
    }
    return "nonnegative";
}
```

## Accepted

```ds title="main.ds"
function sign(value: int32): string {
    if (value < 0) {
        return "negative";
    } else {
        return "nonnegative";
    }
}
```

[language/linter/src/rules/style/prefer_else.rs:6](https://github.com/destack-sh/destack/blob/main/language/linter/src/rules/style/prefer_else.rs#L6)
