Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^3: YAML::XS perl/regexp (?u:(?u:

by ikegami (Pope)
on Dec 19, 2017 at 19:29 UTC ( #1205864=note: print w/replies, xml ) Need Help??

in reply to Re^2: YAML::XS perl/regexp (?u:(?u:
in thread YAML::XS perl/regexp (?u:(?u:

You can add understanding of !!perl/regexp [ pattern, isu ] at any time, but backwards compatibility requires making the generation of that an option. Eventually, once support has been established, it could default to the new method.

Replies are listed 'Best First'.
Re^4: YAML::XS perl/regexp (?u:(?u:
by tinita (Parson) on Dec 19, 2017 at 21:17 UTC
    Another possibility would be to continue just using a string. Check with regexp_pattern(), if there are any flags (ignoring u), just store the stringified regex, otherwise store the pattern itself. This would still lead to unnecessary (?:...) but it wouldn't grow in roundtrips.
    Have been looking into universal.c how regexp_pattern() is implemented. At the moment it's too much magic for me to understand.

      I don't know what you mean by "check with regexp_pattern(), if there are any flags (ignoring u)". Do you mean "check if the results of ( regexp_pattern(qr/$pat/) )[1] contains anything but u"? It never will (unless you use use re "/...", which would be bad here).

        I mean, when Dump()ing a regex, not when Load()ing it.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1205864]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (5)
As of 2018-07-22 20:54 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (455 votes). Check out past polls.