Am Sonntag, den 04.07.2010, 17:50 +0200 schrieb strk:

> > However, the problem of case-insensitive lookup remains. The difficulty
> > here is that a string_table reference is required to find caseless
> > string_table::keys for comparison. There's no possibility of using this
> > to index a multi-index container without storing a caseless key for all
> > properties.
> 
> Are you sure about this ?
> I'd think you could use an arbitrary comparator for the indexes ?

I've pushed another version to launchpad ( lp:~bwy/+junk/gnash-devel )
that uses a second index of case-insensitive keys. This has the same
behaviour as before, and keeps all changes internal to PropertyList.

The branch also uses string_table::key for DisplayObject names.

Together the changes speed up the swfdec testsuite run, which I've been
using as a rough benchmark, consistently by about 10 seconds, or 3%.

A possible memory and maintenance optimization would be to have a
special caseless map just for objects in SWF6 and below instead of
always storing an extra key. It would save sizeof size_t bytes per
property and make the code cleaner, but needs better testing of mixed
versions.

bwy

--
Use Gnash, the GNU Flash Player!
http://www.gnu.org/software/gnash/

Benjamin Wolsey, Software Developer - http://benjaminwolsey.de
C++ and Open-Source Flash blog - http://www.benjaminwolsey.de/bwysblog

xmpp:b...@xabber.de
http://identi.ca/bwy

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

_______________________________________________
Gnash-dev mailing list
Gnash-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnash-dev

Reply via email to