Handbook Glossary
factorcode.org
irl


Vocabulary
punycode

Definition
USING: urls ;

IN: punycode

TUPLE: irl < url ;


Methods
USING: accessors combinators kernel punycode urls ;

M: irl >url
[ <url> ] dip {
[ protocol>> >>protocol ]
[ username>> >>username ]
[ password>> >>password ]
[ host>> [ >idna ] [ f ] if* >>host ]
[ port>> >>port ]
[ path>> >>path ]
[ query>> >>query ]
[ anchor>> >>anchor ]
} cleave ;


USING: kernel present prettyprint.backend prettyprint.custom
prettyprint.sections punycode ;

M: irl pprint*
\ IRL" record-vocab dup present "IRL\" " "\"" pprint-string
;


USING: accessors assocs combinators kernel make present punycode
punycode.private urls.private ;

M: irl present
[
{
[ unparse-protocol ]
[ unparse-iauthority ]
[ path>> % ]
[
query>> dup assoc-empty?
[ drop ] [ "?" % assoc>iquery % ] if
]
[ anchor>> [ "#" % present % ] when* ]
} cleave
] "" make ;