Please enable JavaScript to use RhodeCode Enterprise
Commit Description:
submission report
Commit Description:
submission report
'use strict' ;
var GetIntrinsic = require ( '../GetIntrinsic' );
var $TypeError = GetIntrinsic ( '%TypeError%' );
var GetV = require ( './GetV' );
var IsCallable = require ( './IsCallable' );
var IsPropertyKey = require ( './IsPropertyKey' );
/**
* 7.3.9 - https://ecma-international.org/ecma-262/6.0/#sec-getmethod
* 1. Assert: IsPropertyKey(P) is true.
* 2. Let func be GetV(O, P).
* 3. ReturnIfAbrupt(func).
* 4. If func is either undefined or null, return undefined.
* 5. If IsCallable(func) is false, throw a TypeError exception.
* 6. Return func.
*/
module . exports = function GetMethod ( O , P ) {
// 7.3.9.1
if ( ! IsPropertyKey ( P )) {
throw new $TypeError ( 'Assertion failed: IsPropertyKey(P) is not true' );
}
// 7.3.9.2
var func = GetV ( O , P );
// 7.3.9.4
if ( func == null ) {
return void 0 ;
}
// 7.3.9.5
if ( ! IsCallable ( func )) {
throw new $TypeError ( P + 'is not a function' );
}
// 7.3.9.6
return func ;
};
Site-wide shortcuts
/
Use quick search box
g h
Goto home page
g g
Goto my private gists page
g G
Goto my public gists page
n r
New repository page
n g
New gist page
Repositories
g s
Goto summary page
g c
Goto changelog page
g f
Goto files page
g F
Goto files page with file search activated
g p
Goto pull requests page
g o
Goto repository settings
g O
Goto repository permissions settings