On Thu, 27 Aug 2026 12:23:33 GMT, Sean Mullan <[email protected]> wrote:

>> src/java.base/share/classes/java/util/Properties.java line 269:
>> 
>>> 267:      * If a logical line is spread across several natural lines, the
>>> 268:      * backslash escaping the line terminator sequence and any white
>>> 269:      * space at the start of the following line have no effect on the
>> 
>> Hello Naoto, I think the original text might be intentional. I suspect what 
>> it is trying to say is that the `` (backslash) character, and then the line 
>> terminator character, and finally any whitespace at the start of the 
>> following line will all be ignored.
>> 
>> Maybe rewording it to sometihng like the following might make it clear?
>> 
>> --- a/src/java.base/share/classes/java/util/Properties.java
>> +++ b/src/java.base/share/classes/java/util/Properties.java
>> @@ -239,8 +239,8 @@ public synchronized Object setProperty(String key, 
>> String value) {
>>       * Properties are processed in terms of lines. There are two
>>       * kinds of lines, <i>natural lines</i> and <i>logical lines</i>.
>>       * A natural line is defined as a line of
>> -     * characters that is terminated either by a set of line terminator
>> -     * characters ({@code \n} or {@code \r} or {@code \r\n})
>> +     * characters that is terminated either by a line terminator
>> +     * sequence (the characters {@code \n} or {@code \r} or {@code \r\n})
>>       * or by the end of the stream. A natural line may be either a blank 
>> line,
>>       * a comment line, or hold all or some of a key-element pair. A logical
>>       * line holds all the data of a key-element pair, which may be spread
>> @@ -266,7 +266,7 @@ public synchronized Object setProperty(String key, 
>> String value) {
>>       * <p>
>>       * If a logical line is spread across several natural lines, the
>>       * backslash escaping the line terminator sequence, the line
>> -     * terminator sequence, and any white space at the start of the
>> +     * terminator sequence itself, and any white space at the start of the
>>       * following line have no effect on the key or element values.
>>       * The remainder of the discussion of key and element parsing
>>       * (when loading) will assume all the characters constituting
>
> Ah, you are right. Your rewording looks good.

Yes, there are 3 items in the continuation, changing the second to "the line 
terminator sequence itself" will make this clearer.

On Jai's suggestion for the sentence in the previous paragraph then it could be 
slightly further to: "A natural line is defined as a line of characters that is 
terminated either by a line terminator sequence ({@code \n}, {@code \r}, or 
{@code \r\n}) or by the end of the stream."

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/32547#discussion_r3872173172

Reply via email to