Uri.parse

Parsing is performed according to RFC 2396

<pre> ^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))? 12 3 4 5 6 7 8 9

2 isolates scheme 4 isolates authority 5 isolates path 7 isolates query 9 isolates fragment </pre>

This was originally a state-machine; it turned out to be a lot faster (~40%) when unwound like this instead.

class Uri
final
parse
(,
bool relative = false
)

Meta