function claset( uplo, M, N, alpha, beta, A, strideA1, strideA2, offsetA ) {
	var viewA;
	var ar;
	var ai;
	var br;
	var bi;

	// Reinterpret the input array as a real-valued array of interleaved real and imaginary components:
	viewA = reinterpret( A, 0 );

	// Adjust the strides and offset accordingly:
	strideA1 *= 2;
	strideA2 *= 2;

	offsetA *= 2;

	// Decompose the scalars to real and imaginary components:
	ar = realf( alpha );
	ai = imagf( alpha );
	br = realf( beta );
	bi = imagf( beta );

	if ( uplo === 'upper' ) {
		setUpper( M, N, ar, ai, br, bi, viewA, strideA1, strideA2, offsetA );
	} else if ( uplo === 'lower' ) {
		setLower( M, N, ar, ai, br, bi, viewA, strideA1, strideA2, offsetA );
	} else {
		setAll( M, N, ar, ai, br, bi, viewA, strideA1, strideA2, offsetA );
	}
	return A;
}
Sets elements of matrix `A` to specified values.

@private
@param {string} uplo - specifies whether to set the upper or lower triangular/trapezoidal part of matrix `A`
@param {NonNegativeInteger} M - number of rows in matrix `A`
@param {NonNegativeInteger} N - number of columns in matrix `A`
@param {Complex64} alpha - value assigned to off-diagonal elements
@param {Complex64} beta - value assigned to diagonal elements
@param {Complex64Array} A - input matrix
@param {integer} strideA1 - stride of the first dimension of `A`
@param {integer} strideA2 - stride of the second dimension of `A`
@param {NonNegativeInteger} offsetA - starting index for `A`
@returns {Complex64Array} `A`

@example
var Complex64Array = require( '@stdlib/array/complex64' );
var Complex64 = require( '@stdlib/complex/float32/ctor' );
var realf = require( '@stdlib/complex/float32/real' );
var imagf = require( '@stdlib/complex/float32/imag' );

var A = new Complex64Array( 4 );

var alpha = new Complex64( 1.0, 2.0 );
var beta = new Complex64( 3.0, 4.0 );

claset( 'all', 2, 2, alpha, beta, A, 2, 1, 0 );

var z = A.get( 0 );
// returns <Complex64>

var re = realf( z );
// returns 3.0

var im = imagf( z );
// returns 4.0

z = A.get( 1 );
// returns <Complex64>

re = realf( z );
// returns 1.0

im = imagf( z );
// returns 2.0

z = A.get( 2 );
// returns <Complex64>

re = realf( z );
// returns 1.0

im = imagf( z );
// returns 2.0

@example
var Complex64Array = require( '@stdlib/array/complex64' );
var Complex64 = require( '@stdlib/complex/float32/ctor' );
var realf = require( '@stdlib/complex/float32/real' );
var imagf = require( '@stdlib/complex/float32/imag' );

var A = new Complex64Array( 4 );

var alpha = new Complex64( 1.0, 2.0 );
var beta = new Complex64( 3.0, 4.0 );

claset( 'upper', 2, 2, alpha, beta, A, 2, 1, 0 );

var z = A.get( 0 );
// returns <Complex64>

var re = realf( z );
// returns 3.0

var im = imagf( z );
// returns 4.0

z = A.get( 1 );
// returns <Complex64>

re = realf( z );
// returns 1.0

im = imagf( z );
// returns 2.0

z = A.get( 2 );
// returns <Complex64>

re = realf( z );
// returns 0.0

im = imagf( z );
// returns 0.0

@example
var Complex64Array = require( '@stdlib/array/complex64' );
var Complex64 = require( '@stdlib/complex/float32/ctor' );
var realf = require( '@stdlib/complex/float32/real' );
var imagf = require( '@stdlib/complex/float32/imag' );

var A = new Complex64Array( 4 );

var alpha = new Complex64( 1.0, 2.0 );
var beta = new Complex64( 3.0, 4.0 );

claset( 'lower', 2, 2, alpha, beta, A, 2, 1, 0 );

var z = A.get( 0 );
// returns <Complex64>

var re = realf( z );
// returns 3.0

var im = imagf( z );
// returns 4.0

z = A.get( 1 );
// returns <Complex64>

re = realf( z );
// returns 0.0

im = imagf( z );
// returns 0.0

z = A.get( 2 );
// returns <Complex64>

re = realf( z );
// returns 1.0

im = imagf( z );
// returns 2.0