context: 	add: function(/*Object*/ source, /*String*/ method, /*Function*/ listener){		// Whenever 'method' is invoked, 'listener' will have the same scope.		// Trying to supporting a context object for the listener led to 		// complexity. 		// Non trivial to provide 'once' functionality here		// because listener could be the result of a dojo.hitch call,		// in which case two references to the same hitch target would not		// be equivalent. 		source = source || dojo.global;		// The source method is either null, a dispatcher, or some other function		var f = source[method];		// Ensure a dispatcher		if(!f||!f.listeners){			var d = dojo._listener.getDispatcher();			// dispatcher holds a list of handlers			d.listeners = (f ? [f] : []);			// put back in source						f = source[method] = d;		}		// The contract is that a handle is returned that can 		// identify this listener for disconnect. 		//		// The type of the handle is private. Here is it implemented as Integer. 		// DOM event code has this same contract but handle is Function 		// in non-IE browsers.		//		// Could implement 'before' with a flag and unshift.		return f.listeners.push(listener) ; /*Handle*/	},
meta: 4497	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/4497/156823ccc5030e2386a1b77d63b923457aafc600/connect.js/clean/_base/connect.js