 			return true;
 		}
 		
+		/**
+		 * Internal method for removing an object from the list. This method
+		 * should be used by the Data class only.
+		 * @param idx the index of the object to remove
+		 * @return the removed object
+		 * @private
+		 */
 		internal function removeAt(idx:int):Object
 		{
 			var o:Object = Arrays.removeAt(_list, idx);


		// -- Visitation ------------------------------------------------------
		
		public function visit(visitor:Function, reverse:Boolean=false,
			filter:Function=null):Boolean
		{

	import flare.util.Sort;
	import flare.util.Sort;

	/**
	 * A list of nodes or edges maintained by a Data instance.
	 */
	public class DataList extends Proxy
	{
		/** Hashed set of items in the data list. */
		private var _map:Dictionary = new Dictionary();
		/** Array of items in the data set. */
		private var _list:Array = [];
		/** Default property values to be applied to new items. */
		private var _defs:Object = null;
		/** Cache of Stats objects for item properties. */
		private var _stats:Object = {};
		/** The underlying array storing the list. */
		internal function get list():Array { return _list; }
		
