The result of checking whether a symbol can be renamed.
When `has_range` is false, this represents the protocol's `defaultBehavior` result. Keeping the range inline avoids allocating it solely to represent the alternative result shape.