lib/util.js
function check(args, names) {
                var msg         = '',
                    name        = '',
                    template    = '{{ name }} coud not be empty!',
                    
                    indexOf     = Array.prototype.indexOf,
                    
                    lenNames    = names.length,
                    lenArgs     = args.length,
                    lessArgs    = lenArgs < lenNames,
                    emptyIndex  = indexOf.call(args),
                    isEmpty     = ~emptyIndex;
                
                if (lessArgs || isEmpty) {
                    if (lessArgs)
                        name        = names[lenNames - 1];
                    else
                        name        = names[emptyIndex];
                    
                    msg         = Util.render(template, {
                        name: name
                    });
                    
                    throw(Error(msg));
                }
                
                return check;
            }
function check(args, names) {
                var msg         = '',
                    name        = '',
                    template    = '{{ name }} coud not be empty!',
                    
                    indexOf     = Array.prototype.indexOf,
                    
                    lenNames    = names.length,
                    lenArgs     = args.length,
                    lessArgs    = lenArgs < lenNames,
                    emptyIndex  = indexOf.call(args),
                    isEmpty     = ~emptyIndex;
                
                if (lessArgs || isEmpty) {
                    if (lessArgs)
                        name        = names[lenNames - 1];
                    else
                        name        = names[emptyIndex];
                    
                    msg         = Util.render(template, {
                        name: name
                    });
                    
                    throw(Error(msg));
                }
                
                return check;
            }
function check ( args , names ) { var msg = '' , name = '' , template = '{{ name }} coud not be empty!' , indexOf = Array . prototype . indexOf , lenNames = names . length , lenArgs = args . length , lessArgs = lenArgs < lenNames , emptyIndex = indexOf . call ( args ) , isEmpty = ~ emptyIndex ; if ( lessArgs || isEmpty ) { if ( lessArgs ) name = names [ lenNames - 1 ] ; else name = names [ emptyIndex ] ; msg = Util . render ( template , { name : name } ) ; throw ( Error ( msg ) ) ; } return check ; }
Check is all arguments with names present

@param name
@param arg
@param type
Check is all arguments with names present