Raw strings starting/ending with backtick (original) (raw)

Weijun Wang weijun.wang at oracle.com
Sat Nov 24 15:34:39 UTC 2018


On Nov 24, 2018, at 9:11 PM, Jim Laskey <james.laskey at oracle.com> wrote:

There are several approaches but the simplest is using strip(). Example, `abc`.strip() Concat is another approach, ” + abc + “

But this means the literal inside the constant pool of the class will be "abc ", right? This is a little uncomfortable to me.

Not perfect but other delimiter choices also have these edge cases.

How about the Rust r###"..."### style?

Thanks Max

Cheers, — Jim

Sent from my iPad On Nov 24, 2018, at 8:55 AM, Attila Kelemen <attila.kelemen85 at gmail.com> wrote:

Hi, Reading the JEP on raw string literals, I saw no mentions of the case when a string starts (or ends) with backtick. I guessed, that maybe the compiler will close the literal when it finds more than half the number of backticks than the beginning (nothing implied this behaviour just tried it and I know that it might be very suprising in other cases). I have tried with the latest early access compiler and (not too suprisingly) it didn't behave this way and simply failed when starting the literal with a backtick. My question is, of course: What is the strategy for this case? Or is it explicitly ignored as too much of an edge case (and left to the developer to deal with)? Thanks, Attila Kelemen



More information about the compiler-dev mailing list