The current implementation of impl Resolve<Literal> for IriParsed is not optimal as it allocates intermediate string(s).
This implementation uses the standard Resolve<Iri> for the literal's datatype and wraps the text as MownStr::Ref. The key for this implementation is to move it into the literal module where we can access the private fields of Literal.
I am not a big fan of moving this particular implementation of Resolve away from all the others...
Turns out that I managed to solved problem inside the _join module (619fe8e).
The current implementation of
impl Resolve<Literal> for IriParsed
is not optimal as it allocates intermediate string(s).This implementation uses the standard
Resolve<Iri>
for the literal's datatype and wraps the text asMownStr::Ref
. The key for this implementation is to move it into theliteral
module where we can access the private fields ofLiteral
.