lib/core.js
function(iobj, interface_list){
	var retval = true;
	each(interface_list, function(iface){
	    //print('|' + typeof(in_key) + ' || ' + typeof(in_val));
	    //print('|' + in_key + ' || ' + in_val);
	    if( typeof(iobj[iface]) == 'undefined' &&
		typeof(iobj.prototype[iface]) == 'undefined' ){
		    retval = false;
		    throw new Error(_what_is(iobj) +
				    ' breaks interface ' + iface);
                }
	});
	return retval;
    }
function(iobj, interface_list){
	var retval = true;
	each(interface_list, function(iface){
	    //print('|' + typeof(in_key) + ' || ' + typeof(in_val));
	    //print('|' + in_key + ' || ' + in_val);
	    if( typeof(iobj[iface]) == 'undefined' &&
		typeof(iobj.prototype[iface]) == 'undefined' ){
		    retval = false;
		    throw new Error(_what_is(iobj) +
				    ' breaks interface ' + iface);
                }
	});
	return retval;
    }
function ( iobj , interface_list ) { var retval = true ; each ( interface_list , function ( iface ) { //print('|' + typeof(in_key) + ' || ' + typeof(in_val)); //print('|' + in_key + ' || ' + in_val); if ( typeof ( iobj [ iface ] ) == 'undefined' && typeof ( iobj . prototype [ iface ] ) == 'undefined' ) { retval = false ; throw new Error ( _what_is ( iobj ) + ' breaks interface ' + iface ) ; } } ) ; return retval ; }
Check to see if all top-level objects in a namespace supply an
"interface".

Mostly intended for use during unit testing.

TODO: Unit test this to make sure it catches both prototype (okay I
think) and uninstantiated objects (harder/impossible?).

@param {} iobj - the object/constructor in question
@param {} interface_list - the list of interfaces (as a strings) we're looking for
@returns {boolean} boolean
Check to see if all top - level objects in a namespace supply an interface .