code: function(listData, set){
  			var _List = this.List || (this.Map && this.Map.List);
  			var list = new _List(listData.data);
  			canReflect.eachKey(listData, function (val, prop) {
  				if (prop !== 'data') {
  					canReflect.setKeyValue(list, prop, val);
  				}
  			});
  
  			list[this.listQueryProp] = set;
  			return list;
  		}
docs: @function can-connect/can/map/map.list list
  @parent can-connect/can/map/map.hydrators
  
  Creates a [can-connect/can/map/map._List] instance given raw data.
  
  @signature `connection.list(listData, set)`
  
  Creates an instance of [can-connect/can/map/map._List] if available, otherwise creates
  [can-connect/can/map/map._Map].List if available.
  
  This will add properties on the raw `listData` array to the created list instance. e.g:
  ```js
  var listData = [{id: 1, name:"do dishes"}, ...];
  listData.loadedFrom; // "shard 5"
  
  var todoList = todoConnection.list(listData, {});
  todoList.loadedFrom; // "shard 5"
  ```
  
  @param {can-connect.listData} listData the raw list data.
  @param {can-query-logic/query} query the set the data belongs to.
  @return {can-connect.List} a [can-connect/can/map/map._List] instance containing instances of
  [can-connect/can/map/map._Map] built from the list items in `listData`.