Will do.

> On Sep 19, 2018, at 11:42 AM, Jonathan Gibbons <jonathan.gibb...@oracle.com> 
> wrote:
> 
> If you're making the change, then you might add a test case based on Jan's 
> suggestion, testing
> 
>     "\u005ct".equals(`\u005ct`.unescape())
> 
> -- Jon
> 
> 
> On 9/19/18 7:40 AM, Jim Laskey wrote:
>> I see and good point.  I think Jon is correct.  If you are using the JLS as 
>> the basis of your argument, then you better damn well stick to the JLS.
>> 
>> I’ll make the changes.
>> 
>> Cheers,
>> 
>> — Jim
>> 
>> 
>>> On Sep 19, 2018, at 11:10 AM, Jan Lahoda <jan.lah...@oracle.com> wrote:
>>> 
>>> I guess Jon's comment was that (per JLS) the outcome of unicode unescapes 
>>> can then participate in the escape sequences in String literals. So, this:
>>> "\u005ct"
>>> 
>>> is (as far as I know) a single character-literal (a tab), while it seems 
>>> that
>>> `\u005ct`.unescape()
>>> 
>>> is two characters:
>>> \t
>>> 
>>> Not sure if that's an intent or not.
>>> 
>>> Jan
>>> 
>>> On 18.9.2018 20:55, Jim Laskey wrote:
>>>> The intent, of course, is to offset the raw string literals 
>>>> non-translation of Unicode escapes and escape sequences. That is, have the 
>>>> multi-line cake and eat the escapes too.
>>>> 
>>>> So a developer could have
>>>> 
>>>>    String s = `
>>>>                    \t\tTitle
>>>>                    \t\t\tbody
>>>>               ...
>>>> 
>>>>                    `.align().escape();
>>>> 
>>>> to have tabs inserted in the string.
>>>> 
>>>> "\\" "\u005c\u005c" and `\` all translate to the same string. `\u005c` 
>>>> translates to "\\u005c”. `\u005c`.unescape() thustranslates to be the same 
>>>> as "\\”, "\u005c\u005c" and `\`.
>>>> 
>>>> Cheers,
>>>> 
>>>> — Jim
>>>> 
>>>> 
>>>> 
>>>>> On Sep 18, 2018, at 3:33 PM, Jonathan Gibbons 
>>>>> <jonathan.gibb...@oracle.com> wrote:
>>>>> 
>>>>> Jim,
>>>>> 
>>>>> In JLS, and hence javac, Unicode escape handling happens early on at a 
>>>>> low level, before string escape handling. This means that it is 
>>>>> technically possible to write string escape sequences in terms of Unicode 
>>>>> escapes.
>>>>> 
>>>>> I'm not suggesting you should do the same here, but you should be aware 
>>>>> of the difference, compared to javac behavior.
>>>>> 
>>>>> -- Jon
>>>>> 
>>>>> 
>>>>> On 9/18/18 10:51 AM, Jim Laskey wrote:
>>>>>> Please review the code for String::unescape. Used to translate escape 
>>>>>> sequences in a string, typically in a raw string literal, into 
>>>>>> characters represented by those escapes.
>>>>>> 
>>>>>> webrev: http://cr.openjdk.java.net/~jlaskey/8202442/webrev/index.html
>>>>>> jbs: https://bugs.openjdk.java.net/browse/JDK-8202442
>>>>>> csr: https://bugs.openjdk.java.net/browse/JDK-8202443
>>>>>> 
>>>>>> Cheers,
>>>>>> 
>>>>>> — Jim
>>>>>> 
> 

Reply via email to