/* automatically generated by JSCoverage - do not edit */
if (typeof _$jscoverage === 'undefined') _$jscoverage = {};
if (! _$jscoverage['Object/bind-methods.js']) {
  _$jscoverage['Object/bind-methods.js'] = [];
  _$jscoverage['Object/bind-methods.js'][10] = 0;
  _$jscoverage['Object/bind-methods.js'][12] = 0;
  _$jscoverage['Object/bind-methods.js'][18] = 0;
  _$jscoverage['Object/bind-methods.js'][19] = 0;
  _$jscoverage['Object/bind-methods.js'][20] = 0;
  _$jscoverage['Object/bind-methods.js'][24] = 0;
  _$jscoverage['Object/bind-methods.js'][25] = 0;
  _$jscoverage['Object/bind-methods.js'][26] = 0;
}
_$jscoverage['Object/bind-methods.js'][10]++;
"use strict";
_$jscoverage['Object/bind-methods.js'][12]++;
var f = require("../Function/functionalize"), bindBind = require("../Function/bind-bind"), isFunction = require("../Function/is-function"), fn;
_$jscoverage['Object/bind-methods.js'][18]++;
fn = bindBind((function (scope, source, key) {
  _$jscoverage['Object/bind-methods.js'][19]++;
  if (isFunction(source[key])) {
    _$jscoverage['Object/bind-methods.js'][20]++;
    this[key] = source[key].bind(scope);
  }
}));
_$jscoverage['Object/bind-methods.js'][24]++;
module.exports = f((function (scope, source) {
  _$jscoverage['Object/bind-methods.js'][25]++;
  Object.keys(source || this).forEach(fn(this, scope || this, source || this));
  _$jscoverage['Object/bind-methods.js'][26]++;
  return this;
}));
_$jscoverage['Object/bind-methods.js'].source = ["// Bind all object functions to given scope.","// If scope is not given then functions are bound to object they're assigned to.","// This emulates Python's bound instance methods.","// If source (second argument) is passed then all functions from source are","// binded to scope and assigned to object.","//","// Inspired by:","// http://mochi.github.com/mochikit/doc/html/MochiKit/Base.html#fn-bindmethods","","'use strict';","","var f          = require('../Function/functionalize')","  , bindBind   = require('../Function/bind-bind')","  , isFunction = require('../Function/is-function')","","  , fn;","","fn = bindBind(function (scope, source, key) {","\tif (isFunction(source[key])) {","\t\tthis[key] = source[key].bind(scope);","\t}","});","","module.exports = f(function (scope, source) {","\tObject.keys(source || this).forEach(fn(this, scope || this, source || this));","\treturn this;","});"];
