design
design copied to clipboard
Remapping | differentiate *:=... from /*:=...
The remapping design doc states that /namespace/
is only prefixed to the match side of a rule if it does not begin with *
, **
, or /
. This means the rules *:=foo
and /*:=foo
are the same.
If code uses a relative name bar
and is put into namespace /ns
then the rule bar:=foo
will match while *:=foo
does not. However, if code uses a fully qualified name /bar
then both /bar:=foo
and /*:=foo
match. I think this difference in behavior when there is a leading /
could be confusing.
Proposal
Change the behavior to say /namespace/
is prefixed to the match side when a rule begins with *
, **
, or a token.