/* eslint-disable no-redeclare */
'use strict';

/**
* Test if a value is a finite number.
*
* @module @stdlib/assert/is-finite
*
* @example
* var isFinite = require( '@stdlib/assert/is-finite' );
*
* var bool = isFinite( 5.0 );
* // returns true
*
* bool = isFinite( new Number( 5.0 ) );
* // returns true
*
* bool = isFinite( 1.0/0.0 );
* // returns false
*
* bool = isFinite( null );
* // returns false
*
* @example
* var isFinite = require( '@stdlib/assert/is-finite' ).isPrimitive;
*
* var bool = isFinite( -3.0 );
* // returns true
*
* bool = isFinite( new Number( -3.0 ) );
* // returns false
*
* @example
* var isFinite = require( '@stdlib/assert/is-integer' ).isObject;
*
* var bool = isFinite.isObject( 3.0 );
* // returns false
*
* bool = isFinite.isObject( new Number( 3.0 ) );
* // returns true
*/

// MODULES //

var setReadOnly = require( '@stdlib/utils/define-read-only-property' );
var isFinite = require( './generic.js' );
var isPrimitive = require( './primitive.js' );
var isObject = require( './object.js' );


// MAIN //

setReadOnly( isFinite, 'isPrimitive', isPrimitive );
setReadOnly( isFinite, 'isObject', isObject );


// EXPORTS //

module.exports = isFinite;

/* eslint-disable no-redeclare */
'use strict';

/**
* Test if a value is a finite number.
*
* @module @stdlib/assert/is-finite
*
* @example
* var isFinite = require( '@stdlib/assert/is-finite' );
*
* var bool = isFinite( 5.0 );
* // returns true
*
* bool = isFinite( new Number( 5.0 ) );
* // returns true
*
* bool = isFinite( 1.0/0.0 );
* // returns false
*
* bool = isFinite( null );
* // returns false
*
* @example
* var isFinite = require( '@stdlib/assert/is-finite' ).isPrimitive;
*
* var bool = isFinite( -3.0 );
* // returns true
*
* bool = isFinite( new Number( -3.0 ) );
* // returns false
*
* @example
* var isFinite = require( '@stdlib/assert/is-finite' ).isObject;
*
* var bool = isFinite.isObject( 3.0 );
* // returns false
*
* bool = isFinite.isObject( new Number( 3.0 ) );
* // returns true
*/

// MODULES //

var setReadOnly = require( '@stdlib/utils/define-read-only-property' );
var isFinite = require( './generic.js' );
var isPrimitive = require( './primitive.js' );
var isObject = require( './object.js' );


// MAIN //

setReadOnly( isFinite, 'isPrimitive', isPrimitive );
setReadOnly( isFinite, 'isObject', isObject );


// EXPORTS //

module.exports = isFinite;

Fix require statement