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