-------------------------------------------------------------------------------
DojoX Collections
-------------------------------------------------------------------------------
Version 0.9
Release date: 05/27/2007
-------------------------------------------------------------------------------
Project state: production
-------------------------------------------------------------------------------
Project authors
	Tom Trenka (ttrenka@gmail.com)
-------------------------------------------------------------------------------
Project description

DojoX Collections is the port of the original Dojo 0.4.x collection classes.
It is intended for use by people who are looking for a little bit more 
functionality out of common collections, like ArrayLists or Dictionaries.

Included are the Iterator and DictionaryIterator classes, both of which can
operate on standard arrays and objects (respectively).
-------------------------------------------------------------------------------
Dependencies:

DojoX Collections has no dependencies, outside of Dojo Core.
-------------------------------------------------------------------------------
Documentation

See the API documentation for Dojo (http://dojotoolkit.org/api).
-------------------------------------------------------------------------------
Installation instructions

Grab the following from the Dojo SVN Repository:
http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/collections.js
http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/collections/*

Install into the following directory structure:
/dojox/collections/

...which should be at the same level as your Dojo checkout.
-------------------------------------------------------------------------------
