Skip to content

Support overlapping --lines ranges in google-java-format. - #1093

Merged
copybara-service[bot] merged 1 commit into
masterfrom
test_622171655
Apr 6, 2024
Merged

copybara-service[bot] merged 1 commit into
masterfrom
test_622171655

Conversation

@copybara-service

Copy link
Copy Markdown

Support overlapping --lines ranges in google-java-format.

The strict behavior comes from the underlying ImmutableRangeSet.Builder class, which does not allow overlapping ranges to be added. Let's use TreeRangeSet instead.

I have also updated the documentation for the --lines flag to make it clear that the line numbers are a closed-closed interval.

Tested with:

blaze run :google_java_format_binary -- --lines=1:5 --lines=3:8 - < Foo.java

Before this CL the command fails with:

'--lines=1:5' '--lines=3:8' -
Overlapping ranges not permitted but found [0..5) overlapping [2..8)

After this CL the command succeeds.

The strict behavior comes from the underlying ImmutableRangeSet.Builder class, which does not allow overlapping ranges to be added. Let's use TreeRangeSet instead.

I have also updated the documentation for the --lines flag to make it clear that the line numbers are a closed-closed interval.

Tested with:
```
blaze run :google_java_format_binary -- --lines=1:5 --lines=3:8 - < Foo.java
```

Before this CL the command fails with:
```
'--lines=1:5' '--lines=3:8' -
Overlapping ranges not permitted but found [0..5) overlapping [2..8)
```

After this CL the command succeeds.

PiperOrigin-RevId: 622410610
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant