Utf8 strings - noindex

Added a few features missing from UTF8 Strings without index.

NOTE : It is slow and space-consuming (lots of allocated characters and no GC), however by experimenting a bit (read : force UnicodeChar as a Universal intern class), the performance is surprisingly close to the old ones and the memory-use becomes acceptable once again : 
* < 10% loss for iteration (with iterator, not index, this is much slower) and concat
* substring is slower by a significant margin (75%), however considering the cost of the ancient one (close to none), I guess this is still acceptable.
Comme tu veux, je peux la modifier demain, sinon au pire ça sera quand
UTF-8 sera officiellement supporté!
Le 2014-08-26 21:04, "Jean Privat" <notifications@github.com> a écrit :

> In lib/string_experimentations/utf8_noindex.nit:
>
> > +
> > +	redef fun item do
> > +		if not is_created then
> > +			it = new UnicodeChar.from_ns(ns, bytepos)
> > +			is_created = true
> > +		end
> > +		return it
> > +	end
> > +
> > +	redef fun next
> > +	do
> > +		if not is_created then
> > +			it = new UnicodeChar.from_ns(ns, bytepos)
> > +		end
> > +		is_created = false
> > +		var pace = it.len
>
> je dois attendre la modif avant de merger?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/privat/nit/pull/684/files#r16752847>.
>