@stdlib/stats-base-dists-normal-mgf 0.0.7 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +1 -1
- package/README.md +18 -4
- package/SECURITY.md +5 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +7 -0
- package/docs/types/index.d.ts +1 -1
- package/lib/index.js +3 -3
- package/package.json +16 -15
- package/docs/repl.txt +0 -71
- package/docs/types/test.ts +0 -119
- /package/lib/{mgf.js → main.js} +0 -0
package/NOTICE
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Copyright (c) 2016-
|
|
1
|
+
Copyright (c) 2016-2024 The Stdlib Authors.
|
package/README.md
CHANGED
|
@@ -18,6 +18,17 @@ limitations under the License.
|
|
|
18
18
|
|
|
19
19
|
-->
|
|
20
20
|
|
|
21
|
+
|
|
22
|
+
<details>
|
|
23
|
+
<summary>
|
|
24
|
+
About stdlib...
|
|
25
|
+
</summary>
|
|
26
|
+
<p>We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.</p>
|
|
27
|
+
<p>The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.</p>
|
|
28
|
+
<p>When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.</p>
|
|
29
|
+
<p>To join us in bringing numerical computing to the web, get started by checking us out on <a href="https://github.com/stdlib-js/stdlib">GitHub</a>, and please consider <a href="https://opencollective.com/stdlib">financially supporting stdlib</a>. We greatly appreciate your continued support!</p>
|
|
30
|
+
</details>
|
|
31
|
+
|
|
21
32
|
# Moment-Generating Function
|
|
22
33
|
|
|
23
34
|
[![NPM version][npm-image]][npm-url] [![Build Status][test-image]][test-url] [![Coverage Status][coverage-image]][coverage-url] <!-- [![dependencies][dependencies-image]][dependencies-url] -->
|
|
@@ -202,7 +213,7 @@ See [LICENSE][stdlib-license].
|
|
|
202
213
|
|
|
203
214
|
## Copyright
|
|
204
215
|
|
|
205
|
-
Copyright © 2016-
|
|
216
|
+
Copyright © 2016-2024. The Stdlib [Authors][stdlib-authors].
|
|
206
217
|
|
|
207
218
|
</section>
|
|
208
219
|
|
|
@@ -215,8 +226,8 @@ Copyright © 2016-2022. The Stdlib [Authors][stdlib-authors].
|
|
|
215
226
|
[npm-image]: http://img.shields.io/npm/v/@stdlib/stats-base-dists-normal-mgf.svg
|
|
216
227
|
[npm-url]: https://npmjs.org/package/@stdlib/stats-base-dists-normal-mgf
|
|
217
228
|
|
|
218
|
-
[test-image]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/actions/workflows/test.yml/badge.svg?branch=v0.0
|
|
219
|
-
[test-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/actions/workflows/test.yml?query=branch:v0.0
|
|
229
|
+
[test-image]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/actions/workflows/test.yml/badge.svg?branch=v0.2.0
|
|
230
|
+
[test-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/actions/workflows/test.yml?query=branch:v0.2.0
|
|
220
231
|
|
|
221
232
|
[coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/stats-base-dists-normal-mgf/main.svg
|
|
222
233
|
[coverage-url]: https://codecov.io/github/stdlib-js/stats-base-dists-normal-mgf?branch=main
|
|
@@ -229,7 +240,7 @@ Copyright © 2016-2022. The Stdlib [Authors][stdlib-authors].
|
|
|
229
240
|
-->
|
|
230
241
|
|
|
231
242
|
[chat-image]: https://img.shields.io/gitter/room/stdlib-js/stdlib.svg
|
|
232
|
-
[chat-url]: https://gitter.im
|
|
243
|
+
[chat-url]: https://app.gitter.im/#/room/#stdlib-js_stdlib:gitter.im
|
|
233
244
|
|
|
234
245
|
[stdlib]: https://github.com/stdlib-js/stdlib
|
|
235
246
|
|
|
@@ -239,8 +250,11 @@ Copyright © 2016-2022. The Stdlib [Authors][stdlib-authors].
|
|
|
239
250
|
[es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules
|
|
240
251
|
|
|
241
252
|
[deno-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/tree/deno
|
|
253
|
+
[deno-readme]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/blob/deno/README.md
|
|
242
254
|
[umd-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/tree/umd
|
|
255
|
+
[umd-readme]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/blob/umd/README.md
|
|
243
256
|
[esm-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/tree/esm
|
|
257
|
+
[esm-readme]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/blob/esm/README.md
|
|
244
258
|
[branches-url]: https://github.com/stdlib-js/stats-base-dists-normal-mgf/blob/main/branches.md
|
|
245
259
|
|
|
246
260
|
[stdlib-license]: https://raw.githubusercontent.com/stdlib-js/stats-base-dists-normal-mgf/main/LICENSE
|
package/SECURITY.md
ADDED
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";var a=function(e,r){return function(){return r||e((r={exports:{}}).exports,r),r.exports}};var c=a(function(R,o){
|
|
2
|
+
var u=require('@stdlib/math-base-assert-is-nan/dist'),s=require('@stdlib/math-base-special-exp/dist'),p=require('@stdlib/math-base-special-pow/dist');function N(e,r,n){return u(e)||u(r)||u(n)||n<=0?NaN:s(r*e+.5*p(n*e,2))}o.exports=N
|
|
3
|
+
});var q=a(function(b,f){
|
|
4
|
+
var x=require('@stdlib/utils-constant-function/dist'),i=require('@stdlib/math-base-assert-is-nan/dist'),y=require('@stdlib/math-base-special-exp/dist'),w=require('@stdlib/math-base-special-pow/dist');function d(e,r){if(i(e)||i(r)||r<=0)return x(NaN);return n;function n(t){return i(t)?NaN:y(e*t+.5*w(r*t,2))}}f.exports=d
|
|
5
|
+
});var l=require('@stdlib/utils-define-nonenumerable-read-only-property/dist'),v=c(),F=q();l(v,"factory",F);module.exports=v;
|
|
6
|
+
/** @license Apache-2.0 */
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../lib/main.js", "../lib/factory.js", "../lib/index.js"],
|
|
4
|
+
"sourcesContent": ["/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isnan = require( '@stdlib/math-base-assert-is-nan' );\nvar exp = require( '@stdlib/math-base-special-exp' );\nvar pow = require( '@stdlib/math-base-special-pow' );\n\n\n// MAIN //\n\n/**\n* Evaluates the moment-generating function (MGF) for a normal distribution with mean `mu` and standard deviation `sigma` at a value `t`.\n*\n* @param {number} t - input value\n* @param {number} mu - mean\n* @param {PositiveNumber} sigma - standard deviation\n* @returns {number} evaluated MGF\n*\n* @example\n* var y = mgf( 2.0, 0.0, 1.0 );\n* // returns ~7.389\n*\n* @example\n* var y = mgf( 0.0, 0.0, 1.0 );\n* // returns 1.0\n*\n* @example\n* var y = mgf( -1.0, 4.0, 2.0 );\n* // returns ~0.1353\n*\n* @example\n* var y = mgf( NaN, 0.0, 1.0 );\n* // returns NaN\n*\n* @example\n* var y = mgf( 0.0, NaN, 1.0 );\n* // returns NaN\n*\n* @example\n* var y = mgf( 0.0, 0.0, NaN );\n* // returns NaN\n*\n* @example\n* var y = mgf( 2.0, 0.0, 0.0 );\n* // returns NaN\n*/\nfunction mgf( t, mu, sigma ) {\n\tif (\n\t\tisnan( t ) ||\n\t\tisnan( mu ) ||\n\t\tisnan( sigma ) ||\n\t\tsigma <= 0.0\n\t) {\n\t\treturn NaN;\n\t}\n\treturn exp( (mu * t) + (0.5 * pow( sigma * t, 2.0 )) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = mgf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils-constant-function' );\nvar isnan = require( '@stdlib/math-base-assert-is-nan' );\nvar exp = require( '@stdlib/math-base-special-exp' );\nvar pow = require( '@stdlib/math-base-special-pow' );\n\n\n// MAIN //\n\n/**\n* Returns a function for evaluating the moment-generating function (MGF) of a normal distribution with mean `mu` and standard deviation `sigma`.\n*\n* @param {number} mu - mean\n* @param {PositiveNumber} sigma - standard deviation\n* @returns {Function} MGF\n*\n* @example\n* var mgf = factory( 4.0, 2.0 );\n*\n* var y = mgf( 1.0 );\n* // returns ~403.429\n*\n* y = mgf( 0.5 );\n* // returns ~12.182\n*/\nfunction factory( mu, sigma ) {\n\tif (\n\t\tisnan( mu ) ||\n\t\tisnan( sigma ) ||\n\t\tsigma <= 0.0\n\t) {\n\t\treturn constantFunction( NaN );\n\t}\n\treturn mgf;\n\n\t/**\n\t* Evaluates the moment-generating function (MGF) for a normal distribution.\n\t*\n\t* @private\n\t* @param {number} t - input value\n\t* @returns {number} evaluated MGF\n\t*\n\t* @example\n\t* var y = mgf( 0.5 );\n\t* // returns <number>\n\t*/\n\tfunction mgf( t ) {\n\t\tif ( isnan( t ) ) {\n\t\t\treturn NaN;\n\t\t}\n\t\treturn exp( (mu * t) + (0.5 * pow( sigma * t, 2.0 )) );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Evaluate the moment-generating function (MGF) for a normal distribution.\n*\n* @module @stdlib/stats-base-dists-normal-mgf\n*\n* @example\n* var mgf = require( '@stdlib/stats-base-dists-normal-mgf' );\n*\n* var y = mgf( 2.0, 0.0, 1.0 );\n* // returns ~7.389\n*\n* y = mgf( 0.0, 0.0, 1.0 );\n* // returns 1.0\n*\n* y = mgf( -1.0, 4.0, 2.0 );\n* // returns ~0.1353\n*\n* var mymgf = mgf.factory( 4.0, 2.0 );\n*\n* y = mymgf( 1.0 );\n* // returns ~403.429\n*\n* y = mymgf( 0.5 );\n* // returns ~12.182\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar factory = require( './factory.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n"],
|
|
5
|
+
"mappings": "uGAAA,IAAAA,EAAAC,EAAA,SAAAC,EAAAC,EAAA,cAsBA,IAAIC,EAAQ,QAAS,iCAAkC,EACnDC,EAAM,QAAS,+BAAgC,EAC/CC,EAAM,QAAS,+BAAgC,EAyCnD,SAASC,EAAKC,EAAGC,EAAIC,EAAQ,CAC5B,OACCN,EAAOI,CAAE,GACTJ,EAAOK,CAAG,GACVL,EAAOM,CAAM,GACbA,GAAS,EAEF,IAEDL,EAAMI,EAAKD,EAAM,GAAMF,EAAKI,EAAQF,EAAG,CAAI,CAAG,CACtD,CAKAL,EAAO,QAAUI,IChFjB,IAAAI,EAAAC,EAAA,SAAAC,EAAAC,EAAA,cAsBA,IAAIC,EAAmB,QAAS,iCAAkC,EAC9DC,EAAQ,QAAS,iCAAkC,EACnDC,EAAM,QAAS,+BAAgC,EAC/CC,EAAM,QAAS,+BAAgC,EAqBnD,SAASC,EAASC,EAAIC,EAAQ,CAC7B,GACCL,EAAOI,CAAG,GACVJ,EAAOK,CAAM,GACbA,GAAS,EAET,OAAON,EAAkB,GAAI,EAE9B,OAAOO,EAaP,SAASA,EAAK,EAAI,CACjB,OAAKN,EAAO,CAAE,EACN,IAEDC,EAAMG,EAAK,EAAM,GAAMF,EAAKG,EAAQ,EAAG,CAAI,CAAG,CACtD,CACD,CAKAP,EAAO,QAAUK,IC9BjB,IAAII,EAAc,QAAS,uDAAwD,EAC/EC,EAAO,IACPC,EAAU,IAKdF,EAAaC,EAAM,UAAWC,CAAQ,EAKtC,OAAO,QAAUD",
|
|
6
|
+
"names": ["require_main", "__commonJSMin", "exports", "module", "isnan", "exp", "pow", "mgf", "t", "mu", "sigma", "require_factory", "__commonJSMin", "exports", "module", "constantFunction", "isnan", "exp", "pow", "factory", "mu", "sigma", "mgf", "setReadOnly", "main", "factory"]
|
|
7
|
+
}
|
package/docs/types/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -47,15 +47,15 @@
|
|
|
47
47
|
// MODULES //
|
|
48
48
|
|
|
49
49
|
var setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );
|
|
50
|
-
var
|
|
50
|
+
var main = require( './main.js' );
|
|
51
51
|
var factory = require( './factory.js' );
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
// MAIN //
|
|
55
55
|
|
|
56
|
-
setReadOnly(
|
|
56
|
+
setReadOnly( main, 'factory', factory );
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
// EXPORTS //
|
|
60
60
|
|
|
61
|
-
module.exports =
|
|
61
|
+
module.exports = main;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stdlib/stats-base-dists-normal-mgf",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Normal distribution moment-generating function (MGF).",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": {
|
|
@@ -37,22 +37,23 @@
|
|
|
37
37
|
"url": "https://github.com/stdlib-js/stdlib/issues"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@stdlib/math-base-assert-is-nan": "^0.0
|
|
41
|
-
"@stdlib/math-base-special-exp": "^0.0
|
|
42
|
-
"@stdlib/math-base-special-pow": "^0.0
|
|
43
|
-
"@stdlib/utils-constant-function": "^0.0
|
|
44
|
-
"@stdlib/utils-define-nonenumerable-read-only-property": "^0.0
|
|
40
|
+
"@stdlib/math-base-assert-is-nan": "^0.2.0",
|
|
41
|
+
"@stdlib/math-base-special-exp": "^0.2.0",
|
|
42
|
+
"@stdlib/math-base-special-pow": "^0.2.0",
|
|
43
|
+
"@stdlib/utils-constant-function": "^0.2.0",
|
|
44
|
+
"@stdlib/utils-define-nonenumerable-read-only-property": "^0.2.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@stdlib/
|
|
48
|
-
"@stdlib/constants-float64-
|
|
49
|
-
"@stdlib/constants-float64-
|
|
50
|
-
"@stdlib/
|
|
51
|
-
"@stdlib/
|
|
52
|
-
"@stdlib/random-base-randu": "^0.0.x",
|
|
47
|
+
"@stdlib/constants-float64-eps": "^0.1.1",
|
|
48
|
+
"@stdlib/constants-float64-ninf": "^0.1.1",
|
|
49
|
+
"@stdlib/constants-float64-pinf": "^0.1.1",
|
|
50
|
+
"@stdlib/math-base-special-abs": "^0.1.1",
|
|
51
|
+
"@stdlib/random-base-randu": "^0.1.0",
|
|
53
52
|
"tape": "git+https://github.com/kgryte/tape.git#fix/globby",
|
|
54
53
|
"istanbul": "^0.4.1",
|
|
55
|
-
"tap-
|
|
54
|
+
"tap-min": "git+https://github.com/Planeshifter/tap-min.git",
|
|
55
|
+
"@stdlib/bench-harness": "^0.2.0",
|
|
56
|
+
"@stdlib/bench": "^0.3.1"
|
|
56
57
|
},
|
|
57
58
|
"engines": {
|
|
58
59
|
"node": ">=0.10.0",
|
|
@@ -85,7 +86,7 @@
|
|
|
85
86
|
"univariate"
|
|
86
87
|
],
|
|
87
88
|
"funding": {
|
|
88
|
-
"type": "
|
|
89
|
-
"url": "https://
|
|
89
|
+
"type": "opencollective",
|
|
90
|
+
"url": "https://opencollective.com/stdlib"
|
|
90
91
|
}
|
|
91
92
|
}
|
package/docs/repl.txt
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
{{alias}}( x, μ, σ )
|
|
3
|
-
Evaluates the moment-generating function (MGF) for a normal distribution
|
|
4
|
-
with mean `μ` and standard deviation `σ` at a value `t`.
|
|
5
|
-
|
|
6
|
-
If provided `NaN` as any argument, the function returns `NaN`.
|
|
7
|
-
|
|
8
|
-
If provided `σ <= 0`, the function returns `NaN`.
|
|
9
|
-
|
|
10
|
-
Parameters
|
|
11
|
-
----------
|
|
12
|
-
x: number
|
|
13
|
-
Input value.
|
|
14
|
-
|
|
15
|
-
μ: number
|
|
16
|
-
Location parameter.
|
|
17
|
-
|
|
18
|
-
σ: number
|
|
19
|
-
Standard deviation.
|
|
20
|
-
|
|
21
|
-
Returns
|
|
22
|
-
-------
|
|
23
|
-
out: number
|
|
24
|
-
Evaluated MGF.
|
|
25
|
-
|
|
26
|
-
Examples
|
|
27
|
-
--------
|
|
28
|
-
> var y = {{alias}}( 2.0, 0.0, 1.0 )
|
|
29
|
-
~7.389
|
|
30
|
-
> y = {{alias}}( 0.0, 0.0, 1.0 )
|
|
31
|
-
1.0
|
|
32
|
-
> y = {{alias}}( -1.0, 4.0, 2.0 )
|
|
33
|
-
~0.1353
|
|
34
|
-
> y = {{alias}}( NaN, 0.0, 1.0 )
|
|
35
|
-
NaN
|
|
36
|
-
> y = {{alias}}( 0.0, NaN, 1.0 )
|
|
37
|
-
NaN
|
|
38
|
-
> y = {{alias}}( 0.0, 0.0, NaN )
|
|
39
|
-
NaN
|
|
40
|
-
> y = {{alias}}( 2.0, 0.0, 0.0 )
|
|
41
|
-
NaN
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
{{alias}}.factory( μ, σ )
|
|
45
|
-
Returns a function for evaluating the moment-generating function (MGF) of a
|
|
46
|
-
normal distribution with mean `μ` and standard deviation `σ`.
|
|
47
|
-
|
|
48
|
-
Parameters
|
|
49
|
-
----------
|
|
50
|
-
μ: number
|
|
51
|
-
Location parameter.
|
|
52
|
-
|
|
53
|
-
σ: number
|
|
54
|
-
Standard deviation.
|
|
55
|
-
|
|
56
|
-
Returns
|
|
57
|
-
-------
|
|
58
|
-
mgf: Function
|
|
59
|
-
Moment-generating function (MGF).
|
|
60
|
-
|
|
61
|
-
Examples
|
|
62
|
-
--------
|
|
63
|
-
> var myMGF = {{alias}}.factory( 4.0, 2.0 );
|
|
64
|
-
> var y = myMGF( 1.0 )
|
|
65
|
-
~403.429
|
|
66
|
-
> y = myMGF( 0.5 )
|
|
67
|
-
~12.182
|
|
68
|
-
|
|
69
|
-
See Also
|
|
70
|
-
--------
|
|
71
|
-
|
package/docs/types/test.ts
DELETED
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @license Apache-2.0
|
|
3
|
-
*
|
|
4
|
-
* Copyright (c) 2019 The Stdlib Authors.
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
import mgf = require( './index' );
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
// TESTS //
|
|
23
|
-
|
|
24
|
-
// The function returns a number...
|
|
25
|
-
{
|
|
26
|
-
mgf( 2, 2, 4 ); // $ExpectType number
|
|
27
|
-
mgf( 1, 2, 8 ); // $ExpectType number
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// The compiler throws an error if the function is provided values other than three numbers...
|
|
31
|
-
{
|
|
32
|
-
mgf( true, 3, 6 ); // $ExpectError
|
|
33
|
-
mgf( false, 2, 4 ); // $ExpectError
|
|
34
|
-
mgf( '5', 1, 2 ); // $ExpectError
|
|
35
|
-
mgf( [], 1, 2 ); // $ExpectError
|
|
36
|
-
mgf( {}, 2, 4 ); // $ExpectError
|
|
37
|
-
mgf( ( x: number ): number => x, 2, 4 ); // $ExpectError
|
|
38
|
-
|
|
39
|
-
mgf( 9, true, 12 ); // $ExpectError
|
|
40
|
-
mgf( 9, false, 12 ); // $ExpectError
|
|
41
|
-
mgf( 5, '5', 10 ); // $ExpectError
|
|
42
|
-
mgf( 8, [], 16 ); // $ExpectError
|
|
43
|
-
mgf( 9, {}, 18 ); // $ExpectError
|
|
44
|
-
mgf( 8, ( x: number ): number => x, 16 ); // $ExpectError
|
|
45
|
-
|
|
46
|
-
mgf( 9, 5, true ); // $ExpectError
|
|
47
|
-
mgf( 9, 5, false ); // $ExpectError
|
|
48
|
-
mgf( 5, 2, '5' ); // $ExpectError
|
|
49
|
-
mgf( 8, 4, [] ); // $ExpectError
|
|
50
|
-
mgf( 9, 4, {} ); // $ExpectError
|
|
51
|
-
mgf( 8, 5, ( x: number ): number => x ); // $ExpectError
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
// The compiler throws an error if the function is provided an unsupported number of arguments...
|
|
55
|
-
{
|
|
56
|
-
mgf(); // $ExpectError
|
|
57
|
-
mgf( 2 ); // $ExpectError
|
|
58
|
-
mgf( 2, 0 ); // $ExpectError
|
|
59
|
-
mgf( 2, 0, 4, 1 ); // $ExpectError
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
// Attached to main export is a `factory` method which returns a function...
|
|
63
|
-
{
|
|
64
|
-
mgf.factory( 3, 4 ); // $ExpectType Unary
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
// The `factory` method returns a function which returns a number...
|
|
68
|
-
{
|
|
69
|
-
const fcn = mgf.factory( 3, 4 );
|
|
70
|
-
fcn( 2 ); // $ExpectType number
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// The compiler throws an error if the function returned by the `factory` method is provided invalid arguments...
|
|
74
|
-
{
|
|
75
|
-
const fcn = mgf.factory( 3, 4 );
|
|
76
|
-
fcn( true ); // $ExpectError
|
|
77
|
-
fcn( false ); // $ExpectError
|
|
78
|
-
fcn( '5' ); // $ExpectError
|
|
79
|
-
fcn( [] ); // $ExpectError
|
|
80
|
-
fcn( {} ); // $ExpectError
|
|
81
|
-
fcn( ( x: number ): number => x ); // $ExpectError
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// The compiler throws an error if the function returned by the `factory` method is provided an unsupported number of arguments...
|
|
85
|
-
{
|
|
86
|
-
const fcn = mgf.factory( 3, 4 );
|
|
87
|
-
fcn(); // $ExpectError
|
|
88
|
-
fcn( 2, 0 ); // $ExpectError
|
|
89
|
-
fcn( 2, 0, 1 ); // $ExpectError
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// The compiler throws an error if the `factory` method is provided values other than two numbers...
|
|
93
|
-
{
|
|
94
|
-
mgf.factory( true, 3 ); // $ExpectError
|
|
95
|
-
mgf.factory( false, 2 ); // $ExpectError
|
|
96
|
-
mgf.factory( '5', 1 ); // $ExpectError
|
|
97
|
-
mgf.factory( [], 1 ); // $ExpectError
|
|
98
|
-
mgf.factory( {}, 2 ); // $ExpectError
|
|
99
|
-
mgf.factory( ( x: number ): number => x, 2 ); // $ExpectError
|
|
100
|
-
|
|
101
|
-
mgf.factory( 9, true ); // $ExpectError
|
|
102
|
-
mgf.factory( 9, false ); // $ExpectError
|
|
103
|
-
mgf.factory( 5, '5' ); // $ExpectError
|
|
104
|
-
mgf.factory( 8, [] ); // $ExpectError
|
|
105
|
-
mgf.factory( 9, {} ); // $ExpectError
|
|
106
|
-
mgf.factory( 8, ( x: number ): number => x ); // $ExpectError
|
|
107
|
-
|
|
108
|
-
mgf.factory( [], true ); // $ExpectError
|
|
109
|
-
mgf.factory( {}, false ); // $ExpectError
|
|
110
|
-
mgf.factory( false, '5' ); // $ExpectError
|
|
111
|
-
mgf.factory( {}, [] ); // $ExpectError
|
|
112
|
-
mgf.factory( '5', ( x: number ): number => x ); // $ExpectError
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
// The compiler throws an error if the `factory` method is provided an unsupported number of arguments...
|
|
116
|
-
{
|
|
117
|
-
mgf.factory( 0 ); // $ExpectError
|
|
118
|
-
mgf.factory( 0, 4, 8 ); // $ExpectError
|
|
119
|
-
}
|
/package/lib/{mgf.js → main.js}
RENAMED
|
File without changes
|