Options
All
  • Public
  • Public/Protected
  • All
Menu

External module "strided/base/binary-signature-callbacks/docs/types/index.d"

Index

Type aliases

Callback

Callback.

Type declaration

Complex128Callback

Complex128Callback: (x: Complex128, y: Complex128) => Complex128

Callback for double-precision complex floating-point numbers.

param

input value

param

input value

returns

result

Type declaration

Complex64Callback

Complex64Callback: (x: Complex64, y: Complex64) => Complex64

Callback for single-precision complex floating-point numbers.

param

input value

param

input value

returns

result

Type declaration

DefaultCallback

DefaultCallback: (x: number, y: number) => number

Default callback.

param

input value

param

input value

returns

result

Type declaration

    • (x: number, y: number): number
    • Parameters

      • x: number
      • y: number

      Returns number

RealOrComplex

RealOrComplex: number | ComplexLike

Real or complex number.

Functions

Export assignment callbacks

  • Assigns callbacks to binary interfaces according to type promotion rules.

    Notes

    • The function assumes that the provided signature array has the following properties:

      • a strided array having a stride length of 3 (i.e., every 3 elements define a binary interface signature).
      • for each signature (i.e., set of three consecutive non-overlapping strided array elements), the first two elements are the input data types and the third element is the return data type.
      • all signatures follow type promotion rules.

    Parameters

    • table: Table

      callback table

    • signatures: ArrayLike<any>

      strided array containing binary interface signatures

    Returns ArrayLike < Callback >

    list of callbacks

    Example

    var signatures = require( `@stdlib/strided/base/binary-dtype-signatures` );
    var add = require( `@stdlib/math/base/ops/add` );
    var cadd = require( `@stdlib/math/base/ops/cadd` );
    var caddf = require( `@stdlib/math/base/ops/caddf` );
    
    var dtypes = [
        'float64',
        'float32',
        'int32',
        'uint8'
    ];
    
    var sigs = signatures( dtypes, dtypes, dtypes );
    // returns [...]
    
    var table = {
        'default': add,
        'complex64': caddf,
        'complex128': cadd
    };
    
    var list = callbacks( table, sigs );
    // returns [...]