summaryrefslogtreecommitdiffstats
path: root/native_client_sdk/src/examples/tumbler/bind.js
blob: 92fbbd218f5a1640ff7a01fd5299bd8255d622a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Copyright (c) 2011 The Native Client Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

/**
 * @fileoverview  This class implements an extension to Function object that
 * lets you bind a scope for |this| to a function.
 */

/**
 * Bind a scope to a function.  Used to bind an object to |this| for event
 * handlers.
 * @param {!Object} scope The scope in which the function executes.  |scope|
 *     becomes |this| during function execution.
 * @return {function} the bound version of the original function.
 */
Function.prototype.bind = function(scope) {
  var boundContext = this;
  return function() {
    return boundContext.apply(scope, arguments);
  }
}