_toSettings = function (mixed) {
		var idx, jq;
		var settings = DataTable.settings;
		var tables = _pluck(settings, 'nTable');

		if (!mixed) {
			return [];
		}
		else if (mixed.nTable && mixed.oFeatures) {
			// DataTables settings object
			return [mixed];
		}
		else if (mixed.nodeName && mixed.nodeName.toLowerCase() === 'table') {
			// Table node
			idx = tables.indexOf(mixed);
			return idx !== -1 ? [settings[idx]] : null;
		}
		else if (mixed && typeof mixed.settings === 'function') {
			return mixed.settings().toArray();
		}
		else if (typeof mixed === 'string') {
			// jQuery selector
			jq = $(mixed).get();
		}
		else if (mixed instanceof $) {
			// jQuery object (also DataTables instance)
			jq = mixed.get();
		}

		if (jq) {
			return settings.filter(function (v, idx) {
				return jq.includes(tables[idx]);
			});
		}
	}
Abstraction for `context` parameter of the `Api` constructor to allow it to
take several different forms for ease of use.

Each of the input parameter types will be converted to a DataTables settings
object where possible.

@param  {string|node|jQuery|object} mixed DataTable identifier. Can be one
  of:

  * `string` - jQuery selector. Any DataTables' matching the given selector
    with be found and used.
  * `node` - `TABLE` node which has already been formed into a DataTable.
  * `jQuery` - A jQuery object of `TABLE` nodes.
  * `object` - DataTables settings object
  * `DataTables.Api` - API instance
@return {array|null} Matching DataTables settings objects. `null` or
  `undefined` is returned if no matching DataTable is found.
@ignore