1// Copyright 2014 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4// 5// This file relies on the fact that the following declarations have been made 6// in runtime.js: 7// var $Function = global.Function; 8// var $Array = global.Array; 9 10 11(function() { 12 function FunctionToMethod(homeObject) { 13 if (!IS_SPEC_FUNCTION(this)) { 14 throw MakeTypeError('toMethod_non_function', 15 [%ToString(this), typeof this]); 16 17 } 18 19 if (!IS_SPEC_OBJECT(homeObject)) { 20 throw MakeTypeError('toMethod_non_object', 21 [%ToString(homeObject)]); 22 } 23 24 return %ToMethod(this, homeObject); 25 } 26 27 %CheckIsBootstrapping(); 28 29 InstallFunctions($Function.prototype, DONT_ENUM, $Array( 30 "toMethod", FunctionToMethod 31 )); 32}()); 33