diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 335c98a..7e42af5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,50 +3,94 @@ name: CI on: push: branches: - - "*" - - "!master" + - master pull_request: branches: - master jobs: test: - name: Test on node 16 and ${{ matrix.os }} + name: Test node 24 on ${{ matrix.os }} with ${{ matrix.backend }} runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, macOS-latest] + include: + - os: ubuntu-latest + backend: mkl + - os: ubuntu-latest + backend: blas + - os: ubuntu-latest + backend: openblas + - os: ubuntu-latest + backend: blis + - os: macOS-latest + backend: accelerate + - os: macOS-latest + backend: openblas + - os: macOS-latest + backend: blis steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - - name: Use Node.js 16 - uses: actions/setup-node@v3 + - name: Use Node.js 24 + uses: actions/setup-node@v4 with: - node-version: 16 + node-version: 24 cache: 'npm' - name: Setup C++ environment on linux uses: kurocha/setup-cpp@v1 if: runner.os == 'Linux' - - name: Install dependencies on linux - run: sudo apt-get install -yq libblas-dev + - name: Install BLAS dependencies on linux if: runner.os == 'Linux' + run: | + sudo apt-get update + case "${{ matrix.backend }}" in + mkl) + wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \ + | gpg --dearmor \ + | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null + echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" \ + | sudo tee /etc/apt/sources.list.d/oneAPI.list + sudo apt-get update + sudo apt-get install -yq pkg-config intel-oneapi-mkl-devel + echo "PKG_CONFIG_PATH=/opt/intel/oneapi/mkl/latest/lib/pkgconfig:${PKG_CONFIG_PATH}" >> "$GITHUB_ENV" + ;; + blas) + sudo apt-get install -yq pkg-config libblas-dev + ;; + openblas) + sudo apt-get install -yq pkg-config libopenblas-dev + ;; + blis) + sudo apt-get install -yq pkg-config libblis-dev + ;; + *) + echo "Unsupported Linux backend: ${{ matrix.backend }}" + exit 1 + ;; + esac + + - name: Install BLAS dependencies on macOS + if: runner.os == 'macOS' && matrix.backend != 'accelerate' + run: | + brew install pkg-config ${{ matrix.backend }} + echo "PKG_CONFIG_PATH=$(brew --prefix ${{ matrix.backend }})/lib/pkgconfig:${PKG_CONFIG_PATH}" >> "$GITHUB_ENV" - name: Install package dependencies run: npm ci + env: + NBLAS_BACKEND: ${{ matrix.backend }} - name: Build run: npm run build + env: + NBLAS_BACKEND: ${{ matrix.backend }} - name: Test run: npm test - - - name: Publish coverage to CodeClimate - uses: paambaati/codeclimate-action@v3.0.0 env: - CC_TEST_REPORTER_ID: ${{secrets.CC_TEST_REPORTER_ID}} - with: - coverageLocations: ${{github.workspace}}/coverage/lcov.info:lcov + NBLAS_BACKEND: ${{ matrix.backend }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7a595e0..adcdc24 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -11,16 +11,16 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: | git config --global user.name 'Mateo Gianolio' git config --global user.email 'mateogianolio@users.noreply.github.com' - - name: Use Node.js 16 - uses: actions/setup-node@v3 + - name: Use Node.js 24 + uses: actions/setup-node@v4 with: - node-version: 16 + node-version: 24 cache: 'npm' - name: Setup C++ environment on linux @@ -41,13 +41,6 @@ jobs: - name: Test run: npm test - - name: Publish coverage to CodeClimate - uses: paambaati/codeclimate-action@v3.0.0 - env: - CC_TEST_REPORTER_ID: ${{secrets.CC_TEST_REPORTER_ID}} - with: - coverageLocations: ${{github.workspace}}/coverage/lcov.info:lcov - - id: publish name: Publish package to npm uses: JS-DevTools/npm-publish@v1 diff --git a/.gitignore b/.gitignore index a1080e1..72b8112 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,10 @@ coverage .DS_Store build .vscode +dist +routines +lib/routines.h +src/generated* +binding.gyp +__pycache__ +*.pyc diff --git a/README.md b/README.md index 0a6860b..65cf101 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,28 @@ -# nBLAS ![version](https://img.shields.io/npm/v/nblas.svg) ![travis](https://img.shields.io/travis/nperf/nblas.svg) [![maintainability](https://api.codeclimate.com/v1/badges/756aff038b767f2e706e/maintainability)](https://codeclimate.com/github/mateogianolio/nblas/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/756aff038b767f2e706e/test_coverage)](https://codeclimate.com/github/mateogianolio/nblas/test_coverage) +# nBLAS ![version](https://img.shields.io/npm/v/nblas.svg) -[![Greenkeeper badge](https://badges.greenkeeper.io/nperf/nblas.svg)](https://greenkeeper.io/) - -Node `>=6.9` C++ bindings for all single- and double-precision CBLAS (Basic Linear Algebra Subprograms) routines. +Node `>=20` C++ bindings for all single- and double-precision CBLAS (Basic Linear Algebra Subprograms) routines. ```bash $ npm install nblas $ npm test ``` +`npm install` now selects a BLAS backend at build time. The default search order is: + +- macOS: `Accelerate`, then `openblas`, `blis`, `blas` +- Linux: `mkl`, `openblas`, `blis`, `blas` + +You can override detection when building from source: + +```bash +NBLAS_BACKEND=openblas npm install +NBLAS_BLAS_ORDER=openblas,blas npm install +``` + +Backends other than `Accelerate` are detected via `pkg-config`, so the selected library needs to expose a matching `.pc` file. + +`cblas.h` is discovered automatically from the selected backend. If your installation lives in a non-standard location, set `NBLAS_CBLAS_HEADER=/path/to/cblas.h` or pass `--header`. + - **[BLAS Level 1 Routines and Functions](https://software.intel.com/en-us/node/468390)** - [x] [`?asum (x)`](https://software.intel.com/node/e49cf403-8071-4252-a85f-28964ac3da9e#E49CF403-8071-4252-A85F-28964AC3DA9E) diff --git a/binding.gyp b/binding.gyp deleted file mode 100644 index 5a0ddc8..0000000 --- a/binding.gyp +++ /dev/null @@ -1,51 +0,0 @@ -{ - "targets": [ - { - "target_name": "nblas", - "sources": [ - "src/index.cc", - "routines/level1/asum.cc", - "routines/level1/axpy.cc", - "routines/level1/copy.cc", - "routines/level1/dot.cc", - "routines/level1/sdot.cc", - "routines/level1/nrm2.cc", - "routines/level1/rot.cc", - "routines/level1/rotg.cc", - "routines/level1/rotm.cc", - "routines/level1/rotmg.cc", - "routines/level1/scal.cc", - "routines/level1/swap.cc", - "routines/level1/iamax.cc", - "routines/level2/gbmv.cc", - "routines/level2/gemv.cc", - "routines/level2/ger.cc", - "routines/level2/sbmv.cc", - "routines/level2/spmv.cc", - "routines/level2/spr.cc", - "routines/level2/spr2.cc", - "routines/level2/symv.cc", - "routines/level2/syr.cc", - "routines/level2/syr2.cc", - "routines/level2/tbmv.cc", - "routines/level2/tbsv.cc", - "routines/level2/tpmv.cc", - "routines/level2/tpsv.cc", - "routines/level2/trmv.cc", - "routines/level2/trsv.cc", - "routines/level3/gemm.cc", - "routines/level3/symm.cc", - "routines/level3/syrk.cc", - "routines/level3/syr2k.cc", - "routines/level3/trmm.cc", - "routines/level3/trsm.cc" - ], - "include_dirs" : [ - "lib" - ], - "libraries": [ - "-lblas" - ] - } - ] -} diff --git a/dist/index.d.ts b/dist/index.d.ts deleted file mode 100644 index 6b34303..0000000 --- a/dist/index.d.ts +++ /dev/null @@ -1,156 +0,0 @@ -import { INBlas, MatrixLeftRight, MatrixTrans, MatrixUnit, MatrixUpperLower } from './types'; -declare let nblas: INBlas; -export declare const NoTrans: MatrixTrans; -export declare const Trans: MatrixTrans; -export declare const ConjTrans: MatrixTrans; -export declare const Upper: MatrixUpperLower; -export declare const Lower: MatrixUpperLower; -export declare const NonUnit: MatrixUnit; -export declare const Unit: MatrixUnit; -export declare const Left: MatrixLeftRight; -export declare const Right: MatrixLeftRight; -export declare const dasum: typeof nblas.dasum; -export declare const sasum: typeof nblas.sasum; -export declare const dzasum: typeof nblas.dzasum; -export declare const scasum: typeof nblas.scasum; -export declare const asum: typeof nblas.asum; -export declare const daxpy: typeof nblas.daxpy; -export declare const saxpy: typeof nblas.saxpy; -export declare const zaxpy: typeof nblas.zaxpy; -export declare const caxpy: typeof nblas.caxpy; -export declare const axpy: typeof nblas.axpy; -export declare const dcopy: typeof nblas.dcopy; -export declare const scopy: typeof nblas.scopy; -export declare const zcopy: typeof nblas.zcopy; -export declare const ccopy: typeof nblas.ccopy; -export declare const copy: typeof nblas.copy; -export declare const ddot: typeof nblas.ddot; -export declare const sdot: typeof nblas.sdot; -export declare const dot: typeof nblas.dot; -export declare const dnrm2: typeof nblas.dnrm2; -export declare const snrm2: typeof nblas.snrm2; -export declare const dznrm2: typeof nblas.dznrm2; -export declare const scnrm2: typeof nblas.scnrm2; -export declare const nrm2: typeof nblas.nrm2; -export declare const drot: typeof nblas.drot; -export declare const srot: typeof nblas.srot; -export declare const rot: typeof nblas.rot; -export declare const drotg: typeof nblas.drotg; -export declare const srotg: typeof nblas.srotg; -export declare const rotg: typeof nblas.rotg; -export declare const drotm: typeof nblas.drotm; -export declare const srotm: typeof nblas.srotm; -export declare const rotm: typeof nblas.rotm; -export declare const drotmg: typeof nblas.drotmg; -export declare const srotmg: typeof nblas.srotmg; -export declare const rotmg: typeof nblas.rotmg; -export declare const dscal: typeof nblas.dscal; -export declare const sscal: typeof nblas.sscal; -export declare const zscal: typeof nblas.zscal; -export declare const cscal: typeof nblas.cscal; -export declare const scal: typeof nblas.scal; -export declare const dswap: typeof nblas.dswap; -export declare const sswap: typeof nblas.sswap; -export declare const zswap: typeof nblas.zswap; -export declare const cswap: typeof nblas.cswap; -export declare const swap: typeof nblas.swap; -export declare const idamax: typeof nblas.idamax; -export declare const isamax: typeof nblas.isamax; -export declare const izamax: typeof nblas.izamax; -export declare const icamax: typeof nblas.icamax; -export declare const iamax: typeof nblas.iamax; -export declare const dgbmv: typeof nblas.dgbmv; -export declare const sgbmv: typeof nblas.sgbmv; -export declare const zgbmv: typeof nblas.zgbmv; -export declare const cgbmv: typeof nblas.cgbmv; -export declare const gbmv: typeof nblas.gbmv; -export declare const dgemv: typeof nblas.dgemv; -export declare const sgemv: typeof nblas.sgemv; -export declare const zgemv: typeof nblas.zgemv; -export declare const cgemv: typeof nblas.cgemv; -export declare const gemv: typeof nblas.gemv; -export declare const dger: typeof nblas.dger; -export declare const sger: typeof nblas.sger; -export declare const ger: typeof nblas.ger; -export declare const dsbmv: typeof nblas.dsbmv; -export declare const ssbmv: typeof nblas.ssbmv; -export declare const sbmv: typeof nblas.sbmv; -export declare const dspmv: typeof nblas.dspmv; -export declare const sspmv: typeof nblas.sspmv; -export declare const spmv: typeof nblas.spmv; -export declare const dspr: typeof nblas.dspr; -export declare const sspr: typeof nblas.sspr; -export declare const spr: typeof nblas.spr; -export declare const dspr2: typeof nblas.dspr2; -export declare const sspr2: typeof nblas.sspr2; -export declare const spr2: typeof nblas.spr2; -export declare const dsymv: typeof nblas.dsymv; -export declare const ssymv: typeof nblas.ssymv; -export declare const symv: typeof nblas.symv; -export declare const dsyr: typeof nblas.dsyr; -export declare const ssyr: typeof nblas.ssyr; -export declare const syr: typeof nblas.syr; -export declare const dsyr2: typeof nblas.dsyr2; -export declare const ssyr2: typeof nblas.ssyr2; -export declare const syr2: typeof nblas.syr2; -export declare const dtbmv: typeof nblas.dtbmv; -export declare const stbmv: typeof nblas.stbmv; -export declare const ztbmv: typeof nblas.ztbmv; -export declare const ctbmv: typeof nblas.ctbmv; -export declare const tbmv: typeof nblas.tbmv; -export declare const dtbsv: typeof nblas.dtbsv; -export declare const stbsv: typeof nblas.stbsv; -export declare const ztbsv: typeof nblas.ztbsv; -export declare const ctbsv: typeof nblas.ctbsv; -export declare const tbsv: typeof nblas.tbsv; -export declare const dtpmv: typeof nblas.dtpmv; -export declare const stpmv: typeof nblas.stpmv; -export declare const ztpmv: typeof nblas.ztpmv; -export declare const ctpmv: typeof nblas.ctpmv; -export declare const tpmv: typeof nblas.tpmv; -export declare const dtpsv: typeof nblas.dtpsv; -export declare const stpsv: typeof nblas.stpsv; -export declare const ztpsv: typeof nblas.ztpsv; -export declare const ctpsv: typeof nblas.ctpsv; -export declare const tpsv: typeof nblas.tpsv; -export declare const dtrmv: typeof nblas.dtrmv; -export declare const strmv: typeof nblas.strmv; -export declare const ztrmv: typeof nblas.ztrmv; -export declare const ctrmv: typeof nblas.ctrmv; -export declare const trmv: typeof nblas.trmv; -export declare const dtrsv: typeof nblas.dtrsv; -export declare const strsv: typeof nblas.strsv; -export declare const ztrsv: typeof nblas.ztrsv; -export declare const ctrsv: typeof nblas.ctrsv; -export declare const trsv: typeof nblas.trsv; -export declare const dgemm: typeof nblas.dgemm; -export declare const sgemm: typeof nblas.sgemm; -export declare const zgemm: typeof nblas.zgemm; -export declare const cgemm: typeof nblas.cgemm; -export declare const gemm: typeof nblas.gemm; -export declare const dsymm: typeof nblas.dsymm; -export declare const ssymm: typeof nblas.ssymm; -export declare const zsymm: typeof nblas.zsymm; -export declare const csymm: typeof nblas.csymm; -export declare const symm: typeof nblas.symm; -export declare const dsyrk: typeof nblas.dsyrk; -export declare const ssyrk: typeof nblas.ssyrk; -export declare const zsyrk: typeof nblas.zsyrk; -export declare const csyrk: typeof nblas.csyrk; -export declare const syrk: typeof nblas.syrk; -export declare const dsyr2k: typeof nblas.dsyr2k; -export declare const ssyr2k: typeof nblas.ssyr2k; -export declare const zsyr2k: typeof nblas.zsyr2k; -export declare const csyr2k: typeof nblas.csyr2k; -export declare const syr2k: typeof nblas.syr2k; -export declare const dtrmm: typeof nblas.dtrmm; -export declare const strmm: typeof nblas.strmm; -export declare const ztrmm: typeof nblas.ztrmm; -export declare const ctrmm: typeof nblas.ctrmm; -export declare const trmm: typeof nblas.trmm; -export declare const dtrsm: typeof nblas.dtrsm; -export declare const strsm: typeof nblas.strsm; -export declare const ztrsm: typeof nblas.ztrsm; -export declare const ctrsm: typeof nblas.ctrsm; -export declare const trsm: typeof nblas.trsm; -export {}; diff --git a/dist/index.js b/dist/index.js deleted file mode 100644 index 65a28e9..0000000 --- a/dist/index.js +++ /dev/null @@ -1,201 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.dswap = exports.scal = exports.cscal = exports.zscal = exports.sscal = exports.dscal = exports.rotmg = exports.srotmg = exports.drotmg = exports.rotm = exports.srotm = exports.drotm = exports.rotg = exports.srotg = exports.drotg = exports.rot = exports.srot = exports.drot = exports.nrm2 = exports.scnrm2 = exports.dznrm2 = exports.snrm2 = exports.dnrm2 = exports.dot = exports.sdot = exports.ddot = exports.copy = exports.ccopy = exports.zcopy = exports.scopy = exports.dcopy = exports.axpy = exports.caxpy = exports.zaxpy = exports.saxpy = exports.daxpy = exports.asum = exports.scasum = exports.dzasum = exports.sasum = exports.dasum = exports.Right = exports.Left = exports.Unit = exports.NonUnit = exports.Lower = exports.Upper = exports.ConjTrans = exports.Trans = exports.NoTrans = void 0; -exports.stbsv = exports.dtbsv = exports.tbmv = exports.ctbmv = exports.ztbmv = exports.stbmv = exports.dtbmv = exports.syr2 = exports.ssyr2 = exports.dsyr2 = exports.syr = exports.ssyr = exports.dsyr = exports.symv = exports.ssymv = exports.dsymv = exports.spr2 = exports.sspr2 = exports.dspr2 = exports.spr = exports.sspr = exports.dspr = exports.spmv = exports.sspmv = exports.dspmv = exports.sbmv = exports.ssbmv = exports.dsbmv = exports.ger = exports.sger = exports.dger = exports.gemv = exports.cgemv = exports.zgemv = exports.sgemv = exports.dgemv = exports.gbmv = exports.cgbmv = exports.zgbmv = exports.sgbmv = exports.dgbmv = exports.iamax = exports.icamax = exports.izamax = exports.isamax = exports.idamax = exports.swap = exports.cswap = exports.zswap = exports.sswap = void 0; -exports.strsm = exports.dtrsm = exports.trmm = exports.ctrmm = exports.ztrmm = exports.strmm = exports.dtrmm = exports.syr2k = exports.csyr2k = exports.zsyr2k = exports.ssyr2k = exports.dsyr2k = exports.syrk = exports.csyrk = exports.zsyrk = exports.ssyrk = exports.dsyrk = exports.symm = exports.csymm = exports.zsymm = exports.ssymm = exports.dsymm = exports.gemm = exports.cgemm = exports.zgemm = exports.sgemm = exports.dgemm = exports.trsv = exports.ctrsv = exports.ztrsv = exports.strsv = exports.dtrsv = exports.trmv = exports.ctrmv = exports.ztrmv = exports.strmv = exports.dtrmv = exports.tpsv = exports.ctpsv = exports.ztpsv = exports.stpsv = exports.dtpsv = exports.tpmv = exports.ctpmv = exports.ztpmv = exports.stpmv = exports.dtpmv = exports.tbsv = exports.ctbsv = exports.ztbsv = void 0; -exports.trsm = exports.ctrsm = exports.ztrsm = void 0; -const util_1 = require("./util"); -let nblas; -try { - nblas = require('../build/Release/nblas'); -} -catch (_) { - nblas = require('./nblas'); -} -exports.NoTrans = 111; -exports.Trans = 112; -exports.ConjTrans = 113; -exports.Upper = 121; -exports.Lower = 122; -exports.NonUnit = 131; -exports.Unit = 132; -exports.Left = 141; -exports.Right = 142; -exports.dasum = nblas.dasum; -exports.sasum = nblas.sasum; -exports.dzasum = nblas.dzasum; -exports.scasum = nblas.scasum; -const asum = (x) => nblas[`${(0, util_1.prefix)(x)}asum`](x.length, x, 1); -exports.asum = asum; -exports.daxpy = nblas.daxpy; -exports.saxpy = nblas.saxpy; -exports.zaxpy = nblas.zaxpy; -exports.caxpy = nblas.caxpy; -const axpy = (x, y, a = 1) => nblas[`${(0, util_1.prefix)(x)}axpy`](x.length, a, x, 1, y, 1); -exports.axpy = axpy; -exports.dcopy = nblas.dcopy; -exports.scopy = nblas.scopy; -exports.zcopy = nblas.zcopy; -exports.ccopy = nblas.ccopy; -const copy = (x, y) => nblas[`${(0, util_1.prefix)(x)}copy`](x.length, x, 1, y, 1); -exports.copy = copy; -exports.ddot = nblas.ddot; -exports.sdot = nblas.sdot; -const dot = (x, y) => nblas[`${(0, util_1.prefix)(x)}dot`](x.length, x, 1, y, 1); -exports.dot = dot; -exports.dnrm2 = nblas.dnrm2; -exports.snrm2 = nblas.snrm2; -exports.dznrm2 = nblas.dznrm2; -exports.scnrm2 = nblas.scnrm2; -const nrm2 = (x) => nblas[`${(0, util_1.prefix)(x)}nrm2`](x.length, x, 1); -exports.nrm2 = nrm2; -exports.drot = nblas.drot; -exports.srot = nblas.srot; -const rot = (x, y, c, s) => nblas[`${(0, util_1.prefix)(x)}rot`](x.length, x, 1, y, 1, c, s); -exports.rot = rot; -exports.drotg = nblas.drotg; -exports.srotg = nblas.srotg; -const rotg = (a, b, c, s) => nblas[`${(0, util_1.prefix)(a)}rotg`](a, b, c, s); -exports.rotg = rotg; -exports.drotm = nblas.drotm; -exports.srotm = nblas.srotm; -const rotm = (x, y, param) => nblas[`${(0, util_1.prefix)(x)}rotm`](x.length, x, 1, y, 1, param); -exports.rotm = rotm; -exports.drotmg = nblas.drotmg; -exports.srotmg = nblas.srotmg; -const rotmg = (d1, d2, x1, y1, param) => nblas[`${(0, util_1.prefix)(d1)}rotmg`](d1, d2, x1, y1, param); -exports.rotmg = rotmg; -exports.dscal = nblas.dscal; -exports.sscal = nblas.sscal; -exports.zscal = nblas.zscal; -exports.cscal = nblas.cscal; -const scal = (x, a) => nblas[`${(0, util_1.prefix)(x)}scal`](x.length, a, x, 1); -exports.scal = scal; -exports.dswap = nblas.dswap; -exports.sswap = nblas.sswap; -exports.zswap = nblas.zswap; -exports.cswap = nblas.cswap; -const swap = (x, y) => nblas[`${(0, util_1.prefix)(x)}swap`](x.length, x, 1, y, 1); -exports.swap = swap; -exports.idamax = nblas.idamax; -exports.isamax = nblas.isamax; -exports.izamax = nblas.izamax; -exports.icamax = nblas.icamax; -const iamax = (x) => nblas[`i${(0, util_1.prefix)(x)}amax`](x.length, x, 1); -exports.iamax = iamax; -exports.dgbmv = nblas.dgbmv; -exports.sgbmv = nblas.sgbmv; -exports.zgbmv = nblas.zgbmv; -exports.cgbmv = nblas.cgbmv; -const gbmv = (a, x, y, kl = 0, ku = 0, alpha = 1, beta = 0, trans = exports.NoTrans) => nblas[`${(0, util_1.prefix)(x)}gbmv`](trans, x.length, y.length, kl, ku, alpha, a, x.length, x, 1, beta, y, 1); -exports.gbmv = gbmv; -exports.dgemv = nblas.dgemv; -exports.sgemv = nblas.sgemv; -exports.zgemv = nblas.zgemv; -exports.cgemv = nblas.cgemv; -const gemv = (a, x, y, alpha = 1, beta = 0, trans = exports.NoTrans) => nblas[`${(0, util_1.prefix)(x)}gemv`](trans, x.length, y.length, alpha, a, x.length, x, 1, beta, y, 1); -exports.gemv = gemv; -exports.dger = nblas.dger; -exports.sger = nblas.sger; -const ger = (a, x, y, alpha = 1) => nblas[`${(0, util_1.prefix)(x)}ger`](x.length, y.length, alpha, x, 1, y, 1, a, x.length); -exports.ger = ger; -exports.dsbmv = nblas.dsbmv; -exports.ssbmv = nblas.ssbmv; -const sbmv = (a, x, y, k = 0, uplo = exports.Upper, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(x)}sbmv`](uplo, x.length, k, alpha, a, x.length, x, 1, beta, y, 1); -exports.sbmv = sbmv; -exports.dspmv = nblas.dspmv; -exports.sspmv = nblas.sspmv; -const spmv = (ap, x, y, uplo = exports.Upper, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(x)}spmv`](uplo, x.length, alpha, ap, x, 1, beta, y, 1); -exports.spmv = spmv; -exports.dspr = nblas.dspr; -exports.sspr = nblas.sspr; -const spr = (ap, x, uplo = exports.Upper, alpha = 1) => nblas[`${(0, util_1.prefix)(x)}spr`](uplo, x.length, alpha, x, 1, ap); -exports.spr = spr; -exports.dspr2 = nblas.dspr2; -exports.sspr2 = nblas.sspr2; -const spr2 = (ap, x, y, uplo = exports.Upper, alpha = 1) => nblas[`${(0, util_1.prefix)(x)}spr2`](uplo, x.length, alpha, x, 1, y, 1, ap); -exports.spr2 = spr2; -exports.dsymv = nblas.dsymv; -exports.ssymv = nblas.ssymv; -const symv = (a, x, y, uplo = exports.Upper, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(x)}symv`](uplo, x.length, alpha, a, x.length, x, 1, beta, y, 1); -exports.symv = symv; -exports.dsyr = nblas.dsyr; -exports.ssyr = nblas.ssyr; -const syr = (a, x, uplo = exports.Upper, alpha = 1) => nblas[`${(0, util_1.prefix)(x)}syr`](uplo, x.length, alpha, x, 1, a, x.length); -exports.syr = syr; -exports.dsyr2 = nblas.dsyr2; -exports.ssyr2 = nblas.ssyr2; -const syr2 = (a, x, y, uplo = exports.Upper, alpha = 1) => nblas[`${(0, util_1.prefix)(x)}syr2`](uplo, x.length, alpha, x, 1, y, 1, a, x.length); -exports.syr2 = syr2; -exports.dtbmv = nblas.dtbmv; -exports.stbmv = nblas.stbmv; -exports.ztbmv = nblas.ztbmv; -exports.ctbmv = nblas.ctbmv; -const tbmv = (a, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}tbmv`](uplo, trans, diag, x.length, 0, a, x.length, x, 1); -exports.tbmv = tbmv; -exports.dtbsv = nblas.dtbsv; -exports.stbsv = nblas.stbsv; -exports.ztbsv = nblas.ztbsv; -exports.ctbsv = nblas.ctbsv; -const tbsv = (a, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}tbsv`](uplo, trans, diag, x.length, 0, a, x.length, x, 1); -exports.tbsv = tbsv; -exports.dtpmv = nblas.dtpmv; -exports.stpmv = nblas.stpmv; -exports.ztpmv = nblas.ztpmv; -exports.ctpmv = nblas.ctpmv; -const tpmv = (ap, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}tpmv`](uplo, trans, diag, x.length, ap, x, 1); -exports.tpmv = tpmv; -exports.dtpsv = nblas.dtpsv; -exports.stpsv = nblas.stpsv; -exports.ztpsv = nblas.ztpsv; -exports.ctpsv = nblas.ctpsv; -const tpsv = (ap, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}tpsv`](uplo, trans, diag, x.length, ap, x, 1); -exports.tpsv = tpsv; -exports.dtrmv = nblas.dtrmv; -exports.strmv = nblas.strmv; -exports.ztrmv = nblas.ztrmv; -exports.ctrmv = nblas.ctrmv; -const trmv = (a, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}trmv`](uplo, trans, diag, x.length, a, x.length, x, 1); -exports.trmv = trmv; -exports.dtrsv = nblas.dtrsv; -exports.strsv = nblas.strsv; -exports.ztrsv = nblas.ztrsv; -exports.ctrsv = nblas.ctrsv; -const trsv = (a, x, uplo = exports.Upper, trans = exports.NoTrans, diag = exports.NonUnit) => nblas[`${(0, util_1.prefix)(x)}trsv`](uplo, trans, diag, x.length, a, x.length, x, 1); -exports.trsv = trsv; -exports.dgemm = nblas.dgemm; -exports.sgemm = nblas.sgemm; -exports.zgemm = nblas.zgemm; -exports.cgemm = nblas.cgemm; -const gemm = (a, b, c, m, n, k, transa = exports.NoTrans, transb = exports.NoTrans, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(a)}gemm`](transa, transb, m, n, k, alpha, a, k, b, n, beta, c, n); -exports.gemm = gemm; -exports.dsymm = nblas.dsymm; -exports.ssymm = nblas.ssymm; -exports.zsymm = nblas.zsymm; -exports.csymm = nblas.csymm; -const symm = (a, b, c, m, n, side = exports.Left, uplo = exports.Upper, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(a)}symm`](side, uplo, m, n, alpha, a, m, b, n, beta, c, m); -exports.symm = symm; -exports.dsyrk = nblas.dsyrk; -exports.ssyrk = nblas.ssyrk; -exports.zsyrk = nblas.zsyrk; -exports.csyrk = nblas.csyrk; -const syrk = (a, c, n, k, uplo = exports.Upper, trans = exports.NoTrans, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(a)}syrk`](uplo, trans, n, k, alpha, a, n, beta, c, n); -exports.syrk = syrk; -exports.dsyr2k = nblas.dsyr2k; -exports.ssyr2k = nblas.ssyr2k; -exports.zsyr2k = nblas.zsyr2k; -exports.csyr2k = nblas.csyr2k; -const syr2k = (a, b, c, n, k, uplo = exports.Upper, trans = exports.NoTrans, alpha = 1, beta = 0) => nblas[`${(0, util_1.prefix)(a)}syr2k`](uplo, trans, n, k, alpha, a, n, b, n, beta, c, n); -exports.syr2k = syr2k; -exports.dtrmm = nblas.dtrmm; -exports.strmm = nblas.strmm; -exports.ztrmm = nblas.ztrmm; -exports.ctrmm = nblas.ctrmm; -const trmm = (a, b, m, n, side = exports.Left, uplo = exports.Upper, transa = exports.NoTrans, diag = exports.NonUnit, alpha = 1) => nblas[`${(0, util_1.prefix)(a)}trmm`](side, uplo, transa, diag, m, n, alpha, a, m, b, m); -exports.trmm = trmm; -exports.dtrsm = nblas.dtrsm; -exports.strsm = nblas.strsm; -exports.ztrsm = nblas.ztrsm; -exports.ctrsm = nblas.ctrsm; -const trsm = (a, b, m, n, side = exports.Left, uplo = exports.Upper, transa = exports.NoTrans, diag = exports.NonUnit, alpha = 1) => nblas[`${(0, util_1.prefix)(a)}trsm`](side, uplo, transa, diag, m, n, alpha, a, m, b, m); -exports.trsm = trsm; diff --git a/dist/types.d.ts b/dist/types.d.ts deleted file mode 100644 index 9deecf5..0000000 --- a/dist/types.d.ts +++ /dev/null @@ -1,152 +0,0 @@ -export type FloatArray = Float64Array | Float32Array; -export type MatrixTrans = 111 | 112 | 113; -export type MatrixUpperLower = 121 | 122; -export type MatrixUnit = 131 | 132; -export type MatrixLeftRight = 141 | 142; -export interface INBlas { - [key: string]: any; - dasum(n: number, x: Float64Array, incx: number): number; - sasum(n: number, x: Float32Array, incx: number): number; - dzasum(n: number, x: Float64Array, incx: number): number; - scasum(n: number, x: Float32Array, incx: number): number; - daxpy(n: number, alpha: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - saxpy(n: number, alpha: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - zaxpy(n: number, alpha: Float64Array, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - caxpy(n: number, alpha: Float32Array, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - dcopy(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - scopy(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - zcopy(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - ccopy(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - ddot(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): number; - sdot(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): number; - dnrm2(n: number, x: Float64Array, incx: number): number; - snrm2(n: number, x: Float32Array, incx: number): number; - dznrm2(n: number, x: Float64Array, incx: number): number; - scnrm2(n: number, x: Float32Array, incx: number): number; - drot(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number, c: number, s: number): void; - srot(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number, c: number, s: number): void; - drotg(a: Float64Array, b: Float64Array, c: Float64Array, s: Float64Array): void; - srotg(a: Float32Array, b: Float32Array, c: Float32Array, s: Float32Array): void; - drotm(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - srotm(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - drotmg(d1: Float64Array, d2: Float64Array, x1: Float64Array, y1: Float64Array, param: Float64Array): void; - srotmg(d1: Float32Array, d2: Float32Array, x1: Float32Array, y1: Float32Array, param: Float32Array): void; - dscal(n: number, a: number, x: Float64Array, incx: number): void; - sscal(n: number, a: number, x: Float32Array, incx: number): void; - zscal(n: number, a: Float64Array, x: Float64Array, incx: number): void; - cscal(n: number, a: Float32Array, x: Float32Array, incx: number): void; - dswap(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - sswap(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - zswap(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - cswap(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - idamax(n: number, x: Float64Array, incx: number): number; - isamax(n: number, x: Float32Array, incx: number): number; - izamax(n: number, x: Float64Array, incx: number): number; - icamax(n: number, x: Float32Array, incx: number): number; - dgbmv(trans: MatrixTrans, m: number, n: number, kl: number, ku: number, alpha: number, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: number, y: Float64Array, incy: number): void; - sgbmv(trans: MatrixTrans, m: number, n: number, kl: number, ku: number, alpha: number, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: number, y: Float32Array, incy: number): void; - zgbmv(trans: MatrixTrans, m: number, n: number, kl: number, ku: number, alpha: Float64Array, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: Float64Array, y: Float64Array, incy: number): void; - cgbmv(trans: MatrixTrans, m: number, n: number, kl: number, ku: number, alpha: Float32Array, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: Float32Array, y: Float32Array, incy: number): void; - dgemv(trans: MatrixTrans, m: number, n: number, alpha: number, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: number, y: Float64Array, incy: number): void; - sgemv(trans: MatrixTrans, m: number, n: number, alpha: number, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: number, y: Float32Array, incy: number): void; - zgemv(trans: MatrixTrans, m: number, n: number, alpha: Float64Array, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: Float64Array, y: Float64Array, incy: number): void; - cgemv(trans: MatrixTrans, m: number, n: number, alpha: Float32Array, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: Float32Array, y: Float32Array, incy: number): void; - dger(m: number, n: number, alpha: number, x: Float64Array, incx: number, y: Float64Array, incy: number, a: Float64Array, lda: number): void; - sger(m: number, n: number, alpha: number, x: Float32Array, incx: number, y: Float32Array, incy: number, a: Float32Array, lda: number): void; - dsbmv(uplo: MatrixUpperLower, n: number, k: number, alpha: number, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: number, y: Float64Array, incy: number): void; - ssbmv(uplo: MatrixUpperLower, n: number, k: number, alpha: number, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: number, y: Float32Array, incy: number): void; - dspmv(uplo: MatrixUpperLower, n: number, alpha: number, ap: Float64Array, x: Float64Array, incx: number, beta: number, y: Float64Array, incy: number): void; - sspmv(uplo: MatrixUpperLower, n: number, alpha: number, ap: Float32Array, x: Float32Array, incx: number, beta: number, y: Float32Array, incy: number): void; - dspr(uplo: MatrixUpperLower, n: number, alpha: number, x: Float64Array, incx: number, ap: Float64Array): void; - sspr(uplo: MatrixUpperLower, n: number, alpha: number, x: Float32Array, incx: number, ap: Float32Array): void; - dspr2(uplo: MatrixUpperLower, n: number, alpha: number, x: Float64Array, incx: number, y: Float64Array, incy: number, ap: Float64Array): void; - sspr2(uplo: MatrixUpperLower, n: number, alpha: number, x: Float32Array, incx: number, y: Float32Array, incy: number, ap: Float32Array): void; - dsymv(uplo: MatrixUpperLower, n: number, alpha: number, a: Float64Array, lda: number, x: Float64Array, incx: number, beta: number, y: Float64Array, incy: number): void; - ssymv(uplo: MatrixUpperLower, n: number, alpha: number, a: Float32Array, lda: number, x: Float32Array, incx: number, beta: number, y: Float32Array, incy: number): void; - dsyr(uplo: MatrixUpperLower, n: number, alpha: number, x: Float64Array, incx: number, a: Float64Array, lda: number): void; - ssyr(uplo: MatrixUpperLower, n: number, alpha: number, x: Float32Array, incx: number, a: Float32Array, lda: number): void; - dsyr2(uplo: MatrixUpperLower, n: number, alpha: number, x: Float64Array, incx: number, y: Float64Array, incy: number, a: Float64Array, lda: number): void; - ssyr2(uplo: MatrixUpperLower, n: number, alpha: number, x: Float32Array, incx: number, y: Float32Array, incy: number, a: Float32Array, lda: number): void; - dtbmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - stbmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - ztbmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - ctbmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - dtbsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - stbsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - ztbsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - ctbsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, k: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - dtpmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float64Array, x: Float64Array, incx: number): void; - stpmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float32Array, x: Float32Array, incx: number): void; - ztpmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float64Array, x: Float64Array, incx: number): void; - ctpmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float32Array, x: Float32Array, incx: number): void; - dtpsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float64Array, x: Float64Array, incx: number): void; - stpsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float32Array, x: Float32Array, incx: number): void; - ztpsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float64Array, x: Float64Array, incx: number): void; - ctpsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, ap: Float32Array, x: Float32Array, incx: number): void; - dtrmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - strmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - ztrmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - ctrmv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - dtrsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - strsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - ztrsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float64Array, lda: number, x: Float64Array, incx: number): void; - ctrsv(uplo: MatrixUpperLower, trans: MatrixTrans, diag: MatrixUnit, n: number, a: Float32Array, lda: number, x: Float32Array, incx: number): void; - dgemm(transa: MatrixTrans, transb: MatrixTrans, m: number, n: number, k: number, alpha: number, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: number, c: Float64Array, ldc: number): void; - sgemm(transa: MatrixTrans, transb: MatrixTrans, m: number, n: number, k: number, alpha: number, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: number, c: Float32Array, ldc: number): void; - zgemm(transa: MatrixTrans, transb: MatrixTrans, m: number, n: number, k: number, alpha: Float64Array, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: Float64Array, c: Float64Array, ldc: number): void; - cgemm(transa: MatrixTrans, transb: MatrixTrans, m: number, n: number, k: number, alpha: Float32Array, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: Float32Array, c: Float32Array, ldc: number): void; - dsymm(side: MatrixLeftRight, uplo: MatrixUpperLower, m: number, n: number, alpha: number, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: number, c: Float64Array, ldc: number): void; - ssymm(side: MatrixLeftRight, uplo: MatrixUpperLower, m: number, n: number, alpha: number, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: number, c: Float32Array, ldc: number): void; - zsymm(side: MatrixLeftRight, uplo: MatrixUpperLower, m: number, n: number, alpha: Float64Array, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: Float64Array, c: Float64Array, ldc: number): void; - csymm(side: MatrixLeftRight, uplo: MatrixUpperLower, m: number, n: number, alpha: Float32Array, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: Float32Array, c: Float32Array, ldc: number): void; - dsyrk(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: number, a: Float64Array, lda: number, beta: number, c: Float64Array, ldc: number): void; - ssyrk(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: number, a: Float32Array, lda: number, beta: number, c: Float32Array, ldc: number): void; - zsyrk(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: Float64Array, a: Float64Array, lda: number, beta: Float64Array, c: Float64Array, ldc: number): void; - csyrk(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: Float32Array, a: Float32Array, lda: number, beta: Float32Array, c: Float32Array, ldc: number): void; - dsyr2k(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: number, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: number, c: Float64Array, ldc: number): void; - ssyr2k(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: number, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: number, c: Float32Array, ldc: number): void; - zsyr2k(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: Float64Array, a: Float64Array, lda: number, b: Float64Array, ldb: number, beta: Float64Array, c: Float64Array, ldc: number): void; - csyr2k(uplo: MatrixUpperLower, trans: MatrixTrans, n: number, k: number, alpha: Float32Array, a: Float32Array, lda: number, b: Float32Array, ldb: number, beta: Float32Array, c: Float32Array, ldc: number): void; - dtrmm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: number, a: Float64Array, lda: number, b: Float64Array, ldb: number): void; - strmm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: number, a: Float32Array, lda: number, b: Float32Array, ldb: number): void; - ztrmm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: Float64Array, a: Float64Array, lda: number, b: Float64Array, ldb: number): void; - ctrmm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: Float32Array, a: Float32Array, lda: number, b: Float32Array, ldb: number): void; - dtrsm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: number, a: Float64Array, lda: number, b: Float64Array, ldb: number): void; - strsm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: number, a: Float32Array, lda: number, b: Float32Array, ldb: number): void; - ztrsm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: Float64Array, a: Float64Array, lda: number, b: Float64Array, ldb: number): void; - ctrsm(side: MatrixLeftRight, uplo: MatrixUpperLower, transa: MatrixTrans, diag: MatrixUnit, m: number, n: number, alpha: Float32Array, a: Float32Array, lda: number, b: Float32Array, ldb: number): void; - asum(x: FloatArray): number; - axpy(x: FloatArray, y: FloatArray, a?: number): void; - copy(x: FloatArray, y: FloatArray): void; - dot(x: FloatArray, y: FloatArray): number; - nrm2(x: FloatArray): number; - rot(x: FloatArray, y: FloatArray, c: number, s: number): void; - rotg(a: FloatArray, b: FloatArray, c: FloatArray, s: FloatArray): void; - rotm(x: FloatArray, y: FloatArray, param: FloatArray): void; - rotmg(d1: FloatArray, d2: FloatArray, x1: FloatArray, y1: FloatArray, param: FloatArray): void; - scal(x: FloatArray, a: number): void; - swap(x: FloatArray, y: FloatArray): void; - iamax(x: FloatArray): number; - gbmv(a: FloatArray, x: FloatArray, y: FloatArray, kl?: number, ku?: number, alpha?: number, beta?: number, trans?: MatrixTrans): void; - gemv(a: FloatArray, x: FloatArray, y: FloatArray, alpha?: number, beta?: number, trans?: MatrixTrans): void; - ger(a: FloatArray, x: FloatArray, y: FloatArray, alpha?: number): void; - sbmv(a: FloatArray, x: FloatArray, y: FloatArray, k?: number, uplo?: MatrixUpperLower, alpha?: number, beta?: number): void; - spmv(ap: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number, beta?: number): void; - spr(ap: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - spr2(ap: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - symv(a: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number, beta?: number): void; - syr(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - syr2(a: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - tbmv(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - tbsv(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - tpmv(ap: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - tpsv(ap: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - trmv(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - trsv(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, trans?: MatrixTrans, diag?: MatrixUnit): void; - gemm(a: FloatArray, b: FloatArray, c: FloatArray, m: number, n: number, k: number, transa?: MatrixTrans, transb?: MatrixTrans, alpha?: number, beta?: number): void; - symm(a: FloatArray, b: FloatArray, c: FloatArray, m: number, n: number, side?: MatrixLeftRight, uplo?: MatrixUpperLower, alpha?: number, beta?: number): void; - syrk(a: FloatArray, c: FloatArray, n: FloatArray, k: number, uplo?: MatrixUpperLower, trans?: MatrixTrans, alpha?: number, beta?: number): void; - syr2k(a: FloatArray, b: FloatArray, c: FloatArray, n: number, k: number, uplo?: MatrixUpperLower, trans?: MatrixTrans, alpha?: number, beta?: number): void; - trmm(a: FloatArray, b: FloatArray, m: number, n: number, side?: MatrixLeftRight, uplo?: MatrixUpperLower, transa?: MatrixTrans, diag?: MatrixUnit, alpha?: number): void; - trsm(a: FloatArray, b: FloatArray, m: number, n: number, side?: MatrixLeftRight, uplo?: MatrixUpperLower, transa?: MatrixTrans, diag?: MatrixUnit, alpha?: number): void; -} diff --git a/dist/types.js b/dist/types.js deleted file mode 100644 index c8ad2e5..0000000 --- a/dist/types.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/util.d.ts b/dist/util.d.ts deleted file mode 100644 index 194d680..0000000 --- a/dist/util.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { FloatArray } from './types'; -export declare const prefix: (x: FloatArray) => 'd' | 's'; diff --git a/dist/util.js b/dist/util.js deleted file mode 100644 index 19be895..0000000 --- a/dist/util.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.prefix = void 0; -const prefix = (x) => { - if (x instanceof Float64Array) { - return 'd'; - } - if (x instanceof Float32Array) { - return 's'; - } - throw new Error('invalid type!'); -}; -exports.prefix = prefix; diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js new file mode 100644 index 0000000..fb85f0a --- /dev/null +++ b/docs/assets/hierarchy.js @@ -0,0 +1 @@ +window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg==" \ No newline at end of file diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css index aadc27d..c7af87d 100644 --- a/docs/assets/highlight.css +++ b/docs/assets/highlight.css @@ -1,18 +1,18 @@ :root { - --light-hl-0: #000000; - --dark-hl-0: #D4D4D4; - --light-hl-1: #A31515; - --dark-hl-1: #CE9178; - --light-hl-2: #AF00DB; - --dark-hl-2: #C586C0; - --light-hl-3: #001080; - --dark-hl-3: #9CDCFE; - --light-hl-4: #0000FF; - --dark-hl-4: #569CD6; - --light-hl-5: #0070C1; - --dark-hl-5: #4FC1FF; - --light-hl-6: #795E26; - --dark-hl-6: #DCDCAA; + --light-hl-0: #795E26; + --dark-hl-0: #DCDCAA; + --light-hl-1: #000000; + --dark-hl-1: #D4D4D4; + --light-hl-2: #A31515; + --dark-hl-2: #CE9178; + --light-hl-3: #AF00DB; + --dark-hl-3: #C586C0; + --light-hl-4: #001080; + --dark-hl-4: #9CDCFE; + --light-hl-5: #0000FF; + --dark-hl-5: #569CD6; + --light-hl-6: #0070C1; + --dark-hl-6: #4FC1FF; --light-hl-7: #098658; --dark-hl-7: #B5CEA8; --light-hl-8: #008000; diff --git a/docs/assets/icons.js b/docs/assets/icons.js new file mode 100644 index 0000000..3ae8f55 --- /dev/null +++ b/docs/assets/icons.js @@ -0,0 +1,18 @@ +(function() { + addIcons(); + function addIcons() { + if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons); + const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg")); + svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`; + svg.style.display = "none"; + if (location.protocol === "file:") updateUseElements(); + } + + function updateUseElements() { + document.querySelectorAll("use").forEach(el => { + if (el.getAttribute("href").includes("#icon-")) { + el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#")); + } + }); + } +})() \ No newline at end of file diff --git a/docs/assets/icons.svg b/docs/assets/icons.svg new file mode 100644 index 0000000..10db10b --- /dev/null +++ b/docs/assets/icons.svg @@ -0,0 +1 @@ +MMNEPVFCICPMFPCPTTAAATR \ No newline at end of file diff --git a/docs/assets/main.js b/docs/assets/main.js index 932e185..11d92ad 100644 --- a/docs/assets/main.js +++ b/docs/assets/main.js @@ -1,7 +1,9 @@ "use strict"; -"use strict";(()=>{var be=Object.create;var re=Object.defineProperty;var Se=Object.getOwnPropertyDescriptor;var we=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,ke=Object.prototype.hasOwnProperty;var Qe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Pe=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of we(e))!ke.call(t,i)&&i!==r&&re(t,i,{get:()=>e[i],enumerable:!(n=Se(e,i))||n.enumerable});return t};var Ie=(t,e,r)=>(r=t!=null?be(Te(t)):{},Pe(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var ae=Qe((se,oe)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var d=t.utils.clone(r)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(n.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(r+=n[u+1]*i[d+1],u+=2,d+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),m=s.str.charAt(1),y;m in s.node.edges?y=s.node.edges[m]:(y=new t.TokenSet,s.node.edges[m]=y),s.str.length==1&&(y.final=!0),i.push({node:y,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof se=="object"?oe.exports=r():e.lunr=r()}(this,function(){return t})})()});var ne=[];function G(t,e){ne.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){ne.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n,app:this}),n.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),r=e?.parentElement;for(;r&&!r.classList.contains(".tsd-navigation");)r instanceof HTMLDetailsElement&&e?.parentElement?.parentElement!==r&&(r.open=!0),r=r.parentElement;if(e){let n=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=n}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let r=e.parentElement;for(;r&&r.tagName!=="SECTION";)r=r.parentElement;if(r&&r.offsetParent==null){this.alwaysVisibleMember=r,r.classList.add("always-visible");let n=document.createElement("p");n.classList.add("warning"),n.textContent="This member is normally hidden due to your filter settings.",r.prepend(n)}}};var ie=(t,e=100)=>{let r;return()=>{clearTimeout(r),r=setTimeout(()=>t(),e)}};var ce=Ie(ae());function de(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("tsd-search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ce(t,n,r,s)}function Ce(t,e,r,n){r.addEventListener("input",ie(()=>{_e(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Re(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function Oe(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ce.Index.load(window.searchData.index))}function _e(t,e,r,n){if(Oe(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=i?n.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${le(l.parent,i)}.${u}`);let d=document.createElement("li");d.classList.value=l.classes??"";let m=document.createElement("a");m.href=n.base+l.url,m.innerHTML=u,d.append(m),e.appendChild(d)}}function ue(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Re(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function le(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(K(t.substring(s))),i.join("")}var Fe={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Fe[e])}var P=class{constructor(e){this.el=e.el,this.app=e.app}};var M="mousedown",fe="mousemove",N="mouseup",J={x:0,y:0},he=!1,ee=!1,Me=!1,D=!1,pe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(pe?"is-mobile":"not-mobile");pe&&"ontouchstart"in document.documentElement&&(Me=!0,M="touchstart",fe="touchmove",N="touchend");document.addEventListener(M,t=>{ee=!0,D=!1;let e=M=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=M=="touchstart"?t.targetTouches[0]:t,r=J.x-(e.pageX||0),n=J.y-(e.pageY||0);D=Math.sqrt(r*r+n*n)>10}});document.addEventListener(N,()=>{ee=!1});document.addEventListener("click",t=>{he&&(t.preventDefault(),t.stopImmediatePropagation(),he=!1)});var X=class extends P{constructor(r){super(r);this.className=this.el.dataset.toggle||"",this.el.addEventListener(N,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(M,n=>this.onDocumentPointerDown(n)),document.addEventListener(N,n=>this.onDocumentPointerUp(n))}setActive(r){if(this.active==r)return;this.active=r,document.documentElement.classList.toggle("has-"+this.className,r),this.el.classList.toggle("active",r);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(r){D||(this.setActive(!0),r.preventDefault())}onDocumentPointerDown(r){if(this.active){if(r.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(r){if(!D&&this.active&&r.target.closest(".col-sidebar")){let n=r.target.closest("a");if(n){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),n.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var me=document.head.appendChild(document.createElement("style"));me.dataset.for="filters";var Y=class extends P{constructor(r){super(r);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),me.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } -`}fromLocalStorage(){let r=Q.getItem(this.key);return r?r==="true":this.el.checked}setLocalStorage(r){Q.setItem(this.key,r.toString()),this.value=r,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let n=Array.from(r.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);r.style.display=n?"none":"block"})}};var Z=class extends P{constructor(r){super(r);this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update()),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ve(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}addEventListener("load",()=>{de(),G(X,"a[data-toggle]"),G(Z,".tsd-index-accordion"),G(Y,".tsd-filter-item input[type=checkbox]");let t=document.getElementById("tsd-theme");t&&ve(t);let e=new U;Object.defineProperty(window,"app",{value:e})});})(); +window.translations={"copy":"Copy","copied":"Copied!","normally_hidden":"This member is normally hidden due to your filter settings.","hierarchy_expand":"Expand","hierarchy_collapse":"Collapse","folder":"Folder","search_index_not_available":"The search index is not available","search_no_results_found_for_0":"No results found for {0}","kind_1":"Project","kind_2":"Module","kind_4":"Namespace","kind_8":"Enumeration","kind_16":"Enumeration Member","kind_32":"Variable","kind_64":"Function","kind_128":"Class","kind_256":"Interface","kind_512":"Constructor","kind_1024":"Property","kind_2048":"Method","kind_4096":"Call Signature","kind_8192":"Index Signature","kind_16384":"Constructor Signature","kind_32768":"Parameter","kind_65536":"Type Literal","kind_131072":"Type Parameter","kind_262144":"Accessor","kind_524288":"Get Signature","kind_1048576":"Set Signature","kind_2097152":"Type Alias","kind_4194304":"Reference","kind_8388608":"Document"}; +"use strict";(()=>{var Ke=Object.create;var he=Object.defineProperty;var Ge=Object.getOwnPropertyDescriptor;var Ze=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ye=Object.prototype.hasOwnProperty;var et=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var tt=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ze(e))!Ye.call(t,i)&&i!==n&&he(t,i,{get:()=>e[i],enumerable:!(r=Ge(e,i))||r.enumerable});return t};var nt=(t,e,n)=>(n=t!=null?Ke(Xe(t)):{},tt(e||!t||!t.__esModule?he(n,"default",{value:t,enumerable:!0}):n,t));var ye=et((me,ge)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=(function(e){return function(n){e.console&&console.warn&&console.warn(n)}})(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,l],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(oc?d+=2:a==c&&(n+=r[l+1]*i[d+1],l+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}if(s.str.length==0&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),f=s.str.charAt(1),p;f in s.node.edges?p=s.node.edges[f]:(p=new t.TokenSet,s.node.edges[f]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),c=0;c1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}if(s.type===t.QueryLexer.TERM)return t.QueryParser.parseTerm;var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},(function(e,n){typeof define=="function"&&define.amd?define(n):typeof me=="object"?ge.exports=n():e.lunr=n()})(this,function(){return t})})()});var M,G={getItem(){return null},setItem(){}},K;try{K=localStorage,M=K}catch{K=G,M=G}var S={getItem:t=>M.getItem(t),setItem:(t,e)=>M.setItem(t,e),disableWritingLocalStorage(){M=G},disable(){localStorage.clear(),M=G},enable(){M=K}};window.TypeDoc||={disableWritingLocalStorage(){S.disableWritingLocalStorage()},disableLocalStorage:()=>{S.disable()},enableLocalStorage:()=>{S.enable()}};window.translations||={copy:"Copy",copied:"Copied!",normally_hidden:"This member is normally hidden due to your filter settings.",hierarchy_expand:"Expand",hierarchy_collapse:"Collapse",search_index_not_available:"The search index is not available",search_no_results_found_for_0:"No results found for {0}",folder:"Folder",kind_1:"Project",kind_2:"Module",kind_4:"Namespace",kind_8:"Enumeration",kind_16:"Enumeration Member",kind_32:"Variable",kind_64:"Function",kind_128:"Class",kind_256:"Interface",kind_512:"Constructor",kind_1024:"Property",kind_2048:"Method",kind_4096:"Call Signature",kind_8192:"Index Signature",kind_16384:"Constructor Signature",kind_32768:"Parameter",kind_65536:"Type Literal",kind_131072:"Type Parameter",kind_262144:"Accessor",kind_524288:"Get Signature",kind_1048576:"Set Signature",kind_2097152:"Type Alias",kind_4194304:"Reference",kind_8388608:"Document"};var pe=[];function X(t,e){pe.push({selector:e,constructor:t})}var Z=class{alwaysVisibleMember=null;constructor(){this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}createComponents(e){pe.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(document.body.style.removeProperty("display"),this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}scrollToHash(){if(location.hash){let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!rt(e)){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r,document.querySelector(".col-sidebar").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=n)}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(!n)return;let r=n.offsetParent==null,i=n;for(;i!==document.body;)i instanceof HTMLDetailsElement&&(i.open=!0),i=i.parentElement;if(n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let s=document.createElement("p");s.classList.add("warning"),s.textContent=window.translations.normally_hidden,n.prepend(s)}r&&e.scrollIntoView()}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent=window.translations.copied,e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent=window.translations.copy},100)},1e3)})})}};function rt(t){let e=t.getBoundingClientRect(),n=Math.max(document.documentElement.clientHeight,window.innerHeight);return!(e.bottom<0||e.top-n>=0)}var fe=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var Ie=nt(ye(),1);async function R(t){let e=Uint8Array.from(atob(t),s=>s.charCodeAt(0)),r=new Blob([e]).stream().pipeThrough(new DecompressionStream("deflate")),i=await new Response(r).text();return JSON.parse(i)}var Y="closing",ae="tsd-overlay";function it(){let t=Math.abs(window.innerWidth-document.documentElement.clientWidth);document.body.style.overflow="hidden",document.body.style.paddingRight=`${t}px`}function st(){document.body.style.removeProperty("overflow"),document.body.style.removeProperty("padding-right")}function xe(t,e){t.addEventListener("animationend",()=>{t.classList.contains(Y)&&(t.classList.remove(Y),document.getElementById(ae)?.remove(),t.close(),st())}),t.addEventListener("cancel",n=>{n.preventDefault(),ve(t)}),e?.closeOnClick&&document.addEventListener("click",n=>{t.open&&!t.contains(n.target)&&ve(t)},!0)}function Ee(t){if(t.open)return;let e=document.createElement("div");e.id=ae,document.body.appendChild(e),t.showModal(),it()}function ve(t){if(!t.open)return;document.getElementById(ae)?.classList.add(Y),t.classList.add(Y)}var I=class{el;app;constructor(e){this.el=e.el,this.app=e.app}};var be=document.head.appendChild(document.createElement("style"));be.dataset.for="filters";var le={};function we(t){for(let e of t.split(/\s+/))if(le.hasOwnProperty(e)&&!le[e])return!0;return!1}var ee=class extends I{key;value;constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),be.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=S.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){S.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),le[`tsd-is-${this.el.name}`]=this.value,this.app.filterChanged(),this.app.updateIndexVisibility()}};var Le=0;async function Se(t,e){if(!window.searchData)return;let n=await R(window.searchData);t.data=n,t.index=Ie.Index.load(n.index),e.innerHTML=""}function _e(){let t=document.getElementById("tsd-search-trigger"),e=document.getElementById("tsd-search"),n=document.getElementById("tsd-search-input"),r=document.getElementById("tsd-search-results"),i=document.getElementById("tsd-search-script"),s=document.getElementById("tsd-search-status");if(!(t&&e&&n&&r&&i&&s))throw new Error("Search controls missing");let o={base:document.documentElement.dataset.base};o.base.endsWith("/")||(o.base+="/"),i.addEventListener("error",()=>{let a=window.translations.search_index_not_available;Pe(s,a)}),i.addEventListener("load",()=>{Se(o,s)}),Se(o,s),ot({trigger:t,searchEl:e,results:r,field:n,status:s},o)}function ot(t,e){let{field:n,results:r,searchEl:i,status:s,trigger:o}=t;xe(i,{closeOnClick:!0});function a(){Ee(i),n.setSelectionRange(0,n.value.length)}o.addEventListener("click",a),n.addEventListener("input",fe(()=>{at(r,n,s,e)},200)),n.addEventListener("keydown",l=>{if(r.childElementCount===0||l.ctrlKey||l.metaKey||l.altKey)return;let d=n.getAttribute("aria-activedescendant"),f=d?document.getElementById(d):null;if(f){let p=!1,v=!1;switch(l.key){case"Home":case"End":case"ArrowLeft":case"ArrowRight":v=!0;break;case"ArrowDown":case"ArrowUp":p=l.shiftKey;break}(p||v)&&ke(n)}if(!l.shiftKey)switch(l.key){case"Enter":f?.querySelector("a")?.click();break;case"ArrowUp":Te(r,n,f,-1),l.preventDefault();break;case"ArrowDown":Te(r,n,f,1),l.preventDefault();break}});function c(){ke(n)}n.addEventListener("change",c),n.addEventListener("blur",c),n.addEventListener("click",c),document.body.addEventListener("keydown",l=>{if(l.altKey||l.metaKey||l.shiftKey)return;let d=l.ctrlKey&&l.key==="k",f=!l.ctrlKey&&!ut()&&l.key==="/";(d||f)&&(l.preventDefault(),a())})}function at(t,e,n,r){if(!r.index||!r.data)return;t.innerHTML="",n.innerHTML="",Le+=1;let i=e.value.trim(),s;if(i){let a=i.split(" ").map(c=>c.length?`*${c}*`:"").join(" ");s=r.index.search(a).filter(({ref:c})=>{let l=r.data.rows[Number(c)].classes;return!l||!we(l)})}else s=[];if(s.length===0&&i){let a=window.translations.search_no_results_found_for_0.replace("{0}",` "${te(i)}" `);Pe(n,a);return}for(let a=0;ac.score-a.score);let o=Math.min(10,s.length);for(let a=0;a`,f=Ce(c.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(f+=` (score: ${s[a].score.toFixed(2)})`),c.parent&&(f=` + ${Ce(c.parent,i)}.${f}`);let p=document.createElement("li");p.id=`tsd-search:${Le}-${a}`,p.role="option",p.ariaSelected="false",p.classList.value=c.classes??"";let v=document.createElement("a");v.tabIndex=-1,v.href=r.base+c.url,v.innerHTML=d+`${f}`,p.append(v),t.appendChild(p)}}function Te(t,e,n,r){let i;if(r===1?i=n?.nextElementSibling||t.firstElementChild:i=n?.previousElementSibling||t.lastElementChild,i!==n){if(!i||i.role!=="option"){console.error("Option missing");return}i.ariaSelected="true",i.scrollIntoView({behavior:"smooth",block:"nearest"}),e.setAttribute("aria-activedescendant",i.id),n?.setAttribute("aria-selected","false")}}function ke(t){let e=t.getAttribute("aria-activedescendant");(e?document.getElementById(e):null)?.setAttribute("aria-selected","false"),t.setAttribute("aria-activedescendant","")}function Ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(te(t.substring(s,o)),`${te(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(te(t.substring(s))),i.join("")}var lt={"&":"&","<":"<",">":">","'":"'",'"':"""};function te(t){return t.replace(/[&<>"'"]/g,e=>lt[e])}function Pe(t,e){t.innerHTML=e?`
${e}
`:""}var ct=["button","checkbox","file","hidden","image","radio","range","reset","submit"];function ut(){let t=document.activeElement;return t?t.isContentEditable||t.tagName==="TEXTAREA"||t.tagName==="SEARCH"?!0:t.tagName==="INPUT"&&!ct.includes(t.type):!1}var D="mousedown",Me="mousemove",$="mouseup",ne={x:0,y:0},Qe=!1,ce=!1,dt=!1,F=!1,Oe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Oe?"is-mobile":"not-mobile");Oe&&"ontouchstart"in document.documentElement&&(dt=!0,D="touchstart",Me="touchmove",$="touchend");document.addEventListener(D,t=>{ce=!0,F=!1;let e=D=="touchstart"?t.targetTouches[0]:t;ne.y=e.pageY||0,ne.x=e.pageX||0});document.addEventListener(Me,t=>{if(ce&&!F){let e=D=="touchstart"?t.targetTouches[0]:t,n=ne.x-(e.pageX||0),r=ne.y-(e.pageY||0);F=Math.sqrt(n*n+r*r)>10}});document.addEventListener($,()=>{ce=!1});document.addEventListener("click",t=>{Qe&&(t.preventDefault(),t.stopImmediatePropagation(),Qe=!1)});var re=class extends I{active;className;constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener($,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(D,n=>this.onDocumentPointerDown(n)),document.addEventListener($,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){F||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!F&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var ue=new Map,de=class{open;accordions=[];key;constructor(e,n){this.key=e,this.open=n}add(e){this.accordions.push(e),e.open=this.open,e.addEventListener("toggle",()=>{this.toggle(e.open)})}toggle(e){for(let n of this.accordions)n.open=e;S.setItem(this.key,e.toString())}},ie=class extends I{constructor(e){super(e);let n=this.el.querySelector("summary"),r=n.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)});let i=`tsd-accordion-${n.dataset.key??n.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`,s;if(ue.has(i))s=ue.get(i);else{let o=S.getItem(i),a=o?o==="true":this.el.open;s=new de(i,a),ue.set(i,s)}s.add(this.el)}};function He(t){let e=S.getItem("tsd-theme")||"os";t.value=e,Ae(e),t.addEventListener("change",()=>{S.setItem("tsd-theme",t.value),Ae(t.value)})}function Ae(t){document.documentElement.dataset.theme=t}var se;function Ne(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",Re),Re())}async function Re(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let e=await R(window.navigationData);se=document.documentElement.dataset.base,se.endsWith("/")||(se+="/"),t.innerHTML="";for(let n of e)Be(n,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function Be(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-accordion`:"tsd-accordion";let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.dataset.key=i.join("$"),o.innerHTML='',De(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let c=a.appendChild(document.createElement("ul"));c.className="tsd-nested-navigation";for(let l of t.children)Be(l,c,i)}else De(t,r,t.class)}function De(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));if(r.href=se+t.path,n&&(r.className=n),location.pathname===r.pathname&&!r.href.includes("#")&&(r.classList.add("current"),r.ariaCurrent="page"),t.kind){let i=window.translations[`kind_${t.kind}`].replaceAll('"',""");r.innerHTML=``}r.appendChild(Fe(t.text,document.createElement("span")))}else{let r=e.appendChild(document.createElement("span")),i=window.translations.folder.replaceAll('"',""");r.innerHTML=``,r.appendChild(Fe(t.text,document.createElement("span")))}}function Fe(t,e){let n=t.split(/(?<=[^A-Z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|(?<=[_-])(?=[^_-])/);for(let r=0;r{let i=r.target;for(;i.parentElement&&i.parentElement.tagName!="LI";)i=i.parentElement;i.dataset.dropdown&&(i.dataset.dropdown=String(i.dataset.dropdown!=="true"))});let t=new Map,e=new Set;for(let r of document.querySelectorAll(".tsd-full-hierarchy [data-refl]")){let i=r.querySelector("ul");t.has(r.dataset.refl)?e.add(r.dataset.refl):i&&t.set(r.dataset.refl,i)}for(let r of e)n(r);function n(r){let i=t.get(r).cloneNode(!0);i.querySelectorAll("[id]").forEach(s=>{s.removeAttribute("id")}),i.querySelectorAll("[data-dropdown]").forEach(s=>{s.dataset.dropdown="false"});for(let s of document.querySelectorAll(`[data-refl="${r}"]`)){let o=gt(),a=s.querySelector("ul");s.insertBefore(o,a),o.dataset.dropdown=String(!!a),a||s.appendChild(i.cloneNode(!0))}}}function pt(){let t=document.getElementById("tsd-hierarchy-script");t&&(t.addEventListener("load",Ve),Ve())}async function Ve(){let t=document.querySelector(".tsd-panel.tsd-hierarchy:has(h4 a)");if(!t||!window.hierarchyData)return;let e=+t.dataset.refl,n=await R(window.hierarchyData),r=t.querySelector("ul"),i=document.createElement("ul");if(i.classList.add("tsd-hierarchy"),ft(i,n,e),r.querySelectorAll("li").length==i.querySelectorAll("li").length)return;let s=document.createElement("span");s.classList.add("tsd-hierarchy-toggle"),s.textContent=window.translations.hierarchy_expand,t.querySelector("h4 a")?.insertAdjacentElement("afterend",s),s.insertAdjacentText("beforebegin",", "),s.addEventListener("click",()=>{s.textContent===window.translations.hierarchy_expand?(r.insertAdjacentElement("afterend",i),r.remove(),s.textContent=window.translations.hierarchy_collapse):(i.insertAdjacentElement("afterend",r),i.remove(),s.textContent=window.translations.hierarchy_expand)})}function ft(t,e,n){let r=e.roots.filter(i=>mt(e,i,n));for(let i of r)t.appendChild(je(e,i,n))}function je(t,e,n,r=new Set){if(r.has(e))return;r.add(e);let i=t.reflections[e],s=document.createElement("li");if(s.classList.add("tsd-hierarchy-item"),e===n){let o=s.appendChild(document.createElement("span"));o.textContent=i.name,o.classList.add("tsd-hierarchy-target")}else{for(let a of i.uniqueNameParents||[]){let c=t.reflections[a],l=s.appendChild(document.createElement("a"));l.textContent=c.name,l.href=oe+c.url,l.className=c.class+" tsd-signature-type",s.append(document.createTextNode("."))}let o=s.appendChild(document.createElement("a"));o.textContent=t.reflections[e].name,o.href=oe+i.url,o.className=i.class+" tsd-signature-type"}if(i.children){let o=s.appendChild(document.createElement("ul"));o.classList.add("tsd-hierarchy");for(let a of i.children){let c=je(t,a,n,r);c&&o.appendChild(c)}}return r.delete(e),s}function mt(t,e,n){if(e===n)return!0;let r=new Set,i=[t.reflections[e]];for(;i.length;){let s=i.pop();if(!r.has(s)){r.add(s);for(let o of s.children||[]){if(o===n)return!0;i.push(t.reflections[o])}}}return!1}function gt(){let t=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("width","20"),t.setAttribute("height","20"),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("fill","none"),t.innerHTML='',t}X(re,"a[data-toggle]");X(ie,".tsd-accordion");X(ee,".tsd-filter-item input[type=checkbox]");var qe=document.getElementById("tsd-theme");qe&&He(qe);var yt=new Z;Object.defineProperty(window,"app",{value:yt});_e();Ne();$e();"virtualKeyboard"in navigator&&(navigator.virtualKeyboard.overlaysContent=!0);})(); /*! Bundled license information: lunr/lunr.js: diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js new file mode 100644 index 0000000..9ed8fb5 --- /dev/null +++ b/docs/assets/navigation.js @@ -0,0 +1 @@ +window.navigationData = "eJyNmkFv01AQhP+LzxVI5dYrV8QB0RNCyPWGOLRJLI/TNov478ihwOV9O71mNXnxPs/OTLRffnbL5nnpbrpep3131U39MnY33WM/7/q7h43erp+/GZf9Q3fV3e8O0d28u/519R/2PJ2bsOfpXMAGwg0OOBwBuBYqYByX4ZtOd03w36L5glP1BSf3Bdu7/WMTvBZK4GbfvJtLwQDhxI07cR4AOA8GeCLgqQKO1JzRNGek5oymOSM1ZzTNGTcz4GYDuybctQPeI/LeQBFZAydqzmSaM0Fzpro5EzVnKpvz/nj48XnuD2qB/xWrk2memHGioX9o4tZCCWSkhT71Uxv51E8l8AwcWQs1kF69S8VAEVkCF5oEi5kEy50IqBpIL/tiXvZlohMnc+IMF7IWDBBOnM1PnUUnypxIzziXzxjkKMJYiiBvEMYbBHE5DJkjjksTF8elgpGghxH0IEEPI+hBgh5G0GPb1qz18wp2mPfNsXwpVEBoaN3PGVCzhW0JtzXA9jWsBQfEI/flmaJ3RuadIdkIoxohugyZ6xCMxUuhBrZfNpUeYC23XzbVHiBIF8PoYpAuhtHFtQ6tOZvWnKE157o1Z2rN2bSGBDycgAcJeBgBDxLwMAIeJOBhBDxIwMMIeJCAhxHwIAEPI+BBAh5GwIMEPIyABwl4OAFPVPB0Ep4oHGmUgzTVSCopqhFU0lMjp6CmtZju+n3/3IJdChVwQOTgoIHQcFAhVA6aCE0D/bD53hSr9fMKdnxqX8mlUAA/Hg+3h13zyJdSCcbo+VIqwMQQw49Pu+3Y/LmXQgEEc1V7K7JWxlmRsTK+Cm2Vc1WiSSUzqERZQyZrkI0zLo5MnPFwGvABB/eEA71ofyolFPKUTJ4ix2kMp9CqynlVkWzI6IZIOGSUQyQdMtohEA/V6iG8RneL4I2MiQcPX1t4cvDGwAtmk+rhJJpOMuNJNJ9kBpRwQsmOKJwYbmTgzHBDA2/eXT3dvbl8vH13/ZTfZPKbKL/J5DdRfpPJb4L8pjq/ifKbTH4T5je5/CbKbzL5TZTfZPKbKL/J5DdRfpPJb6L8JpPfRPlNJr+J8ptMfhPlN5n8JspvMvkNWWVIRZwylCJGGUIBn2o6EZsMmZBLjkrEpJpIxCNDI2KRIRFxyFCIGGQIhMHHxR4inuEd0c6wjkhnOEeUM4yjJGli5O00tS3hpVAAk9JLmvSS5OzTOPustijyFVsUWW1R5Cu2KBL/CE/3T3hSSEgTEpJCQpqQkBQS0oSEpAWMNAsYSQsYaRYwkhYw0ixgJC1gpFnASFrASLOAkbCAkfUCRtICRpoFjMQFjHQLGEkLGGkWMJIWMNIsYCQsYGS9gJG0gJFmASORjo6N5E/SGJQkh5LGoiQagHQOIMkCpPEASSYgjQtIsgFpfECSEUjjBJKsQBovkKTpaUQ9SdXTyHqSrqcR9iRlz6a0f/0NVe62bA==" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 74f587d..606c850 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = JSON.parse("{\"rows\":[{\"kind\":32,\"name\":\"NoTrans\",\"url\":\"variables/NoTrans.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Trans\",\"url\":\"variables/Trans.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"ConjTrans\",\"url\":\"variables/ConjTrans.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Upper\",\"url\":\"variables/Upper.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Lower\",\"url\":\"variables/Lower.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"NonUnit\",\"url\":\"variables/NonUnit.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Unit\",\"url\":\"variables/Unit.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Left\",\"url\":\"variables/Left.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"Right\",\"url\":\"variables/Right.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dasum\",\"url\":\"functions/dasum.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sasum\",\"url\":\"functions/sasum.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dzasum\",\"url\":\"functions/dzasum.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"scasum\",\"url\":\"functions/scasum.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"asum\",\"url\":\"functions/asum.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"daxpy\",\"url\":\"functions/daxpy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"saxpy\",\"url\":\"functions/saxpy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zaxpy\",\"url\":\"functions/zaxpy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"caxpy\",\"url\":\"functions/caxpy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"axpy\",\"url\":\"functions/axpy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dcopy\",\"url\":\"functions/dcopy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"scopy\",\"url\":\"functions/scopy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zcopy\",\"url\":\"functions/zcopy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ccopy\",\"url\":\"functions/ccopy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"copy\",\"url\":\"functions/copy.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ddot\",\"url\":\"functions/ddot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sdot\",\"url\":\"functions/sdot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dot\",\"url\":\"functions/dot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dnrm2\",\"url\":\"functions/dnrm2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"snrm2\",\"url\":\"functions/snrm2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dznrm2\",\"url\":\"functions/dznrm2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"scnrm2\",\"url\":\"functions/scnrm2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"nrm2\",\"url\":\"functions/nrm2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"drot\",\"url\":\"functions/drot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"srot\",\"url\":\"functions/srot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"rot\",\"url\":\"functions/rot.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"drotg\",\"url\":\"functions/drotg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"srotg\",\"url\":\"functions/srotg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"rotg\",\"url\":\"functions/rotg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"drotm\",\"url\":\"functions/drotm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"srotm\",\"url\":\"functions/srotm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"rotm\",\"url\":\"functions/rotm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"drotmg\",\"url\":\"functions/drotmg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"srotmg\",\"url\":\"functions/srotmg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"rotmg\",\"url\":\"functions/rotmg.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dscal\",\"url\":\"functions/dscal.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sscal\",\"url\":\"functions/sscal.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zscal\",\"url\":\"functions/zscal.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"cscal\",\"url\":\"functions/cscal.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"scal\",\"url\":\"functions/scal.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dswap\",\"url\":\"functions/dswap.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sswap\",\"url\":\"functions/sswap.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zswap\",\"url\":\"functions/zswap.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"cswap\",\"url\":\"functions/cswap.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"swap\",\"url\":\"functions/swap.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"idamax\",\"url\":\"functions/idamax.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"isamax\",\"url\":\"functions/isamax.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"izamax\",\"url\":\"functions/izamax.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"icamax\",\"url\":\"functions/icamax.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"iamax\",\"url\":\"functions/iamax.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dgbmv\",\"url\":\"functions/dgbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sgbmv\",\"url\":\"functions/sgbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zgbmv\",\"url\":\"functions/zgbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"cgbmv\",\"url\":\"functions/cgbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"gbmv\",\"url\":\"functions/gbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dgemv\",\"url\":\"functions/dgemv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sgemv\",\"url\":\"functions/sgemv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zgemv\",\"url\":\"functions/zgemv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"cgemv\",\"url\":\"functions/cgemv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"gemv\",\"url\":\"functions/gemv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dger\",\"url\":\"functions/dger.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sger\",\"url\":\"functions/sger.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ger\",\"url\":\"functions/ger.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsbmv\",\"url\":\"functions/dsbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssbmv\",\"url\":\"functions/ssbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sbmv\",\"url\":\"functions/sbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dspmv\",\"url\":\"functions/dspmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sspmv\",\"url\":\"functions/sspmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"spmv\",\"url\":\"functions/spmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dspr\",\"url\":\"functions/dspr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sspr\",\"url\":\"functions/sspr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"spr\",\"url\":\"functions/spr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dspr2\",\"url\":\"functions/dspr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sspr2\",\"url\":\"functions/sspr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"spr2\",\"url\":\"functions/spr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsymv\",\"url\":\"functions/dsymv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssymv\",\"url\":\"functions/ssymv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"symv\",\"url\":\"functions/symv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsyr\",\"url\":\"functions/dsyr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssyr\",\"url\":\"functions/ssyr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"syr\",\"url\":\"functions/syr.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsyr2\",\"url\":\"functions/dsyr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssyr2\",\"url\":\"functions/ssyr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"syr2\",\"url\":\"functions/syr2.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtbmv\",\"url\":\"functions/dtbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"stbmv\",\"url\":\"functions/stbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztbmv\",\"url\":\"functions/ztbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctbmv\",\"url\":\"functions/ctbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"tbmv\",\"url\":\"functions/tbmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtbsv\",\"url\":\"functions/dtbsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"stbsv\",\"url\":\"functions/stbsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztbsv\",\"url\":\"functions/ztbsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctbsv\",\"url\":\"functions/ctbsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"tbsv\",\"url\":\"functions/tbsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtpmv\",\"url\":\"functions/dtpmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"stpmv\",\"url\":\"functions/stpmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztpmv\",\"url\":\"functions/ztpmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctpmv\",\"url\":\"functions/ctpmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"tpmv\",\"url\":\"functions/tpmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtpsv\",\"url\":\"functions/dtpsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"stpsv\",\"url\":\"functions/stpsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztpsv\",\"url\":\"functions/ztpsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctpsv\",\"url\":\"functions/ctpsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"tpsv\",\"url\":\"functions/tpsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtrmv\",\"url\":\"functions/dtrmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"strmv\",\"url\":\"functions/strmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztrmv\",\"url\":\"functions/ztrmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctrmv\",\"url\":\"functions/ctrmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"trmv\",\"url\":\"functions/trmv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtrsv\",\"url\":\"functions/dtrsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"strsv\",\"url\":\"functions/strsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztrsv\",\"url\":\"functions/ztrsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctrsv\",\"url\":\"functions/ctrsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"trsv\",\"url\":\"functions/trsv.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dgemm\",\"url\":\"functions/dgemm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"sgemm\",\"url\":\"functions/sgemm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zgemm\",\"url\":\"functions/zgemm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"cgemm\",\"url\":\"functions/cgemm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"gemm\",\"url\":\"functions/gemm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsymm\",\"url\":\"functions/dsymm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssymm\",\"url\":\"functions/ssymm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zsymm\",\"url\":\"functions/zsymm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"csymm\",\"url\":\"functions/csymm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"symm\",\"url\":\"functions/symm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsyrk\",\"url\":\"functions/dsyrk.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssyrk\",\"url\":\"functions/ssyrk.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zsyrk\",\"url\":\"functions/zsyrk.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"csyrk\",\"url\":\"functions/csyrk.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"syrk\",\"url\":\"functions/syrk.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dsyr2k\",\"url\":\"functions/dsyr2k.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ssyr2k\",\"url\":\"functions/ssyr2k.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"zsyr2k\",\"url\":\"functions/zsyr2k.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"csyr2k\",\"url\":\"functions/csyr2k.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"syr2k\",\"url\":\"functions/syr2k.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtrmm\",\"url\":\"functions/dtrmm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"strmm\",\"url\":\"functions/strmm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztrmm\",\"url\":\"functions/ztrmm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctrmm\",\"url\":\"functions/ctrmm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"trmm\",\"url\":\"functions/trmm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"dtrsm\",\"url\":\"functions/dtrsm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"strsm\",\"url\":\"functions/strsm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ztrsm\",\"url\":\"functions/ztrsm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"ctrsm\",\"url\":\"functions/ctrsm.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"trsm\",\"url\":\"functions/trsm.html\",\"classes\":\"\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,46.315]],[\"comment/0\",[]],[\"name/1\",[1,46.315]],[\"comment/1\",[]],[\"name/2\",[2,46.315]],[\"comment/2\",[]],[\"name/3\",[3,46.315]],[\"comment/3\",[]],[\"name/4\",[4,46.315]],[\"comment/4\",[]],[\"name/5\",[5,46.315]],[\"comment/5\",[]],[\"name/6\",[6,46.315]],[\"comment/6\",[]],[\"name/7\",[7,46.315]],[\"comment/7\",[]],[\"name/8\",[8,46.315]],[\"comment/8\",[]],[\"name/9\",[9,46.315]],[\"comment/9\",[]],[\"name/10\",[10,46.315]],[\"comment/10\",[]],[\"name/11\",[11,46.315]],[\"comment/11\",[]],[\"name/12\",[12,46.315]],[\"comment/12\",[]],[\"name/13\",[13,46.315]],[\"comment/13\",[]],[\"name/14\",[14,46.315]],[\"comment/14\",[]],[\"name/15\",[15,46.315]],[\"comment/15\",[]],[\"name/16\",[16,46.315]],[\"comment/16\",[]],[\"name/17\",[17,46.315]],[\"comment/17\",[]],[\"name/18\",[18,46.315]],[\"comment/18\",[]],[\"name/19\",[19,46.315]],[\"comment/19\",[]],[\"name/20\",[20,46.315]],[\"comment/20\",[]],[\"name/21\",[21,46.315]],[\"comment/21\",[]],[\"name/22\",[22,46.315]],[\"comment/22\",[]],[\"name/23\",[23,46.315]],[\"comment/23\",[]],[\"name/24\",[24,46.315]],[\"comment/24\",[]],[\"name/25\",[25,46.315]],[\"comment/25\",[]],[\"name/26\",[26,46.315]],[\"comment/26\",[]],[\"name/27\",[27,46.315]],[\"comment/27\",[]],[\"name/28\",[28,46.315]],[\"comment/28\",[]],[\"name/29\",[29,46.315]],[\"comment/29\",[]],[\"name/30\",[30,46.315]],[\"comment/30\",[]],[\"name/31\",[31,46.315]],[\"comment/31\",[]],[\"name/32\",[32,46.315]],[\"comment/32\",[]],[\"name/33\",[33,46.315]],[\"comment/33\",[]],[\"name/34\",[34,46.315]],[\"comment/34\",[]],[\"name/35\",[35,46.315]],[\"comment/35\",[]],[\"name/36\",[36,46.315]],[\"comment/36\",[]],[\"name/37\",[37,46.315]],[\"comment/37\",[]],[\"name/38\",[38,46.315]],[\"comment/38\",[]],[\"name/39\",[39,46.315]],[\"comment/39\",[]],[\"name/40\",[40,46.315]],[\"comment/40\",[]],[\"name/41\",[41,46.315]],[\"comment/41\",[]],[\"name/42\",[42,46.315]],[\"comment/42\",[]],[\"name/43\",[43,46.315]],[\"comment/43\",[]],[\"name/44\",[44,46.315]],[\"comment/44\",[]],[\"name/45\",[45,46.315]],[\"comment/45\",[]],[\"name/46\",[46,46.315]],[\"comment/46\",[]],[\"name/47\",[47,46.315]],[\"comment/47\",[]],[\"name/48\",[48,46.315]],[\"comment/48\",[]],[\"name/49\",[49,46.315]],[\"comment/49\",[]],[\"name/50\",[50,46.315]],[\"comment/50\",[]],[\"name/51\",[51,46.315]],[\"comment/51\",[]],[\"name/52\",[52,46.315]],[\"comment/52\",[]],[\"name/53\",[53,46.315]],[\"comment/53\",[]],[\"name/54\",[54,46.315]],[\"comment/54\",[]],[\"name/55\",[55,46.315]],[\"comment/55\",[]],[\"name/56\",[56,46.315]],[\"comment/56\",[]],[\"name/57\",[57,46.315]],[\"comment/57\",[]],[\"name/58\",[58,46.315]],[\"comment/58\",[]],[\"name/59\",[59,46.315]],[\"comment/59\",[]],[\"name/60\",[60,46.315]],[\"comment/60\",[]],[\"name/61\",[61,46.315]],[\"comment/61\",[]],[\"name/62\",[62,46.315]],[\"comment/62\",[]],[\"name/63\",[63,46.315]],[\"comment/63\",[]],[\"name/64\",[64,46.315]],[\"comment/64\",[]],[\"name/65\",[65,46.315]],[\"comment/65\",[]],[\"name/66\",[66,46.315]],[\"comment/66\",[]],[\"name/67\",[67,46.315]],[\"comment/67\",[]],[\"name/68\",[68,46.315]],[\"comment/68\",[]],[\"name/69\",[69,46.315]],[\"comment/69\",[]],[\"name/70\",[70,46.315]],[\"comment/70\",[]],[\"name/71\",[71,46.315]],[\"comment/71\",[]],[\"name/72\",[72,46.315]],[\"comment/72\",[]],[\"name/73\",[73,46.315]],[\"comment/73\",[]],[\"name/74\",[74,46.315]],[\"comment/74\",[]],[\"name/75\",[75,46.315]],[\"comment/75\",[]],[\"name/76\",[76,46.315]],[\"comment/76\",[]],[\"name/77\",[77,46.315]],[\"comment/77\",[]],[\"name/78\",[78,46.315]],[\"comment/78\",[]],[\"name/79\",[79,46.315]],[\"comment/79\",[]],[\"name/80\",[80,46.315]],[\"comment/80\",[]],[\"name/81\",[81,46.315]],[\"comment/81\",[]],[\"name/82\",[82,46.315]],[\"comment/82\",[]],[\"name/83\",[83,46.315]],[\"comment/83\",[]],[\"name/84\",[84,46.315]],[\"comment/84\",[]],[\"name/85\",[85,46.315]],[\"comment/85\",[]],[\"name/86\",[86,46.315]],[\"comment/86\",[]],[\"name/87\",[87,46.315]],[\"comment/87\",[]],[\"name/88\",[88,46.315]],[\"comment/88\",[]],[\"name/89\",[89,46.315]],[\"comment/89\",[]],[\"name/90\",[90,46.315]],[\"comment/90\",[]],[\"name/91\",[91,46.315]],[\"comment/91\",[]],[\"name/92\",[92,46.315]],[\"comment/92\",[]],[\"name/93\",[93,46.315]],[\"comment/93\",[]],[\"name/94\",[94,46.315]],[\"comment/94\",[]],[\"name/95\",[95,46.315]],[\"comment/95\",[]],[\"name/96\",[96,46.315]],[\"comment/96\",[]],[\"name/97\",[97,46.315]],[\"comment/97\",[]],[\"name/98\",[98,46.315]],[\"comment/98\",[]],[\"name/99\",[99,46.315]],[\"comment/99\",[]],[\"name/100\",[100,46.315]],[\"comment/100\",[]],[\"name/101\",[101,46.315]],[\"comment/101\",[]],[\"name/102\",[102,46.315]],[\"comment/102\",[]],[\"name/103\",[103,46.315]],[\"comment/103\",[]],[\"name/104\",[104,46.315]],[\"comment/104\",[]],[\"name/105\",[105,46.315]],[\"comment/105\",[]],[\"name/106\",[106,46.315]],[\"comment/106\",[]],[\"name/107\",[107,46.315]],[\"comment/107\",[]],[\"name/108\",[108,46.315]],[\"comment/108\",[]],[\"name/109\",[109,46.315]],[\"comment/109\",[]],[\"name/110\",[110,46.315]],[\"comment/110\",[]],[\"name/111\",[111,46.315]],[\"comment/111\",[]],[\"name/112\",[112,46.315]],[\"comment/112\",[]],[\"name/113\",[113,46.315]],[\"comment/113\",[]],[\"name/114\",[114,46.315]],[\"comment/114\",[]],[\"name/115\",[115,46.315]],[\"comment/115\",[]],[\"name/116\",[116,46.315]],[\"comment/116\",[]],[\"name/117\",[117,46.315]],[\"comment/117\",[]],[\"name/118\",[118,46.315]],[\"comment/118\",[]],[\"name/119\",[119,46.315]],[\"comment/119\",[]],[\"name/120\",[120,46.315]],[\"comment/120\",[]],[\"name/121\",[121,46.315]],[\"comment/121\",[]],[\"name/122\",[122,46.315]],[\"comment/122\",[]],[\"name/123\",[123,46.315]],[\"comment/123\",[]],[\"name/124\",[124,46.315]],[\"comment/124\",[]],[\"name/125\",[125,46.315]],[\"comment/125\",[]],[\"name/126\",[126,46.315]],[\"comment/126\",[]],[\"name/127\",[127,46.315]],[\"comment/127\",[]],[\"name/128\",[128,46.315]],[\"comment/128\",[]],[\"name/129\",[129,46.315]],[\"comment/129\",[]],[\"name/130\",[130,46.315]],[\"comment/130\",[]],[\"name/131\",[131,46.315]],[\"comment/131\",[]],[\"name/132\",[132,46.315]],[\"comment/132\",[]],[\"name/133\",[133,46.315]],[\"comment/133\",[]],[\"name/134\",[134,46.315]],[\"comment/134\",[]],[\"name/135\",[135,46.315]],[\"comment/135\",[]],[\"name/136\",[136,46.315]],[\"comment/136\",[]],[\"name/137\",[137,46.315]],[\"comment/137\",[]],[\"name/138\",[138,46.315]],[\"comment/138\",[]],[\"name/139\",[139,46.315]],[\"comment/139\",[]],[\"name/140\",[140,46.315]],[\"comment/140\",[]],[\"name/141\",[141,46.315]],[\"comment/141\",[]],[\"name/142\",[142,46.315]],[\"comment/142\",[]],[\"name/143\",[143,46.315]],[\"comment/143\",[]],[\"name/144\",[144,46.315]],[\"comment/144\",[]],[\"name/145\",[145,46.315]],[\"comment/145\",[]],[\"name/146\",[146,46.315]],[\"comment/146\",[]],[\"name/147\",[147,46.315]],[\"comment/147\",[]],[\"name/148\",[148,46.315]],[\"comment/148\",[]],[\"name/149\",[149,46.315]],[\"comment/149\",[]],[\"name/150\",[150,46.315]],[\"comment/150\",[]],[\"name/151\",[151,46.315]],[\"comment/151\",[]],[\"name/152\",[152,46.315]],[\"comment/152\",[]]],\"invertedIndex\":[[\"asum\",{\"_index\":13,\"name\":{\"13\":{}},\"comment\":{}}],[\"axpy\",{\"_index\":18,\"name\":{\"18\":{}},\"comment\":{}}],[\"caxpy\",{\"_index\":17,\"name\":{\"17\":{}},\"comment\":{}}],[\"ccopy\",{\"_index\":22,\"name\":{\"22\":{}},\"comment\":{}}],[\"cgbmv\",{\"_index\":62,\"name\":{\"62\":{}},\"comment\":{}}],[\"cgemm\",{\"_index\":126,\"name\":{\"126\":{}},\"comment\":{}}],[\"cgemv\",{\"_index\":67,\"name\":{\"67\":{}},\"comment\":{}}],[\"conjtrans\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"copy\",{\"_index\":23,\"name\":{\"23\":{}},\"comment\":{}}],[\"cscal\",{\"_index\":47,\"name\":{\"47\":{}},\"comment\":{}}],[\"cswap\",{\"_index\":52,\"name\":{\"52\":{}},\"comment\":{}}],[\"csymm\",{\"_index\":131,\"name\":{\"131\":{}},\"comment\":{}}],[\"csyr2k\",{\"_index\":141,\"name\":{\"141\":{}},\"comment\":{}}],[\"csyrk\",{\"_index\":136,\"name\":{\"136\":{}},\"comment\":{}}],[\"ctbmv\",{\"_index\":96,\"name\":{\"96\":{}},\"comment\":{}}],[\"ctbsv\",{\"_index\":101,\"name\":{\"101\":{}},\"comment\":{}}],[\"ctpmv\",{\"_index\":106,\"name\":{\"106\":{}},\"comment\":{}}],[\"ctpsv\",{\"_index\":111,\"name\":{\"111\":{}},\"comment\":{}}],[\"ctrmm\",{\"_index\":146,\"name\":{\"146\":{}},\"comment\":{}}],[\"ctrmv\",{\"_index\":116,\"name\":{\"116\":{}},\"comment\":{}}],[\"ctrsm\",{\"_index\":151,\"name\":{\"151\":{}},\"comment\":{}}],[\"ctrsv\",{\"_index\":121,\"name\":{\"121\":{}},\"comment\":{}}],[\"dasum\",{\"_index\":9,\"name\":{\"9\":{}},\"comment\":{}}],[\"daxpy\",{\"_index\":14,\"name\":{\"14\":{}},\"comment\":{}}],[\"dcopy\",{\"_index\":19,\"name\":{\"19\":{}},\"comment\":{}}],[\"ddot\",{\"_index\":24,\"name\":{\"24\":{}},\"comment\":{}}],[\"dgbmv\",{\"_index\":59,\"name\":{\"59\":{}},\"comment\":{}}],[\"dgemm\",{\"_index\":123,\"name\":{\"123\":{}},\"comment\":{}}],[\"dgemv\",{\"_index\":64,\"name\":{\"64\":{}},\"comment\":{}}],[\"dger\",{\"_index\":69,\"name\":{\"69\":{}},\"comment\":{}}],[\"dnrm2\",{\"_index\":27,\"name\":{\"27\":{}},\"comment\":{}}],[\"dot\",{\"_index\":26,\"name\":{\"26\":{}},\"comment\":{}}],[\"drot\",{\"_index\":32,\"name\":{\"32\":{}},\"comment\":{}}],[\"drotg\",{\"_index\":35,\"name\":{\"35\":{}},\"comment\":{}}],[\"drotm\",{\"_index\":38,\"name\":{\"38\":{}},\"comment\":{}}],[\"drotmg\",{\"_index\":41,\"name\":{\"41\":{}},\"comment\":{}}],[\"dsbmv\",{\"_index\":72,\"name\":{\"72\":{}},\"comment\":{}}],[\"dscal\",{\"_index\":44,\"name\":{\"44\":{}},\"comment\":{}}],[\"dspmv\",{\"_index\":75,\"name\":{\"75\":{}},\"comment\":{}}],[\"dspr\",{\"_index\":78,\"name\":{\"78\":{}},\"comment\":{}}],[\"dspr2\",{\"_index\":81,\"name\":{\"81\":{}},\"comment\":{}}],[\"dswap\",{\"_index\":49,\"name\":{\"49\":{}},\"comment\":{}}],[\"dsymm\",{\"_index\":128,\"name\":{\"128\":{}},\"comment\":{}}],[\"dsymv\",{\"_index\":84,\"name\":{\"84\":{}},\"comment\":{}}],[\"dsyr\",{\"_index\":87,\"name\":{\"87\":{}},\"comment\":{}}],[\"dsyr2\",{\"_index\":90,\"name\":{\"90\":{}},\"comment\":{}}],[\"dsyr2k\",{\"_index\":138,\"name\":{\"138\":{}},\"comment\":{}}],[\"dsyrk\",{\"_index\":133,\"name\":{\"133\":{}},\"comment\":{}}],[\"dtbmv\",{\"_index\":93,\"name\":{\"93\":{}},\"comment\":{}}],[\"dtbsv\",{\"_index\":98,\"name\":{\"98\":{}},\"comment\":{}}],[\"dtpmv\",{\"_index\":103,\"name\":{\"103\":{}},\"comment\":{}}],[\"dtpsv\",{\"_index\":108,\"name\":{\"108\":{}},\"comment\":{}}],[\"dtrmm\",{\"_index\":143,\"name\":{\"143\":{}},\"comment\":{}}],[\"dtrmv\",{\"_index\":113,\"name\":{\"113\":{}},\"comment\":{}}],[\"dtrsm\",{\"_index\":148,\"name\":{\"148\":{}},\"comment\":{}}],[\"dtrsv\",{\"_index\":118,\"name\":{\"118\":{}},\"comment\":{}}],[\"dzasum\",{\"_index\":11,\"name\":{\"11\":{}},\"comment\":{}}],[\"dznrm2\",{\"_index\":29,\"name\":{\"29\":{}},\"comment\":{}}],[\"gbmv\",{\"_index\":63,\"name\":{\"63\":{}},\"comment\":{}}],[\"gemm\",{\"_index\":127,\"name\":{\"127\":{}},\"comment\":{}}],[\"gemv\",{\"_index\":68,\"name\":{\"68\":{}},\"comment\":{}}],[\"ger\",{\"_index\":71,\"name\":{\"71\":{}},\"comment\":{}}],[\"iamax\",{\"_index\":58,\"name\":{\"58\":{}},\"comment\":{}}],[\"icamax\",{\"_index\":57,\"name\":{\"57\":{}},\"comment\":{}}],[\"idamax\",{\"_index\":54,\"name\":{\"54\":{}},\"comment\":{}}],[\"isamax\",{\"_index\":55,\"name\":{\"55\":{}},\"comment\":{}}],[\"izamax\",{\"_index\":56,\"name\":{\"56\":{}},\"comment\":{}}],[\"left\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"lower\",{\"_index\":4,\"name\":{\"4\":{}},\"comment\":{}}],[\"nonunit\",{\"_index\":5,\"name\":{\"5\":{}},\"comment\":{}}],[\"notrans\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"nrm2\",{\"_index\":31,\"name\":{\"31\":{}},\"comment\":{}}],[\"right\",{\"_index\":8,\"name\":{\"8\":{}},\"comment\":{}}],[\"rot\",{\"_index\":34,\"name\":{\"34\":{}},\"comment\":{}}],[\"rotg\",{\"_index\":37,\"name\":{\"37\":{}},\"comment\":{}}],[\"rotm\",{\"_index\":40,\"name\":{\"40\":{}},\"comment\":{}}],[\"rotmg\",{\"_index\":43,\"name\":{\"43\":{}},\"comment\":{}}],[\"sasum\",{\"_index\":10,\"name\":{\"10\":{}},\"comment\":{}}],[\"saxpy\",{\"_index\":15,\"name\":{\"15\":{}},\"comment\":{}}],[\"sbmv\",{\"_index\":74,\"name\":{\"74\":{}},\"comment\":{}}],[\"scal\",{\"_index\":48,\"name\":{\"48\":{}},\"comment\":{}}],[\"scasum\",{\"_index\":12,\"name\":{\"12\":{}},\"comment\":{}}],[\"scnrm2\",{\"_index\":30,\"name\":{\"30\":{}},\"comment\":{}}],[\"scopy\",{\"_index\":20,\"name\":{\"20\":{}},\"comment\":{}}],[\"sdot\",{\"_index\":25,\"name\":{\"25\":{}},\"comment\":{}}],[\"sgbmv\",{\"_index\":60,\"name\":{\"60\":{}},\"comment\":{}}],[\"sgemm\",{\"_index\":124,\"name\":{\"124\":{}},\"comment\":{}}],[\"sgemv\",{\"_index\":65,\"name\":{\"65\":{}},\"comment\":{}}],[\"sger\",{\"_index\":70,\"name\":{\"70\":{}},\"comment\":{}}],[\"snrm2\",{\"_index\":28,\"name\":{\"28\":{}},\"comment\":{}}],[\"spmv\",{\"_index\":77,\"name\":{\"77\":{}},\"comment\":{}}],[\"spr\",{\"_index\":80,\"name\":{\"80\":{}},\"comment\":{}}],[\"spr2\",{\"_index\":83,\"name\":{\"83\":{}},\"comment\":{}}],[\"srot\",{\"_index\":33,\"name\":{\"33\":{}},\"comment\":{}}],[\"srotg\",{\"_index\":36,\"name\":{\"36\":{}},\"comment\":{}}],[\"srotm\",{\"_index\":39,\"name\":{\"39\":{}},\"comment\":{}}],[\"srotmg\",{\"_index\":42,\"name\":{\"42\":{}},\"comment\":{}}],[\"ssbmv\",{\"_index\":73,\"name\":{\"73\":{}},\"comment\":{}}],[\"sscal\",{\"_index\":45,\"name\":{\"45\":{}},\"comment\":{}}],[\"sspmv\",{\"_index\":76,\"name\":{\"76\":{}},\"comment\":{}}],[\"sspr\",{\"_index\":79,\"name\":{\"79\":{}},\"comment\":{}}],[\"sspr2\",{\"_index\":82,\"name\":{\"82\":{}},\"comment\":{}}],[\"sswap\",{\"_index\":50,\"name\":{\"50\":{}},\"comment\":{}}],[\"ssymm\",{\"_index\":129,\"name\":{\"129\":{}},\"comment\":{}}],[\"ssymv\",{\"_index\":85,\"name\":{\"85\":{}},\"comment\":{}}],[\"ssyr\",{\"_index\":88,\"name\":{\"88\":{}},\"comment\":{}}],[\"ssyr2\",{\"_index\":91,\"name\":{\"91\":{}},\"comment\":{}}],[\"ssyr2k\",{\"_index\":139,\"name\":{\"139\":{}},\"comment\":{}}],[\"ssyrk\",{\"_index\":134,\"name\":{\"134\":{}},\"comment\":{}}],[\"stbmv\",{\"_index\":94,\"name\":{\"94\":{}},\"comment\":{}}],[\"stbsv\",{\"_index\":99,\"name\":{\"99\":{}},\"comment\":{}}],[\"stpmv\",{\"_index\":104,\"name\":{\"104\":{}},\"comment\":{}}],[\"stpsv\",{\"_index\":109,\"name\":{\"109\":{}},\"comment\":{}}],[\"strmm\",{\"_index\":144,\"name\":{\"144\":{}},\"comment\":{}}],[\"strmv\",{\"_index\":114,\"name\":{\"114\":{}},\"comment\":{}}],[\"strsm\",{\"_index\":149,\"name\":{\"149\":{}},\"comment\":{}}],[\"strsv\",{\"_index\":119,\"name\":{\"119\":{}},\"comment\":{}}],[\"swap\",{\"_index\":53,\"name\":{\"53\":{}},\"comment\":{}}],[\"symm\",{\"_index\":132,\"name\":{\"132\":{}},\"comment\":{}}],[\"symv\",{\"_index\":86,\"name\":{\"86\":{}},\"comment\":{}}],[\"syr\",{\"_index\":89,\"name\":{\"89\":{}},\"comment\":{}}],[\"syr2\",{\"_index\":92,\"name\":{\"92\":{}},\"comment\":{}}],[\"syr2k\",{\"_index\":142,\"name\":{\"142\":{}},\"comment\":{}}],[\"syrk\",{\"_index\":137,\"name\":{\"137\":{}},\"comment\":{}}],[\"tbmv\",{\"_index\":97,\"name\":{\"97\":{}},\"comment\":{}}],[\"tbsv\",{\"_index\":102,\"name\":{\"102\":{}},\"comment\":{}}],[\"tpmv\",{\"_index\":107,\"name\":{\"107\":{}},\"comment\":{}}],[\"tpsv\",{\"_index\":112,\"name\":{\"112\":{}},\"comment\":{}}],[\"trans\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"trmm\",{\"_index\":147,\"name\":{\"147\":{}},\"comment\":{}}],[\"trmv\",{\"_index\":117,\"name\":{\"117\":{}},\"comment\":{}}],[\"trsm\",{\"_index\":152,\"name\":{\"152\":{}},\"comment\":{}}],[\"trsv\",{\"_index\":122,\"name\":{\"122\":{}},\"comment\":{}}],[\"unit\",{\"_index\":6,\"name\":{\"6\":{}},\"comment\":{}}],[\"upper\",{\"_index\":3,\"name\":{\"3\":{}},\"comment\":{}}],[\"zaxpy\",{\"_index\":16,\"name\":{\"16\":{}},\"comment\":{}}],[\"zcopy\",{\"_index\":21,\"name\":{\"21\":{}},\"comment\":{}}],[\"zgbmv\",{\"_index\":61,\"name\":{\"61\":{}},\"comment\":{}}],[\"zgemm\",{\"_index\":125,\"name\":{\"125\":{}},\"comment\":{}}],[\"zgemv\",{\"_index\":66,\"name\":{\"66\":{}},\"comment\":{}}],[\"zscal\",{\"_index\":46,\"name\":{\"46\":{}},\"comment\":{}}],[\"zswap\",{\"_index\":51,\"name\":{\"51\":{}},\"comment\":{}}],[\"zsymm\",{\"_index\":130,\"name\":{\"130\":{}},\"comment\":{}}],[\"zsyr2k\",{\"_index\":140,\"name\":{\"140\":{}},\"comment\":{}}],[\"zsyrk\",{\"_index\":135,\"name\":{\"135\":{}},\"comment\":{}}],[\"ztbmv\",{\"_index\":95,\"name\":{\"95\":{}},\"comment\":{}}],[\"ztbsv\",{\"_index\":100,\"name\":{\"100\":{}},\"comment\":{}}],[\"ztpmv\",{\"_index\":105,\"name\":{\"105\":{}},\"comment\":{}}],[\"ztpsv\",{\"_index\":110,\"name\":{\"110\":{}},\"comment\":{}}],[\"ztrmm\",{\"_index\":145,\"name\":{\"145\":{}},\"comment\":{}}],[\"ztrmv\",{\"_index\":115,\"name\":{\"115\":{}},\"comment\":{}}],[\"ztrsm\",{\"_index\":150,\"name\":{\"150\":{}},\"comment\":{}}],[\"ztrsv\",{\"_index\":120,\"name\":{\"120\":{}},\"comment\":{}}]],\"pipeline\":[]}}"); \ No newline at end of file +window.searchData = "eJyVnE1v5DiShv9LnhM9evUtX+e0wGIPi529GIWB2/KUPV3+QNLu7mKh/vuClL0OBl82Im4NpRWdpXxEvYyH1I/T5fmPcLq6/nH67eFpP10N/fn0dPN4d7o63YS3x9P59Hb5dro6/X5zebj59dtd+Fs6/Mv96+O30/l0++0mhLtwujqdfp5ZiT9fvrMSf758t5a4bdS4dRW5feZF0nFzkf359faf4e1XVujjM0+xt78o9uYq9vXXx99ZoXTcXuTukf3e+binCP8md65vcrnlRS63niJvjSJv5iL3jQt777mw940Le++5sPeNC3vvubD3dxde4+Ip0Tdq9K4iv7Wq/OYp06riKPLSuLAvngv7wi/si+PCvjQu7Iv9wv79+enf/3O5eQqk0P9/Zv5GjTHTM2SG25tvrEY6bi/SrOIr88fNC63yx82Lvch3fi+n444iDfzzB54yrSr2Iq+NEe7VM8K9/hoaRYKjSONGfPXciK8vjW/y4vkmF/4jp+OeIvybXDz/nEtofJPg+SaNa3KxX5O9kQZ3TxzcG1lu92S5vTEu7Z6Bad+fX1mN/fnVXKIRunZP6NoboWv3hK69Ebp2T+jav9JskA6bSzxdHtkjLB83F+E/jON3ufAKF1+Jr40aXz1F6E+bjruKtL7Ko/27hAarwcNq4zG8e57Ce2j8wMHzEwf+qMjHHUUo8MGe2dLfUuCDI7PtjVyye3LJ3sgluyeXpD/ml/W757J+55f1u+Oyfm9c1u+ey9oIWbsrZO2NkLV7QtbeCFm7J2TtjZC1e0LW3ghZuydk7Y2QtXtC1t4IWbsnZO2NkLV7QtbeCFm7J2TtjZC1u0JWbKWs6IpZsfUgjp4ncSPfeOJNI914wk0j23iiDU82jmDzcPN48ycpkY+bi9y2qty6yuytMrurTGiVCa4ysVUmesr8592/WChIh80lnv+gP3M+bi3yX89P/3h6YF/l/RN7oVYb5v0Ta6HGney5j//74es9+yfl49YiPFQ7MnUjUnsSdSNQe/J0K0670nRojNLBM0iHxlw4eObCjVjvSfWNUO/J9OG2dUFuXVfktgH78YG9DO8PBE9/oDFL8UxSQmuqE1xzndB4DAfPczg0HsTB8yQOjUdx8DyLA38YB8fTOLQwcVHCc7BnAsnnj47pY2P26Jk8Bj4uB8fAHBojc/AMzaExNgfP4Bxao3PwDc+tUdE1LLbGRdfA2KLMhVmDMw9oLdJcqDX6FMHTpwiNPkXw9ClCo08RPH2KwPsUwdGnCI0+RfD0KUKrTxFcfYrQ6FMET58iNPoUwdOnCI0+RfD0KUKjTxE8fYrQ6FMET58iNPoUwdOnCI0+RfD0KUKjTxE8fYrQ6FMET5+iNRJ4BoLGOOAZBhqjgGcQ4GOAYwhojACeAaB1/7tu/8bd77j5G/e+59Zv3PmeG79x33tu+8Zd77npW5N319S9MXB4xo3GsOEZNRqDhmfMaAwZnhGj0VXxtFT+8fJCpw75uLVIbMy6o2fWHRszzOiZYca/WE0YvasJ41+sJoze1YSxJfqiy/TFxsQ1eiausTFxjZ6Ja2xMXKNn4hobixKjZ1FibCxKjJ5FibGxKDF6FiXGxqLE6FmUGBuLEqNnUWLkixKjY1FibCxKjJ5FibG1KDG6FiXGxqLE6FmUGBuLEqNnUWLkixKjY1FibCxKjJ5FibE1nLhGk0bmjJ7QGRupM3piZ2wFtuhKbLER2aIns8VGaIue1BYbsS16cltsBLfoSW6xEd2iJ7vFRu6KnuAVG8kreqJXbGSv6AlfsZG+Yit+fTmfHp72uz9PVz9Ov99dwsPz0+nq1P8y/LKdzqd/Pdx929OGj6P++XT7/Ph495TC2f58+5b/88v7n/3v3e3r8yX98fHXf+tO5+vuPK6/9N3w5cv5+uPk/EE+8FHj80g+EafzNdiJqE5EcWJ/Ol/37MS+OrEvThxO5+uBnThUJw7FiePpfD2yE8fqxLE4cTqdryd24lSdOBUnzqfz9cxOnKsT5+LE5XS+XtiJS3XiUpy4ns7XKztxrU5cixO30/l6Yydu1YlbCUDiAZQd1PBA0ZPx4fwQgEqCkLgAZQg1RCgpQmIDlCPUIKEkCYkPUJZQw4SSJiRGQHlCDRRKopA4AWUKNVQoqUJiBZQr1GChJAuJF1C2UMOFki4kZkD5Qg0YSsL6xExPCetrwvqSsD4x01PC+pqwXo1ReZDioxQZpkrC+sRMTwnra8L6krA+MdNTwvqasL4krE/M9JSwviasLwnrEzM9JayvCetLwvrETE8J62vC+pKwPjHTU8L6mrC+JKxPzPSUsL4mrC8JGxIzAyVsqAkbSsKGxMxACRtqwoaSsCExM1DChpqwQT0J86OQPwvJw7AkbEjMDJSwoSZsKAkbEjMDJWyoCRtKwobEzEAJG2rChpKwITEzUMKGmrChJGxIzAyUsKEmbCgJGxIzAyVsqAkbSsLGxMxICRtrwsaSsDExM1LCxpqwsSRsTMyMlLCxJmwsCRsTMyMlbKwJG1XeyoGLJy4SuUrCxsTMSAkba8LGkrAxMTNSwsaasLEkbEzMjJSwsSZsLAkbEzMjJWysCRtLwsbEzEgJG2vCxpKwKTEzUcKmmrCpJGxKzEyUsKkmbCoJmxIzEyVsqgmbSsKmxMxECZtqwqaSsCkxM1HCppqwSaX6HOt5rifBviRsSsxMlLCpJmwqCZsSMxMlbKoJm0rCpsTMRAmbasKmkrApMTNRwqaasKkkbE7MzJSwuSZsLgmbEzMzJWyuCZtLwubEzEwJm2vC5pKwOTEzU8LmmrC5JGxOzMyUsLkmbC4JmxMzMyVsrgmb1dwxTx757JFMH0vC5sTMTAmba8LmkrA5MTNTwuaasLkkbE7MzJSwuSZsLglbEjMLJWypCVtKwpbEzEIJW2rClpKwJTGzUMKWmrClJGxJzCyUsKUmbCkJWxIzCyVsqQlbSsKWxMxCCVtqwpaSsCUxs1DClpqwRXUocouC9yhIk6IkbEnMLJSwpSZsKQlbEjMLJWypCVtKwtbEzEoJW2vC1pKwNTGzUsLWmrC1JGxNzKyUsLUmbC0JWxMzKyVsrQlbS8LWxMxKCVtrwtaSsDUxs1LC1pqwtSRsTcyslLC1JmwtCVsTMyslbK0JW1UfLDfCeCeMtMJKwtbEzEoJW2vC1pKwLTGzUcK2mrCtJGxLzGyUsK0mbCsJ2xIzGyVsqwnbSsK2xMxGCdtqwraSsC0xs1HCtpqwrSRsS8xslLCtJmwrCdsSMxslbKsJ20rCtsTMRgnbasK2krAtMbNRwraasE11W3O7lfdbScNVd1yPlmuj58qarqrr2uW2a8f7rh1pvHaq89rl1mvHe68dab52qvva5fZrx/uvHWnAdqoD2+UWbMd7sB1pwnaqC9vlNmzH+7AdacR2qhPb5VZsx3uxHWnGdqob2+V2bMf7sR1pyHaqI9vllmzHe7Idacp2qivb5bZsx/uyHWnMdorEo/nf6P6z9n/V/z8EQMMAMAWgSDwkQMMCMA2gPcAhAhomgKkA7QIOGdCwAUwHaB9wCIGGEWBKQDuBQwo0rADTAtoLHGKgYQaYGtBu4JADDTvA9ID2A4cgaBgCpgiUI0Bu+4NbAhBNAOUJkFv/4KYARBVAuQL0h45q+CgmpBSJWQGAGwMQZQDlDJA1ALg1ANEGUN4AWQWAmwMQdQDlDpB1ALg9ANEHUP4AWQmAGwQQhQDlEJC1ALhFANEIUB4BWQ2AmwQQlQDlEpD1ALhNANEJUD4BWRGAGwUQpQDlFJA1AbhVANEKUF4BwyFHG3aU6VFFYtYF4HYBRC9A+QVkZQBuGEAUA5RjQNYG4JYBRDNAeQZkdQBuGkBUA5RrQNYH4LYBRDdA+QZkhQBuHECUA5RzQNYI4NYBRDtAeQdklQBuHkDUA5R7QNYJ4PYBRD9A+QdkpQBuIEAUBJSDwHio+oarZ7JekZjVAriJAFERUC4CWS+A2wgQHQHlI5AVA7iRAFESUE4CWTOAWwkQLQHlJZBVA7iZAFETUG4CWTeA2wkQPQHlJ5CVA7ihAFEUUI4CWTuAWwoQTQHlKZDVA7ipAFEVUK4CWT+A2woQXQHlKzAdC0caK0fY0hFFYtYQ4NYCRFtAeQtkFQFuLkDUBZS7QNYR4PYCRF9A+QtkJQFuMEAUBpTDQNYS4BYDRGNAeQxkNQFuMkBUBpTLQNYT4DYDRGdA+QxkRQFuNECUBpTTQNYU4FYDRGtAeQ1kVQFuNkDUBpTbwHwsY2qsY2ILmRSJWVmAGw4QxQHlOJC1BbjlANEcUJ4DWV2Amw4Q1QHlOpD1BbjtANEdUL4DWWGAGw8Q5QHlPJA1Brj1ANEeUN4DWWWAmw8Q9QHlPpB1Brj9ANEfUP4DWWmAGxAQBQLlQJC1BrgFAdEgUB4Ey7GorrGqji2rUyRmvQFuQ0B0CJQPQVYc4EYERIlAORFkzQFuRUC0CJQXQVYd4GYERI1AuRFk3QFuR0D0CJQfQVYe4IYERJFAORJk7QFuSUA0ycexvCb797vL693+H8fa7Ovr9/fr/zj98325dvex5vvHqTtd/fj583Nx9tWPn2J9dvos/W+OvWyfBfBZAKYCt7pC/1mht1U4tsJ9Vhg+Kwy2Cp/74D6rjJ9VRnOVN11l+qwy2aocW9Y+K8yfFWZjhbyt6rPC8llhMVcovsP6WWG1Vkg71T4rbJ8VNnOFt4IswSZscL6/Ol/UkHga+bxXVxMCUBgJvVfXEwJRGBnNW9RECcEnjIAeW9REDUEnjHi+71ATRQSgMBJ67E8TNQSiMDJ6bE8TNQSkMFKad6eJEoJSGDE9dqeJ4Utg2hsxfX769+ux21vUEaj2RlTVONjLodRI6rFPTtQQpPZGUkNVRLDaG1k99tqJGoLV3sjqsdVO1BCo9kZU33faiSKC1d7I6rHPTtQQrPZGVl/VWNYLWHsjrMcuO/GkFLAORlhf1X03CFAHI6jHHjtRQ5A6GEk9ttiJGvKxbyT12GEnaghQByOoxwY7UUOAOhhBPfbXiRoC1MEG6q6j3CA4HWyc7jqLDYLTwcbpXqUxwelg4/R4M76IYgLT0YbprmPUKDAdbZjuOkiNAtPRhumuo9QoMB1tmB6vxRclZDS1Ufr+WnxRQ1A62ijVP4pgdDQyelElBKKjEdHjTXGihkB0NCJ6vChO1BCIjkZE398TJ5K+gHQyQhoUpJOAdDJCqh+2k4B0MkIa1G87CUgnI6RBPRcmQelkpDSUeWySsycjpEHlsUlgOhkx1dljEpxORk519pgEp5OR0+PtUqKG4HQycppfLyVmk4LS2Urp9/KSzoLS2UqpjlGzwHS2Yqpi1CwwnY2Y6hg1C0xnI6Y6Rs2C09nIqY5Rs5znGznVMWoWnM5GTnWMmgWns5FTHaNmwels5FTHqEWAuhhB1TFqEaAuRlCjzlGLAHUxghr143YRpC42UnWAWQSoiw3UqhEkOF1snOr4sghMFxumKr0ssh1lg/T93feihoB0sUH68ep7UURQutgo/XjxveiMCUxXG6Yfr70XRQSnq43Tj5feiyKC09XG6bf8yntRQlC62ij9drzyXtQQmK42TJ+en97yu9lEFUHqaiP16bnqoawC1tUGq75xV0HraqP1crzrXtSQ7VMbrSoorwLV1YaqzsmbAHWzgapj8iYw3WyYVil5E5RuNkqDHpE3gelmwzTome0mMN1smOqwvglGNxujOqtvAtDNBujHi+5FEYHoZkP04zX3oohgdLMxGvRMf5NNfhuleuKR9gqILr+N01DNX9KOAVHGxmrQT9y0bUBUMdKqH7pp74CoYuRVP3fTBgJRxUisevSmTQSiiJFZjUraSSCqGLHV3fpOtvw7I7aqXd/Jln9npFbND9OmAlHEiK0an1HIKaOdCnqIRqmnjNTqURqFoDIaqlAN1CgclVFSBT1GotBURk9V+QMUospoqkKFXGGqjKoqaOYKVWV0VaGCrpBVRlsVdFsCha8yCqugGxOQxgpGZRV0awLSV8EorIJqTqAv3KoRXd2egHRWMEqrUDUoIK0VjNoq6BYFpLeCUVwF3aSANFcwqqug2xSQ6gpGdxV0owJSXsFor4JuVUDqKxj9VdDNCkiBBaPBCrpdAamwYHRYQTcsICUWjBYr6JYFhmJpgBFePTBIjwWjyKrGBSmyYDRZ1bAgTRaMKkuPCtJkwaiyqkFBqiwYXVY9JkiZBaPNqoYEqbNg9FnViCB9FoxCqxoQpNCC0WhV44E0WjAqrWo4GIvlLDZiq/k+pNWCUWtVY4oUWzCarWpIkWoLRrdVjSjSbcEot6oBRcotGO2WbsdAyi0Y7dbb8bJ8WUUya/RbsVphKAUXjIYr6rkqpOKC0XFFtk4QUnTBaLoiWyuIqViPZcM3VgIQUnnB6LxiNfmV0gtG6xWrya/UXjB6r1hNfqX4gtF8Rb0EEdJ9wSi/YrUMUdovGPVXrBYiSv0Fo/+K1VJEKcBgNGCxWowoFRiMDizq5YjSgcEowWK1IHEuFhMa0SVLEiW7RhMWq0WJUoXB6MJitSxRyjAYbVjUCxOlDYNRh0W9NBHSh8EoxGI1vEghBqMRi1VElUYMRiUWq4wqpRiMVizWsU6KMRjNWKxynXRjMMqxWAW7pVgLa2S3SnbSkMGoyGIV7aQig9GRxSrbSUcGoySLVSyTkgxGSxarXCYtGYyaLFbBTIoyGE1ZrJKZVGWwuLIv59PLw8vdt4enu9PV9ZefP/8PLYqlCg=="; \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css index da6c789..44328e9 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -1,98 +1,288 @@ -:root { - /* Light */ - --light-color-background: #f2f4f8; - --light-color-background-secondary: #eff0f1; - --light-color-warning-text: #222; - --light-color-background-warning: #e6e600; - --light-color-icon-background: var(--light-color-background); - --light-color-accent: #c5c7c9; - --light-color-active-menu-item: var(--light-color-accent); - --light-color-text: #222; - --light-color-text-aside: #6e6e6e; - --light-color-link: #1f70c2; - - --light-color-ts-project: #b111c9; - --light-color-ts-module: var(--light-color-ts-project); - --light-color-ts-namespace: var(--light-color-ts-project); - --light-color-ts-enum: #7e6f15; - --light-color-ts-enum-member: var(--light-color-ts-enum); - --light-color-ts-variable: #4760ec; - --light-color-ts-function: #572be7; - --light-color-ts-class: #1f70c2; - --light-color-ts-interface: #108024; - --light-color-ts-constructor: var(--light-color-ts-class); - --light-color-ts-property: var(--light-color-ts-variable); - --light-color-ts-method: var(--light-color-ts-function); - --light-color-ts-call-signature: var(--light-color-ts-method); - --light-color-ts-index-signature: var(--light-color-ts-property); - --light-color-ts-constructor-signature: var(--light-color-ts-constructor); - --light-color-ts-parameter: var(--light-color-ts-variable); - /* type literal not included as links will never be generated to it */ - --light-color-ts-type-parameter: var(--light-color-ts-type-alias); - --light-color-ts-accessor: var(--light-color-ts-property); - --light-color-ts-get-signature: var(--light-color-ts-accessor); - --light-color-ts-set-signature: var(--light-color-ts-accessor); - /* object literal not included as it is not used and will be removed in 0.25 */ - --light-color-ts-type-alias: #d51270; - /* reference not included as links will be colored with the kind that it points to */ - - --light-external-icon: url("data:image/svg+xml;utf8,"); - --light-color-scheme: light; - - /* Dark */ - --dark-color-background: #2b2e33; - --dark-color-background-secondary: #1e2024; - --dark-color-background-warning: #bebe00; - --dark-color-warning-text: #222; - --dark-color-icon-background: var(--dark-color-background-secondary); - --dark-color-accent: #9096a2; - --dark-color-active-menu-item: #5d5d6a; - --dark-color-text: #f5f5f5; - --dark-color-text-aside: #dddddd; - --dark-color-link: #00aff4; - - --dark-color-ts-project: #e14dff; - --dark-color-ts-module: var(--dark-color-ts-project); - --dark-color-ts-namespace: var(--dark-color-ts-project); - --dark-color-ts-enum: #f4d93e; - --dark-color-ts-enum-member: var(--dark-color-ts-enum); - --dark-color-ts-variable: #798dff; - --dark-color-ts-function: #9772ff; - --dark-color-ts-class: #8ac4ff; - --dark-color-ts-interface: #6cff87; - --dark-color-ts-constructor: var(--dark-color-ts-class); - --dark-color-ts-property: var(--dark-color-ts-variable); - --dark-color-ts-method: var(--dark-color-ts-function); - --dark-color-ts-call-signature: var(--dark-color-ts-method); - --dark-color-ts-index-signature: var(--dark-color-ts-property); - --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); - --dark-color-ts-parameter: var(--dark-color-ts-variable); - /* type literal not included as links will never be generated to it */ - --dark-color-ts-type-parameter: var(--dark-color-ts-type-alias); - --dark-color-ts-accessor: var(--dark-color-ts-property); - --dark-color-ts-get-signature: var(--dark-color-ts-accessor); - --dark-color-ts-set-signature: var(--dark-color-ts-accessor); - /* object literal not included as it is not used and will be removed in 0.25 */ - --dark-color-ts-type-alias: #ff6492; - /* reference not included as links will be colored with the kind that it points to */ - - --dark-external-icon: url("data:image/svg+xml;utf8,"); - --dark-color-scheme: dark; -} +@layer typedoc { + :root { + --dim-toolbar-contents-height: 2.5rem; + --dim-toolbar-border-bottom-width: 1px; + --dim-header-height: calc( + var(--dim-toolbar-border-bottom-width) + + var(--dim-toolbar-contents-height) + ); + + /* 0rem For mobile; unit is required for calculation in `calc` */ + --dim-container-main-margin-y: 0rem; + + --dim-footer-height: 3.5rem; + + --modal-animation-duration: 0.2s; + } + + :root { + /* Light */ + --light-color-background: #f2f4f8; + --light-color-background-secondary: #eff0f1; + /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ + --light-color-background-active: #d6d8da; + --light-color-background-warning: #e6e600; + --light-color-warning-text: #222; + --light-color-accent: #c5c7c9; + --light-color-active-menu-item: var(--light-color-background-active); + --light-color-text: #222; + --light-color-contrast-text: #000; + --light-color-text-aside: #5e5e5e; + + --light-color-icon-background: var(--light-color-background); + --light-color-icon-text: var(--light-color-text); + + --light-color-comment-tag-text: var(--light-color-text); + --light-color-comment-tag: var(--light-color-background); + + --light-color-link: #1f70c2; + --light-color-focus-outline: #3584e4; + + --light-color-ts-keyword: #056bd6; + --light-color-ts-project: #b111c9; + --light-color-ts-module: var(--light-color-ts-project); + --light-color-ts-namespace: var(--light-color-ts-project); + --light-color-ts-enum: #7e6f15; + --light-color-ts-enum-member: var(--light-color-ts-enum); + --light-color-ts-variable: #4760ec; + --light-color-ts-function: #572be7; + --light-color-ts-class: #1f70c2; + --light-color-ts-interface: #108024; + --light-color-ts-constructor: var(--light-color-ts-class); + --light-color-ts-property: #9f5f30; + --light-color-ts-method: #be3989; + --light-color-ts-reference: #ff4d82; + --light-color-ts-call-signature: var(--light-color-ts-method); + --light-color-ts-index-signature: var(--light-color-ts-property); + --light-color-ts-constructor-signature: var( + --light-color-ts-constructor + ); + --light-color-ts-parameter: var(--light-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --light-color-ts-type-parameter: #a55c0e; + --light-color-ts-accessor: #c73c3c; + --light-color-ts-get-signature: var(--light-color-ts-accessor); + --light-color-ts-set-signature: var(--light-color-ts-accessor); + --light-color-ts-type-alias: #d51270; + /* reference not included as links will be colored with the kind that it points to */ + --light-color-document: #000000; + + --light-color-alert-note: #0969d9; + --light-color-alert-tip: #1a7f37; + --light-color-alert-important: #8250df; + --light-color-alert-warning: #9a6700; + --light-color-alert-caution: #cf222e; + + --light-external-icon: url("data:image/svg+xml;utf8,"); + --light-color-scheme: light; + } -@media (prefers-color-scheme: light) { :root { + /* Dark */ + --dark-color-background: #2b2e33; + --dark-color-background-secondary: #1e2024; + /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ + --dark-color-background-active: #5d5d6a; + --dark-color-background-warning: #bebe00; + --dark-color-warning-text: #222; + --dark-color-accent: #9096a2; + --dark-color-active-menu-item: var(--dark-color-background-active); + --dark-color-text: #f5f5f5; + --dark-color-contrast-text: #ffffff; + --dark-color-text-aside: #dddddd; + + --dark-color-icon-background: var(--dark-color-background-secondary); + --dark-color-icon-text: var(--dark-color-text); + + --dark-color-comment-tag-text: var(--dark-color-text); + --dark-color-comment-tag: var(--dark-color-background); + + --dark-color-link: #00aff4; + --dark-color-focus-outline: #4c97f2; + + --dark-color-ts-keyword: #3399ff; + --dark-color-ts-project: #e358ff; + --dark-color-ts-module: var(--dark-color-ts-project); + --dark-color-ts-namespace: var(--dark-color-ts-project); + --dark-color-ts-enum: #f4d93e; + --dark-color-ts-enum-member: var(--dark-color-ts-enum); + --dark-color-ts-variable: #798dff; + --dark-color-ts-function: #a280ff; + --dark-color-ts-class: #8ac4ff; + --dark-color-ts-interface: #6cff87; + --dark-color-ts-constructor: var(--dark-color-ts-class); + --dark-color-ts-property: #ff984d; + --dark-color-ts-method: #ff4db8; + --dark-color-ts-reference: #ff4d82; + --dark-color-ts-call-signature: var(--dark-color-ts-method); + --dark-color-ts-index-signature: var(--dark-color-ts-property); + --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); + --dark-color-ts-parameter: var(--dark-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --dark-color-ts-type-parameter: #e07d13; + --dark-color-ts-accessor: #ff6060; + --dark-color-ts-get-signature: var(--dark-color-ts-accessor); + --dark-color-ts-set-signature: var(--dark-color-ts-accessor); + --dark-color-ts-type-alias: #ff6492; + /* reference not included as links will be colored with the kind that it points to */ + --dark-color-document: #ffffff; + + --dark-color-alert-note: #0969d9; + --dark-color-alert-tip: #1a7f37; + --dark-color-alert-important: #8250df; + --dark-color-alert-warning: #9a6700; + --dark-color-alert-caution: #cf222e; + + --dark-external-icon: url("data:image/svg+xml;utf8,"); + --dark-color-scheme: dark; + } + + @media (prefers-color-scheme: light) { + :root { + --color-background: var(--light-color-background); + --color-background-secondary: var( + --light-color-background-secondary + ); + --color-background-active: var(--light-color-background-active); + --color-background-warning: var(--light-color-background-warning); + --color-warning-text: var(--light-color-warning-text); + --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); + --color-text: var(--light-color-text); + --color-contrast-text: var(--light-color-contrast-text); + --color-text-aside: var(--light-color-text-aside); + + --color-icon-background: var(--light-color-icon-background); + --color-icon-text: var(--light-color-icon-text); + + --color-comment-tag-text: var(--light-color-text); + --color-comment-tag: var(--light-color-background); + + --color-link: var(--light-color-link); + --color-focus-outline: var(--light-color-focus-outline); + + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-project: var(--light-color-ts-project); + --color-ts-module: var(--light-color-ts-module); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); + --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-reference: var(--light-color-ts-reference); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); + + --color-alert-note: var(--light-color-alert-note); + --color-alert-tip: var(--light-color-alert-tip); + --color-alert-important: var(--light-color-alert-important); + --color-alert-warning: var(--light-color-alert-warning); + --color-alert-caution: var(--light-color-alert-caution); + + --external-icon: var(--light-external-icon); + --color-scheme: var(--light-color-scheme); + } + } + + @media (prefers-color-scheme: dark) { + :root { + --color-background: var(--dark-color-background); + --color-background-secondary: var( + --dark-color-background-secondary + ); + --color-background-active: var(--dark-color-background-active); + --color-background-warning: var(--dark-color-background-warning); + --color-warning-text: var(--dark-color-warning-text); + --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); + --color-text: var(--dark-color-text); + --color-contrast-text: var(--dark-color-contrast-text); + --color-text-aside: var(--dark-color-text-aside); + + --color-icon-background: var(--dark-color-icon-background); + --color-icon-text: var(--dark-color-icon-text); + + --color-comment-tag-text: var(--dark-color-text); + --color-comment-tag: var(--dark-color-background); + + --color-link: var(--dark-color-link); + --color-focus-outline: var(--dark-color-focus-outline); + + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-project: var(--dark-color-ts-project); + --color-ts-module: var(--dark-color-ts-module); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); + --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-reference: var(--dark-color-ts-reference); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); + + --color-alert-note: var(--dark-color-alert-note); + --color-alert-tip: var(--dark-color-alert-tip); + --color-alert-important: var(--dark-color-alert-important); + --color-alert-warning: var(--dark-color-alert-warning); + --color-alert-caution: var(--dark-color-alert-caution); + + --external-icon: var(--dark-external-icon); + --color-scheme: var(--dark-color-scheme); + } + } + + :root[data-theme="light"] { --color-background: var(--light-color-background); --color-background-secondary: var(--light-color-background-secondary); + --color-background-active: var(--light-color-background-active); --color-background-warning: var(--light-color-background-warning); --color-warning-text: var(--light-color-warning-text); --color-icon-background: var(--light-color-icon-background); --color-accent: var(--light-color-accent); --color-active-menu-item: var(--light-color-active-menu-item); --color-text: var(--light-color-text); + --color-contrast-text: var(--light-color-contrast-text); --color-text-aside: var(--light-color-text-aside); + --color-icon-text: var(--light-color-icon-text); + + --color-comment-tag-text: var(--light-color-text); + --color-comment-tag: var(--light-color-background); + --color-link: var(--light-color-link); + --color-focus-outline: var(--light-color-focus-outline); + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-project: var(--light-color-ts-project); --color-ts-module: var(--light-color-ts-module); --color-ts-namespace: var(--light-color-ts-namespace); --color-ts-enum: var(--light-color-ts-enum); @@ -104,6 +294,7 @@ --color-ts-constructor: var(--light-color-ts-constructor); --color-ts-property: var(--light-color-ts-property); --color-ts-method: var(--light-color-ts-method); + --color-ts-reference: var(--light-color-ts-reference); --color-ts-call-signature: var(--light-color-ts-call-signature); --color-ts-index-signature: var(--light-color-ts-index-signature); --color-ts-constructor-signature: var( @@ -115,25 +306,40 @@ --color-ts-get-signature: var(--light-color-ts-get-signature); --color-ts-set-signature: var(--light-color-ts-set-signature); --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); + + --color-note: var(--light-color-note); + --color-tip: var(--light-color-tip); + --color-important: var(--light-color-important); + --color-warning: var(--light-color-warning); + --color-caution: var(--light-color-caution); --external-icon: var(--light-external-icon); --color-scheme: var(--light-color-scheme); } -} -@media (prefers-color-scheme: dark) { - :root { + :root[data-theme="dark"] { --color-background: var(--dark-color-background); --color-background-secondary: var(--dark-color-background-secondary); + --color-background-active: var(--dark-color-background-active); --color-background-warning: var(--dark-color-background-warning); --color-warning-text: var(--dark-color-warning-text); --color-icon-background: var(--dark-color-icon-background); --color-accent: var(--dark-color-accent); --color-active-menu-item: var(--dark-color-active-menu-item); --color-text: var(--dark-color-text); + --color-contrast-text: var(--dark-color-contrast-text); --color-text-aside: var(--dark-color-text-aside); + --color-icon-text: var(--dark-color-icon-text); + + --color-comment-tag-text: var(--dark-color-text); + --color-comment-tag: var(--dark-color-background); + --color-link: var(--dark-color-link); + --color-focus-outline: var(--dark-color-focus-outline); + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-project: var(--dark-color-ts-project); --color-ts-module: var(--dark-color-ts-module); --color-ts-namespace: var(--dark-color-ts-namespace); --color-ts-enum: var(--dark-color-ts-enum); @@ -145,6 +351,7 @@ --color-ts-constructor: var(--dark-color-ts-constructor); --color-ts-property: var(--dark-color-ts-property); --color-ts-method: var(--dark-color-ts-method); + --color-ts-reference: var(--dark-color-ts-reference); --color-ts-call-signature: var(--dark-color-ts-call-signature); --color-ts-index-signature: var(--dark-color-ts-index-signature); --color-ts-constructor-signature: var( @@ -156,1183 +363,1271 @@ --color-ts-get-signature: var(--dark-color-ts-get-signature); --color-ts-set-signature: var(--dark-color-ts-set-signature); --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); + + --color-note: var(--dark-color-note); + --color-tip: var(--dark-color-tip); + --color-important: var(--dark-color-important); + --color-warning: var(--dark-color-warning); + --color-caution: var(--dark-color-caution); --external-icon: var(--dark-external-icon); --color-scheme: var(--dark-color-scheme); } -} - -html { - color-scheme: var(--color-scheme); -} -body { - margin: 0; -} - -:root[data-theme="light"] { - --color-background: var(--light-color-background); - --color-background-secondary: var(--light-color-background-secondary); - --color-background-warning: var(--light-color-background-warning); - --color-warning-text: var(--light-color-warning-text); - --color-icon-background: var(--light-color-icon-background); - --color-accent: var(--light-color-accent); - --color-active-menu-item: var(--light-color-active-menu-item); - --color-text: var(--light-color-text); - --color-text-aside: var(--light-color-text-aside); - --color-link: var(--light-color-link); - - --color-ts-module: var(--light-color-ts-module); - --color-ts-namespace: var(--light-color-ts-namespace); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-enum-member: var(--light-color-ts-enum-member); - --color-ts-variable: var(--light-color-ts-variable); - --color-ts-function: var(--light-color-ts-function); - --color-ts-class: var(--light-color-ts-class); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-constructor: var(--light-color-ts-constructor); - --color-ts-property: var(--light-color-ts-property); - --color-ts-method: var(--light-color-ts-method); - --color-ts-call-signature: var(--light-color-ts-call-signature); - --color-ts-index-signature: var(--light-color-ts-index-signature); - --color-ts-constructor-signature: var( - --light-color-ts-constructor-signature - ); - --color-ts-parameter: var(--light-color-ts-parameter); - --color-ts-type-parameter: var(--light-color-ts-type-parameter); - --color-ts-accessor: var(--light-color-ts-accessor); - --color-ts-get-signature: var(--light-color-ts-get-signature); - --color-ts-set-signature: var(--light-color-ts-set-signature); - --color-ts-type-alias: var(--light-color-ts-type-alias); - - --external-icon: var(--light-external-icon); - --color-scheme: var(--light-color-scheme); -} + html { + color-scheme: var(--color-scheme); + @media (prefers-reduced-motion: no-preference) { + scroll-behavior: smooth; + } + } -:root[data-theme="dark"] { - --color-background: var(--dark-color-background); - --color-background-secondary: var(--dark-color-background-secondary); - --color-background-warning: var(--dark-color-background-warning); - --color-warning-text: var(--dark-color-warning-text); - --color-icon-background: var(--dark-color-icon-background); - --color-accent: var(--dark-color-accent); - --color-active-menu-item: var(--dark-color-active-menu-item); - --color-text: var(--dark-color-text); - --color-text-aside: var(--dark-color-text-aside); - --color-link: var(--dark-color-link); - - --color-ts-module: var(--dark-color-ts-module); - --color-ts-namespace: var(--dark-color-ts-namespace); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-enum-member: var(--dark-color-ts-enum-member); - --color-ts-variable: var(--dark-color-ts-variable); - --color-ts-function: var(--dark-color-ts-function); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-constructor: var(--dark-color-ts-constructor); - --color-ts-property: var(--dark-color-ts-property); - --color-ts-method: var(--dark-color-ts-method); - --color-ts-call-signature: var(--dark-color-ts-call-signature); - --color-ts-index-signature: var(--dark-color-ts-index-signature); - --color-ts-constructor-signature: var( - --dark-color-ts-constructor-signature - ); - --color-ts-parameter: var(--dark-color-ts-parameter); - --color-ts-type-parameter: var(--dark-color-ts-type-parameter); - --color-ts-accessor: var(--dark-color-ts-accessor); - --color-ts-get-signature: var(--dark-color-ts-get-signature); - --color-ts-set-signature: var(--dark-color-ts-set-signature); - --color-ts-type-alias: var(--dark-color-ts-type-alias); - - --external-icon: var(--dark-external-icon); - --color-scheme: var(--dark-color-scheme); -} + *:focus-visible, + .tsd-accordion-summary:focus-visible svg { + outline: 2px solid var(--color-focus-outline); + } -.always-visible, -.always-visible .tsd-signatures { - display: inherit !important; -} + .always-visible, + .always-visible .tsd-signatures { + display: inherit !important; + } -h1, -h2, -h3, -h4, -h5, -h6 { - line-height: 1.2; -} + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.2; + } -h1 { - font-size: 1.875rem; - margin: 0.67rem 0; -} + h1 { + font-size: 1.875rem; + margin: 0.67rem 0; + } -h2 { - font-size: 1.5rem; - margin: 0.83rem 0; -} + h2 { + font-size: 1.5rem; + margin: 0.83rem 0; + } -h3 { - font-size: 1.25rem; - margin: 1rem 0; -} + h3 { + font-size: 1.25rem; + margin: 1rem 0; + } -h4 { - font-size: 1.05rem; - margin: 1.33rem 0; -} + h4 { + font-size: 1.05rem; + margin: 1.33rem 0; + } -h5 { - font-size: 1rem; - margin: 1.5rem 0; -} + h5 { + font-size: 1rem; + margin: 1.5rem 0; + } -h6 { - font-size: 0.875rem; - margin: 2.33rem 0; -} + h6 { + font-size: 0.875rem; + margin: 2.33rem 0; + } -.uppercase { - text-transform: uppercase; -} + dl, + menu, + ol, + ul { + margin: 1em 0; + } -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} + dd { + margin: 0 0 0 34px; + } -dl, -menu, -ol, -ul { - margin: 1em 0; -} + .container { + max-width: 1700px; + padding: 0 2rem; + } -dd { - margin: 0 0 0 40px; -} + /* Footer */ + footer { + border-top: 1px solid var(--color-accent); + padding-top: 1rem; + padding-bottom: 1rem; + max-height: var(--dim-footer-height); + } + footer > p { + margin: 0 1em; + } -.container { - max-width: 1700px; - padding: 0 2rem; -} + .container-main { + margin: var(--dim-container-main-margin-y) auto; + /* toolbar, footer, margin */ + min-height: calc( + 100svh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + } -/* Footer */ -.tsd-generator { - border-top: 1px solid var(--color-accent); - padding-top: 1rem; - padding-bottom: 1rem; - max-height: 3.5rem; -} + @keyframes fade-in { + from { + opacity: 0; + } + to { + opacity: 1; + } + } + @keyframes fade-out { + from { + opacity: 1; + visibility: visible; + } + to { + opacity: 0; + } + } + @keyframes pop-in-from-right { + from { + transform: translate(100%, 0); + } + to { + transform: translate(0, 0); + } + } + @keyframes pop-out-to-right { + from { + transform: translate(0, 0); + visibility: visible; + } + to { + transform: translate(100%, 0); + } + } + body { + background: var(--color-background); + font-family: + -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", + Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; + font-size: 16px; + color: var(--color-text); + margin: 0; + } -.tsd-generator > p { - margin-top: 0; - margin-bottom: 0; - padding: 0 1rem; -} + a { + color: var(--color-link); + text-decoration: none; + } + a:hover { + text-decoration: underline; + } + a.external[target="_blank"] { + background-image: var(--external-icon); + background-position: top 3px right; + background-repeat: no-repeat; + padding-right: 13px; + } + a.tsd-anchor-link { + color: var(--color-text); + } + :target { + scroll-margin-block: calc(var(--dim-header-height) + 0.5rem); + } -.container-main { - margin: 0 auto; - /* toolbar, footer, margin */ - min-height: calc(100vh - 41px - 56px - 4rem); -} + code, + pre { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + padding: 0.2em; + margin: 0; + font-size: 0.875rem; + border-radius: 0.8em; + } -@keyframes fade-in { - from { + pre { + position: relative; + white-space: pre-wrap; + word-wrap: break-word; + padding: 10px; + border: 1px solid var(--color-accent); + margin-bottom: 8px; + } + pre code { + padding: 0; + font-size: 100%; + } + pre > button { + position: absolute; + top: 10px; + right: 10px; opacity: 0; + transition: opacity 0.1s; + box-sizing: border-box; } - to { + pre:hover > button, + pre > button.visible, + pre > button:focus-visible { opacity: 1; } -} -@keyframes fade-out { - from { - opacity: 1; - visibility: visible; + + blockquote { + margin: 1em 0; + padding-left: 1em; + border-left: 4px solid gray; } - to { - opacity: 0; + + img { + max-width: 100%; } -} -@keyframes fade-in-delayed { - 0% { - opacity: 0; + + * { + scrollbar-width: thin; + scrollbar-color: var(--color-accent) var(--color-icon-background); } - 33% { - opacity: 0; + + *::-webkit-scrollbar { + width: 0.75rem; } - 100% { - opacity: 1; + + *::-webkit-scrollbar-track { + background: var(--color-icon-background); } -} -@keyframes fade-out-delayed { - 0% { - opacity: 1; - visibility: visible; + + *::-webkit-scrollbar-thumb { + background-color: var(--color-accent); + border-radius: 999rem; + border: 0.25rem solid var(--color-icon-background); } - 66% { - opacity: 0; + + dialog { + border: none; + outline: none; + padding: 0; + background-color: var(--color-background); } - 100% { - opacity: 0; + dialog::backdrop { + display: none; } -} -@keyframes pop-in-from-right { - from { - transform: translate(100%, 0); + #tsd-overlay { + background-color: rgba(0, 0, 0, 0.5); + position: fixed; + z-index: 9999; + top: 0; + left: 0; + right: 0; + bottom: 0; + animation: fade-in var(--modal-animation-duration) forwards; } - to { - transform: translate(0, 0); + #tsd-overlay.closing { + animation-name: fade-out; } -} -@keyframes pop-out-to-right { - from { - transform: translate(0, 0); - visibility: visible; + + .tsd-typography { + line-height: 1.333em; } - to { - transform: translate(100%, 0); + .tsd-typography ul { + list-style: square; + padding: 0 0 0 20px; + margin: 0; + } + .tsd-typography .tsd-index-panel h3, + .tsd-index-panel .tsd-typography h3, + .tsd-typography h4, + .tsd-typography h5, + .tsd-typography h6 { + font-size: 1em; + } + .tsd-typography h5, + .tsd-typography h6 { + font-weight: normal; + } + .tsd-typography p, + .tsd-typography ul, + .tsd-typography ol { + margin: 1em 0; + } + .tsd-typography table { + border-collapse: collapse; + border: none; + } + .tsd-typography td, + .tsd-typography th { + padding: 6px 13px; + border: 1px solid var(--color-accent); + } + .tsd-typography thead, + .tsd-typography tr:nth-child(even) { + background-color: var(--color-background-secondary); } -} -body { - background: var(--color-background); - font-family: "Segoe UI", sans-serif; - font-size: 16px; - color: var(--color-text); -} -a { - color: var(--color-link); - text-decoration: none; -} -a:hover { - text-decoration: underline; -} -a.external[target="_blank"] { - background-image: var(--external-icon); - background-position: top 3px right; - background-repeat: no-repeat; - padding-right: 13px; -} + .tsd-alert { + padding: 8px 16px; + margin-bottom: 16px; + border-left: 0.25em solid var(--alert-color); + } + .tsd-alert blockquote > :last-child, + .tsd-alert > :last-child { + margin-bottom: 0; + } + .tsd-alert-title { + color: var(--alert-color); + display: inline-flex; + align-items: center; + } + .tsd-alert-title span { + margin-left: 4px; + } -code, -pre { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - padding: 0.2em; - margin: 0; - font-size: 0.875rem; - border-radius: 0.8em; -} + .tsd-alert-note { + --alert-color: var(--color-alert-note); + } + .tsd-alert-tip { + --alert-color: var(--color-alert-tip); + } + .tsd-alert-important { + --alert-color: var(--color-alert-important); + } + .tsd-alert-warning { + --alert-color: var(--color-alert-warning); + } + .tsd-alert-caution { + --alert-color: var(--color-alert-caution); + } -pre { - padding: 10px; - border: 0.1em solid var(--color-accent); -} -pre code { - padding: 0; - font-size: 100%; -} + .tsd-breadcrumb { + margin: 0; + margin-top: 1rem; + padding: 0; + color: var(--color-text-aside); + } + .tsd-breadcrumb a { + color: var(--color-text-aside); + text-decoration: none; + } + .tsd-breadcrumb a:hover { + text-decoration: underline; + } + .tsd-breadcrumb li { + display: inline; + } + .tsd-breadcrumb li:after { + content: " / "; + } -blockquote { - margin: 1em 0; - padding-left: 1em; - border-left: 4px solid gray; -} + .tsd-comment-tags { + display: flex; + flex-direction: column; + } + dl.tsd-comment-tag-group { + display: flex; + align-items: center; + overflow: hidden; + margin: 0.5em 0; + } + dl.tsd-comment-tag-group dt { + display: flex; + margin-right: 0.5em; + font-size: 0.875em; + font-weight: normal; + } + dl.tsd-comment-tag-group dd { + margin: 0; + } + code.tsd-tag { + padding: 0.25em 0.4em; + border: 0.1em solid var(--color-accent); + margin-right: 0.25em; + font-size: 70%; + } + h1 code.tsd-tag:first-of-type { + margin-left: 0.25em; + } -.tsd-typography { - line-height: 1.333em; -} -.tsd-typography ul { - list-style: square; - padding: 0 0 0 20px; - margin: 0; -} -.tsd-typography h4, -.tsd-typography .tsd-index-panel h3, -.tsd-index-panel .tsd-typography h3, -.tsd-typography h5, -.tsd-typography h6 { - font-size: 1em; - margin: 0; -} -.tsd-typography h5, -.tsd-typography h6 { - font-weight: normal; -} -.tsd-typography p, -.tsd-typography ul, -.tsd-typography ol { - margin: 1em 0; -} + dl.tsd-comment-tag-group dd:before, + dl.tsd-comment-tag-group dd:after { + content: " "; + } + dl.tsd-comment-tag-group dd pre, + dl.tsd-comment-tag-group dd:after { + clear: both; + } + dl.tsd-comment-tag-group p { + margin: 0; + } -.tsd-breadcrumb { - margin: 0; - padding: 0; - color: var(--color-text-aside); -} -.tsd-breadcrumb a { - color: var(--color-text-aside); - text-decoration: none; -} -.tsd-breadcrumb a:hover { - text-decoration: underline; -} -.tsd-breadcrumb li { - display: inline; -} -.tsd-breadcrumb li:after { - content: " / "; -} + .tsd-panel.tsd-comment .lead { + font-size: 1.1em; + line-height: 1.333em; + margin-bottom: 2em; + } + .tsd-panel.tsd-comment .lead:last-child { + margin-bottom: 0; + } -.tsd-comment-tags { - display: flex; - flex-direction: column; -} -dl.tsd-comment-tag-group { - display: flex; - align-items: center; - overflow: hidden; - margin: 0.5em 0; -} -dl.tsd-comment-tag-group dt { - display: flex; - margin-right: 0.5em; - font-size: 0.875em; - font-weight: normal; -} -dl.tsd-comment-tag-group dd { - margin: 0; -} -code.tsd-tag { - padding: 0.25em 0.4em; - border: 0.1em solid var(--color-accent); - margin-right: 0.25em; - font-size: 70%; -} -h1 code.tsd-tag:first-of-type { - margin-left: 0.25em; -} + .tsd-filter-visibility h4 { + font-size: 1rem; + padding-top: 0.75rem; + padding-bottom: 0.5rem; + margin: 0; + } + .tsd-filter-item:not(:last-child) { + margin-bottom: 0.5rem; + } + .tsd-filter-input { + display: flex; + width: -moz-fit-content; + width: fit-content; + align-items: center; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + } + .tsd-filter-input input[type="checkbox"] { + cursor: pointer; + position: absolute; + width: 1.5em; + height: 1.5em; + opacity: 0; + } + .tsd-filter-input input[type="checkbox"]:disabled { + pointer-events: none; + } + .tsd-filter-input svg { + cursor: pointer; + width: 1.5em; + height: 1.5em; + margin-right: 0.5em; + border-radius: 0.33em; + /* Leaving this at full opacity breaks event listeners on Firefox. + Don't remove unless you know what you're doing. */ + opacity: 0.99; + } + .tsd-filter-input input[type="checkbox"]:focus-visible + svg { + outline: 2px solid var(--color-focus-outline); + } + .tsd-checkbox-background { + fill: var(--color-accent); + } + input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { + stroke: var(--color-text); + } + .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background { + fill: var(--color-background); + stroke: var(--color-accent); + stroke-width: 0.25rem; + } + .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark { + stroke: var(--color-accent); + } -dl.tsd-comment-tag-group dd:before, -dl.tsd-comment-tag-group dd:after { - content: " "; -} -dl.tsd-comment-tag-group dd pre, -dl.tsd-comment-tag-group dd:after { - clear: both; -} -dl.tsd-comment-tag-group p { - margin: 0; -} + .settings-label { + font-weight: bold; + text-transform: uppercase; + display: inline-block; + } -.tsd-panel.tsd-comment .lead { - font-size: 1.1em; - line-height: 1.333em; - margin-bottom: 2em; -} -.tsd-panel.tsd-comment .lead:last-child { - margin-bottom: 0; -} + .tsd-filter-visibility .settings-label { + margin: 0.75rem 0 0.5rem 0; + } -.tsd-filter-visibility h4 { - font-size: 1rem; - padding-top: 0.75rem; - padding-bottom: 0.5rem; - margin: 0; -} -.tsd-filter-item:not(:last-child) { - margin-bottom: 0.5rem; -} -.tsd-filter-input { - display: flex; - width: fit-content; - width: -moz-fit-content; - align-items: center; - user-select: none; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - cursor: pointer; -} -.tsd-filter-input input[type="checkbox"] { - cursor: pointer; - position: absolute; - width: 1.5em; - height: 1.5em; - opacity: 0; -} -.tsd-filter-input input[type="checkbox"]:disabled { - pointer-events: none; -} -.tsd-filter-input svg { - cursor: pointer; - width: 1.5em; - height: 1.5em; - margin-right: 0.5em; - border-radius: 0.33em; - /* Leaving this at full opacity breaks event listeners on Firefox. - Don't remove unless you know what you're doing. */ - opacity: 0.99; -} -.tsd-filter-input input[type="checkbox"]:focus + svg { - transform: scale(0.95); -} -.tsd-filter-input input[type="checkbox"]:focus:not(:focus-visible) + svg { - transform: scale(1); -} -.tsd-checkbox-background { - fill: var(--color-accent); -} -input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { - stroke: var(--color-text); -} -.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background { - fill: var(--color-background); - stroke: var(--color-accent); - stroke-width: 0.25rem; -} -.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark { - stroke: var(--color-accent); -} + .tsd-theme-toggle .settings-label { + margin: 0.75rem 0.75rem 0 0; + } -.tsd-theme-toggle { - padding-top: 0.75rem; -} -.tsd-theme-toggle > h4 { - display: inline; - vertical-align: middle; - margin-right: 0.75rem; -} + .tsd-hierarchy h4 label:hover span { + text-decoration: underline; + } -.tsd-hierarchy { - list-style: square; - margin: 0; -} -.tsd-hierarchy .target { - font-weight: bold; -} + .tsd-hierarchy { + list-style: square; + margin: 0; + } + .tsd-hierarchy-target { + font-weight: bold; + } + .tsd-hierarchy-toggle { + color: var(--color-link); + cursor: pointer; + } -.tsd-panel-group.tsd-index-group { - margin-bottom: 0; -} -.tsd-index-panel .tsd-index-list { - list-style: none; - line-height: 1.333em; - margin: 0; - padding: 0.25rem 0 0 0; - overflow: hidden; - display: grid; - grid-template-columns: repeat(3, 1fr); - column-gap: 1rem; - grid-template-rows: auto; -} -@media (max-width: 1024px) { - .tsd-index-panel .tsd-index-list { - grid-template-columns: repeat(2, 1fr); + .tsd-full-hierarchy:not(:last-child) { + margin-bottom: 1em; + padding-bottom: 1em; + border-bottom: 1px solid var(--color-accent); + } + .tsd-full-hierarchy, + .tsd-full-hierarchy ul { + list-style: none; + margin: 0; + padding: 0; + } + .tsd-full-hierarchy ul { + padding-left: 1.5rem; + } + .tsd-full-hierarchy a { + padding: 0.25rem 0 !important; + font-size: 1rem; + display: inline-flex; + align-items: center; + color: var(--color-text); + } + .tsd-full-hierarchy svg[data-dropdown] { + cursor: pointer; + } + .tsd-full-hierarchy svg[data-dropdown="false"] { + transform: rotate(-90deg); + } + .tsd-full-hierarchy svg[data-dropdown="false"] ~ ul { + display: none; + } + + .tsd-panel-group.tsd-index-group { + margin-bottom: 0; } -} -@media (max-width: 768px) { .tsd-index-panel .tsd-index-list { - grid-template-columns: repeat(1, 1fr); + list-style: none; + line-height: 1.333em; + margin: 0; + padding: 0.25rem 0 0 0; + overflow: hidden; + display: grid; + grid-template-columns: repeat(3, 1fr); + column-gap: 1rem; + grid-template-rows: auto; + } + @media (max-width: 1024px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(2, 1fr); + } + } + @media (max-width: 768px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(1, 1fr); + } + } + .tsd-index-panel .tsd-index-list li { + -webkit-page-break-inside: avoid; + -moz-page-break-inside: avoid; + -ms-page-break-inside: avoid; + -o-page-break-inside: avoid; + page-break-inside: avoid; } -} -.tsd-index-panel .tsd-index-list li { - -webkit-page-break-inside: avoid; - -moz-page-break-inside: avoid; - -ms-page-break-inside: avoid; - -o-page-break-inside: avoid; - page-break-inside: avoid; -} -.tsd-flag { - display: inline-block; - padding: 0.25em 0.4em; - border-radius: 4px; - color: var(--color-comment-tag-text); - background-color: var(--color-comment-tag); - text-indent: 0; - font-size: 75%; - line-height: 1; - font-weight: normal; -} + .tsd-flag { + display: inline-block; + padding: 0.25em 0.4em; + border-radius: 4px; + color: var(--color-comment-tag-text); + background-color: var(--color-comment-tag); + text-indent: 0; + font-size: 75%; + line-height: 1; + font-weight: normal; + } -.tsd-anchor { - position: relative; - top: -100px; -} + .tsd-anchor { + position: relative; + top: -100px; + } -.tsd-member { - position: relative; -} -.tsd-member .tsd-anchor + h3 { - display: flex; - align-items: center; - margin-top: 0; - margin-bottom: 0; - border-bottom: none; -} + .tsd-member { + position: relative; + } + .tsd-member .tsd-anchor + h3 { + display: flex; + align-items: center; + margin-top: 0; + margin-bottom: 0; + border-bottom: none; + } -.tsd-navigation.settings { - margin: 1rem 0; -} -.tsd-navigation a, -.tsd-page-navigation a { - display: inline-flex; - align-items: center; - padding: 0.25rem; - color: var(--color-text); - text-decoration: none; - box-sizing: border-box; -} -.tsd-navigation a { - /* why 3rem? No idea, but it seems to work. */ - width: calc(100% - 3rem); -} -.tsd-page-navigation a { - /* why is this different? */ - width: 100%; -} -.tsd-navigation a.current, -.tsd-page-navigation a.current { - background: var(--color-active-menu-item); -} -.tsd-navigation a:hover, -.tsd-page-navigation a:hover { - text-decoration: underline; -} -.tsd-navigation ul, -.tsd-page-navigation ul { - margin: 0; - padding: 0; - list-style: none; -} -.tsd-navigation li, -.tsd-page-navigation li { - padding: 0; - max-width: 100%; -} -.tsd-nested-navigation > li > a { - margin-left: 3rem; -} -.tsd-nested-navigation > li > details { - margin-left: 1.5rem; -} -.tsd-small-nested-navigation > li > a { - margin-left: 1.5rem; -} -.tsd-small-nested-navigation > li > details { - margin-left: 0; -} -.tsd-page-navigation ul { - padding-left: 1.75rem; -} - -#tsd-sidebar-links a { - margin-top: 0; - margin-bottom: 0.5rem; - line-height: 1.25rem; -} -#tsd-sidebar-links a:last-of-type { - margin-bottom: 0; -} - -a.tsd-index-link { - padding: 0.25rem 0 !important; - font-size: 1rem; - line-height: 1.25rem; - display: inline-flex; - align-items: center; - color: var(--color-text); -} -.tsd-accordion-summary, -.tsd-accordion-summary a { - user-select: none; - -moz-user-select: none; - -webkit-user-select: none; - -ms-user-select: none; - - display: flex; - align-items: center; - cursor: pointer; -} -.tsd-accordion-summary > * { - margin-top: 0; - margin-bottom: 0; - padding-top: 0; - padding-bottom: 0; -} -.tsd-accordion-summary::-webkit-details-marker { - display: none; -} -.tsd-index-accordion .tsd-accordion-summary svg { - margin-right: 0.25rem; -} -.tsd-index-content > :not(:first-child) { - margin-top: 0.75rem; -} -.tsd-index-heading { - margin-top: 1.5rem; - margin-bottom: 0.75rem; -} - -.tsd-kind-icon { - margin-right: 0.5rem; - width: 1.25rem; - height: 1.25rem; - min-width: 1.25rem; - min-height: 1.25rem; -} -.tsd-kind-icon path { - transform-origin: center; - transform: scale(1.1); -} -.tsd-signature > .tsd-kind-icon { - margin-right: 0.8rem; -} - -.tsd-panel { - margin-bottom: 2.5rem; -} -.tsd-panel.tsd-member { - margin-bottom: 4rem; -} -.tsd-panel:empty { - display: none; -} -.tsd-panel > h1, -.tsd-panel > h2, -.tsd-panel > h3 { - margin: 1.5rem -1.5rem 0.75rem -1.5rem; - padding: 0 1.5rem 0.75rem 1.5rem; -} -.tsd-panel > h1.tsd-before-signature, -.tsd-panel > h2.tsd-before-signature, -.tsd-panel > h3.tsd-before-signature { - margin-bottom: 0; - border-bottom: none; -} - -.tsd-panel-group { - margin: 4rem 0; -} -.tsd-panel-group.tsd-index-group { - margin: 2rem 0; -} -.tsd-panel-group.tsd-index-group details { - margin: 2rem 0; -} - -#tsd-search { - transition: background-color 0.2s; -} -#tsd-search .title { - position: relative; - z-index: 2; -} -#tsd-search .field { - position: absolute; - left: 0; - top: 0; - right: 2.5rem; - height: 100%; -} -#tsd-search .field input { - box-sizing: border-box; - position: relative; - top: -50px; - z-index: 1; - width: 100%; - padding: 0 10px; - opacity: 0; - outline: 0; - border: 0; - background: transparent; - color: var(--color-text); -} -#tsd-search .field label { - position: absolute; - overflow: hidden; - right: -40px; -} -#tsd-search .field input, -#tsd-search .title, -#tsd-toolbar-links a { - transition: opacity 0.2s; -} -#tsd-search .results { - position: absolute; - visibility: hidden; - top: 40px; - width: 100%; - margin: 0; - padding: 0; - list-style: none; - box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); -} -#tsd-search .results li { - padding: 0 10px; - background-color: var(--color-background); -} -#tsd-search .results li:nth-child(even) { - background-color: var(--color-background-secondary); -} -#tsd-search .results li.state { - display: none; -} -#tsd-search .results li.current, -#tsd-search .results li:hover { - background-color: var(--color-accent); -} -#tsd-search .results a { - display: block; -} -#tsd-search .results a:before { - top: 10px; -} -#tsd-search .results span.parent { - color: var(--color-text-aside); - font-weight: normal; -} -#tsd-search.has-focus { - background-color: var(--color-accent); -} -#tsd-search.has-focus .field input { - top: 0; - opacity: 1; -} -#tsd-search.has-focus .title, -#tsd-search.has-focus #tsd-toolbar-links a { - z-index: 0; - opacity: 0; -} -#tsd-search.has-focus .results { - visibility: visible; -} -#tsd-search.loading .results li.state.loading { - display: block; -} -#tsd-search.failure .results li.state.failure { - display: block; -} - -#tsd-toolbar-links { - position: absolute; - top: 0; - right: 2rem; - height: 100%; - display: flex; - align-items: center; - justify-content: flex-end; -} -#tsd-toolbar-links a { - margin-left: 1.5rem; -} -#tsd-toolbar-links a:hover { - text-decoration: underline; -} - -.tsd-signature { - margin: 0 0 1rem 0; - padding: 1rem 0.5rem; - border: 1px solid var(--color-accent); - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - font-size: 14px; - overflow-x: auto; -} - -.tsd-signature-symbol { - color: var(--color-text-aside); - font-weight: normal; -} - -.tsd-signature-type { - font-style: italic; - font-weight: normal; -} - -.tsd-signatures { - padding: 0; - margin: 0 0 1em 0; - list-style-type: none; -} -.tsd-signatures .tsd-signature { - margin: 0; - border-color: var(--color-accent); - border-width: 1px 0; - transition: background-color 0.1s; -} -.tsd-description .tsd-signatures .tsd-signature { - border-width: 1px; -} - -ul.tsd-parameter-list, -ul.tsd-type-parameter-list { - list-style: square; - margin: 0; - padding-left: 20px; -} -ul.tsd-parameter-list > li.tsd-parameter-signature, -ul.tsd-type-parameter-list > li.tsd-parameter-signature { - list-style: none; - margin-left: -20px; -} -ul.tsd-parameter-list h5, -ul.tsd-type-parameter-list h5 { - font-size: 16px; - margin: 1em 0 0.5em 0; -} -.tsd-sources { - margin-top: 1rem; - font-size: 0.875em; -} -.tsd-sources a { - color: var(--color-text-aside); - text-decoration: underline; -} -.tsd-sources ul { - list-style: none; - padding: 0; -} - -.tsd-page-toolbar { - position: sticky; - z-index: 1; - top: 0; - left: 0; - width: 100%; - color: var(--color-text); - background: var(--color-background-secondary); - border-bottom: 1px var(--color-accent) solid; - transition: transform 0.3s ease-in-out; -} -.tsd-page-toolbar a { - color: var(--color-text); - text-decoration: none; -} -.tsd-page-toolbar a.title { - font-weight: bold; -} -.tsd-page-toolbar a.title:hover { - text-decoration: underline; -} -.tsd-page-toolbar .tsd-toolbar-contents { - display: flex; - justify-content: space-between; - height: 2.5rem; - margin: 0 auto; -} -.tsd-page-toolbar .table-cell { - position: relative; - white-space: nowrap; - line-height: 40px; -} -.tsd-page-toolbar .table-cell:first-child { - width: 100%; -} -.tsd-page-toolbar .tsd-toolbar-icon { - box-sizing: border-box; - line-height: 0; - padding: 12px 0; -} - -.tsd-widget { - display: inline-block; - overflow: hidden; - opacity: 0.8; - height: 40px; - transition: opacity 0.1s, background-color 0.2s; - vertical-align: bottom; - cursor: pointer; -} -.tsd-widget:hover { - opacity: 0.9; -} -.tsd-widget.active { - opacity: 1; - background-color: var(--color-accent); -} -.tsd-widget.no-caption { - width: 40px; -} -.tsd-widget.no-caption:before { - margin: 0; -} - -.tsd-widget.options, -.tsd-widget.menu { - display: none; -} -input[type="checkbox"] + .tsd-widget:before { - background-position: -120px 0; -} -input[type="checkbox"]:checked + .tsd-widget:before { - background-position: -160px 0; -} - -img { - max-width: 100%; -} - -.tsd-anchor-icon { - display: inline-flex; - align-items: center; - margin-left: 0.5rem; - vertical-align: middle; - color: var(--color-text); -} - -.tsd-anchor-icon svg { - width: 1em; - height: 1em; - visibility: hidden; -} - -.tsd-anchor-link:hover > .tsd-anchor-icon svg { - visibility: visible; -} - -.deprecated { - text-decoration: line-through; -} - -.warning { - padding: 1rem; - color: var(--color-warning-text); - background: var(--color-background-warning); -} + .tsd-navigation.settings { + margin: 0; + margin-bottom: 1rem; + } + .tsd-navigation > a, + .tsd-navigation .tsd-accordion-summary { + width: calc(100% - 0.25rem); + display: flex; + align-items: center; + } + .tsd-navigation a, + .tsd-navigation summary > span, + .tsd-page-navigation a { + display: flex; + width: calc(100% - 0.25rem); + align-items: center; + padding: 0.25rem; + color: var(--color-text); + text-decoration: none; + box-sizing: border-box; + } + .tsd-navigation a.current, + .tsd-page-navigation a.current { + background: var(--color-active-menu-item); + color: var(--color-contrast-text); + } + .tsd-navigation a:hover, + .tsd-page-navigation a:hover { + text-decoration: underline; + } + .tsd-navigation ul, + .tsd-page-navigation ul { + margin-top: 0; + margin-bottom: 0; + padding: 0; + list-style: none; + } + .tsd-navigation li, + .tsd-page-navigation li { + padding: 0; + max-width: 100%; + } + .tsd-navigation .tsd-nav-link { + display: none; + } + .tsd-nested-navigation { + margin-left: 3rem; + } + .tsd-nested-navigation > li > details { + margin-left: -1.5rem; + } + .tsd-small-nested-navigation { + margin-left: 1.5rem; + } + .tsd-small-nested-navigation > li > details { + margin-left: -1.5rem; + } -.tsd-kind-project { - color: var(--color-ts-project); -} -.tsd-kind-module { - color: var(--color-ts-module); -} -.tsd-kind-namespace { - color: var(--color-ts-namespace); -} -.tsd-kind-enum { - color: var(--color-ts-enum); -} -.tsd-kind-enum-member { - color: var(--color-ts-enum-member); -} -.tsd-kind-variable { - color: var(--color-ts-variable); -} -.tsd-kind-function { - color: var(--color-ts-function); -} -.tsd-kind-class { - color: var(--color-ts-class); -} -.tsd-kind-interface { - color: var(--color-ts-interface); -} -.tsd-kind-constructor { - color: var(--color-ts-constructor); -} -.tsd-kind-property { - color: var(--color-ts-property); -} -.tsd-kind-method { - color: var(--color-ts-method); -} -.tsd-kind-call-signature { - color: var(--color-ts-call-signature); -} -.tsd-kind-index-signature { - color: var(--color-ts-index-signature); -} -.tsd-kind-constructor-signature { - color: var(--color-ts-constructor-signature); -} -.tsd-kind-parameter { - color: var(--color-ts-parameter); -} -.tsd-kind-type-literal { - color: var(--color-ts-type-literal); -} -.tsd-kind-type-parameter { - color: var(--color-ts-type-parameter); -} -.tsd-kind-accessor { - color: var(--color-ts-accessor); -} -.tsd-kind-get-signature { - color: var(--color-ts-get-signature); -} -.tsd-kind-set-signature { - color: var(--color-ts-set-signature); -} -.tsd-kind-type-alias { - color: var(--color-ts-type-alias); -} + .tsd-page-navigation-section > summary { + padding: 0.25rem; + } + .tsd-page-navigation-section > summary > svg { + margin-right: 0.25rem; + } + .tsd-page-navigation-section > div { + margin-left: 30px; + } + .tsd-page-navigation ul { + padding-left: 1.75rem; + } -/* if we have a kind icon, don't color the text by kind */ -.tsd-kind-icon ~ span { - color: var(--color-text); -} + #tsd-sidebar-links a { + margin-top: 0; + margin-bottom: 0.5rem; + line-height: 1.25rem; + } + #tsd-sidebar-links a:last-of-type { + margin-bottom: 0; + } -* { - scrollbar-width: thin; - scrollbar-color: var(--color-accent) var(--color-icon-background); -} + a.tsd-index-link { + padding: 0.25rem 0 !important; + font-size: 1rem; + line-height: 1.25rem; + display: inline-flex; + align-items: center; + color: var(--color-text); + } + .tsd-accordion-summary { + list-style-type: none; /* hide marker on non-safari */ + outline: none; /* broken on safari, so just hide it */ + display: flex; + align-items: center; + gap: 0.25rem; + box-sizing: border-box; + } + .tsd-accordion-summary::-webkit-details-marker { + display: none; /* hide marker on safari */ + } + .tsd-accordion-summary, + .tsd-accordion-summary a { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; + + cursor: pointer; + } + .tsd-accordion-summary a { + width: calc(100% - 1.5rem); + } + .tsd-accordion-summary > * { + margin-top: 0; + margin-bottom: 0; + padding-top: 0; + padding-bottom: 0; + } + /* + * We need to be careful to target the arrow indicating whether the accordion + * is open, but not any other SVGs included in the details element. + */ + .tsd-accordion:not([open]) > .tsd-accordion-summary > svg:first-child { + transform: rotate(-90deg); + } + .tsd-index-content > :not(:first-child) { + margin-top: 0.75rem; + } + .tsd-index-summary { + margin-top: 1.5rem; + margin-bottom: 0.75rem; + display: flex; + align-content: center; + } -*::-webkit-scrollbar { - width: 0.75rem; -} + .tsd-no-select { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + .tsd-kind-icon { + margin-right: 0.5rem; + width: 1.25rem; + height: 1.25rem; + min-width: 1.25rem; + min-height: 1.25rem; + } + .tsd-signature > .tsd-kind-icon { + margin-right: 0.8rem; + } -*::-webkit-scrollbar-track { - background: var(--color-icon-background); -} + .tsd-panel { + margin-bottom: 2.5rem; + } + .tsd-panel.tsd-member { + margin-bottom: 4rem; + } + .tsd-panel:empty { + display: none; + } + .tsd-panel > h1, + .tsd-panel > h2, + .tsd-panel > h3 { + margin: 1.5rem -1.5rem 0.75rem -1.5rem; + padding: 0 1.5rem 0.75rem 1.5rem; + } + .tsd-panel > h1.tsd-before-signature, + .tsd-panel > h2.tsd-before-signature, + .tsd-panel > h3.tsd-before-signature { + margin-bottom: 0; + border-bottom: none; + } -*::-webkit-scrollbar-thumb { - background-color: var(--color-accent); - border-radius: 999rem; - border: 0.25rem solid var(--color-icon-background); -} + .tsd-panel-group { + margin: 2rem 0; + } + .tsd-panel-group.tsd-index-group { + margin: 2rem 0; + } + .tsd-panel-group.tsd-index-group details { + margin: 2rem 0; + } + .tsd-panel-group > .tsd-accordion-summary { + margin-bottom: 1rem; + } -/* mobile */ -@media (max-width: 769px) { - .tsd-widget.options, - .tsd-widget.menu { - display: inline-block; + #tsd-search[open] { + animation: fade-in var(--modal-animation-duration) ease-out forwards; + } + #tsd-search[open].closing { + animation-name: fade-out; } - .container-main { + /* Avoid setting `display` on closed dialog */ + #tsd-search[open] { display: flex; + flex-direction: column; + padding: 1rem; + width: 32rem; + max-width: 90vw; + max-height: calc(100vh - env(keyboard-inset-height, 0px) - 25vh); + /* Anchor dialog to top */ + margin-top: 10vh; + border-radius: 6px; + will-change: max-height; } - html .col-content { - float: none; - max-width: 100%; + #tsd-search-input { + box-sizing: border-box; width: 100%; + padding: 0 0.625rem; /* 10px */ + outline: 0; + border: 2px solid var(--color-accent); + background-color: transparent; + color: var(--color-text); + border-radius: 4px; + height: 2.5rem; + flex: 0 0 auto; + font-size: 0.875rem; + transition: border-color 0.2s, background-color 0.2s; + } + #tsd-search-input:focus-visible { + background-color: var(--color-background-active); + border-color: transparent; + color: var(--color-contrast-text); } - html .col-sidebar { - position: fixed !important; + #tsd-search-input::placeholder { + color: inherit; + opacity: 0.8; + } + #tsd-search-results { + margin: 0; + padding: 0; + list-style: none; + flex: 1 1 auto; + display: flex; + flex-direction: column; overflow-y: auto; - -webkit-overflow-scrolling: touch; - z-index: 1024; - top: 0 !important; - bottom: 0 !important; - left: auto !important; - right: 0 !important; - padding: 1.5rem 1.5rem 0 0; - width: 75vw; - visibility: hidden; + } + #tsd-search-results:not(:empty) { + margin-top: 0.5rem; + } + #tsd-search-results > li { background-color: var(--color-background); - transform: translate(100%, 0); + line-height: 1.5; + box-sizing: border-box; + border-radius: 4px; } - html .col-sidebar > *:last-child { - padding-bottom: 20px; + #tsd-search-results > li:nth-child(even) { + background-color: var(--color-background-secondary); } - html .overlay { - content: ""; - display: block; - position: fixed; - z-index: 1023; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: rgba(0, 0, 0, 0.75); - visibility: hidden; + #tsd-search-results > li:is(:hover, [aria-selected="true"]) { + background-color: var(--color-background-active); + color: var(--color-contrast-text); + } + /* It's important that this takes full size of parent `li`, to capture a click on `li` */ + #tsd-search-results > li > a { + display: flex; + align-items: center; + padding: 0.5rem 0.25rem; + box-sizing: border-box; + width: 100%; + } + #tsd-search-results > li > a > .text { + flex: 1 1 auto; + min-width: 0; + overflow-wrap: anywhere; + } + #tsd-search-results > li > a .parent { + color: var(--color-text-aside); + } + #tsd-search-results > li > a mark { + color: inherit; + background-color: inherit; + font-weight: bold; + } + #tsd-search-status { + flex: 1; + display: grid; + place-content: center; + text-align: center; + overflow-wrap: anywhere; + } + #tsd-search-status:not(:empty) { + min-height: 6rem; } - .to-has-menu .overlay { - animation: fade-in 0.4s; + .tsd-signature { + margin: 0 0 1rem 0; + padding: 1rem 0.5rem; + border: 1px solid var(--color-accent); + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + font-size: 14px; + overflow-x: auto; } - .to-has-menu .col-sidebar { - animation: pop-in-from-right 0.4s; + .tsd-signature-keyword { + color: var(--color-ts-keyword); + font-weight: normal; } - .from-has-menu .overlay { - animation: fade-out 0.4s; + .tsd-signature-symbol { + color: var(--color-text-aside); + font-weight: normal; } - .from-has-menu .col-sidebar { - animation: pop-out-to-right 0.4s; + .tsd-signature-type { + font-style: italic; + font-weight: normal; } - .has-menu body { - overflow: hidden; + .tsd-signatures { + padding: 0; + margin: 0 0 1em 0; + list-style-type: none; } - .has-menu .overlay { - visibility: visible; + .tsd-signatures .tsd-signature { + margin: 0; + border-color: var(--color-accent); + border-width: 1px 0; + transition: background-color 0.1s; } - .has-menu .col-sidebar { - visibility: visible; - transform: translate(0, 0); + .tsd-signatures .tsd-index-signature:not(:last-child) { + margin-bottom: 1em; + } + .tsd-signatures .tsd-index-signature .tsd-signature { + border-width: 1px; + } + .tsd-description .tsd-signatures .tsd-signature { + border-width: 1px; + } + + ul.tsd-parameter-list, + ul.tsd-type-parameter-list { + list-style: square; + margin: 0; + padding-left: 20px; + } + ul.tsd-parameter-list > li.tsd-parameter-signature, + ul.tsd-type-parameter-list > li.tsd-parameter-signature { + list-style: none; + margin-left: -20px; + } + ul.tsd-parameter-list h5, + ul.tsd-type-parameter-list h5 { + font-size: 16px; + margin: 1em 0 0.5em 0; + } + .tsd-sources { + margin-top: 1rem; + font-size: 0.875em; + } + .tsd-sources a { + color: var(--color-text-aside); + text-decoration: underline; + } + .tsd-sources ul { + list-style: none; + padding: 0; + } + + .tsd-page-toolbar { + position: sticky; + z-index: 1; + top: 0; + left: 0; + width: 100%; + color: var(--color-text); + background: var(--color-background-secondary); + border-bottom: var(--dim-toolbar-border-bottom-width) + var(--color-accent) solid; + transition: transform 0.3s ease-in-out; + } + .tsd-page-toolbar a { + color: var(--color-text); + } + .tsd-toolbar-contents { display: flex; - flex-direction: column; + align-items: center; + height: var(--dim-toolbar-contents-height); + margin: 0 auto; + } + .tsd-toolbar-contents > .title { + font-weight: bold; + margin-right: auto; + } + #tsd-toolbar-links { + display: flex; + align-items: center; gap: 1.5rem; - max-height: 100vh; - padding: 1rem 2rem; + margin-right: 1rem; } - .has-menu .tsd-navigation { - max-height: 100%; + + .tsd-widget { + box-sizing: border-box; + display: inline-block; + opacity: 0.8; + height: 2.5rem; + width: 2.5rem; + transition: opacity 0.1s, background-color 0.1s; + text-align: center; + cursor: pointer; + border: none; + background-color: transparent; + } + .tsd-widget:hover { + opacity: 0.9; + } + .tsd-widget:active { + opacity: 1; + background-color: var(--color-accent); + } + #tsd-toolbar-menu-trigger { + display: none; } -} -/* one sidebar */ -@media (min-width: 770px) { - .container-main { - display: grid; - grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); - grid-template-areas: "sidebar content"; - margin: 2rem auto; + .tsd-member-summary-name { + display: inline-flex; + align-items: center; + padding: 0.25rem; + text-decoration: none; } - .col-sidebar { - grid-area: sidebar; + .tsd-anchor-icon { + display: inline-flex; + align-items: center; + margin-left: 0.5rem; + color: var(--color-text); + vertical-align: middle; } - .col-content { - grid-area: content; - padding: 0 1rem; + + .tsd-anchor-icon svg { + width: 1em; + height: 1em; + visibility: hidden; } -} -@media (min-width: 770px) and (max-width: 1399px) { - .col-sidebar { - max-height: calc(100vh - 2rem - 42px); - overflow: auto; - position: sticky; - top: 42px; - padding-top: 1rem; + + .tsd-member-summary-name:hover > .tsd-anchor-icon svg, + .tsd-anchor-link:hover > .tsd-anchor-icon svg, + .tsd-anchor-icon:focus-visible svg { + visibility: visible; } - .site-menu { - margin-top: 1rem; + + .deprecated { + text-decoration: line-through !important; } -} -/* two sidebars */ -@media (min-width: 1200px) { - .container-main { - grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem); - grid-template-areas: "sidebar content toc"; + .warning { + padding: 1rem; + color: var(--color-warning-text); + background: var(--color-background-warning); } - .col-sidebar { - display: contents; + .tsd-kind-project { + color: var(--color-ts-project); + } + .tsd-kind-module { + color: var(--color-ts-module); + } + .tsd-kind-namespace { + color: var(--color-ts-namespace); + } + .tsd-kind-enum { + color: var(--color-ts-enum); + } + .tsd-kind-enum-member { + color: var(--color-ts-enum-member); + } + .tsd-kind-variable { + color: var(--color-ts-variable); + } + .tsd-kind-function { + color: var(--color-ts-function); + } + .tsd-kind-class { + color: var(--color-ts-class); + } + .tsd-kind-interface { + color: var(--color-ts-interface); + } + .tsd-kind-constructor { + color: var(--color-ts-constructor); + } + .tsd-kind-property { + color: var(--color-ts-property); + } + .tsd-kind-method { + color: var(--color-ts-method); + } + .tsd-kind-reference { + color: var(--color-ts-reference); + } + .tsd-kind-call-signature { + color: var(--color-ts-call-signature); + } + .tsd-kind-index-signature { + color: var(--color-ts-index-signature); + } + .tsd-kind-constructor-signature { + color: var(--color-ts-constructor-signature); + } + .tsd-kind-parameter { + color: var(--color-ts-parameter); + } + .tsd-kind-type-parameter { + color: var(--color-ts-type-parameter); + } + .tsd-kind-accessor { + color: var(--color-ts-accessor); + } + .tsd-kind-get-signature { + color: var(--color-ts-get-signature); + } + .tsd-kind-set-signature { + color: var(--color-ts-set-signature); + } + .tsd-kind-type-alias { + color: var(--color-ts-type-alias); } - .page-menu { - grid-area: toc; - padding-left: 1rem; + /* if we have a kind icon, don't color the text by kind */ + .tsd-kind-icon ~ span { + color: var(--color-text); } - .site-menu { - grid-area: sidebar; + + /* mobile */ + @media (max-width: 769px) { + #tsd-toolbar-menu-trigger { + display: inline-block; + /* temporary fix to vertically align, for compatibility */ + line-height: 2.5; + } + #tsd-toolbar-links { + display: none; + } + + .container-main { + display: flex; + } + .col-content { + float: none; + max-width: 100%; + width: 100%; + } + .col-sidebar { + position: fixed !important; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + z-index: 1024; + top: 0 !important; + bottom: 0 !important; + left: auto !important; + right: 0 !important; + padding: 1.5rem 1.5rem 0 0; + width: 75vw; + visibility: hidden; + background-color: var(--color-background); + transform: translate(100%, 0); + } + .col-sidebar > *:last-child { + padding-bottom: 20px; + } + .overlay { + content: ""; + display: block; + position: fixed; + z-index: 1023; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.75); + visibility: hidden; + } + + .to-has-menu .overlay { + animation: fade-in 0.4s; + } + + .to-has-menu .col-sidebar { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu .col-sidebar { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu .col-sidebar { + visibility: visible; + transform: translate(0, 0); + display: flex; + flex-direction: column; + gap: 1.5rem; + max-height: 100vh; + padding: 1rem 2rem; + } + .has-menu .tsd-navigation { + max-height: 100%; + } + .tsd-navigation .tsd-nav-link { + display: flex; + } } - .site-menu { - margin-top: 1rem 0; + /* one sidebar */ + @media (min-width: 770px) { + .container-main { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); + grid-template-areas: "sidebar content"; + --dim-container-main-margin-y: 2rem; + } + + .tsd-breadcrumb { + margin-top: 0; + } + + .col-sidebar { + grid-area: sidebar; + } + .col-content { + grid-area: content; + padding: 0 1rem; + } + } + @media (min-width: 770px) and (max-width: 1399px) { + .col-sidebar { + max-height: calc( + 100vh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + overflow: auto; + position: sticky; + top: calc( + var(--dim-header-height) + var(--dim-container-main-margin-y) + ); + } + .site-menu { + margin-top: 1rem; + } } - .page-menu, - .site-menu { - max-height: calc(100vh - 2rem - 42px); - overflow: auto; - position: sticky; - top: 42px; + /* two sidebars */ + @media (min-width: 1200px) { + .container-main { + grid-template-columns: + minmax(0, 1fr) minmax(0, 2.5fr) minmax( + 0, + 20rem + ); + grid-template-areas: "sidebar content toc"; + } + + .col-sidebar { + display: contents; + } + + .page-menu { + grid-area: toc; + padding-left: 1rem; + } + .site-menu { + grid-area: sidebar; + } + + .site-menu { + margin-top: 0rem; + } + + .page-menu, + .site-menu { + max-height: calc( + 100vh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + overflow: auto; + position: sticky; + top: calc( + var(--dim-header-height) + var(--dim-container-main-margin-y) + ); + } } } diff --git a/docs/functions/asum.html b/docs/functions/asum.html deleted file mode 100644 index ad27b93..0000000 --- a/docs/functions/asum.html +++ /dev/null @@ -1,203 +0,0 @@ -asum | nblas
-
- -
-
-
-
- -

Function asum

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/axpy.html b/docs/functions/axpy.html deleted file mode 100644 index 261398f..0000000 --- a/docs/functions/axpy.html +++ /dev/null @@ -1,207 +0,0 @@ -axpy | nblas
-
- -
-
-
-
- -

Function axpy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional a: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/caxpy.html b/docs/functions/caxpy.html deleted file mode 100644 index bb2db5d..0000000 --- a/docs/functions/caxpy.html +++ /dev/null @@ -1,213 +0,0 @@ -caxpy | nblas
-
- -
-
-
-
- -

Function caxpy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ccopy.html b/docs/functions/ccopy.html deleted file mode 100644 index 1938038..0000000 --- a/docs/functions/ccopy.html +++ /dev/null @@ -1,211 +0,0 @@ -ccopy | nblas
-
- -
-
-
-
- -

Function ccopy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/cgbmv.html b/docs/functions/cgbmv.html deleted file mode 100644 index b16c50c..0000000 --- a/docs/functions/cgbmv.html +++ /dev/null @@ -1,227 +0,0 @@ -cgbmv | nblas
-
- -
-
-
-
- -

Function cgbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      kl: number
    • -
    • -
      ku: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/cgemm.html b/docs/functions/cgemm.html deleted file mode 100644 index 3846789..0000000 --- a/docs/functions/cgemm.html +++ /dev/null @@ -1,227 +0,0 @@ -cgemm | nblas
-
- -
-
-
-
- -

Function cgemm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      transa: MatrixTrans
    • -
    • -
      transb: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/cgemv.html b/docs/functions/cgemv.html deleted file mode 100644 index f3e71ad..0000000 --- a/docs/functions/cgemv.html +++ /dev/null @@ -1,223 +0,0 @@ -cgemv | nblas
-
- -
-
-
-
- -

Function cgemv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/copy.html b/docs/functions/copy.html deleted file mode 100644 index a48babe..0000000 --- a/docs/functions/copy.html +++ /dev/null @@ -1,205 +0,0 @@ -copy | nblas
-
- -
-
-
-
- -

Function copy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/cscal.html b/docs/functions/cscal.html deleted file mode 100644 index b34c76b..0000000 --- a/docs/functions/cscal.html +++ /dev/null @@ -1,209 +0,0 @@ -cscal | nblas
-
- -
-
-
-
- -

Function cscal

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      a: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/cswap.html b/docs/functions/cswap.html deleted file mode 100644 index c41fca4..0000000 --- a/docs/functions/cswap.html +++ /dev/null @@ -1,211 +0,0 @@ -cswap | nblas
-
- -
-
-
-
- -

Function cswap

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/csymm.html b/docs/functions/csymm.html deleted file mode 100644 index cf871d0..0000000 --- a/docs/functions/csymm.html +++ /dev/null @@ -1,225 +0,0 @@ -csymm | nblas
-
- -
-
-
-
- -

Function csymm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/csyr2k.html b/docs/functions/csyr2k.html deleted file mode 100644 index 1b081bb..0000000 --- a/docs/functions/csyr2k.html +++ /dev/null @@ -1,225 +0,0 @@ -csyr2k | nblas
-
- -
-
-
-
- -

Function csyr2k

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/csyrk.html b/docs/functions/csyrk.html deleted file mode 100644 index 752884b..0000000 --- a/docs/functions/csyrk.html +++ /dev/null @@ -1,221 +0,0 @@ -csyrk | nblas
-
- -
-
-
-
- -

Function csyrk

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      beta: Float32Array
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctbmv.html b/docs/functions/ctbmv.html deleted file mode 100644 index 3747075..0000000 --- a/docs/functions/ctbmv.html +++ /dev/null @@ -1,219 +0,0 @@ -ctbmv | nblas
-
- -
-
-
-
- -

Function ctbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctbsv.html b/docs/functions/ctbsv.html deleted file mode 100644 index 254a0fc..0000000 --- a/docs/functions/ctbsv.html +++ /dev/null @@ -1,219 +0,0 @@ -ctbsv | nblas
-
- -
-
-
-
- -

Function ctbsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctpmv.html b/docs/functions/ctpmv.html deleted file mode 100644 index c859c8b..0000000 --- a/docs/functions/ctpmv.html +++ /dev/null @@ -1,215 +0,0 @@ -ctpmv | nblas
-
- -
-
-
-
- -

Function ctpmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctpsv.html b/docs/functions/ctpsv.html deleted file mode 100644 index 352045c..0000000 --- a/docs/functions/ctpsv.html +++ /dev/null @@ -1,215 +0,0 @@ -ctpsv | nblas
-
- -
-
-
-
- -

Function ctpsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctrmm.html b/docs/functions/ctrmm.html deleted file mode 100644 index 0503918..0000000 --- a/docs/functions/ctrmm.html +++ /dev/null @@ -1,223 +0,0 @@ -ctrmm | nblas
-
- -
-
-
-
- -

Function ctrmm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctrmv.html b/docs/functions/ctrmv.html deleted file mode 100644 index d4e536e..0000000 --- a/docs/functions/ctrmv.html +++ /dev/null @@ -1,217 +0,0 @@ -ctrmv | nblas
-
- -
-
-
-
- -

Function ctrmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctrsm.html b/docs/functions/ctrsm.html deleted file mode 100644 index b02332e..0000000 --- a/docs/functions/ctrsm.html +++ /dev/null @@ -1,223 +0,0 @@ -ctrsm | nblas
-
- -
-
-
-
- -

Function ctrsm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float32Array
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ctrsv.html b/docs/functions/ctrsv.html deleted file mode 100644 index d8a4710..0000000 --- a/docs/functions/ctrsv.html +++ /dev/null @@ -1,217 +0,0 @@ -ctrsv | nblas
-
- -
-
-
-
- -

Function ctrsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dasum.html b/docs/functions/dasum.html deleted file mode 100644 index 6036b37..0000000 --- a/docs/functions/dasum.html +++ /dev/null @@ -1,210 +0,0 @@ -dasum | nblas
-
- -
-
-
-
- -

Function dasum

-
-
    - -
  • -

    sum of the magnitudes of elements of a real vector -res = \sum_i=0^n{|x_i|}

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/daxpy.html b/docs/functions/daxpy.html deleted file mode 100644 index 92a248e..0000000 --- a/docs/functions/daxpy.html +++ /dev/null @@ -1,216 +0,0 @@ -daxpy | nblas
-
- -
-
-
-
- -

Function daxpy

-
-
    - -
  • -

    vector-vector operation defined as -y := a * x + y

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dcopy.html b/docs/functions/dcopy.html deleted file mode 100644 index 197fa7a..0000000 --- a/docs/functions/dcopy.html +++ /dev/null @@ -1,214 +0,0 @@ -dcopy | nblas
-
- -
-
-
-
- -

Function dcopy

-
-
    - -
  • -

    vector-vector operation defined as -y = x

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ddot.html b/docs/functions/ddot.html deleted file mode 100644 index c1b0400..0000000 --- a/docs/functions/ddot.html +++ /dev/null @@ -1,214 +0,0 @@ -ddot | nblas
-
- -
-
-
-
- -

Function ddot

-
-
    - -
  • -

    vector-vector reduction operation defined as -res = \sum_i=0^n{x_i * y_i}

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dgbmv.html b/docs/functions/dgbmv.html deleted file mode 100644 index 16c238b..0000000 --- a/docs/functions/dgbmv.html +++ /dev/null @@ -1,233 +0,0 @@ -dgbmv | nblas
-
- -
-
-
-
- -

Function dgbmv

-
-
    - -
  • -

    matrix-vector operation defined as -y := alpha * A * x + beta * y -or -y := alpha * A' * x + beta * y -where A is a general band matrix with kl sub-diagonals and ku super-diagonals

    -
    -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      kl: number
    • -
    • -
      ku: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dgemm.html b/docs/functions/dgemm.html deleted file mode 100644 index 6986d0a..0000000 --- a/docs/functions/dgemm.html +++ /dev/null @@ -1,230 +0,0 @@ -dgemm | nblas
-
- -
-
-
-
- -

Function dgemm

-
-
    - -
  • -

    computes a scalar-matrix-matrix product and adds the result to a scalar-matrix product defined as -C := alpha * op(A) * op(B) + beta * C

    -
    -
    -

    Parameters

    -
      -
    • -
      transa: MatrixTrans
    • -
    • -
      transb: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dgemv.html b/docs/functions/dgemv.html deleted file mode 100644 index 2c6584e..0000000 --- a/docs/functions/dgemv.html +++ /dev/null @@ -1,229 +0,0 @@ -dgemv | nblas
-
- -
-
-
-
- -

Function dgemv

-
-
    - -
  • -

    matrix-vector operation defined as -y := alpha * A * x + beta * y -or -y := alpha * A' * x + beta * y -where A is a general matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dger.html b/docs/functions/dger.html deleted file mode 100644 index b0a5ea9..0000000 --- a/docs/functions/dger.html +++ /dev/null @@ -1,223 +0,0 @@ -dger | nblas
-
- -
-
-
-
- -

Function dger

-
-
    - -
  • -

    matrix-vector operation defined as -A := alpha * x * y' + A -where A is a general matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dnrm2.html b/docs/functions/dnrm2.html deleted file mode 100644 index b0146a0..0000000 --- a/docs/functions/dnrm2.html +++ /dev/null @@ -1,210 +0,0 @@ -dnrm2 | nblas
-
- -
-
-
-
- -

Function dnrm2

-
-
    - -
  • -

    vector reduction operation defined as -res = ||x||

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dot.html b/docs/functions/dot.html deleted file mode 100644 index e0560cb..0000000 --- a/docs/functions/dot.html +++ /dev/null @@ -1,205 +0,0 @@ -dot | nblas
-
- -
-
-
-
- -

Function dot

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/drot.html b/docs/functions/drot.html deleted file mode 100644 index 7e78c95..0000000 --- a/docs/functions/drot.html +++ /dev/null @@ -1,217 +0,0 @@ -drot | nblas
-
- -
-
-
-
- -

Function drot

-
-
    - -
  • -

    rotation of points in the plane

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    • -
    • -
      c: number
    • -
    • -
      s: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/drotg.html b/docs/functions/drotg.html deleted file mode 100644 index de08d1a..0000000 --- a/docs/functions/drotg.html +++ /dev/null @@ -1,211 +0,0 @@ -drotg | nblas
-
- -
-
-
-
- -

Function drotg

-
-
    - -
  • -

    computes the parameters for a Givens rotation

    -
    -
    -

    Parameters

    -
      -
    • -
      a: Float64Array
    • -
    • -
      b: Float64Array
    • -
    • -
      c: Float64Array
    • -
    • -
      s: Float64Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/drotm.html b/docs/functions/drotm.html deleted file mode 100644 index 1482c8c..0000000 --- a/docs/functions/drotm.html +++ /dev/null @@ -1,213 +0,0 @@ -drotm | nblas
-
- -
-
-
-
- -

Function drotm

-
-
    - -
  • -

    performs modified Givens rotation of points in the plane

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/drotmg.html b/docs/functions/drotmg.html deleted file mode 100644 index 13de312..0000000 --- a/docs/functions/drotmg.html +++ /dev/null @@ -1,213 +0,0 @@ -drotmg | nblas
-
- -
-
-
-
- -

Function drotmg

-
-
    - -
  • -

    computes the parameters for a modified Givens rotation.

    -
    -
    -

    Parameters

    -
      -
    • -
      d1: Float64Array
    • -
    • -
      d2: Float64Array
    • -
    • -
      x1: Float64Array
    • -
    • -
      y1: Float64Array
    • -
    • -
      param: Float64Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsbmv.html b/docs/functions/dsbmv.html deleted file mode 100644 index 1b062e6..0000000 --- a/docs/functions/dsbmv.html +++ /dev/null @@ -1,227 +0,0 @@ -dsbmv | nblas
-
- -
-
-
-
- -

Function dsbmv

-
-
    - -
  • -

    matrix-vector operation defined as -y := alpha * A * x + beta * y -where A is a symmetric band matrix with k super-diagonals

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dscal.html b/docs/functions/dscal.html deleted file mode 100644 index 680aa23..0000000 --- a/docs/functions/dscal.html +++ /dev/null @@ -1,212 +0,0 @@ -dscal | nblas
-
- -
-
-
-
- -

Function dscal

-
-
    - -
  • -

    vector operation defined as -x = a * x

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      a: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dspmv.html b/docs/functions/dspmv.html deleted file mode 100644 index e04a852..0000000 --- a/docs/functions/dspmv.html +++ /dev/null @@ -1,225 +0,0 @@ -dspmv | nblas
-
- -
-
-
-
- -

Function dspmv

-
-
    - -
  • -

    matrix-vector operation defined as -y := alpha * A * x + beta * y -or -y := alpha * A' * x + beta * y -where A is a symmetric matrix, supplied in packed form

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      ap: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dspr.html b/docs/functions/dspr.html deleted file mode 100644 index 6dd74bb..0000000 --- a/docs/functions/dspr.html +++ /dev/null @@ -1,217 +0,0 @@ -dspr | nblas
-
- -
-
-
-
- -

Function dspr

-
-
    - -
  • -

    matrix-vector operation defined as -A := alpha * x * x' + A -where A is a symmetric matrix, supplied in packed form

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      ap: Float64Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dspr2.html b/docs/functions/dspr2.html deleted file mode 100644 index 3c38766..0000000 --- a/docs/functions/dspr2.html +++ /dev/null @@ -1,221 +0,0 @@ -dspr2 | nblas
-
- -
-
-
-
- -

Function dspr2

-
-
    - -
  • -

    matrix-vector operation defined as -A := alpha * x * y' + alpha * y * x' + A -where A is a symmetric matrix, supplied in packed form

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    • -
    • -
      ap: Float64Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dswap.html b/docs/functions/dswap.html deleted file mode 100644 index c83cb79..0000000 --- a/docs/functions/dswap.html +++ /dev/null @@ -1,213 +0,0 @@ -dswap | nblas
-
- -
-
-
-
- -

Function dswap

-
-
    - -
  • -

    given two vectors x and y, the vectors y and x swapped, each replacing the other.

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsymm.html b/docs/functions/dsymm.html deleted file mode 100644 index bd3645b..0000000 --- a/docs/functions/dsymm.html +++ /dev/null @@ -1,232 +0,0 @@ -dsymm | nblas
-
- -
-
-
-
- -

Function dsymm

-
-
    - -
  • -

    computes a scalar-matrix-matrix product with one symmetric matrix and -adds the result to a scalar-matrix product defined as -C := alpha * A * B + beta * C -or -C := alpha * B * A + beta * C -where A is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsymv.html b/docs/functions/dsymv.html deleted file mode 100644 index 633f6d6..0000000 --- a/docs/functions/dsymv.html +++ /dev/null @@ -1,225 +0,0 @@ -dsymv | nblas
-
- -
-
-
-
- -

Function dsymv

-
-
    - -
  • -

    matrix-vector operation defined as -y := alpha * A * x + beta * y -where A is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsyr.html b/docs/functions/dsyr.html deleted file mode 100644 index 803e3f5..0000000 --- a/docs/functions/dsyr.html +++ /dev/null @@ -1,219 +0,0 @@ -dsyr | nblas
-
- -
-
-
-
- -

Function dsyr

-
-
    - -
  • -

    matrix-vector operation defined as -A := alpha * x * x' + A -where A is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsyr2.html b/docs/functions/dsyr2.html deleted file mode 100644 index 5cfd57d..0000000 --- a/docs/functions/dsyr2.html +++ /dev/null @@ -1,223 +0,0 @@ -dsyr2 | nblas
-
- -
-
-
-
- -

Function dsyr2

-
-
    - -
  • -

    matrix-vector operation defined as -A := alpha * x * y' + alpha * y * x' + A -where A is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsyr2k.html b/docs/functions/dsyr2k.html deleted file mode 100644 index 6b916e9..0000000 --- a/docs/functions/dsyr2k.html +++ /dev/null @@ -1,231 +0,0 @@ -dsyr2k | nblas
-
- -
-
-
-
- -

Function dsyr2k

-
-
    - -
  • -

    perform a rank-2k matrix-matrix operation for a symmetric matrix C using general matrices A and B defined as -C := alpha * A * B' + alpha * B * A' + beta * C -or -C := alpha * A' * B + alpha * B' * A + beta * C -where C is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dsyrk.html b/docs/functions/dsyrk.html deleted file mode 100644 index 6c3d6d4..0000000 --- a/docs/functions/dsyrk.html +++ /dev/null @@ -1,227 +0,0 @@ -dsyrk | nblas
-
- -
-
-
-
- -

Function dsyrk

-
-
    - -
  • -

    performs a rank-k matrix-matrix operation for a symmetric matrix C using a general matrix A defined as -C := alpha * A * A' + beta * C -or -C := alpha * A' * A + beta * C -where C is a symmetric matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtbmv.html b/docs/functions/dtbmv.html deleted file mode 100644 index e23b596..0000000 --- a/docs/functions/dtbmv.html +++ /dev/null @@ -1,225 +0,0 @@ -dtbmv | nblas
-
- -
-
-
-
- -

Function dtbmv

-
-
    - -
  • -

    matrix-vector operation defined as -x := A * x -or -x := A' * x -where A is a unit or non-unit upper or lower triangular band matrix, with k + 1 diagonals

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtbsv.html b/docs/functions/dtbsv.html deleted file mode 100644 index 1b8c3c9..0000000 --- a/docs/functions/dtbsv.html +++ /dev/null @@ -1,225 +0,0 @@ -dtbsv | nblas
-
- -
-
-
-
- -

Function dtbsv

-
-
    - -
  • -

    solves one of the following systems of equations -A * x = b -or -A' * x = b -where A is a unit or non-unit upper or lower triangular band matrix, with k + 1 diagonals

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtpmv.html b/docs/functions/dtpmv.html deleted file mode 100644 index 0cc6bde..0000000 --- a/docs/functions/dtpmv.html +++ /dev/null @@ -1,221 +0,0 @@ -dtpmv | nblas
-
- -
-
-
-
- -

Function dtpmv

-
-
    - -
  • -

    matrix-vector operation defined as -x := A * x -or -x := A' * x -where A is a unit or non-unit upper or lower triangular matrix, supplied in packed form

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtpsv.html b/docs/functions/dtpsv.html deleted file mode 100644 index 7173784..0000000 --- a/docs/functions/dtpsv.html +++ /dev/null @@ -1,221 +0,0 @@ -dtpsv | nblas
-
- -
-
-
-
- -

Function dtpsv

-
-
    - -
  • -

    solves one of the following systems of equations -A * x = b -or -A' * x = b -where A is a unit or non-unit upper or lower triangular matrix, supplied in packed form

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtrmm.html b/docs/functions/dtrmm.html deleted file mode 100644 index f343dd5..0000000 --- a/docs/functions/dtrmm.html +++ /dev/null @@ -1,229 +0,0 @@ -dtrmm | nblas
-
- -
-
-
-
- -

Function dtrmm

-
-
    - -
  • -

    computes a scalar-matrix-matrix product with one triangular matrix defined as -B := alpha * op(A) * B -or -B := alpha * B * op(A) -where A is a unit or non-unit upper or lower triangular matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtrmv.html b/docs/functions/dtrmv.html deleted file mode 100644 index 22f398b..0000000 --- a/docs/functions/dtrmv.html +++ /dev/null @@ -1,223 +0,0 @@ -dtrmv | nblas
-
- -
-
-
-
- -

Function dtrmv

-
-
    - -
  • -

    matrix-vector operation defined as -x := A * x -or -x := A' * x -where A is a unit or non-unit upper or lower triangular matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtrsm.html b/docs/functions/dtrsm.html deleted file mode 100644 index 077bd58..0000000 --- a/docs/functions/dtrsm.html +++ /dev/null @@ -1,229 +0,0 @@ -dtrsm | nblas
-
- -
-
-
-
- -

Function dtrsm

-
-
    - -
  • -

    solves one of the following matrix equations -op(A) * X = alpha * B -or -X * op(A) = alpha * B -where A is a unit or non-unit upper or lower triangular matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dtrsv.html b/docs/functions/dtrsv.html deleted file mode 100644 index 6fa88a0..0000000 --- a/docs/functions/dtrsv.html +++ /dev/null @@ -1,223 +0,0 @@ -dtrsv | nblas
-
- -
-
-
-
- -

Function dtrsv

-
-
    - -
  • -

    solves one of the following systems of equations -A * x = b -or -A' * x = b -where A is a unit or non-unit upper or lower triangular matrix

    -
    -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dzasum.html b/docs/functions/dzasum.html deleted file mode 100644 index 6769462..0000000 --- a/docs/functions/dzasum.html +++ /dev/null @@ -1,207 +0,0 @@ -dzasum | nblas
-
- -
-
-
-
- -

Function dzasum

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/dznrm2.html b/docs/functions/dznrm2.html deleted file mode 100644 index 42c8890..0000000 --- a/docs/functions/dznrm2.html +++ /dev/null @@ -1,207 +0,0 @@ -dznrm2 | nblas
-
- -
-
-
-
- -

Function dznrm2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/gbmv.html b/docs/functions/gbmv.html deleted file mode 100644 index e9a2435..0000000 --- a/docs/functions/gbmv.html +++ /dev/null @@ -1,217 +0,0 @@ -gbmv | nblas
-
- -
-
-
-
- -

Function gbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional kl: number
    • -
    • -
      Optional ku: number
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    • -
    • -
      Optional trans: MatrixTrans
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/gemm.html b/docs/functions/gemm.html deleted file mode 100644 index 4b46eef..0000000 --- a/docs/functions/gemm.html +++ /dev/null @@ -1,221 +0,0 @@ -gemm | nblas
-
- -
-
-
-
- -

Function gemm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      c: FloatArray
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      Optional transa: MatrixTrans
    • -
    • -
      Optional transb: MatrixTrans
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/gemv.html b/docs/functions/gemv.html deleted file mode 100644 index fb3b003..0000000 --- a/docs/functions/gemv.html +++ /dev/null @@ -1,213 +0,0 @@ -gemv | nblas
-
- -
-
-
-
- -

Function gemv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    • -
    • -
      Optional trans: MatrixTrans
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ger.html b/docs/functions/ger.html deleted file mode 100644 index a756dd0..0000000 --- a/docs/functions/ger.html +++ /dev/null @@ -1,209 +0,0 @@ -ger | nblas
-
- -
-
-
-
- -

Function ger

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/iamax.html b/docs/functions/iamax.html deleted file mode 100644 index b267f5c..0000000 --- a/docs/functions/iamax.html +++ /dev/null @@ -1,203 +0,0 @@ -iamax | nblas
-
- -
-
-
-
- -

Function iamax

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/icamax.html b/docs/functions/icamax.html deleted file mode 100644 index 90e3922..0000000 --- a/docs/functions/icamax.html +++ /dev/null @@ -1,207 +0,0 @@ -icamax | nblas
-
- -
-
-
-
- -

Function icamax

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/idamax.html b/docs/functions/idamax.html deleted file mode 100644 index c4f916e..0000000 --- a/docs/functions/idamax.html +++ /dev/null @@ -1,209 +0,0 @@ -idamax | nblas
-
- -
-
-
-
- -

Function idamax

-
-
    - -
  • -

    finds the index of the element with maximum absolute value.

    -
    -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/isamax.html b/docs/functions/isamax.html deleted file mode 100644 index 55adef2..0000000 --- a/docs/functions/isamax.html +++ /dev/null @@ -1,207 +0,0 @@ -isamax | nblas
-
- -
-
-
-
- -

Function isamax

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/izamax.html b/docs/functions/izamax.html deleted file mode 100644 index f7d8e23..0000000 --- a/docs/functions/izamax.html +++ /dev/null @@ -1,207 +0,0 @@ -izamax | nblas
-
- -
-
-
-
- -

Function izamax

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/nrm2.html b/docs/functions/nrm2.html deleted file mode 100644 index 46d81f1..0000000 --- a/docs/functions/nrm2.html +++ /dev/null @@ -1,203 +0,0 @@ -nrm2 | nblas
-
- -
-
-
-
- -

Function nrm2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/rot.html b/docs/functions/rot.html deleted file mode 100644 index 4cb09f6..0000000 --- a/docs/functions/rot.html +++ /dev/null @@ -1,209 +0,0 @@ -rot | nblas
-
- -
-
-
-
- -

Function rot

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      c: number
    • -
    • -
      s: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/rotg.html b/docs/functions/rotg.html deleted file mode 100644 index cbd5a6c..0000000 --- a/docs/functions/rotg.html +++ /dev/null @@ -1,209 +0,0 @@ -rotg | nblas
-
- -
-
-
-
- -

Function rotg

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      c: FloatArray
    • -
    • -
      s: FloatArray
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/rotm.html b/docs/functions/rotm.html deleted file mode 100644 index 8528a2b..0000000 --- a/docs/functions/rotm.html +++ /dev/null @@ -1,207 +0,0 @@ -rotm | nblas
-
- -
-
-
-
- -

Function rotm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      param: FloatArray
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/rotmg.html b/docs/functions/rotmg.html deleted file mode 100644 index 4349bfe..0000000 --- a/docs/functions/rotmg.html +++ /dev/null @@ -1,211 +0,0 @@ -rotmg | nblas
-
- -
-
-
-
- -

Function rotmg

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      d1: FloatArray
    • -
    • -
      d2: FloatArray
    • -
    • -
      x1: FloatArray
    • -
    • -
      y1: FloatArray
    • -
    • -
      param: FloatArray
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sasum.html b/docs/functions/sasum.html deleted file mode 100644 index dcb072f..0000000 --- a/docs/functions/sasum.html +++ /dev/null @@ -1,207 +0,0 @@ -sasum | nblas
-
- -
-
-
-
- -

Function sasum

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/saxpy.html b/docs/functions/saxpy.html deleted file mode 100644 index d122476..0000000 --- a/docs/functions/saxpy.html +++ /dev/null @@ -1,213 +0,0 @@ -saxpy | nblas
-
- -
-
-
-
- -

Function saxpy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sbmv.html b/docs/functions/sbmv.html deleted file mode 100644 index 2c2bc0f..0000000 --- a/docs/functions/sbmv.html +++ /dev/null @@ -1,215 +0,0 @@ -sbmv | nblas
-
- -
-
-
-
- -

Function sbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional k: number
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/scal.html b/docs/functions/scal.html deleted file mode 100644 index 40dc23f..0000000 --- a/docs/functions/scal.html +++ /dev/null @@ -1,205 +0,0 @@ -scal | nblas
-
- -
-
-
-
- -

Function scal

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      a: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/scasum.html b/docs/functions/scasum.html deleted file mode 100644 index 5757919..0000000 --- a/docs/functions/scasum.html +++ /dev/null @@ -1,207 +0,0 @@ -scasum | nblas
-
- -
-
-
-
- -

Function scasum

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/scnrm2.html b/docs/functions/scnrm2.html deleted file mode 100644 index 92c32e7..0000000 --- a/docs/functions/scnrm2.html +++ /dev/null @@ -1,207 +0,0 @@ -scnrm2 | nblas
-
- -
-
-
-
- -

Function scnrm2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/scopy.html b/docs/functions/scopy.html deleted file mode 100644 index 71efe18..0000000 --- a/docs/functions/scopy.html +++ /dev/null @@ -1,211 +0,0 @@ -scopy | nblas
-
- -
-
-
-
- -

Function scopy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sdot.html b/docs/functions/sdot.html deleted file mode 100644 index 8117430..0000000 --- a/docs/functions/sdot.html +++ /dev/null @@ -1,211 +0,0 @@ -sdot | nblas
-
- -
-
-
-
- -

Function sdot

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sgbmv.html b/docs/functions/sgbmv.html deleted file mode 100644 index 7275887..0000000 --- a/docs/functions/sgbmv.html +++ /dev/null @@ -1,227 +0,0 @@ -sgbmv | nblas
-
- -
-
-
-
- -

Function sgbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      kl: number
    • -
    • -
      ku: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sgemm.html b/docs/functions/sgemm.html deleted file mode 100644 index 16b8f9e..0000000 --- a/docs/functions/sgemm.html +++ /dev/null @@ -1,227 +0,0 @@ -sgemm | nblas
-
- -
-
-
-
- -

Function sgemm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      transa: MatrixTrans
    • -
    • -
      transb: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sgemv.html b/docs/functions/sgemv.html deleted file mode 100644 index feaeb93..0000000 --- a/docs/functions/sgemv.html +++ /dev/null @@ -1,223 +0,0 @@ -sgemv | nblas
-
- -
-
-
-
- -

Function sgemv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sger.html b/docs/functions/sger.html deleted file mode 100644 index 1365f0a..0000000 --- a/docs/functions/sger.html +++ /dev/null @@ -1,219 +0,0 @@ -sger | nblas
-
- -
-
-
-
- -

Function sger

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/snrm2.html b/docs/functions/snrm2.html deleted file mode 100644 index 305d1af..0000000 --- a/docs/functions/snrm2.html +++ /dev/null @@ -1,207 +0,0 @@ -snrm2 | nblas
-
- -
-
-
-
- -

Function snrm2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns number

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/spmv.html b/docs/functions/spmv.html deleted file mode 100644 index d334508..0000000 --- a/docs/functions/spmv.html +++ /dev/null @@ -1,213 +0,0 @@ -spmv | nblas
-
- -
-
-
-
- -

Function spmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      ap: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/spr.html b/docs/functions/spr.html deleted file mode 100644 index 5f1d478..0000000 --- a/docs/functions/spr.html +++ /dev/null @@ -1,209 +0,0 @@ -spr | nblas
-
- -
-
-
-
- -

Function spr

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      ap: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/spr2.html b/docs/functions/spr2.html deleted file mode 100644 index befe83a..0000000 --- a/docs/functions/spr2.html +++ /dev/null @@ -1,211 +0,0 @@ -spr2 | nblas
-
- -
-
-
-
- -

Function spr2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      ap: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/srot.html b/docs/functions/srot.html deleted file mode 100644 index 3cda5bc..0000000 --- a/docs/functions/srot.html +++ /dev/null @@ -1,215 +0,0 @@ -srot | nblas
-
- -
-
-
-
- -

Function srot

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    • -
    • -
      c: number
    • -
    • -
      s: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/srotg.html b/docs/functions/srotg.html deleted file mode 100644 index f2e0008..0000000 --- a/docs/functions/srotg.html +++ /dev/null @@ -1,209 +0,0 @@ -srotg | nblas
-
- -
-
-
-
- -

Function srotg

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: Float32Array
    • -
    • -
      b: Float32Array
    • -
    • -
      c: Float32Array
    • -
    • -
      s: Float32Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/srotm.html b/docs/functions/srotm.html deleted file mode 100644 index 93ef433..0000000 --- a/docs/functions/srotm.html +++ /dev/null @@ -1,211 +0,0 @@ -srotm | nblas
-
- -
-
-
-
- -

Function srotm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/srotmg.html b/docs/functions/srotmg.html deleted file mode 100644 index bacde06..0000000 --- a/docs/functions/srotmg.html +++ /dev/null @@ -1,211 +0,0 @@ -srotmg | nblas
-
- -
-
-
-
- -

Function srotmg

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      d1: Float32Array
    • -
    • -
      d2: Float32Array
    • -
    • -
      x1: Float32Array
    • -
    • -
      y1: Float32Array
    • -
    • -
      param: Float32Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssbmv.html b/docs/functions/ssbmv.html deleted file mode 100644 index d5b39b7..0000000 --- a/docs/functions/ssbmv.html +++ /dev/null @@ -1,223 +0,0 @@ -ssbmv | nblas
-
- -
-
-
-
- -

Function ssbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sscal.html b/docs/functions/sscal.html deleted file mode 100644 index ee378df..0000000 --- a/docs/functions/sscal.html +++ /dev/null @@ -1,209 +0,0 @@ -sscal | nblas
-
- -
-
-
-
- -

Function sscal

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      a: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sspmv.html b/docs/functions/sspmv.html deleted file mode 100644 index da72251..0000000 --- a/docs/functions/sspmv.html +++ /dev/null @@ -1,219 +0,0 @@ -sspmv | nblas
-
- -
-
-
-
- -

Function sspmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      ap: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sspr.html b/docs/functions/sspr.html deleted file mode 100644 index 9864d38..0000000 --- a/docs/functions/sspr.html +++ /dev/null @@ -1,213 +0,0 @@ -sspr | nblas
-
- -
-
-
-
- -

Function sspr

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      ap: Float32Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sspr2.html b/docs/functions/sspr2.html deleted file mode 100644 index 82218a8..0000000 --- a/docs/functions/sspr2.html +++ /dev/null @@ -1,217 +0,0 @@ -sspr2 | nblas
-
- -
-
-
-
- -

Function sspr2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    • -
    • -
      ap: Float32Array
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/sswap.html b/docs/functions/sswap.html deleted file mode 100644 index e7e8ed3..0000000 --- a/docs/functions/sswap.html +++ /dev/null @@ -1,211 +0,0 @@ -sswap | nblas
-
- -
-
-
-
- -

Function sswap

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssymm.html b/docs/functions/ssymm.html deleted file mode 100644 index 3450f7f..0000000 --- a/docs/functions/ssymm.html +++ /dev/null @@ -1,225 +0,0 @@ -ssymm | nblas
-
- -
-
-
-
- -

Function ssymm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssymv.html b/docs/functions/ssymv.html deleted file mode 100644 index a15621e..0000000 --- a/docs/functions/ssymv.html +++ /dev/null @@ -1,221 +0,0 @@ -ssymv | nblas
-
- -
-
-
-
- -

Function ssymv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      beta: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssyr.html b/docs/functions/ssyr.html deleted file mode 100644 index 62e0c9f..0000000 --- a/docs/functions/ssyr.html +++ /dev/null @@ -1,215 +0,0 @@ -ssyr | nblas
-
- -
-
-
-
- -

Function ssyr

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssyr2.html b/docs/functions/ssyr2.html deleted file mode 100644 index 4493111..0000000 --- a/docs/functions/ssyr2.html +++ /dev/null @@ -1,219 +0,0 @@ -ssyr2 | nblas
-
- -
-
-
-
- -

Function ssyr2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float32Array
    • -
    • -
      incy: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssyr2k.html b/docs/functions/ssyr2k.html deleted file mode 100644 index 77519f7..0000000 --- a/docs/functions/ssyr2k.html +++ /dev/null @@ -1,225 +0,0 @@ -ssyr2k | nblas
-
- -
-
-
-
- -

Function ssyr2k

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ssyrk.html b/docs/functions/ssyrk.html deleted file mode 100644 index 027fc39..0000000 --- a/docs/functions/ssyrk.html +++ /dev/null @@ -1,221 +0,0 @@ -ssyrk | nblas
-
- -
-
-
-
- -

Function ssyrk

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      beta: number
    • -
    • -
      c: Float32Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/stbmv.html b/docs/functions/stbmv.html deleted file mode 100644 index e9d2cdd..0000000 --- a/docs/functions/stbmv.html +++ /dev/null @@ -1,219 +0,0 @@ -stbmv | nblas
-
- -
-
-
-
- -

Function stbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/stbsv.html b/docs/functions/stbsv.html deleted file mode 100644 index c174a7b..0000000 --- a/docs/functions/stbsv.html +++ /dev/null @@ -1,219 +0,0 @@ -stbsv | nblas
-
- -
-
-
-
- -

Function stbsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/stpmv.html b/docs/functions/stpmv.html deleted file mode 100644 index dc70e54..0000000 --- a/docs/functions/stpmv.html +++ /dev/null @@ -1,215 +0,0 @@ -stpmv | nblas
-
- -
-
-
-
- -

Function stpmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/stpsv.html b/docs/functions/stpsv.html deleted file mode 100644 index 59b4fcd..0000000 --- a/docs/functions/stpsv.html +++ /dev/null @@ -1,215 +0,0 @@ -stpsv | nblas
-
- -
-
-
-
- -

Function stpsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float32Array
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/strmm.html b/docs/functions/strmm.html deleted file mode 100644 index a553e68..0000000 --- a/docs/functions/strmm.html +++ /dev/null @@ -1,223 +0,0 @@ -strmm | nblas
-
- -
-
-
-
- -

Function strmm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/strmv.html b/docs/functions/strmv.html deleted file mode 100644 index 93ba6ac..0000000 --- a/docs/functions/strmv.html +++ /dev/null @@ -1,217 +0,0 @@ -strmv | nblas
-
- -
-
-
-
- -

Function strmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/strsm.html b/docs/functions/strsm.html deleted file mode 100644 index 036229e..0000000 --- a/docs/functions/strsm.html +++ /dev/null @@ -1,223 +0,0 @@ -strsm | nblas
-
- -
-
-
-
- -

Function strsm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float32Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/strsv.html b/docs/functions/strsv.html deleted file mode 100644 index 33eb8a6..0000000 --- a/docs/functions/strsv.html +++ /dev/null @@ -1,217 +0,0 @@ -strsv | nblas
-
- -
-
-
-
- -

Function strsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float32Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float32Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/swap.html b/docs/functions/swap.html deleted file mode 100644 index 5d86ab0..0000000 --- a/docs/functions/swap.html +++ /dev/null @@ -1,205 +0,0 @@ -swap | nblas
-
- -
-
-
-
- -

Function swap

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/symm.html b/docs/functions/symm.html deleted file mode 100644 index f0aaeab..0000000 --- a/docs/functions/symm.html +++ /dev/null @@ -1,219 +0,0 @@ -symm | nblas
-
- -
-
-
-
- -

Function symm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      c: FloatArray
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      Optional side: MatrixLeftRight
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/symv.html b/docs/functions/symv.html deleted file mode 100644 index 4e90dbf..0000000 --- a/docs/functions/symv.html +++ /dev/null @@ -1,213 +0,0 @@ -symv | nblas
-
- -
-
-
-
- -

Function symv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/syr.html b/docs/functions/syr.html deleted file mode 100644 index 0533151..0000000 --- a/docs/functions/syr.html +++ /dev/null @@ -1,209 +0,0 @@ -syr | nblas
-
- -
-
-
-
- -

Function syr

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/syr2.html b/docs/functions/syr2.html deleted file mode 100644 index 6b077c5..0000000 --- a/docs/functions/syr2.html +++ /dev/null @@ -1,211 +0,0 @@ -syr2 | nblas
-
- -
-
-
-
- -

Function syr2

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      y: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/syr2k.html b/docs/functions/syr2k.html deleted file mode 100644 index 8e5d4cc..0000000 --- a/docs/functions/syr2k.html +++ /dev/null @@ -1,219 +0,0 @@ -syr2k | nblas
-
- -
-
-
-
- -

Function syr2k

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      c: FloatArray
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/syrk.html b/docs/functions/syrk.html deleted file mode 100644 index 4975ccb..0000000 --- a/docs/functions/syrk.html +++ /dev/null @@ -1,217 +0,0 @@ -syrk | nblas
-
- -
-
-
-
- -

Function syrk

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      c: FloatArray
    • -
    • -
      n: FloatArray
    • -
    • -
      k: number
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional alpha: number
    • -
    • -
      Optional beta: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/tbmv.html b/docs/functions/tbmv.html deleted file mode 100644 index 6359cce..0000000 --- a/docs/functions/tbmv.html +++ /dev/null @@ -1,211 +0,0 @@ -tbmv | nblas
-
- -
-
-
-
- -

Function tbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/tbsv.html b/docs/functions/tbsv.html deleted file mode 100644 index f340d35..0000000 --- a/docs/functions/tbsv.html +++ /dev/null @@ -1,211 +0,0 @@ -tbsv | nblas
-
- -
-
-
-
- -

Function tbsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/tpmv.html b/docs/functions/tpmv.html deleted file mode 100644 index 17aa6c7..0000000 --- a/docs/functions/tpmv.html +++ /dev/null @@ -1,211 +0,0 @@ -tpmv | nblas
-
- -
-
-
-
- -

Function tpmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      ap: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/tpsv.html b/docs/functions/tpsv.html deleted file mode 100644 index 57fc3b8..0000000 --- a/docs/functions/tpsv.html +++ /dev/null @@ -1,211 +0,0 @@ -tpsv | nblas
-
- -
-
-
-
- -

Function tpsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      ap: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/trmm.html b/docs/functions/trmm.html deleted file mode 100644 index 60c66ee..0000000 --- a/docs/functions/trmm.html +++ /dev/null @@ -1,219 +0,0 @@ -trmm | nblas
-
- -
-
-
-
- -

Function trmm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      Optional side: MatrixLeftRight
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional transa: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/trmv.html b/docs/functions/trmv.html deleted file mode 100644 index 0aa5009..0000000 --- a/docs/functions/trmv.html +++ /dev/null @@ -1,211 +0,0 @@ -trmv | nblas
-
- -
-
-
-
- -

Function trmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/trsm.html b/docs/functions/trsm.html deleted file mode 100644 index 2f86f9b..0000000 --- a/docs/functions/trsm.html +++ /dev/null @@ -1,219 +0,0 @@ -trsm | nblas
-
- -
-
-
-
- -

Function trsm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      b: FloatArray
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      Optional side: MatrixLeftRight
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional transa: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    • -
    • -
      Optional alpha: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/trsv.html b/docs/functions/trsv.html deleted file mode 100644 index ffd8d60..0000000 --- a/docs/functions/trsv.html +++ /dev/null @@ -1,211 +0,0 @@ -trsv | nblas
-
- -
-
-
-
- -

Function trsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      a: FloatArray
    • -
    • -
      x: FloatArray
    • -
    • -
      Optional uplo: MatrixUpperLower
    • -
    • -
      Optional trans: MatrixTrans
    • -
    • -
      Optional diag: MatrixUnit
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zaxpy.html b/docs/functions/zaxpy.html deleted file mode 100644 index 7e74fda..0000000 --- a/docs/functions/zaxpy.html +++ /dev/null @@ -1,213 +0,0 @@ -zaxpy | nblas
-
- -
-
-
-
- -

Function zaxpy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zcopy.html b/docs/functions/zcopy.html deleted file mode 100644 index 60c7066..0000000 --- a/docs/functions/zcopy.html +++ /dev/null @@ -1,211 +0,0 @@ -zcopy | nblas
-
- -
-
-
-
- -

Function zcopy

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zgbmv.html b/docs/functions/zgbmv.html deleted file mode 100644 index e7a5f71..0000000 --- a/docs/functions/zgbmv.html +++ /dev/null @@ -1,227 +0,0 @@ -zgbmv | nblas
-
- -
-
-
-
- -

Function zgbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      kl: number
    • -
    • -
      ku: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zgemm.html b/docs/functions/zgemm.html deleted file mode 100644 index baffecd..0000000 --- a/docs/functions/zgemm.html +++ /dev/null @@ -1,227 +0,0 @@ -zgemm | nblas
-
- -
-
-
-
- -

Function zgemm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      transa: MatrixTrans
    • -
    • -
      transb: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zgemv.html b/docs/functions/zgemv.html deleted file mode 100644 index d01814b..0000000 --- a/docs/functions/zgemv.html +++ /dev/null @@ -1,223 +0,0 @@ -zgemv | nblas
-
- -
-
-
-
- -

Function zgemv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      trans: MatrixTrans
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zscal.html b/docs/functions/zscal.html deleted file mode 100644 index 2582955..0000000 --- a/docs/functions/zscal.html +++ /dev/null @@ -1,209 +0,0 @@ -zscal | nblas
-
- -
-
-
-
- -

Function zscal

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      a: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zswap.html b/docs/functions/zswap.html deleted file mode 100644 index bb49162..0000000 --- a/docs/functions/zswap.html +++ /dev/null @@ -1,211 +0,0 @@ -zswap | nblas
-
- -
-
-
-
- -

Function zswap

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      n: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    • -
    • -
      y: Float64Array
    • -
    • -
      incy: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zsymm.html b/docs/functions/zsymm.html deleted file mode 100644 index 32160d7..0000000 --- a/docs/functions/zsymm.html +++ /dev/null @@ -1,225 +0,0 @@ -zsymm | nblas
-
- -
-
-
-
- -

Function zsymm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zsyr2k.html b/docs/functions/zsyr2k.html deleted file mode 100644 index 20ecf0d..0000000 --- a/docs/functions/zsyr2k.html +++ /dev/null @@ -1,225 +0,0 @@ -zsyr2k | nblas
-
- -
-
-
-
- -

Function zsyr2k

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/zsyrk.html b/docs/functions/zsyrk.html deleted file mode 100644 index afd04d4..0000000 --- a/docs/functions/zsyrk.html +++ /dev/null @@ -1,221 +0,0 @@ -zsyrk | nblas
-
- -
-
-
-
- -

Function zsyrk

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      beta: Float64Array
    • -
    • -
      c: Float64Array
    • -
    • -
      ldc: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztbmv.html b/docs/functions/ztbmv.html deleted file mode 100644 index 9e10f75..0000000 --- a/docs/functions/ztbmv.html +++ /dev/null @@ -1,219 +0,0 @@ -ztbmv | nblas
-
- -
-
-
-
- -

Function ztbmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztbsv.html b/docs/functions/ztbsv.html deleted file mode 100644 index 46ccc07..0000000 --- a/docs/functions/ztbsv.html +++ /dev/null @@ -1,219 +0,0 @@ -ztbsv | nblas
-
- -
-
-
-
- -

Function ztbsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      k: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztpmv.html b/docs/functions/ztpmv.html deleted file mode 100644 index a2cef17..0000000 --- a/docs/functions/ztpmv.html +++ /dev/null @@ -1,215 +0,0 @@ -ztpmv | nblas
-
- -
-
-
-
- -

Function ztpmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztpsv.html b/docs/functions/ztpsv.html deleted file mode 100644 index b8b7233..0000000 --- a/docs/functions/ztpsv.html +++ /dev/null @@ -1,215 +0,0 @@ -ztpsv | nblas
-
- -
-
-
-
- -

Function ztpsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      ap: Float64Array
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztrmm.html b/docs/functions/ztrmm.html deleted file mode 100644 index 83bcc7f..0000000 --- a/docs/functions/ztrmm.html +++ /dev/null @@ -1,223 +0,0 @@ -ztrmm | nblas
-
- -
-
-
-
- -

Function ztrmm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztrmv.html b/docs/functions/ztrmv.html deleted file mode 100644 index 78c4dfa..0000000 --- a/docs/functions/ztrmv.html +++ /dev/null @@ -1,217 +0,0 @@ -ztrmv | nblas
-
- -
-
-
-
- -

Function ztrmv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztrsm.html b/docs/functions/ztrsm.html deleted file mode 100644 index 4ae7923..0000000 --- a/docs/functions/ztrsm.html +++ /dev/null @@ -1,223 +0,0 @@ -ztrsm | nblas
-
- -
-
-
-
- -

Function ztrsm

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      side: MatrixLeftRight
    • -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      transa: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      m: number
    • -
    • -
      n: number
    • -
    • -
      alpha: Float64Array
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      b: Float64Array
    • -
    • -
      ldb: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/functions/ztrsv.html b/docs/functions/ztrsv.html deleted file mode 100644 index 9133811..0000000 --- a/docs/functions/ztrsv.html +++ /dev/null @@ -1,217 +0,0 @@ -ztrsv | nblas
-
- -
-
-
-
- -

Function ztrsv

-
-
    - -
  • -
    -

    Parameters

    -
      -
    • -
      uplo: MatrixUpperLower
    • -
    • -
      trans: MatrixTrans
    • -
    • -
      diag: MatrixUnit
    • -
    • -
      n: number
    • -
    • -
      a: Float64Array
    • -
    • -
      lda: number
    • -
    • -
      x: Float64Array
    • -
    • -
      incx: number
    -

    Returns void

-
-
-

Generated using TypeDoc

-
\ No newline at end of file diff --git a/docs/hierarchy.html b/docs/hierarchy.html new file mode 100644 index 0000000..934795a --- /dev/null +++ b/docs/hierarchy.html @@ -0,0 +1 @@ +nblas
nblas
    Preparing search index...

    nblas

    Hierarchy Summary

    diff --git a/docs/index.html b/docs/index.html index e0e7128..32836ed 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,87 +1,83 @@ -nblas
    -
    - -
    -
    -
    -
    -

    nblas

    -

    nBLAS version travis maintainability Test Coverage

    Greenkeeper badge

    +nblas
    nblas
      Preparing search index...

      nblas

      nBLAS version travis maintainability Test Coverage

      +

      Greenkeeper badge

      Node >=6.9 C++ bindings for all single- and double-precision CBLAS (Basic Linear Algebra Subprograms) routines.

      -
      npm install nblas
      $ npm test -
      +
      $ npm install nblas
      $ npm test +
      +

      Works out of the box with OSX since CBLAS is included in the standard Accelerate framework. You might have to download and build LAPACK from source on other operating systems (LINUX: sudo apt-get libblas-dev).

      -
      import { dot, ddot, sdot, dznrm2 } from './src';

      const f64a = new Float64Array([1, 2, 3]);
      const f64b = new Float64Array([4, 5, 6]);

      console.log(dot(f64a, f64b));
      // 32
      console.log(ddot(3, f64a, 1, f64b, 1));
      // 32

      const f32a = new Float32Array([1, 2, 3]);
      const f32b = new Float32Array([4, 5, 6]);

      console.log(dot(f32a, f32b));
      // 32
      console.log(sdot(3, f32a, 1, f32b, 1));
      // 32

      // complex arrays are packed like this: [Re, Im, Re, Im, ...]
      // this is equivalent to [1 + 2i, 3 + 4i]
      const c16 = new Float64Array([1, 2, 3, 4]);

      // complex l2 norm
      console.log(dznrm2(2, c16, 1));
      // sqrt(1^2 + 2^2 + 3^2 + 4^2) ~ 5.477 -
      +
      import { dot, ddot, sdot, dznrm2 } from './src';

      const f64a = new Float64Array([1, 2, 3]);
      const f64b = new Float64Array([4, 5, 6]);

      console.log(dot(f64a, f64b));
      // 32
      console.log(ddot(3, f64a, 1, f64b, 1));
      // 32

      const f32a = new Float32Array([1, 2, 3]);
      const f32b = new Float32Array([4, 5, 6]);

      console.log(dot(f32a, f32b));
      // 32
      console.log(sdot(3, f32a, 1, f32b, 1));
      // 32

      // complex arrays are packed like this: [Re, Im, Re, Im, ...]
      // this is equivalent to [1 + 2i, 3 + 4i]
      const c16 = new Float64Array([1, 2, 3, 4]);

      // complex l2 norm
      console.log(dznrm2(2, c16, 1));
      // sqrt(1^2 + 2^2 + 3^2 + 4^2) ~ 5.477 +
      +

      Double precision functions expect Float64Array vectors, single precision functions expect Float32Array vectors.

      -
      -
      -
      -

      Generated using TypeDoc

      -
      \ No newline at end of file +
      diff --git a/docs/modules.html b/docs/modules.html index cb295a5..3fb8202 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1,350 +1 @@ -nblas
      -
      - -
      -
      - -
      -
      -

      Generated using TypeDoc

      -
      \ No newline at end of file +nblas
      nblas
        Preparing search index...
        diff --git a/docs/variables/ConjTrans.html b/docs/variables/ConjTrans.html index 0b06caf..95a4dc7 100644 --- a/docs/variables/ConjTrans.html +++ b/docs/variables/ConjTrans.html @@ -1,194 +1 @@ -ConjTrans | nblas
        -
        - -
        - -
        -

        Generated using TypeDoc

        -
        \ No newline at end of file +ConjTrans | nblas
        nblas
          Preparing search index...

          Variable ConjTransConst

          ConjTrans: MatrixTrans = 113
          diff --git a/docs/variables/Left.html b/docs/variables/Left.html index 5554305..998aa89 100644 --- a/docs/variables/Left.html +++ b/docs/variables/Left.html @@ -1,194 +1 @@ -Left | nblas
          -
          - -
          - -
          -

          Generated using TypeDoc

          -
          \ No newline at end of file +Left | nblas
          nblas
            Preparing search index...

            Variable LeftConst

            Left: MatrixLeftRight = 141
            diff --git a/docs/variables/Lower.html b/docs/variables/Lower.html index 2775151..2fe5101 100644 --- a/docs/variables/Lower.html +++ b/docs/variables/Lower.html @@ -1,194 +1 @@ -Lower | nblas
            -
            - -
            - -
            -

            Generated using TypeDoc

            -
            \ No newline at end of file +Lower | nblas
            nblas
              Preparing search index...

              Variable LowerConst

              Lower: MatrixUpperLower = 122
              diff --git a/docs/variables/NoTrans.html b/docs/variables/NoTrans.html index 54d303b..45224d5 100644 --- a/docs/variables/NoTrans.html +++ b/docs/variables/NoTrans.html @@ -1,194 +1 @@ -NoTrans | nblas
              -
              - -
              - -
              -

              Generated using TypeDoc

              -
              \ No newline at end of file +NoTrans | nblas
              nblas
                Preparing search index...

                Variable NoTransConst

                NoTrans: MatrixTrans = 111
                diff --git a/docs/variables/NonUnit.html b/docs/variables/NonUnit.html index 04784f5..e934960 100644 --- a/docs/variables/NonUnit.html +++ b/docs/variables/NonUnit.html @@ -1,194 +1 @@ -NonUnit | nblas
                -
                - -
                - -
                -

                Generated using TypeDoc

                -
                \ No newline at end of file +NonUnit | nblas
                nblas
                  Preparing search index...

                  Variable NonUnitConst

                  NonUnit: MatrixUnit = 131
                  diff --git a/docs/variables/Right.html b/docs/variables/Right.html index 176bb3a..12f0945 100644 --- a/docs/variables/Right.html +++ b/docs/variables/Right.html @@ -1,194 +1 @@ -Right | nblas
                  -
                  - -
                  - -
                  -

                  Generated using TypeDoc

                  -
                  \ No newline at end of file +Right | nblas
                  nblas
                    Preparing search index...

                    Variable RightConst

                    Right: MatrixLeftRight = 142
                    diff --git a/docs/variables/Trans.html b/docs/variables/Trans.html index 94f24d0..aec2acb 100644 --- a/docs/variables/Trans.html +++ b/docs/variables/Trans.html @@ -1,194 +1 @@ -Trans | nblas
                    -
                    - -
                    - -
                    -

                    Generated using TypeDoc

                    -
                    \ No newline at end of file +Trans | nblas
                    nblas
                      Preparing search index...

                      Variable TransConst

                      Trans: MatrixTrans = 112
                      diff --git a/docs/variables/Unit.html b/docs/variables/Unit.html index 09ec434..044755c 100644 --- a/docs/variables/Unit.html +++ b/docs/variables/Unit.html @@ -1,194 +1 @@ -Unit | nblas
                      -
                      - -
                      - -
                      -

                      Generated using TypeDoc

                      -
                      \ No newline at end of file +Unit | nblas
                      nblas
                        Preparing search index...

                        Variable UnitConst

                        Unit: MatrixUnit = 132
                        diff --git a/docs/variables/Upper.html b/docs/variables/Upper.html index b7bcb92..fd5aba3 100644 --- a/docs/variables/Upper.html +++ b/docs/variables/Upper.html @@ -1,194 +1 @@ -Upper | nblas
                        -
                        - -
                        - -
                        -

                        Generated using TypeDoc

                        -
                        \ No newline at end of file +Upper | nblas
                        nblas
                          Preparing search index...

                          Variable UpperConst

                          Upper: MatrixUpperLower = 121
                          diff --git a/docs/variables/asum.html b/docs/variables/asum.html new file mode 100644 index 0000000..153ddb4 --- /dev/null +++ b/docs/variables/asum.html @@ -0,0 +1 @@ +asum | nblas
                          nblas
                            Preparing search index...

                            Variable asumConst

                            asum: IConvenienceBlas["asum"] = ...
                            diff --git a/docs/variables/axpy.html b/docs/variables/axpy.html new file mode 100644 index 0000000..2951b62 --- /dev/null +++ b/docs/variables/axpy.html @@ -0,0 +1 @@ +axpy | nblas
                            nblas
                              Preparing search index...

                              Variable axpyConst

                              axpy: IConvenienceBlas["axpy"] = ...
                              diff --git a/docs/variables/caxpy.html b/docs/variables/caxpy.html new file mode 100644 index 0000000..040f588 --- /dev/null +++ b/docs/variables/caxpy.html @@ -0,0 +1 @@ +caxpy | nblas
                              nblas
                                Preparing search index...

                                Variable caxpyConst

                                caxpy: INativeBlas["caxpy"] = nblas.caxpy
                                diff --git a/docs/variables/ccopy.html b/docs/variables/ccopy.html new file mode 100644 index 0000000..1d32078 --- /dev/null +++ b/docs/variables/ccopy.html @@ -0,0 +1 @@ +ccopy | nblas
                                nblas
                                  Preparing search index...

                                  Variable ccopyConst

                                  ccopy: INativeBlas["ccopy"] = nblas.ccopy
                                  diff --git a/docs/variables/cdotc_sub.html b/docs/variables/cdotc_sub.html new file mode 100644 index 0000000..16e60bc --- /dev/null +++ b/docs/variables/cdotc_sub.html @@ -0,0 +1 @@ +cdotc_sub | nblas
                                  nblas
                                    Preparing search index...

                                    Variable cdotc_subConst

                                    cdotc_sub: INativeBlas["cdotc_sub"] = nblas.cdotc_sub
                                    diff --git a/docs/variables/cdotu_sub.html b/docs/variables/cdotu_sub.html new file mode 100644 index 0000000..0145bcb --- /dev/null +++ b/docs/variables/cdotu_sub.html @@ -0,0 +1 @@ +cdotu_sub | nblas
                                    nblas
                                      Preparing search index...

                                      Variable cdotu_subConst

                                      cdotu_sub: INativeBlas["cdotu_sub"] = nblas.cdotu_sub
                                      diff --git a/docs/variables/cgbmv.html b/docs/variables/cgbmv.html new file mode 100644 index 0000000..e3765a3 --- /dev/null +++ b/docs/variables/cgbmv.html @@ -0,0 +1 @@ +cgbmv | nblas
                                      nblas
                                        Preparing search index...

                                        Variable cgbmvConst

                                        cgbmv: INativeBlas["cgbmv"] = nblas.cgbmv
                                        diff --git a/docs/variables/cgemm.html b/docs/variables/cgemm.html new file mode 100644 index 0000000..b6003a8 --- /dev/null +++ b/docs/variables/cgemm.html @@ -0,0 +1 @@ +cgemm | nblas
                                        nblas
                                          Preparing search index...

                                          Variable cgemmConst

                                          cgemm: INativeBlas["cgemm"] = nblas.cgemm
                                          diff --git a/docs/variables/cgemv.html b/docs/variables/cgemv.html new file mode 100644 index 0000000..0a8f839 --- /dev/null +++ b/docs/variables/cgemv.html @@ -0,0 +1 @@ +cgemv | nblas
                                          nblas
                                            Preparing search index...

                                            Variable cgemvConst

                                            cgemv: INativeBlas["cgemv"] = nblas.cgemv
                                            diff --git a/docs/variables/cgerc.html b/docs/variables/cgerc.html new file mode 100644 index 0000000..32e1824 --- /dev/null +++ b/docs/variables/cgerc.html @@ -0,0 +1 @@ +cgerc | nblas
                                            nblas
                                              Preparing search index...

                                              Variable cgercConst

                                              cgerc: INativeBlas["cgerc"] = nblas.cgerc
                                              diff --git a/docs/variables/cgeru.html b/docs/variables/cgeru.html new file mode 100644 index 0000000..43e0615 --- /dev/null +++ b/docs/variables/cgeru.html @@ -0,0 +1 @@ +cgeru | nblas
                                              nblas
                                                Preparing search index...

                                                Variable cgeruConst

                                                cgeru: INativeBlas["cgeru"] = nblas.cgeru
                                                diff --git a/docs/variables/chbmv.html b/docs/variables/chbmv.html new file mode 100644 index 0000000..864771e --- /dev/null +++ b/docs/variables/chbmv.html @@ -0,0 +1 @@ +chbmv | nblas
                                                nblas
                                                  Preparing search index...

                                                  Variable chbmvConst

                                                  chbmv: INativeBlas["chbmv"] = nblas.chbmv
                                                  diff --git a/docs/variables/chemm.html b/docs/variables/chemm.html new file mode 100644 index 0000000..2c7eb2b --- /dev/null +++ b/docs/variables/chemm.html @@ -0,0 +1 @@ +chemm | nblas
                                                  nblas
                                                    Preparing search index...

                                                    Variable chemmConst

                                                    chemm: INativeBlas["chemm"] = nblas.chemm
                                                    diff --git a/docs/variables/chemv.html b/docs/variables/chemv.html new file mode 100644 index 0000000..1a61b05 --- /dev/null +++ b/docs/variables/chemv.html @@ -0,0 +1 @@ +chemv | nblas
                                                    nblas
                                                      Preparing search index...

                                                      Variable chemvConst

                                                      chemv: INativeBlas["chemv"] = nblas.chemv
                                                      diff --git a/docs/variables/cher.html b/docs/variables/cher.html new file mode 100644 index 0000000..c8d063c --- /dev/null +++ b/docs/variables/cher.html @@ -0,0 +1 @@ +cher | nblas
                                                      nblas
                                                        Preparing search index...

                                                        Variable cherConst

                                                        cher: INativeBlas["cher"] = nblas.cher
                                                        diff --git a/docs/variables/cher2.html b/docs/variables/cher2.html new file mode 100644 index 0000000..3ac8854 --- /dev/null +++ b/docs/variables/cher2.html @@ -0,0 +1 @@ +cher2 | nblas
                                                        nblas
                                                          Preparing search index...

                                                          Variable cher2Const

                                                          cher2: INativeBlas["cher2"] = nblas.cher2
                                                          diff --git a/docs/variables/cher2k.html b/docs/variables/cher2k.html new file mode 100644 index 0000000..abf1fac --- /dev/null +++ b/docs/variables/cher2k.html @@ -0,0 +1 @@ +cher2k | nblas
                                                          nblas
                                                            Preparing search index...

                                                            Variable cher2kConst

                                                            cher2k: INativeBlas["cher2k"] = nblas.cher2k
                                                            diff --git a/docs/variables/cherk.html b/docs/variables/cherk.html new file mode 100644 index 0000000..634bb15 --- /dev/null +++ b/docs/variables/cherk.html @@ -0,0 +1 @@ +cherk | nblas
                                                            nblas
                                                              Preparing search index...

                                                              Variable cherkConst

                                                              cherk: INativeBlas["cherk"] = nblas.cherk
                                                              diff --git a/docs/variables/chpmv.html b/docs/variables/chpmv.html new file mode 100644 index 0000000..86ee619 --- /dev/null +++ b/docs/variables/chpmv.html @@ -0,0 +1 @@ +chpmv | nblas
                                                              nblas
                                                                Preparing search index...

                                                                Variable chpmvConst

                                                                chpmv: INativeBlas["chpmv"] = nblas.chpmv
                                                                diff --git a/docs/variables/chpr.html b/docs/variables/chpr.html new file mode 100644 index 0000000..ae7edcc --- /dev/null +++ b/docs/variables/chpr.html @@ -0,0 +1 @@ +chpr | nblas
                                                                nblas
                                                                  Preparing search index...

                                                                  Variable chprConst

                                                                  chpr: INativeBlas["chpr"] = nblas.chpr
                                                                  diff --git a/docs/variables/chpr2.html b/docs/variables/chpr2.html new file mode 100644 index 0000000..73db3b1 --- /dev/null +++ b/docs/variables/chpr2.html @@ -0,0 +1 @@ +chpr2 | nblas
                                                                  nblas
                                                                    Preparing search index...

                                                                    Variable chpr2Const

                                                                    chpr2: INativeBlas["chpr2"] = nblas.chpr2
                                                                    diff --git a/docs/variables/copy.html b/docs/variables/copy.html new file mode 100644 index 0000000..b659e4a --- /dev/null +++ b/docs/variables/copy.html @@ -0,0 +1 @@ +copy | nblas
                                                                    nblas
                                                                      Preparing search index...

                                                                      Variable copyConst

                                                                      copy: IConvenienceBlas["copy"] = ...
                                                                      diff --git a/docs/variables/cscal.html b/docs/variables/cscal.html new file mode 100644 index 0000000..b070a85 --- /dev/null +++ b/docs/variables/cscal.html @@ -0,0 +1 @@ +cscal | nblas
                                                                      nblas
                                                                        Preparing search index...

                                                                        Variable cscalConst

                                                                        cscal: INativeBlas["cscal"] = nblas.cscal
                                                                        diff --git a/docs/variables/csscal.html b/docs/variables/csscal.html new file mode 100644 index 0000000..6206cab --- /dev/null +++ b/docs/variables/csscal.html @@ -0,0 +1 @@ +csscal | nblas
                                                                        nblas
                                                                          Preparing search index...

                                                                          Variable csscalConst

                                                                          csscal: INativeBlas["csscal"] = nblas.csscal
                                                                          diff --git a/docs/variables/cswap.html b/docs/variables/cswap.html new file mode 100644 index 0000000..38fac28 --- /dev/null +++ b/docs/variables/cswap.html @@ -0,0 +1 @@ +cswap | nblas
                                                                          nblas
                                                                            Preparing search index...

                                                                            Variable cswapConst

                                                                            cswap: INativeBlas["cswap"] = nblas.cswap
                                                                            diff --git a/docs/variables/csymm.html b/docs/variables/csymm.html new file mode 100644 index 0000000..6b344dd --- /dev/null +++ b/docs/variables/csymm.html @@ -0,0 +1 @@ +csymm | nblas
                                                                            nblas
                                                                              Preparing search index...

                                                                              Variable csymmConst

                                                                              csymm: INativeBlas["csymm"] = nblas.csymm
                                                                              diff --git a/docs/variables/csyr2k.html b/docs/variables/csyr2k.html new file mode 100644 index 0000000..3e73c6c --- /dev/null +++ b/docs/variables/csyr2k.html @@ -0,0 +1 @@ +csyr2k | nblas
                                                                              nblas
                                                                                Preparing search index...

                                                                                Variable csyr2kConst

                                                                                csyr2k: INativeBlas["csyr2k"] = nblas.csyr2k
                                                                                diff --git a/docs/variables/csyrk.html b/docs/variables/csyrk.html new file mode 100644 index 0000000..2377468 --- /dev/null +++ b/docs/variables/csyrk.html @@ -0,0 +1 @@ +csyrk | nblas
                                                                                nblas
                                                                                  Preparing search index...

                                                                                  Variable csyrkConst

                                                                                  csyrk: INativeBlas["csyrk"] = nblas.csyrk
                                                                                  diff --git a/docs/variables/ctbmv.html b/docs/variables/ctbmv.html new file mode 100644 index 0000000..c1f41f5 --- /dev/null +++ b/docs/variables/ctbmv.html @@ -0,0 +1 @@ +ctbmv | nblas
                                                                                  nblas
                                                                                    Preparing search index...

                                                                                    Variable ctbmvConst

                                                                                    ctbmv: INativeBlas["ctbmv"] = nblas.ctbmv
                                                                                    diff --git a/docs/variables/ctbsv.html b/docs/variables/ctbsv.html new file mode 100644 index 0000000..a3f2411 --- /dev/null +++ b/docs/variables/ctbsv.html @@ -0,0 +1 @@ +ctbsv | nblas
                                                                                    nblas
                                                                                      Preparing search index...

                                                                                      Variable ctbsvConst

                                                                                      ctbsv: INativeBlas["ctbsv"] = nblas.ctbsv
                                                                                      diff --git a/docs/variables/ctpmv.html b/docs/variables/ctpmv.html new file mode 100644 index 0000000..77df3ce --- /dev/null +++ b/docs/variables/ctpmv.html @@ -0,0 +1 @@ +ctpmv | nblas
                                                                                      nblas
                                                                                        Preparing search index...

                                                                                        Variable ctpmvConst

                                                                                        ctpmv: INativeBlas["ctpmv"] = nblas.ctpmv
                                                                                        diff --git a/docs/variables/ctpsv.html b/docs/variables/ctpsv.html new file mode 100644 index 0000000..2bc8191 --- /dev/null +++ b/docs/variables/ctpsv.html @@ -0,0 +1 @@ +ctpsv | nblas
                                                                                        nblas
                                                                                          Preparing search index...

                                                                                          Variable ctpsvConst

                                                                                          ctpsv: INativeBlas["ctpsv"] = nblas.ctpsv
                                                                                          diff --git a/docs/variables/ctrmm.html b/docs/variables/ctrmm.html new file mode 100644 index 0000000..7cb0387 --- /dev/null +++ b/docs/variables/ctrmm.html @@ -0,0 +1 @@ +ctrmm | nblas
                                                                                          nblas
                                                                                            Preparing search index...

                                                                                            Variable ctrmmConst

                                                                                            ctrmm: INativeBlas["ctrmm"] = nblas.ctrmm
                                                                                            diff --git a/docs/variables/ctrmv.html b/docs/variables/ctrmv.html new file mode 100644 index 0000000..206202c --- /dev/null +++ b/docs/variables/ctrmv.html @@ -0,0 +1 @@ +ctrmv | nblas
                                                                                            nblas
                                                                                              Preparing search index...

                                                                                              Variable ctrmvConst

                                                                                              ctrmv: INativeBlas["ctrmv"] = nblas.ctrmv
                                                                                              diff --git a/docs/variables/ctrsm.html b/docs/variables/ctrsm.html new file mode 100644 index 0000000..81a1be3 --- /dev/null +++ b/docs/variables/ctrsm.html @@ -0,0 +1 @@ +ctrsm | nblas
                                                                                              nblas
                                                                                                Preparing search index...

                                                                                                Variable ctrsmConst

                                                                                                ctrsm: INativeBlas["ctrsm"] = nblas.ctrsm
                                                                                                diff --git a/docs/variables/ctrsv.html b/docs/variables/ctrsv.html new file mode 100644 index 0000000..d7e2001 --- /dev/null +++ b/docs/variables/ctrsv.html @@ -0,0 +1 @@ +ctrsv | nblas
                                                                                                nblas
                                                                                                  Preparing search index...

                                                                                                  Variable ctrsvConst

                                                                                                  ctrsv: INativeBlas["ctrsv"] = nblas.ctrsv
                                                                                                  diff --git a/docs/variables/dasum.html b/docs/variables/dasum.html new file mode 100644 index 0000000..b8765e9 --- /dev/null +++ b/docs/variables/dasum.html @@ -0,0 +1 @@ +dasum | nblas
                                                                                                  nblas
                                                                                                    Preparing search index...

                                                                                                    Variable dasumConst

                                                                                                    dasum: INativeBlas["dasum"] = nblas.dasum
                                                                                                    diff --git a/docs/variables/daxpy.html b/docs/variables/daxpy.html new file mode 100644 index 0000000..cf3f25e --- /dev/null +++ b/docs/variables/daxpy.html @@ -0,0 +1 @@ +daxpy | nblas
                                                                                                    nblas
                                                                                                      Preparing search index...

                                                                                                      Variable daxpyConst

                                                                                                      daxpy: INativeBlas["daxpy"] = nblas.daxpy
                                                                                                      diff --git a/docs/variables/dcopy.html b/docs/variables/dcopy.html new file mode 100644 index 0000000..ec561eb --- /dev/null +++ b/docs/variables/dcopy.html @@ -0,0 +1 @@ +dcopy | nblas
                                                                                                      nblas
                                                                                                        Preparing search index...

                                                                                                        Variable dcopyConst

                                                                                                        dcopy: INativeBlas["dcopy"] = nblas.dcopy
                                                                                                        diff --git a/docs/variables/ddot.html b/docs/variables/ddot.html new file mode 100644 index 0000000..f56a427 --- /dev/null +++ b/docs/variables/ddot.html @@ -0,0 +1 @@ +ddot | nblas
                                                                                                        nblas
                                                                                                          Preparing search index...

                                                                                                          Variable ddotConst

                                                                                                          ddot: INativeBlas["ddot"] = nblas.ddot
                                                                                                          diff --git a/docs/variables/dgbmv.html b/docs/variables/dgbmv.html new file mode 100644 index 0000000..3e85a73 --- /dev/null +++ b/docs/variables/dgbmv.html @@ -0,0 +1 @@ +dgbmv | nblas
                                                                                                          nblas
                                                                                                            Preparing search index...

                                                                                                            Variable dgbmvConst

                                                                                                            dgbmv: INativeBlas["dgbmv"] = nblas.dgbmv
                                                                                                            diff --git a/docs/variables/dgemm.html b/docs/variables/dgemm.html new file mode 100644 index 0000000..b4f76ee --- /dev/null +++ b/docs/variables/dgemm.html @@ -0,0 +1 @@ +dgemm | nblas
                                                                                                            nblas
                                                                                                              Preparing search index...

                                                                                                              Variable dgemmConst

                                                                                                              dgemm: INativeBlas["dgemm"] = nblas.dgemm
                                                                                                              diff --git a/docs/variables/dgemv.html b/docs/variables/dgemv.html new file mode 100644 index 0000000..93703b2 --- /dev/null +++ b/docs/variables/dgemv.html @@ -0,0 +1 @@ +dgemv | nblas
                                                                                                              nblas
                                                                                                                Preparing search index...

                                                                                                                Variable dgemvConst

                                                                                                                dgemv: INativeBlas["dgemv"] = nblas.dgemv
                                                                                                                diff --git a/docs/variables/dger.html b/docs/variables/dger.html new file mode 100644 index 0000000..13e1ba8 --- /dev/null +++ b/docs/variables/dger.html @@ -0,0 +1 @@ +dger | nblas
                                                                                                                nblas
                                                                                                                  Preparing search index...

                                                                                                                  Variable dgerConst

                                                                                                                  dger: INativeBlas["dger"] = nblas.dger
                                                                                                                  diff --git a/docs/variables/dnrm2.html b/docs/variables/dnrm2.html new file mode 100644 index 0000000..4282bf9 --- /dev/null +++ b/docs/variables/dnrm2.html @@ -0,0 +1 @@ +dnrm2 | nblas
                                                                                                                  nblas
                                                                                                                    Preparing search index...

                                                                                                                    Variable dnrm2Const

                                                                                                                    dnrm2: INativeBlas["dnrm2"] = nblas.dnrm2
                                                                                                                    diff --git a/docs/variables/dot.html b/docs/variables/dot.html new file mode 100644 index 0000000..8549c28 --- /dev/null +++ b/docs/variables/dot.html @@ -0,0 +1 @@ +dot | nblas
                                                                                                                    nblas
                                                                                                                      Preparing search index...

                                                                                                                      Variable dotConst

                                                                                                                      dot: IConvenienceBlas["dot"] = ...
                                                                                                                      diff --git a/docs/variables/drot.html b/docs/variables/drot.html new file mode 100644 index 0000000..335a754 --- /dev/null +++ b/docs/variables/drot.html @@ -0,0 +1 @@ +drot | nblas
                                                                                                                      nblas
                                                                                                                        Preparing search index...

                                                                                                                        Variable drotConst

                                                                                                                        drot: INativeBlas["drot"] = nblas.drot
                                                                                                                        diff --git a/docs/variables/drotg.html b/docs/variables/drotg.html new file mode 100644 index 0000000..1a9292d --- /dev/null +++ b/docs/variables/drotg.html @@ -0,0 +1 @@ +drotg | nblas
                                                                                                                        nblas
                                                                                                                          Preparing search index...

                                                                                                                          Variable drotgConst

                                                                                                                          drotg: INativeBlas["drotg"] = nblas.drotg
                                                                                                                          diff --git a/docs/variables/drotm.html b/docs/variables/drotm.html new file mode 100644 index 0000000..924e4c1 --- /dev/null +++ b/docs/variables/drotm.html @@ -0,0 +1 @@ +drotm | nblas
                                                                                                                          nblas
                                                                                                                            Preparing search index...

                                                                                                                            Variable drotmConst

                                                                                                                            drotm: INativeBlas["drotm"] = nblas.drotm
                                                                                                                            diff --git a/docs/variables/drotmg.html b/docs/variables/drotmg.html new file mode 100644 index 0000000..5b0385d --- /dev/null +++ b/docs/variables/drotmg.html @@ -0,0 +1 @@ +drotmg | nblas
                                                                                                                            nblas
                                                                                                                              Preparing search index...

                                                                                                                              Variable drotmgConst

                                                                                                                              drotmg: INativeBlas["drotmg"] = nblas.drotmg
                                                                                                                              diff --git a/docs/variables/dsbmv.html b/docs/variables/dsbmv.html new file mode 100644 index 0000000..1e46ad3 --- /dev/null +++ b/docs/variables/dsbmv.html @@ -0,0 +1 @@ +dsbmv | nblas
                                                                                                                              nblas
                                                                                                                                Preparing search index...

                                                                                                                                Variable dsbmvConst

                                                                                                                                dsbmv: INativeBlas["dsbmv"] = nblas.dsbmv
                                                                                                                                diff --git a/docs/variables/dscal.html b/docs/variables/dscal.html new file mode 100644 index 0000000..8f3d2be --- /dev/null +++ b/docs/variables/dscal.html @@ -0,0 +1 @@ +dscal | nblas
                                                                                                                                nblas
                                                                                                                                  Preparing search index...

                                                                                                                                  Variable dscalConst

                                                                                                                                  dscal: INativeBlas["dscal"] = nblas.dscal
                                                                                                                                  diff --git a/docs/variables/dsdot.html b/docs/variables/dsdot.html new file mode 100644 index 0000000..9cb143c --- /dev/null +++ b/docs/variables/dsdot.html @@ -0,0 +1 @@ +dsdot | nblas
                                                                                                                                  nblas
                                                                                                                                    Preparing search index...

                                                                                                                                    Variable dsdotConst

                                                                                                                                    dsdot: INativeBlas["dsdot"] = nblas.dsdot
                                                                                                                                    diff --git a/docs/variables/dspmv.html b/docs/variables/dspmv.html new file mode 100644 index 0000000..453898e --- /dev/null +++ b/docs/variables/dspmv.html @@ -0,0 +1 @@ +dspmv | nblas
                                                                                                                                    nblas
                                                                                                                                      Preparing search index...

                                                                                                                                      Variable dspmvConst

                                                                                                                                      dspmv: INativeBlas["dspmv"] = nblas.dspmv
                                                                                                                                      diff --git a/docs/variables/dspr.html b/docs/variables/dspr.html new file mode 100644 index 0000000..96ce9da --- /dev/null +++ b/docs/variables/dspr.html @@ -0,0 +1 @@ +dspr | nblas
                                                                                                                                      nblas
                                                                                                                                        Preparing search index...

                                                                                                                                        Variable dsprConst

                                                                                                                                        dspr: INativeBlas["dspr"] = nblas.dspr
                                                                                                                                        diff --git a/docs/variables/dspr2.html b/docs/variables/dspr2.html new file mode 100644 index 0000000..bf84d7c --- /dev/null +++ b/docs/variables/dspr2.html @@ -0,0 +1 @@ +dspr2 | nblas
                                                                                                                                        nblas
                                                                                                                                          Preparing search index...

                                                                                                                                          Variable dspr2Const

                                                                                                                                          dspr2: INativeBlas["dspr2"] = nblas.dspr2
                                                                                                                                          diff --git a/docs/variables/dswap.html b/docs/variables/dswap.html new file mode 100644 index 0000000..1744525 --- /dev/null +++ b/docs/variables/dswap.html @@ -0,0 +1 @@ +dswap | nblas
                                                                                                                                          nblas
                                                                                                                                            Preparing search index...

                                                                                                                                            Variable dswapConst

                                                                                                                                            dswap: INativeBlas["dswap"] = nblas.dswap
                                                                                                                                            diff --git a/docs/variables/dsymm.html b/docs/variables/dsymm.html new file mode 100644 index 0000000..15cdc62 --- /dev/null +++ b/docs/variables/dsymm.html @@ -0,0 +1 @@ +dsymm | nblas
                                                                                                                                            nblas
                                                                                                                                              Preparing search index...

                                                                                                                                              Variable dsymmConst

                                                                                                                                              dsymm: INativeBlas["dsymm"] = nblas.dsymm
                                                                                                                                              diff --git a/docs/variables/dsymv.html b/docs/variables/dsymv.html new file mode 100644 index 0000000..02e19f2 --- /dev/null +++ b/docs/variables/dsymv.html @@ -0,0 +1 @@ +dsymv | nblas
                                                                                                                                              nblas
                                                                                                                                                Preparing search index...

                                                                                                                                                Variable dsymvConst

                                                                                                                                                dsymv: INativeBlas["dsymv"] = nblas.dsymv
                                                                                                                                                diff --git a/docs/variables/dsyr.html b/docs/variables/dsyr.html new file mode 100644 index 0000000..9f7e921 --- /dev/null +++ b/docs/variables/dsyr.html @@ -0,0 +1 @@ +dsyr | nblas
                                                                                                                                                nblas
                                                                                                                                                  Preparing search index...

                                                                                                                                                  Variable dsyrConst

                                                                                                                                                  dsyr: INativeBlas["dsyr"] = nblas.dsyr
                                                                                                                                                  diff --git a/docs/variables/dsyr2.html b/docs/variables/dsyr2.html new file mode 100644 index 0000000..56dc85d --- /dev/null +++ b/docs/variables/dsyr2.html @@ -0,0 +1 @@ +dsyr2 | nblas
                                                                                                                                                  nblas
                                                                                                                                                    Preparing search index...

                                                                                                                                                    Variable dsyr2Const

                                                                                                                                                    dsyr2: INativeBlas["dsyr2"] = nblas.dsyr2
                                                                                                                                                    diff --git a/docs/variables/dsyr2k.html b/docs/variables/dsyr2k.html new file mode 100644 index 0000000..f96db1f --- /dev/null +++ b/docs/variables/dsyr2k.html @@ -0,0 +1 @@ +dsyr2k | nblas
                                                                                                                                                    nblas
                                                                                                                                                      Preparing search index...

                                                                                                                                                      Variable dsyr2kConst

                                                                                                                                                      dsyr2k: INativeBlas["dsyr2k"] = nblas.dsyr2k
                                                                                                                                                      diff --git a/docs/variables/dsyrk.html b/docs/variables/dsyrk.html new file mode 100644 index 0000000..c83aa89 --- /dev/null +++ b/docs/variables/dsyrk.html @@ -0,0 +1 @@ +dsyrk | nblas
                                                                                                                                                      nblas
                                                                                                                                                        Preparing search index...

                                                                                                                                                        Variable dsyrkConst

                                                                                                                                                        dsyrk: INativeBlas["dsyrk"] = nblas.dsyrk
                                                                                                                                                        diff --git a/docs/variables/dtbmv.html b/docs/variables/dtbmv.html new file mode 100644 index 0000000..2c146a4 --- /dev/null +++ b/docs/variables/dtbmv.html @@ -0,0 +1 @@ +dtbmv | nblas
                                                                                                                                                        nblas
                                                                                                                                                          Preparing search index...

                                                                                                                                                          Variable dtbmvConst

                                                                                                                                                          dtbmv: INativeBlas["dtbmv"] = nblas.dtbmv
                                                                                                                                                          diff --git a/docs/variables/dtbsv.html b/docs/variables/dtbsv.html new file mode 100644 index 0000000..2039640 --- /dev/null +++ b/docs/variables/dtbsv.html @@ -0,0 +1 @@ +dtbsv | nblas
                                                                                                                                                          nblas
                                                                                                                                                            Preparing search index...

                                                                                                                                                            Variable dtbsvConst

                                                                                                                                                            dtbsv: INativeBlas["dtbsv"] = nblas.dtbsv
                                                                                                                                                            diff --git a/docs/variables/dtpmv.html b/docs/variables/dtpmv.html new file mode 100644 index 0000000..dd54b3d --- /dev/null +++ b/docs/variables/dtpmv.html @@ -0,0 +1 @@ +dtpmv | nblas
                                                                                                                                                            nblas
                                                                                                                                                              Preparing search index...

                                                                                                                                                              Variable dtpmvConst

                                                                                                                                                              dtpmv: INativeBlas["dtpmv"] = nblas.dtpmv
                                                                                                                                                              diff --git a/docs/variables/dtpsv.html b/docs/variables/dtpsv.html new file mode 100644 index 0000000..120d122 --- /dev/null +++ b/docs/variables/dtpsv.html @@ -0,0 +1 @@ +dtpsv | nblas
                                                                                                                                                              nblas
                                                                                                                                                                Preparing search index...

                                                                                                                                                                Variable dtpsvConst

                                                                                                                                                                dtpsv: INativeBlas["dtpsv"] = nblas.dtpsv
                                                                                                                                                                diff --git a/docs/variables/dtrmm.html b/docs/variables/dtrmm.html new file mode 100644 index 0000000..2cea9f9 --- /dev/null +++ b/docs/variables/dtrmm.html @@ -0,0 +1 @@ +dtrmm | nblas
                                                                                                                                                                nblas
                                                                                                                                                                  Preparing search index...

                                                                                                                                                                  Variable dtrmmConst

                                                                                                                                                                  dtrmm: INativeBlas["dtrmm"] = nblas.dtrmm
                                                                                                                                                                  diff --git a/docs/variables/dtrmv.html b/docs/variables/dtrmv.html new file mode 100644 index 0000000..7990783 --- /dev/null +++ b/docs/variables/dtrmv.html @@ -0,0 +1 @@ +dtrmv | nblas
                                                                                                                                                                  nblas
                                                                                                                                                                    Preparing search index...

                                                                                                                                                                    Variable dtrmvConst

                                                                                                                                                                    dtrmv: INativeBlas["dtrmv"] = nblas.dtrmv
                                                                                                                                                                    diff --git a/docs/variables/dtrsm.html b/docs/variables/dtrsm.html new file mode 100644 index 0000000..06619bf --- /dev/null +++ b/docs/variables/dtrsm.html @@ -0,0 +1 @@ +dtrsm | nblas
                                                                                                                                                                    nblas
                                                                                                                                                                      Preparing search index...

                                                                                                                                                                      Variable dtrsmConst

                                                                                                                                                                      dtrsm: INativeBlas["dtrsm"] = nblas.dtrsm
                                                                                                                                                                      diff --git a/docs/variables/dtrsv.html b/docs/variables/dtrsv.html new file mode 100644 index 0000000..1ee2c3a --- /dev/null +++ b/docs/variables/dtrsv.html @@ -0,0 +1 @@ +dtrsv | nblas
                                                                                                                                                                      nblas
                                                                                                                                                                        Preparing search index...

                                                                                                                                                                        Variable dtrsvConst

                                                                                                                                                                        dtrsv: INativeBlas["dtrsv"] = nblas.dtrsv
                                                                                                                                                                        diff --git a/docs/variables/dzasum.html b/docs/variables/dzasum.html new file mode 100644 index 0000000..ca20f96 --- /dev/null +++ b/docs/variables/dzasum.html @@ -0,0 +1 @@ +dzasum | nblas
                                                                                                                                                                        nblas
                                                                                                                                                                          Preparing search index...

                                                                                                                                                                          Variable dzasumConst

                                                                                                                                                                          dzasum: INativeBlas["dzasum"] = nblas.dzasum
                                                                                                                                                                          diff --git a/docs/variables/dznrm2.html b/docs/variables/dznrm2.html new file mode 100644 index 0000000..7a39f0e --- /dev/null +++ b/docs/variables/dznrm2.html @@ -0,0 +1 @@ +dznrm2 | nblas
                                                                                                                                                                          nblas
                                                                                                                                                                            Preparing search index...

                                                                                                                                                                            Variable dznrm2Const

                                                                                                                                                                            dznrm2: INativeBlas["dznrm2"] = nblas.dznrm2
                                                                                                                                                                            diff --git a/docs/variables/gbmv.html b/docs/variables/gbmv.html new file mode 100644 index 0000000..e3ba58b --- /dev/null +++ b/docs/variables/gbmv.html @@ -0,0 +1 @@ +gbmv | nblas
                                                                                                                                                                            nblas
                                                                                                                                                                              Preparing search index...

                                                                                                                                                                              Variable gbmvConst

                                                                                                                                                                              gbmv: IConvenienceBlas["gbmv"] = ...
                                                                                                                                                                              diff --git a/docs/variables/gemm.html b/docs/variables/gemm.html new file mode 100644 index 0000000..e10e761 --- /dev/null +++ b/docs/variables/gemm.html @@ -0,0 +1 @@ +gemm | nblas
                                                                                                                                                                              nblas
                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                Variable gemmConst

                                                                                                                                                                                gemm: IConvenienceBlas["gemm"] = ...
                                                                                                                                                                                diff --git a/docs/variables/gemv.html b/docs/variables/gemv.html new file mode 100644 index 0000000..49a4529 --- /dev/null +++ b/docs/variables/gemv.html @@ -0,0 +1 @@ +gemv | nblas
                                                                                                                                                                                nblas
                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                  Variable gemvConst

                                                                                                                                                                                  gemv: IConvenienceBlas["gemv"] = ...
                                                                                                                                                                                  diff --git a/docs/variables/ger.html b/docs/variables/ger.html new file mode 100644 index 0000000..6b1a09a --- /dev/null +++ b/docs/variables/ger.html @@ -0,0 +1 @@ +ger | nblas
                                                                                                                                                                                  nblas
                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                    Variable gerConst

                                                                                                                                                                                    ger: IConvenienceBlas["ger"] = ...
                                                                                                                                                                                    diff --git a/docs/variables/iamax.html b/docs/variables/iamax.html new file mode 100644 index 0000000..96e078c --- /dev/null +++ b/docs/variables/iamax.html @@ -0,0 +1 @@ +iamax | nblas
                                                                                                                                                                                    nblas
                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                      Variable iamaxConst

                                                                                                                                                                                      iamax: IConvenienceBlas["iamax"] = ...
                                                                                                                                                                                      diff --git a/docs/variables/icamax.html b/docs/variables/icamax.html new file mode 100644 index 0000000..0abeeae --- /dev/null +++ b/docs/variables/icamax.html @@ -0,0 +1 @@ +icamax | nblas
                                                                                                                                                                                      nblas
                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                        Variable icamaxConst

                                                                                                                                                                                        icamax: INativeBlas["icamax"] = nblas.icamax
                                                                                                                                                                                        diff --git a/docs/variables/idamax.html b/docs/variables/idamax.html new file mode 100644 index 0000000..2ddf00a --- /dev/null +++ b/docs/variables/idamax.html @@ -0,0 +1 @@ +idamax | nblas
                                                                                                                                                                                        nblas
                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                          Variable idamaxConst

                                                                                                                                                                                          idamax: INativeBlas["idamax"] = nblas.idamax
                                                                                                                                                                                          diff --git a/docs/variables/isamax.html b/docs/variables/isamax.html new file mode 100644 index 0000000..550ba59 --- /dev/null +++ b/docs/variables/isamax.html @@ -0,0 +1 @@ +isamax | nblas
                                                                                                                                                                                          nblas
                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                            Variable isamaxConst

                                                                                                                                                                                            isamax: INativeBlas["isamax"] = nblas.isamax
                                                                                                                                                                                            diff --git a/docs/variables/izamax.html b/docs/variables/izamax.html new file mode 100644 index 0000000..fde2820 --- /dev/null +++ b/docs/variables/izamax.html @@ -0,0 +1 @@ +izamax | nblas
                                                                                                                                                                                            nblas
                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                              Variable izamaxConst

                                                                                                                                                                                              izamax: INativeBlas["izamax"] = nblas.izamax
                                                                                                                                                                                              diff --git a/docs/variables/nrm2.html b/docs/variables/nrm2.html new file mode 100644 index 0000000..b8541f5 --- /dev/null +++ b/docs/variables/nrm2.html @@ -0,0 +1 @@ +nrm2 | nblas
                                                                                                                                                                                              nblas
                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                Variable nrm2Const

                                                                                                                                                                                                nrm2: IConvenienceBlas["nrm2"] = ...
                                                                                                                                                                                                diff --git a/docs/variables/rot.html b/docs/variables/rot.html new file mode 100644 index 0000000..24c049b --- /dev/null +++ b/docs/variables/rot.html @@ -0,0 +1 @@ +rot | nblas
                                                                                                                                                                                                nblas
                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                  Variable rotConst

                                                                                                                                                                                                  rot: IConvenienceBlas["rot"] = ...
                                                                                                                                                                                                  diff --git a/docs/variables/rotg.html b/docs/variables/rotg.html new file mode 100644 index 0000000..805f297 --- /dev/null +++ b/docs/variables/rotg.html @@ -0,0 +1 @@ +rotg | nblas
                                                                                                                                                                                                  nblas
                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                    Variable rotgConst

                                                                                                                                                                                                    rotg: IConvenienceBlas["rotg"] = ...
                                                                                                                                                                                                    diff --git a/docs/variables/rotm.html b/docs/variables/rotm.html new file mode 100644 index 0000000..b71c250 --- /dev/null +++ b/docs/variables/rotm.html @@ -0,0 +1 @@ +rotm | nblas
                                                                                                                                                                                                    nblas
                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                      Variable rotmConst

                                                                                                                                                                                                      rotm: IConvenienceBlas["rotm"] = ...
                                                                                                                                                                                                      diff --git a/docs/variables/rotmg.html b/docs/variables/rotmg.html new file mode 100644 index 0000000..fe0e496 --- /dev/null +++ b/docs/variables/rotmg.html @@ -0,0 +1 @@ +rotmg | nblas
                                                                                                                                                                                                      nblas
                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                        Variable rotmgConst

                                                                                                                                                                                                        rotmg: IConvenienceBlas["rotmg"] = ...
                                                                                                                                                                                                        diff --git a/docs/variables/sasum.html b/docs/variables/sasum.html new file mode 100644 index 0000000..835196a --- /dev/null +++ b/docs/variables/sasum.html @@ -0,0 +1 @@ +sasum | nblas
                                                                                                                                                                                                        nblas
                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                          Variable sasumConst

                                                                                                                                                                                                          sasum: INativeBlas["sasum"] = nblas.sasum
                                                                                                                                                                                                          diff --git a/docs/variables/saxpy.html b/docs/variables/saxpy.html new file mode 100644 index 0000000..869bded --- /dev/null +++ b/docs/variables/saxpy.html @@ -0,0 +1 @@ +saxpy | nblas
                                                                                                                                                                                                          nblas
                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                            Variable saxpyConst

                                                                                                                                                                                                            saxpy: INativeBlas["saxpy"] = nblas.saxpy
                                                                                                                                                                                                            diff --git a/docs/variables/sbmv.html b/docs/variables/sbmv.html new file mode 100644 index 0000000..904c4ac --- /dev/null +++ b/docs/variables/sbmv.html @@ -0,0 +1 @@ +sbmv | nblas
                                                                                                                                                                                                            nblas
                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                              Variable sbmvConst

                                                                                                                                                                                                              sbmv: IConvenienceBlas["sbmv"] = ...
                                                                                                                                                                                                              diff --git a/docs/variables/scal.html b/docs/variables/scal.html new file mode 100644 index 0000000..ff1e827 --- /dev/null +++ b/docs/variables/scal.html @@ -0,0 +1 @@ +scal | nblas
                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                Variable scalConst

                                                                                                                                                                                                                scal: IConvenienceBlas["scal"] = ...
                                                                                                                                                                                                                diff --git a/docs/variables/scasum.html b/docs/variables/scasum.html new file mode 100644 index 0000000..0f5ea62 --- /dev/null +++ b/docs/variables/scasum.html @@ -0,0 +1 @@ +scasum | nblas
                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                  Variable scasumConst

                                                                                                                                                                                                                  scasum: INativeBlas["scasum"] = nblas.scasum
                                                                                                                                                                                                                  diff --git a/docs/variables/scnrm2.html b/docs/variables/scnrm2.html new file mode 100644 index 0000000..224eff7 --- /dev/null +++ b/docs/variables/scnrm2.html @@ -0,0 +1 @@ +scnrm2 | nblas
                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                    Variable scnrm2Const

                                                                                                                                                                                                                    scnrm2: INativeBlas["scnrm2"] = nblas.scnrm2
                                                                                                                                                                                                                    diff --git a/docs/variables/scopy.html b/docs/variables/scopy.html new file mode 100644 index 0000000..8b6a735 --- /dev/null +++ b/docs/variables/scopy.html @@ -0,0 +1 @@ +scopy | nblas
                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                      Variable scopyConst

                                                                                                                                                                                                                      scopy: INativeBlas["scopy"] = nblas.scopy
                                                                                                                                                                                                                      diff --git a/docs/variables/sdot.html b/docs/variables/sdot.html new file mode 100644 index 0000000..d96fea7 --- /dev/null +++ b/docs/variables/sdot.html @@ -0,0 +1 @@ +sdot | nblas
                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                        Variable sdotConst

                                                                                                                                                                                                                        sdot: INativeBlas["sdot"] = nblas.sdot
                                                                                                                                                                                                                        diff --git a/docs/variables/sdsdot.html b/docs/variables/sdsdot.html new file mode 100644 index 0000000..64b934a --- /dev/null +++ b/docs/variables/sdsdot.html @@ -0,0 +1 @@ +sdsdot | nblas
                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                          Variable sdsdotConst

                                                                                                                                                                                                                          sdsdot: INativeBlas["sdsdot"] = nblas.sdsdot
                                                                                                                                                                                                                          diff --git a/docs/variables/sgbmv.html b/docs/variables/sgbmv.html new file mode 100644 index 0000000..742e41d --- /dev/null +++ b/docs/variables/sgbmv.html @@ -0,0 +1 @@ +sgbmv | nblas
                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                            Variable sgbmvConst

                                                                                                                                                                                                                            sgbmv: INativeBlas["sgbmv"] = nblas.sgbmv
                                                                                                                                                                                                                            diff --git a/docs/variables/sgemm.html b/docs/variables/sgemm.html new file mode 100644 index 0000000..70de0eb --- /dev/null +++ b/docs/variables/sgemm.html @@ -0,0 +1 @@ +sgemm | nblas
                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                              Variable sgemmConst

                                                                                                                                                                                                                              sgemm: INativeBlas["sgemm"] = nblas.sgemm
                                                                                                                                                                                                                              diff --git a/docs/variables/sgemv.html b/docs/variables/sgemv.html new file mode 100644 index 0000000..e91450f --- /dev/null +++ b/docs/variables/sgemv.html @@ -0,0 +1 @@ +sgemv | nblas
                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                Variable sgemvConst

                                                                                                                                                                                                                                sgemv: INativeBlas["sgemv"] = nblas.sgemv
                                                                                                                                                                                                                                diff --git a/docs/variables/sger.html b/docs/variables/sger.html new file mode 100644 index 0000000..4516d73 --- /dev/null +++ b/docs/variables/sger.html @@ -0,0 +1 @@ +sger | nblas
                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                  Variable sgerConst

                                                                                                                                                                                                                                  sger: INativeBlas["sger"] = nblas.sger
                                                                                                                                                                                                                                  diff --git a/docs/variables/snrm2.html b/docs/variables/snrm2.html new file mode 100644 index 0000000..0bcf9ec --- /dev/null +++ b/docs/variables/snrm2.html @@ -0,0 +1 @@ +snrm2 | nblas
                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                    Variable snrm2Const

                                                                                                                                                                                                                                    snrm2: INativeBlas["snrm2"] = nblas.snrm2
                                                                                                                                                                                                                                    diff --git a/docs/variables/spmv.html b/docs/variables/spmv.html new file mode 100644 index 0000000..e80da77 --- /dev/null +++ b/docs/variables/spmv.html @@ -0,0 +1 @@ +spmv | nblas
                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                      Variable spmvConst

                                                                                                                                                                                                                                      spmv: IConvenienceBlas["spmv"] = ...
                                                                                                                                                                                                                                      diff --git a/docs/variables/spr.html b/docs/variables/spr.html new file mode 100644 index 0000000..28d735a --- /dev/null +++ b/docs/variables/spr.html @@ -0,0 +1 @@ +spr | nblas
                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                        Variable sprConst

                                                                                                                                                                                                                                        spr: IConvenienceBlas["spr"] = ...
                                                                                                                                                                                                                                        diff --git a/docs/variables/spr2.html b/docs/variables/spr2.html new file mode 100644 index 0000000..9186145 --- /dev/null +++ b/docs/variables/spr2.html @@ -0,0 +1 @@ +spr2 | nblas
                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                          Variable spr2Const

                                                                                                                                                                                                                                          spr2: IConvenienceBlas["spr2"] = ...
                                                                                                                                                                                                                                          diff --git a/docs/variables/srot.html b/docs/variables/srot.html new file mode 100644 index 0000000..0eb6022 --- /dev/null +++ b/docs/variables/srot.html @@ -0,0 +1 @@ +srot | nblas
                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                            Variable srotConst

                                                                                                                                                                                                                                            srot: INativeBlas["srot"] = nblas.srot
                                                                                                                                                                                                                                            diff --git a/docs/variables/srotg.html b/docs/variables/srotg.html new file mode 100644 index 0000000..fa507c3 --- /dev/null +++ b/docs/variables/srotg.html @@ -0,0 +1 @@ +srotg | nblas
                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                              Variable srotgConst

                                                                                                                                                                                                                                              srotg: INativeBlas["srotg"] = nblas.srotg
                                                                                                                                                                                                                                              diff --git a/docs/variables/srotm.html b/docs/variables/srotm.html new file mode 100644 index 0000000..bcfa88b --- /dev/null +++ b/docs/variables/srotm.html @@ -0,0 +1 @@ +srotm | nblas
                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                Variable srotmConst

                                                                                                                                                                                                                                                srotm: INativeBlas["srotm"] = nblas.srotm
                                                                                                                                                                                                                                                diff --git a/docs/variables/srotmg.html b/docs/variables/srotmg.html new file mode 100644 index 0000000..dc8d6bd --- /dev/null +++ b/docs/variables/srotmg.html @@ -0,0 +1 @@ +srotmg | nblas
                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                  Variable srotmgConst

                                                                                                                                                                                                                                                  srotmg: INativeBlas["srotmg"] = nblas.srotmg
                                                                                                                                                                                                                                                  diff --git a/docs/variables/ssbmv.html b/docs/variables/ssbmv.html new file mode 100644 index 0000000..d35491c --- /dev/null +++ b/docs/variables/ssbmv.html @@ -0,0 +1 @@ +ssbmv | nblas
                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                    Variable ssbmvConst

                                                                                                                                                                                                                                                    ssbmv: INativeBlas["ssbmv"] = nblas.ssbmv
                                                                                                                                                                                                                                                    diff --git a/docs/variables/sscal.html b/docs/variables/sscal.html new file mode 100644 index 0000000..a3fbfd9 --- /dev/null +++ b/docs/variables/sscal.html @@ -0,0 +1 @@ +sscal | nblas
                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                      Variable sscalConst

                                                                                                                                                                                                                                                      sscal: INativeBlas["sscal"] = nblas.sscal
                                                                                                                                                                                                                                                      diff --git a/docs/variables/sspmv.html b/docs/variables/sspmv.html new file mode 100644 index 0000000..76fa507 --- /dev/null +++ b/docs/variables/sspmv.html @@ -0,0 +1 @@ +sspmv | nblas
                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                        Variable sspmvConst

                                                                                                                                                                                                                                                        sspmv: INativeBlas["sspmv"] = nblas.sspmv
                                                                                                                                                                                                                                                        diff --git a/docs/variables/sspr.html b/docs/variables/sspr.html new file mode 100644 index 0000000..ef21fec --- /dev/null +++ b/docs/variables/sspr.html @@ -0,0 +1 @@ +sspr | nblas
                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                          Variable ssprConst

                                                                                                                                                                                                                                                          sspr: INativeBlas["sspr"] = nblas.sspr
                                                                                                                                                                                                                                                          diff --git a/docs/variables/sspr2.html b/docs/variables/sspr2.html new file mode 100644 index 0000000..ba9e368 --- /dev/null +++ b/docs/variables/sspr2.html @@ -0,0 +1 @@ +sspr2 | nblas
                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                            Variable sspr2Const

                                                                                                                                                                                                                                                            sspr2: INativeBlas["sspr2"] = nblas.sspr2
                                                                                                                                                                                                                                                            diff --git a/docs/variables/sswap.html b/docs/variables/sswap.html new file mode 100644 index 0000000..ddcfa9a --- /dev/null +++ b/docs/variables/sswap.html @@ -0,0 +1 @@ +sswap | nblas
                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                              Variable sswapConst

                                                                                                                                                                                                                                                              sswap: INativeBlas["sswap"] = nblas.sswap
                                                                                                                                                                                                                                                              diff --git a/docs/variables/ssymm.html b/docs/variables/ssymm.html new file mode 100644 index 0000000..a69202e --- /dev/null +++ b/docs/variables/ssymm.html @@ -0,0 +1 @@ +ssymm | nblas
                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                Variable ssymmConst

                                                                                                                                                                                                                                                                ssymm: INativeBlas["ssymm"] = nblas.ssymm
                                                                                                                                                                                                                                                                diff --git a/docs/variables/ssymv.html b/docs/variables/ssymv.html new file mode 100644 index 0000000..5702225 --- /dev/null +++ b/docs/variables/ssymv.html @@ -0,0 +1 @@ +ssymv | nblas
                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                  Variable ssymvConst

                                                                                                                                                                                                                                                                  ssymv: INativeBlas["ssymv"] = nblas.ssymv
                                                                                                                                                                                                                                                                  diff --git a/docs/variables/ssyr.html b/docs/variables/ssyr.html new file mode 100644 index 0000000..a124ece --- /dev/null +++ b/docs/variables/ssyr.html @@ -0,0 +1 @@ +ssyr | nblas
                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                    Variable ssyrConst

                                                                                                                                                                                                                                                                    ssyr: INativeBlas["ssyr"] = nblas.ssyr
                                                                                                                                                                                                                                                                    diff --git a/docs/variables/ssyr2.html b/docs/variables/ssyr2.html new file mode 100644 index 0000000..8de7307 --- /dev/null +++ b/docs/variables/ssyr2.html @@ -0,0 +1 @@ +ssyr2 | nblas
                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                      Variable ssyr2Const

                                                                                                                                                                                                                                                                      ssyr2: INativeBlas["ssyr2"] = nblas.ssyr2
                                                                                                                                                                                                                                                                      diff --git a/docs/variables/ssyr2k.html b/docs/variables/ssyr2k.html new file mode 100644 index 0000000..33032cf --- /dev/null +++ b/docs/variables/ssyr2k.html @@ -0,0 +1 @@ +ssyr2k | nblas
                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                        Variable ssyr2kConst

                                                                                                                                                                                                                                                                        ssyr2k: INativeBlas["ssyr2k"] = nblas.ssyr2k
                                                                                                                                                                                                                                                                        diff --git a/docs/variables/ssyrk.html b/docs/variables/ssyrk.html new file mode 100644 index 0000000..bdf3d9b --- /dev/null +++ b/docs/variables/ssyrk.html @@ -0,0 +1 @@ +ssyrk | nblas
                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                          Variable ssyrkConst

                                                                                                                                                                                                                                                                          ssyrk: INativeBlas["ssyrk"] = nblas.ssyrk
                                                                                                                                                                                                                                                                          diff --git a/docs/variables/stbmv.html b/docs/variables/stbmv.html new file mode 100644 index 0000000..16db115 --- /dev/null +++ b/docs/variables/stbmv.html @@ -0,0 +1 @@ +stbmv | nblas
                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                            Variable stbmvConst

                                                                                                                                                                                                                                                                            stbmv: INativeBlas["stbmv"] = nblas.stbmv
                                                                                                                                                                                                                                                                            diff --git a/docs/variables/stbsv.html b/docs/variables/stbsv.html new file mode 100644 index 0000000..daabfbf --- /dev/null +++ b/docs/variables/stbsv.html @@ -0,0 +1 @@ +stbsv | nblas
                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                              Variable stbsvConst

                                                                                                                                                                                                                                                                              stbsv: INativeBlas["stbsv"] = nblas.stbsv
                                                                                                                                                                                                                                                                              diff --git a/docs/variables/stpmv.html b/docs/variables/stpmv.html new file mode 100644 index 0000000..9944795 --- /dev/null +++ b/docs/variables/stpmv.html @@ -0,0 +1 @@ +stpmv | nblas
                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                Variable stpmvConst

                                                                                                                                                                                                                                                                                stpmv: INativeBlas["stpmv"] = nblas.stpmv
                                                                                                                                                                                                                                                                                diff --git a/docs/variables/stpsv.html b/docs/variables/stpsv.html new file mode 100644 index 0000000..9614cab --- /dev/null +++ b/docs/variables/stpsv.html @@ -0,0 +1 @@ +stpsv | nblas
                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                  Variable stpsvConst

                                                                                                                                                                                                                                                                                  stpsv: INativeBlas["stpsv"] = nblas.stpsv
                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/strmm.html b/docs/variables/strmm.html new file mode 100644 index 0000000..eb0cedc --- /dev/null +++ b/docs/variables/strmm.html @@ -0,0 +1 @@ +strmm | nblas
                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                    Variable strmmConst

                                                                                                                                                                                                                                                                                    strmm: INativeBlas["strmm"] = nblas.strmm
                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/strmv.html b/docs/variables/strmv.html new file mode 100644 index 0000000..b0a7f4b --- /dev/null +++ b/docs/variables/strmv.html @@ -0,0 +1 @@ +strmv | nblas
                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                      Variable strmvConst

                                                                                                                                                                                                                                                                                      strmv: INativeBlas["strmv"] = nblas.strmv
                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/strsm.html b/docs/variables/strsm.html new file mode 100644 index 0000000..ff8c197 --- /dev/null +++ b/docs/variables/strsm.html @@ -0,0 +1 @@ +strsm | nblas
                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                        Variable strsmConst

                                                                                                                                                                                                                                                                                        strsm: INativeBlas["strsm"] = nblas.strsm
                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/strsv.html b/docs/variables/strsv.html new file mode 100644 index 0000000..f73f504 --- /dev/null +++ b/docs/variables/strsv.html @@ -0,0 +1 @@ +strsv | nblas
                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                          Variable strsvConst

                                                                                                                                                                                                                                                                                          strsv: INativeBlas["strsv"] = nblas.strsv
                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/swap.html b/docs/variables/swap.html new file mode 100644 index 0000000..d06c34a --- /dev/null +++ b/docs/variables/swap.html @@ -0,0 +1 @@ +swap | nblas
                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                            Variable swapConst

                                                                                                                                                                                                                                                                                            swap: IConvenienceBlas["swap"] = ...
                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/symm.html b/docs/variables/symm.html new file mode 100644 index 0000000..b1d910f --- /dev/null +++ b/docs/variables/symm.html @@ -0,0 +1 @@ +symm | nblas
                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                              Variable symmConst

                                                                                                                                                                                                                                                                                              symm: IConvenienceBlas["symm"] = ...
                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/symv.html b/docs/variables/symv.html new file mode 100644 index 0000000..ee7d3dc --- /dev/null +++ b/docs/variables/symv.html @@ -0,0 +1 @@ +symv | nblas
                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                Variable symvConst

                                                                                                                                                                                                                                                                                                symv: IConvenienceBlas["symv"] = ...
                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/syr.html b/docs/variables/syr.html new file mode 100644 index 0000000..3c86599 --- /dev/null +++ b/docs/variables/syr.html @@ -0,0 +1 @@ +syr | nblas
                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                  Variable syrConst

                                                                                                                                                                                                                                                                                                  syr: IConvenienceBlas["syr"] = ...
                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/syr2.html b/docs/variables/syr2.html new file mode 100644 index 0000000..7d379e5 --- /dev/null +++ b/docs/variables/syr2.html @@ -0,0 +1 @@ +syr2 | nblas
                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                    Variable syr2Const

                                                                                                                                                                                                                                                                                                    syr2: IConvenienceBlas["syr2"] = ...
                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/syr2k.html b/docs/variables/syr2k.html new file mode 100644 index 0000000..0de7170 --- /dev/null +++ b/docs/variables/syr2k.html @@ -0,0 +1 @@ +syr2k | nblas
                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                      Variable syr2kConst

                                                                                                                                                                                                                                                                                                      syr2k: IConvenienceBlas["syr2k"] = ...
                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/syrk.html b/docs/variables/syrk.html new file mode 100644 index 0000000..af9de45 --- /dev/null +++ b/docs/variables/syrk.html @@ -0,0 +1 @@ +syrk | nblas
                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                        Variable syrkConst

                                                                                                                                                                                                                                                                                                        syrk: IConvenienceBlas["syrk"] = ...
                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/tbmv.html b/docs/variables/tbmv.html new file mode 100644 index 0000000..3404040 --- /dev/null +++ b/docs/variables/tbmv.html @@ -0,0 +1 @@ +tbmv | nblas
                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                          Variable tbmvConst

                                                                                                                                                                                                                                                                                                          tbmv: IConvenienceBlas["tbmv"] = ...
                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/tbsv.html b/docs/variables/tbsv.html new file mode 100644 index 0000000..e327797 --- /dev/null +++ b/docs/variables/tbsv.html @@ -0,0 +1 @@ +tbsv | nblas
                                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                            Variable tbsvConst

                                                                                                                                                                                                                                                                                                            tbsv: IConvenienceBlas["tbsv"] = ...
                                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/tpmv.html b/docs/variables/tpmv.html new file mode 100644 index 0000000..aec2f7b --- /dev/null +++ b/docs/variables/tpmv.html @@ -0,0 +1 @@ +tpmv | nblas
                                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                              Variable tpmvConst

                                                                                                                                                                                                                                                                                                              tpmv: IConvenienceBlas["tpmv"] = ...
                                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/tpsv.html b/docs/variables/tpsv.html new file mode 100644 index 0000000..cee8eb5 --- /dev/null +++ b/docs/variables/tpsv.html @@ -0,0 +1 @@ +tpsv | nblas
                                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                                Variable tpsvConst

                                                                                                                                                                                                                                                                                                                tpsv: IConvenienceBlas["tpsv"] = ...
                                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/trmm.html b/docs/variables/trmm.html new file mode 100644 index 0000000..4b22616 --- /dev/null +++ b/docs/variables/trmm.html @@ -0,0 +1 @@ +trmm | nblas
                                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                                  Variable trmmConst

                                                                                                                                                                                                                                                                                                                  trmm: IConvenienceBlas["trmm"] = ...
                                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/trmv.html b/docs/variables/trmv.html new file mode 100644 index 0000000..d907346 --- /dev/null +++ b/docs/variables/trmv.html @@ -0,0 +1 @@ +trmv | nblas
                                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                                    Variable trmvConst

                                                                                                                                                                                                                                                                                                                    trmv: IConvenienceBlas["trmv"] = ...
                                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/trsm.html b/docs/variables/trsm.html new file mode 100644 index 0000000..7637a20 --- /dev/null +++ b/docs/variables/trsm.html @@ -0,0 +1 @@ +trsm | nblas
                                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                                      Variable trsmConst

                                                                                                                                                                                                                                                                                                                      trsm: IConvenienceBlas["trsm"] = ...
                                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/trsv.html b/docs/variables/trsv.html new file mode 100644 index 0000000..68d6ca2 --- /dev/null +++ b/docs/variables/trsv.html @@ -0,0 +1 @@ +trsv | nblas
                                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                                        Variable trsvConst

                                                                                                                                                                                                                                                                                                                        trsv: IConvenienceBlas["trsv"] = ...
                                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/zaxpy.html b/docs/variables/zaxpy.html new file mode 100644 index 0000000..28e978e --- /dev/null +++ b/docs/variables/zaxpy.html @@ -0,0 +1 @@ +zaxpy | nblas
                                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                                          Variable zaxpyConst

                                                                                                                                                                                                                                                                                                                          zaxpy: INativeBlas["zaxpy"] = nblas.zaxpy
                                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/zcopy.html b/docs/variables/zcopy.html new file mode 100644 index 0000000..1f6c0e6 --- /dev/null +++ b/docs/variables/zcopy.html @@ -0,0 +1 @@ +zcopy | nblas
                                                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                                            Variable zcopyConst

                                                                                                                                                                                                                                                                                                                            zcopy: INativeBlas["zcopy"] = nblas.zcopy
                                                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/zdotc_sub.html b/docs/variables/zdotc_sub.html new file mode 100644 index 0000000..6f03cc4 --- /dev/null +++ b/docs/variables/zdotc_sub.html @@ -0,0 +1 @@ +zdotc_sub | nblas
                                                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                                              Variable zdotc_subConst

                                                                                                                                                                                                                                                                                                                              zdotc_sub: INativeBlas["zdotc_sub"] = nblas.zdotc_sub
                                                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/zdotu_sub.html b/docs/variables/zdotu_sub.html new file mode 100644 index 0000000..075198c --- /dev/null +++ b/docs/variables/zdotu_sub.html @@ -0,0 +1 @@ +zdotu_sub | nblas
                                                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                                                Variable zdotu_subConst

                                                                                                                                                                                                                                                                                                                                zdotu_sub: INativeBlas["zdotu_sub"] = nblas.zdotu_sub
                                                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/zdscal.html b/docs/variables/zdscal.html new file mode 100644 index 0000000..5e4cfce --- /dev/null +++ b/docs/variables/zdscal.html @@ -0,0 +1 @@ +zdscal | nblas
                                                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                                                  Variable zdscalConst

                                                                                                                                                                                                                                                                                                                                  zdscal: INativeBlas["zdscal"] = nblas.zdscal
                                                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/zgbmv.html b/docs/variables/zgbmv.html new file mode 100644 index 0000000..1e08ffd --- /dev/null +++ b/docs/variables/zgbmv.html @@ -0,0 +1 @@ +zgbmv | nblas
                                                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                                                    Variable zgbmvConst

                                                                                                                                                                                                                                                                                                                                    zgbmv: INativeBlas["zgbmv"] = nblas.zgbmv
                                                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/zgemm.html b/docs/variables/zgemm.html new file mode 100644 index 0000000..40addf6 --- /dev/null +++ b/docs/variables/zgemm.html @@ -0,0 +1 @@ +zgemm | nblas
                                                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                                                      Variable zgemmConst

                                                                                                                                                                                                                                                                                                                                      zgemm: INativeBlas["zgemm"] = nblas.zgemm
                                                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/zgemv.html b/docs/variables/zgemv.html new file mode 100644 index 0000000..bfb0ea0 --- /dev/null +++ b/docs/variables/zgemv.html @@ -0,0 +1 @@ +zgemv | nblas
                                                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                                                        Variable zgemvConst

                                                                                                                                                                                                                                                                                                                                        zgemv: INativeBlas["zgemv"] = nblas.zgemv
                                                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/zgerc.html b/docs/variables/zgerc.html new file mode 100644 index 0000000..d632120 --- /dev/null +++ b/docs/variables/zgerc.html @@ -0,0 +1 @@ +zgerc | nblas
                                                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                                                          Variable zgercConst

                                                                                                                                                                                                                                                                                                                                          zgerc: INativeBlas["zgerc"] = nblas.zgerc
                                                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/zgeru.html b/docs/variables/zgeru.html new file mode 100644 index 0000000..3ed95bc --- /dev/null +++ b/docs/variables/zgeru.html @@ -0,0 +1 @@ +zgeru | nblas
                                                                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                                                            Variable zgeruConst

                                                                                                                                                                                                                                                                                                                                            zgeru: INativeBlas["zgeru"] = nblas.zgeru
                                                                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/zhbmv.html b/docs/variables/zhbmv.html new file mode 100644 index 0000000..a7ccfde --- /dev/null +++ b/docs/variables/zhbmv.html @@ -0,0 +1 @@ +zhbmv | nblas
                                                                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                                                              Variable zhbmvConst

                                                                                                                                                                                                                                                                                                                                              zhbmv: INativeBlas["zhbmv"] = nblas.zhbmv
                                                                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/zhemm.html b/docs/variables/zhemm.html new file mode 100644 index 0000000..d2032ff --- /dev/null +++ b/docs/variables/zhemm.html @@ -0,0 +1 @@ +zhemm | nblas
                                                                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                                                                Variable zhemmConst

                                                                                                                                                                                                                                                                                                                                                zhemm: INativeBlas["zhemm"] = nblas.zhemm
                                                                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/zhemv.html b/docs/variables/zhemv.html new file mode 100644 index 0000000..ebca8c4 --- /dev/null +++ b/docs/variables/zhemv.html @@ -0,0 +1 @@ +zhemv | nblas
                                                                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                                                                  Variable zhemvConst

                                                                                                                                                                                                                                                                                                                                                  zhemv: INativeBlas["zhemv"] = nblas.zhemv
                                                                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/zher.html b/docs/variables/zher.html new file mode 100644 index 0000000..2d35c75 --- /dev/null +++ b/docs/variables/zher.html @@ -0,0 +1 @@ +zher | nblas
                                                                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                                                                    Variable zherConst

                                                                                                                                                                                                                                                                                                                                                    zher: INativeBlas["zher"] = nblas.zher
                                                                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/zher2.html b/docs/variables/zher2.html new file mode 100644 index 0000000..0ab058f --- /dev/null +++ b/docs/variables/zher2.html @@ -0,0 +1 @@ +zher2 | nblas
                                                                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                                                                      Variable zher2Const

                                                                                                                                                                                                                                                                                                                                                      zher2: INativeBlas["zher2"] = nblas.zher2
                                                                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/zher2k.html b/docs/variables/zher2k.html new file mode 100644 index 0000000..ae717fd --- /dev/null +++ b/docs/variables/zher2k.html @@ -0,0 +1 @@ +zher2k | nblas
                                                                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                                                                        Variable zher2kConst

                                                                                                                                                                                                                                                                                                                                                        zher2k: INativeBlas["zher2k"] = nblas.zher2k
                                                                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/zherk.html b/docs/variables/zherk.html new file mode 100644 index 0000000..b549f5d --- /dev/null +++ b/docs/variables/zherk.html @@ -0,0 +1 @@ +zherk | nblas
                                                                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                                                                          Variable zherkConst

                                                                                                                                                                                                                                                                                                                                                          zherk: INativeBlas["zherk"] = nblas.zherk
                                                                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/zhpmv.html b/docs/variables/zhpmv.html new file mode 100644 index 0000000..003c335 --- /dev/null +++ b/docs/variables/zhpmv.html @@ -0,0 +1 @@ +zhpmv | nblas
                                                                                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                                                                            Variable zhpmvConst

                                                                                                                                                                                                                                                                                                                                                            zhpmv: INativeBlas["zhpmv"] = nblas.zhpmv
                                                                                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/zhpr.html b/docs/variables/zhpr.html new file mode 100644 index 0000000..dd3a632 --- /dev/null +++ b/docs/variables/zhpr.html @@ -0,0 +1 @@ +zhpr | nblas
                                                                                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                                                                              Variable zhprConst

                                                                                                                                                                                                                                                                                                                                                              zhpr: INativeBlas["zhpr"] = nblas.zhpr
                                                                                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/zhpr2.html b/docs/variables/zhpr2.html new file mode 100644 index 0000000..2beacde --- /dev/null +++ b/docs/variables/zhpr2.html @@ -0,0 +1 @@ +zhpr2 | nblas
                                                                                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                Variable zhpr2Const

                                                                                                                                                                                                                                                                                                                                                                zhpr2: INativeBlas["zhpr2"] = nblas.zhpr2
                                                                                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/zscal.html b/docs/variables/zscal.html new file mode 100644 index 0000000..11f28a3 --- /dev/null +++ b/docs/variables/zscal.html @@ -0,0 +1 @@ +zscal | nblas
                                                                                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                  Variable zscalConst

                                                                                                                                                                                                                                                                                                                                                                  zscal: INativeBlas["zscal"] = nblas.zscal
                                                                                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/zswap.html b/docs/variables/zswap.html new file mode 100644 index 0000000..0cf17fd --- /dev/null +++ b/docs/variables/zswap.html @@ -0,0 +1 @@ +zswap | nblas
                                                                                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                    Variable zswapConst

                                                                                                                                                                                                                                                                                                                                                                    zswap: INativeBlas["zswap"] = nblas.zswap
                                                                                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/zsymm.html b/docs/variables/zsymm.html new file mode 100644 index 0000000..a0ecd54 --- /dev/null +++ b/docs/variables/zsymm.html @@ -0,0 +1 @@ +zsymm | nblas
                                                                                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                      Variable zsymmConst

                                                                                                                                                                                                                                                                                                                                                                      zsymm: INativeBlas["zsymm"] = nblas.zsymm
                                                                                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/zsyr2k.html b/docs/variables/zsyr2k.html new file mode 100644 index 0000000..dac0751 --- /dev/null +++ b/docs/variables/zsyr2k.html @@ -0,0 +1 @@ +zsyr2k | nblas
                                                                                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                        Variable zsyr2kConst

                                                                                                                                                                                                                                                                                                                                                                        zsyr2k: INativeBlas["zsyr2k"] = nblas.zsyr2k
                                                                                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/zsyrk.html b/docs/variables/zsyrk.html new file mode 100644 index 0000000..b989345 --- /dev/null +++ b/docs/variables/zsyrk.html @@ -0,0 +1 @@ +zsyrk | nblas
                                                                                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                          Variable zsyrkConst

                                                                                                                                                                                                                                                                                                                                                                          zsyrk: INativeBlas["zsyrk"] = nblas.zsyrk
                                                                                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/ztbmv.html b/docs/variables/ztbmv.html new file mode 100644 index 0000000..0f8dc23 --- /dev/null +++ b/docs/variables/ztbmv.html @@ -0,0 +1 @@ +ztbmv | nblas
                                                                                                                                                                                                                                                                                                                                                                          nblas
                                                                                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                            Variable ztbmvConst

                                                                                                                                                                                                                                                                                                                                                                            ztbmv: INativeBlas["ztbmv"] = nblas.ztbmv
                                                                                                                                                                                                                                                                                                                                                                            diff --git a/docs/variables/ztbsv.html b/docs/variables/ztbsv.html new file mode 100644 index 0000000..6679068 --- /dev/null +++ b/docs/variables/ztbsv.html @@ -0,0 +1 @@ +ztbsv | nblas
                                                                                                                                                                                                                                                                                                                                                                            nblas
                                                                                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                              Variable ztbsvConst

                                                                                                                                                                                                                                                                                                                                                                              ztbsv: INativeBlas["ztbsv"] = nblas.ztbsv
                                                                                                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/ztpmv.html b/docs/variables/ztpmv.html new file mode 100644 index 0000000..c652c2d --- /dev/null +++ b/docs/variables/ztpmv.html @@ -0,0 +1 @@ +ztpmv | nblas
                                                                                                                                                                                                                                                                                                                                                                              nblas
                                                                                                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                Variable ztpmvConst

                                                                                                                                                                                                                                                                                                                                                                                ztpmv: INativeBlas["ztpmv"] = nblas.ztpmv
                                                                                                                                                                                                                                                                                                                                                                                diff --git a/docs/variables/ztpsv.html b/docs/variables/ztpsv.html new file mode 100644 index 0000000..f981a32 --- /dev/null +++ b/docs/variables/ztpsv.html @@ -0,0 +1 @@ +ztpsv | nblas
                                                                                                                                                                                                                                                                                                                                                                                nblas
                                                                                                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                  Variable ztpsvConst

                                                                                                                                                                                                                                                                                                                                                                                  ztpsv: INativeBlas["ztpsv"] = nblas.ztpsv
                                                                                                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/ztrmm.html b/docs/variables/ztrmm.html new file mode 100644 index 0000000..1f14ee9 --- /dev/null +++ b/docs/variables/ztrmm.html @@ -0,0 +1 @@ +ztrmm | nblas
                                                                                                                                                                                                                                                                                                                                                                                  nblas
                                                                                                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                    Variable ztrmmConst

                                                                                                                                                                                                                                                                                                                                                                                    ztrmm: INativeBlas["ztrmm"] = nblas.ztrmm
                                                                                                                                                                                                                                                                                                                                                                                    diff --git a/docs/variables/ztrmv.html b/docs/variables/ztrmv.html new file mode 100644 index 0000000..bc364e2 --- /dev/null +++ b/docs/variables/ztrmv.html @@ -0,0 +1 @@ +ztrmv | nblas
                                                                                                                                                                                                                                                                                                                                                                                    nblas
                                                                                                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                      Variable ztrmvConst

                                                                                                                                                                                                                                                                                                                                                                                      ztrmv: INativeBlas["ztrmv"] = nblas.ztrmv
                                                                                                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/ztrsm.html b/docs/variables/ztrsm.html new file mode 100644 index 0000000..07bc71d --- /dev/null +++ b/docs/variables/ztrsm.html @@ -0,0 +1 @@ +ztrsm | nblas
                                                                                                                                                                                                                                                                                                                                                                                      nblas
                                                                                                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                        Variable ztrsmConst

                                                                                                                                                                                                                                                                                                                                                                                        ztrsm: INativeBlas["ztrsm"] = nblas.ztrsm
                                                                                                                                                                                                                                                                                                                                                                                        diff --git a/docs/variables/ztrsv.html b/docs/variables/ztrsv.html new file mode 100644 index 0000000..7bd16ff --- /dev/null +++ b/docs/variables/ztrsv.html @@ -0,0 +1 @@ +ztrsv | nblas
                                                                                                                                                                                                                                                                                                                                                                                        nblas
                                                                                                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                                                                                                          Variable ztrsvConst

                                                                                                                                                                                                                                                                                                                                                                                          ztrsv: INativeBlas["ztrsv"] = nblas.ztrsv
                                                                                                                                                                                                                                                                                                                                                                                          diff --git a/jest.config.js b/jest.config.js index e868c8f..68e74b9 100644 --- a/jest.config.js +++ b/jest.config.js @@ -191,5 +191,5 @@ module.exports = { // watchPathIgnorePatterns: [], // Whether to use watchman for file crawling - // watchman: true, + watchman: false, }; diff --git a/lib/cblas.h b/lib/cblas.h deleted file mode 100644 index 67c3cad..0000000 --- a/lib/cblas.h +++ /dev/null @@ -1,575 +0,0 @@ -#ifndef CBLAS_H -#define CBLAS_H -#include - -/* - * Enumerated and derived types - */ -#define CBLAS_INDEX size_t /* this may vary between platforms */ - -enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102}; -enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113}; -enum CBLAS_UPLO {CblasUpper=121, CblasLower=122}; -enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132}; -enum CBLAS_SIDE {CblasLeft=141, CblasRight=142}; - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * =========================================================================== - * Prototypes for level 1 BLAS functions (complex are recast as routines) - * =========================================================================== - */ -float cblas_sdsdot(const int N, const float alpha, const float *X, - const int incX, const float *Y, const int incY); -double cblas_dsdot(const int N, const float *X, const int incX, const float *Y, - const int incY); -float cblas_sdot(const int N, const float *X, const int incX, - const float *Y, const int incY); -double cblas_ddot(const int N, const double *X, const int incX, - const double *Y, const int incY); - -/* - * Functions having prefixes Z and C only - */ -void cblas_cdotu_sub(const int N, const void *X, const int incX, - const void *Y, const int incY, void *dotu); -void cblas_cdotc_sub(const int N, const void *X, const int incX, - const void *Y, const int incY, void *dotc); - -void cblas_zdotu_sub(const int N, const void *X, const int incX, - const void *Y, const int incY, void *dotu); -void cblas_zdotc_sub(const int N, const void *X, const int incX, - const void *Y, const int incY, void *dotc); - - -/* - * Functions having prefixes S D SC DZ - */ -float cblas_snrm2(const int N, const float *X, const int incX); -float cblas_sasum(const int N, const float *X, const int incX); - -double cblas_dnrm2(const int N, const double *X, const int incX); -double cblas_dasum(const int N, const double *X, const int incX); - -float cblas_scnrm2(const int N, const void *X, const int incX); -float cblas_scasum(const int N, const void *X, const int incX); - -double cblas_dznrm2(const int N, const void *X, const int incX); -double cblas_dzasum(const int N, const void *X, const int incX); - - -/* - * Functions having standard 4 prefixes (S D C Z) - */ -CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX); -CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX); -CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX); -CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX); - -/* - * =========================================================================== - * Prototypes for level 1 BLAS routines - * =========================================================================== - */ - -/* - * Routines with standard 4 prefixes (s, d, c, z) - */ -void cblas_sswap(const int N, float *X, const int incX, - float *Y, const int incY); -void cblas_scopy(const int N, const float *X, const int incX, - float *Y, const int incY); -void cblas_saxpy(const int N, const float alpha, const float *X, - const int incX, float *Y, const int incY); - -void cblas_dswap(const int N, double *X, const int incX, - double *Y, const int incY); -void cblas_dcopy(const int N, const double *X, const int incX, - double *Y, const int incY); -void cblas_daxpy(const int N, const double alpha, const double *X, - const int incX, double *Y, const int incY); - -void cblas_cswap(const int N, void *X, const int incX, - void *Y, const int incY); -void cblas_ccopy(const int N, const void *X, const int incX, - void *Y, const int incY); -void cblas_caxpy(const int N, const void *alpha, const void *X, - const int incX, void *Y, const int incY); - -void cblas_zswap(const int N, void *X, const int incX, - void *Y, const int incY); -void cblas_zcopy(const int N, const void *X, const int incX, - void *Y, const int incY); -void cblas_zaxpy(const int N, const void *alpha, const void *X, - const int incX, void *Y, const int incY); - - -/* - * Routines with S and D prefix only - */ -void cblas_srotg(float *a, float *b, float *c, float *s); -void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P); -void cblas_srot(const int N, float *X, const int incX, - float *Y, const int incY, const float c, const float s); -void cblas_srotm(const int N, float *X, const int incX, - float *Y, const int incY, const float *P); - -void cblas_drotg(double *a, double *b, double *c, double *s); -void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P); -void cblas_drot(const int N, double *X, const int incX, - double *Y, const int incY, const double c, const double s); -void cblas_drotm(const int N, double *X, const int incX, - double *Y, const int incY, const double *P); - - -/* - * Routines with S D C Z CS and ZD prefixes - */ -void cblas_sscal(const int N, const float alpha, float *X, const int incX); -void cblas_dscal(const int N, const double alpha, double *X, const int incX); -void cblas_cscal(const int N, const void *alpha, void *X, const int incX); -void cblas_zscal(const int N, const void *alpha, void *X, const int incX); -void cblas_csscal(const int N, const float alpha, void *X, const int incX); -void cblas_zdscal(const int N, const double alpha, void *X, const int incX); - -/* - * =========================================================================== - * Prototypes for level 2 BLAS - * =========================================================================== - */ - -/* - * Routines with standard 4 prefixes (S, D, C, Z) - */ -void cblas_sgemv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const float alpha, const float *A, const int lda, - const float *X, const int incX, const float beta, - float *Y, const int incY); -void cblas_sgbmv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const int KL, const int KU, const float alpha, - const float *A, const int lda, const float *X, - const int incX, const float beta, float *Y, const int incY); -void cblas_strmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const float *A, const int lda, - float *X, const int incX); -void cblas_stbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const float *A, const int lda, - float *X, const int incX); -void cblas_stpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const float *Ap, float *X, const int incX); -void cblas_strsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const float *A, const int lda, float *X, - const int incX); -void cblas_stbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const float *A, const int lda, - float *X, const int incX); -void cblas_stpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const float *Ap, float *X, const int incX); - -void cblas_dgemv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const double alpha, const double *A, const int lda, - const double *X, const int incX, const double beta, - double *Y, const int incY); -void cblas_dgbmv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const int KL, const int KU, const double alpha, - const double *A, const int lda, const double *X, - const int incX, const double beta, double *Y, const int incY); -void cblas_dtrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const double *A, const int lda, - double *X, const int incX); -void cblas_dtbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const double *A, const int lda, - double *X, const int incX); -void cblas_dtpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const double *Ap, double *X, const int incX); -void cblas_dtrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const double *A, const int lda, double *X, - const int incX); -void cblas_dtbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const double *A, const int lda, - double *X, const int incX); -void cblas_dtpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const double *Ap, double *X, const int incX); - -void cblas_cgemv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *X, const int incX, const void *beta, - void *Y, const int incY); -void cblas_cgbmv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const int KL, const int KU, const void *alpha, - const void *A, const int lda, const void *X, - const int incX, const void *beta, void *Y, const int incY); -void cblas_ctrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *A, const int lda, - void *X, const int incX); -void cblas_ctbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const void *A, const int lda, - void *X, const int incX); -void cblas_ctpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *Ap, void *X, const int incX); -void cblas_ctrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *A, const int lda, void *X, - const int incX); -void cblas_ctbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const void *A, const int lda, - void *X, const int incX); -void cblas_ctpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *Ap, void *X, const int incX); - -void cblas_zgemv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *X, const int incX, const void *beta, - void *Y, const int incY); -void cblas_zgbmv(const enum CBLAS_ORDER order, - const enum CBLAS_TRANSPOSE TransA, const int M, const int N, - const int KL, const int KU, const void *alpha, - const void *A, const int lda, const void *X, - const int incX, const void *beta, void *Y, const int incY); -void cblas_ztrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *A, const int lda, - void *X, const int incX); -void cblas_ztbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const void *A, const int lda, - void *X, const int incX); -void cblas_ztpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *Ap, void *X, const int incX); -void cblas_ztrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *A, const int lda, void *X, - const int incX); -void cblas_ztbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const int K, const void *A, const int lda, - void *X, const int incX); -void cblas_ztpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag, - const int N, const void *Ap, void *X, const int incX); - - -/* - * Routines with S and D prefixes only - */ -void cblas_ssymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *A, - const int lda, const float *X, const int incX, - const float beta, float *Y, const int incY); -void cblas_ssbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const int K, const float alpha, const float *A, - const int lda, const float *X, const int incX, - const float beta, float *Y, const int incY); -void cblas_sspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *Ap, - const float *X, const int incX, - const float beta, float *Y, const int incY); -void cblas_sger(const enum CBLAS_ORDER order, const int M, const int N, - const float alpha, const float *X, const int incX, - const float *Y, const int incY, float *A, const int lda); -void cblas_ssyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *X, - const int incX, float *A, const int lda); -void cblas_sspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *X, - const int incX, float *Ap); -void cblas_ssyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *X, - const int incX, const float *Y, const int incY, float *A, - const int lda); -void cblas_sspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const float *X, - const int incX, const float *Y, const int incY, float *A); - -void cblas_dsymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *A, - const int lda, const double *X, const int incX, - const double beta, double *Y, const int incY); -void cblas_dsbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const int K, const double alpha, const double *A, - const int lda, const double *X, const int incX, - const double beta, double *Y, const int incY); -void cblas_dspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *Ap, - const double *X, const int incX, - const double beta, double *Y, const int incY); -void cblas_dger(const enum CBLAS_ORDER order, const int M, const int N, - const double alpha, const double *X, const int incX, - const double *Y, const int incY, double *A, const int lda); -void cblas_dsyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *X, - const int incX, double *A, const int lda); -void cblas_dspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *X, - const int incX, double *Ap); -void cblas_dsyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *X, - const int incX, const double *Y, const int incY, double *A, - const int lda); -void cblas_dspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const double *X, - const int incX, const double *Y, const int incY, double *A); - - -/* - * Routines with C and Z prefixes only - */ -void cblas_chemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const void *alpha, const void *A, - const int lda, const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_chbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const int K, const void *alpha, const void *A, - const int lda, const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_chpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const void *alpha, const void *Ap, - const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_cgerc(const enum CBLAS_ORDER order, const int M, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_cher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const void *X, const int incX, - void *A, const int lda); -void cblas_chpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const float alpha, const void *X, - const int incX, void *A); -void cblas_cher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_chpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *Ap); - -void cblas_zhemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const void *alpha, const void *A, - const int lda, const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_zhbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const int K, const void *alpha, const void *A, - const int lda, const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_zhpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const void *alpha, const void *Ap, - const void *X, const int incX, - const void *beta, void *Y, const int incY); -void cblas_zgeru(const enum CBLAS_ORDER order, const int M, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_zgerc(const enum CBLAS_ORDER order, const int M, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_zher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const void *X, const int incX, - void *A, const int lda); -void cblas_zhpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, - const int N, const double alpha, const void *X, - const int incX, void *A); -void cblas_zher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *A, const int lda); -void cblas_zhpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N, - const void *alpha, const void *X, const int incX, - const void *Y, const int incY, void *Ap); - -/* - * =========================================================================== - * Prototypes for level 3 BLAS - * =========================================================================== - */ - -/* - * Routines with standard 4 prefixes (S, D, C, Z) - */ -void cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_TRANSPOSE TransB, const int M, const int N, - const int K, const float alpha, const float *A, - const int lda, const float *B, const int ldb, - const float beta, float *C, const int ldc); -void cblas_ssymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const float alpha, const float *A, const int lda, - const float *B, const int ldb, const float beta, - float *C, const int ldc); -void cblas_ssyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const float alpha, const float *A, const int lda, - const float beta, float *C, const int ldc); -void cblas_ssyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const float alpha, const float *A, const int lda, - const float *B, const int ldb, const float beta, - float *C, const int ldc); -void cblas_strmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const float alpha, const float *A, const int lda, - float *B, const int ldb); -void cblas_strsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const float alpha, const float *A, const int lda, - float *B, const int ldb); - -void cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_TRANSPOSE TransB, const int M, const int N, - const int K, const double alpha, const double *A, - const int lda, const double *B, const int ldb, - const double beta, double *C, const int ldc); -void cblas_dsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const double alpha, const double *A, const int lda, - const double *B, const int ldb, const double beta, - double *C, const int ldc); -void cblas_dsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const double alpha, const double *A, const int lda, - const double beta, double *C, const int ldc); -void cblas_dsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const double alpha, const double *A, const int lda, - const double *B, const int ldb, const double beta, - double *C, const int ldc); -void cblas_dtrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const double alpha, const double *A, const int lda, - double *B, const int ldb); -void cblas_dtrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const double alpha, const double *A, const int lda, - double *B, const int ldb); - -void cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_TRANSPOSE TransB, const int M, const int N, - const int K, const void *alpha, const void *A, - const int lda, const void *B, const int ldb, - const void *beta, void *C, const int ldc); -void cblas_csymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_csyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *beta, void *C, const int ldc); -void cblas_csyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_ctrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const void *alpha, const void *A, const int lda, - void *B, const int ldb); -void cblas_ctrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const void *alpha, const void *A, const int lda, - void *B, const int ldb); - -void cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_TRANSPOSE TransB, const int M, const int N, - const int K, const void *alpha, const void *A, - const int lda, const void *B, const int ldb, - const void *beta, void *C, const int ldc); -void cblas_zsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_zsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *beta, void *C, const int ldc); -void cblas_zsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_ztrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const void *alpha, const void *A, const int lda, - void *B, const int ldb); -void cblas_ztrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA, - const enum CBLAS_DIAG Diag, const int M, const int N, - const void *alpha, const void *A, const int lda, - void *B, const int ldb); - - -/* - * Routines with prefixes C and Z only - */ -void cblas_chemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_cherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const float alpha, const void *A, const int lda, - const float beta, void *C, const int ldc); -void cblas_cher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const float beta, - void *C, const int ldc); - -void cblas_zhemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side, - const enum CBLAS_UPLO Uplo, const int M, const int N, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const void *beta, - void *C, const int ldc); -void cblas_zherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const double alpha, const void *A, const int lda, - const double beta, void *C, const int ldc); -void cblas_zher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, - const enum CBLAS_TRANSPOSE Trans, const int N, const int K, - const void *alpha, const void *A, const int lda, - const void *B, const int ldb, const double beta, - void *C, const int ldc); - -void cblas_xerbla(int p, const char *rout, const char *form, ...); - -#ifdef __cplusplus -} -#endif -#endif \ No newline at end of file diff --git a/lib/routines.h b/lib/routines.h deleted file mode 100644 index fe74bbf..0000000 --- a/lib/routines.h +++ /dev/null @@ -1,129 +0,0 @@ -#ifndef ROUTINES_H -#define ROUTINES_H - -#include - -#if V8_MAJOR_VERSION < 8 - #define GET_CONTENTS(view) \ - (static_cast(view->Buffer()->GetContents().Data()) + view->ByteOffset()) -#else - #define GET_CONTENTS(view) \ - (static_cast(view->Buffer()->GetBackingStore()->Data()) + view->ByteOffset()) -#endif - -void dasum(const v8::FunctionCallbackInfo& info); -void sasum(const v8::FunctionCallbackInfo& info); -void dzasum(const v8::FunctionCallbackInfo& info); -void scasum(const v8::FunctionCallbackInfo& info); -void daxpy(const v8::FunctionCallbackInfo& info); -void saxpy(const v8::FunctionCallbackInfo& info); -void zaxpy(const v8::FunctionCallbackInfo& info); -void caxpy(const v8::FunctionCallbackInfo& info); -void dcopy(const v8::FunctionCallbackInfo& info); -void scopy(const v8::FunctionCallbackInfo& info); -void zcopy(const v8::FunctionCallbackInfo& info); -void ccopy(const v8::FunctionCallbackInfo& info); -void ddot(const v8::FunctionCallbackInfo& info); -void sdot(const v8::FunctionCallbackInfo& info); -void dsdot(const v8::FunctionCallbackInfo& info); -void sdsdot(const v8::FunctionCallbackInfo& info); -void dnrm2(const v8::FunctionCallbackInfo& info); -void snrm2(const v8::FunctionCallbackInfo& info); -void dznrm2(const v8::FunctionCallbackInfo& info); -void scnrm2(const v8::FunctionCallbackInfo& info); -void drot(const v8::FunctionCallbackInfo& info); -void srot(const v8::FunctionCallbackInfo& info); -void drotg(const v8::FunctionCallbackInfo& info); -void srotg(const v8::FunctionCallbackInfo& info); -void drotm(const v8::FunctionCallbackInfo& info); -void srotm(const v8::FunctionCallbackInfo& info); -void drotmg(const v8::FunctionCallbackInfo& info); -void srotmg(const v8::FunctionCallbackInfo& info); -void dscal(const v8::FunctionCallbackInfo& info); -void sscal(const v8::FunctionCallbackInfo& info); -void zscal(const v8::FunctionCallbackInfo& info); -void cscal(const v8::FunctionCallbackInfo& info); -void dswap(const v8::FunctionCallbackInfo& info); -void sswap(const v8::FunctionCallbackInfo& info); -void zswap(const v8::FunctionCallbackInfo& info); -void cswap(const v8::FunctionCallbackInfo& info); -void idamax(const v8::FunctionCallbackInfo& info); -void isamax(const v8::FunctionCallbackInfo& info); -void izamax(const v8::FunctionCallbackInfo& info); -void icamax(const v8::FunctionCallbackInfo& info); - -void dgbmv(const v8::FunctionCallbackInfo& info); -void sgbmv(const v8::FunctionCallbackInfo& info); -void zgbmv(const v8::FunctionCallbackInfo& info); -void cgbmv(const v8::FunctionCallbackInfo& info); -void dgemv(const v8::FunctionCallbackInfo& info); -void sgemv(const v8::FunctionCallbackInfo& info); -void zgemv(const v8::FunctionCallbackInfo& info); -void cgemv(const v8::FunctionCallbackInfo& info); -void dger(const v8::FunctionCallbackInfo& info); -void sger(const v8::FunctionCallbackInfo& info); -void dsbmv(const v8::FunctionCallbackInfo& info); -void ssbmv(const v8::FunctionCallbackInfo& info); -void dspmv(const v8::FunctionCallbackInfo& info); -void sspmv(const v8::FunctionCallbackInfo& info); -void dspr(const v8::FunctionCallbackInfo& info); -void sspr(const v8::FunctionCallbackInfo& info); -void dspr2(const v8::FunctionCallbackInfo& info); -void sspr2(const v8::FunctionCallbackInfo& info); -void dsymv(const v8::FunctionCallbackInfo& info); -void ssymv(const v8::FunctionCallbackInfo& info); -void dsyr(const v8::FunctionCallbackInfo& info); -void ssyr(const v8::FunctionCallbackInfo& info); -void dsyr2(const v8::FunctionCallbackInfo& info); -void ssyr2(const v8::FunctionCallbackInfo& info); -void dtbmv(const v8::FunctionCallbackInfo& info); -void stbmv(const v8::FunctionCallbackInfo& info); -void ztbmv(const v8::FunctionCallbackInfo& info); -void ctbmv(const v8::FunctionCallbackInfo& info); -void dtbsv(const v8::FunctionCallbackInfo& info); -void stbsv(const v8::FunctionCallbackInfo& info); -void ztbsv(const v8::FunctionCallbackInfo& info); -void ctbsv(const v8::FunctionCallbackInfo& info); -void dtpmv(const v8::FunctionCallbackInfo& info); -void stpmv(const v8::FunctionCallbackInfo& info); -void ztpmv(const v8::FunctionCallbackInfo& info); -void ctpmv(const v8::FunctionCallbackInfo& info); -void dtpsv(const v8::FunctionCallbackInfo& info); -void stpsv(const v8::FunctionCallbackInfo& info); -void ztpsv(const v8::FunctionCallbackInfo& info); -void ctpsv(const v8::FunctionCallbackInfo& info); -void dtrmv(const v8::FunctionCallbackInfo& info); -void strmv(const v8::FunctionCallbackInfo& info); -void ztrmv(const v8::FunctionCallbackInfo& info); -void ctrmv(const v8::FunctionCallbackInfo& info); -void dtrsv(const v8::FunctionCallbackInfo& info); -void strsv(const v8::FunctionCallbackInfo& info); -void ztrsv(const v8::FunctionCallbackInfo& info); -void ctrsv(const v8::FunctionCallbackInfo& info); - -void dgemm(const v8::FunctionCallbackInfo& info); -void sgemm(const v8::FunctionCallbackInfo& info); -void zgemm(const v8::FunctionCallbackInfo& info); -void cgemm(const v8::FunctionCallbackInfo& info); -void dsymm(const v8::FunctionCallbackInfo& info); -void ssymm(const v8::FunctionCallbackInfo& info); -void zsymm(const v8::FunctionCallbackInfo& info); -void csymm(const v8::FunctionCallbackInfo& info); -void dsyrk(const v8::FunctionCallbackInfo& info); -void ssyrk(const v8::FunctionCallbackInfo& info); -void zsyrk(const v8::FunctionCallbackInfo& info); -void csyrk(const v8::FunctionCallbackInfo& info); -void dsyr2k(const v8::FunctionCallbackInfo& info); -void ssyr2k(const v8::FunctionCallbackInfo& info); -void zsyr2k(const v8::FunctionCallbackInfo& info); -void csyr2k(const v8::FunctionCallbackInfo& info); -void dtrmm(const v8::FunctionCallbackInfo& info); -void strmm(const v8::FunctionCallbackInfo& info); -void ztrmm(const v8::FunctionCallbackInfo& info); -void ctrmm(const v8::FunctionCallbackInfo& info); -void dtrsm(const v8::FunctionCallbackInfo& info); -void strsm(const v8::FunctionCallbackInfo& info); -void ztrsm(const v8::FunctionCallbackInfo& info); -void ctrsm(const v8::FunctionCallbackInfo& info); - -#endif diff --git a/package-lock.json b/package-lock.json index d689459..cedf6ec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,23 +1,30 @@ { "name": "nblas", - "version": "2.1.12", + "version": "2.1.13", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "nblas", - "version": "2.1.12", + "version": "2.1.13", "hasInstallScript": true, "license": "MIT", + "dependencies": { + "node-addon-api": "^8.3.1", + "node-gyp": "^11.2.0" + }, "devDependencies": { "@types/jest": "^29.5.0", - "@types/node": "^18.15.11", + "@types/node": "^24.0.0", "jest": "^29.5.0", "prettier": "^2.8.7", "ts-jest": "^29.1.0", "ts-node": "^10.9.1", - "typedoc": "^0.24.4", - "typescript": "^5.0.4" + "typedoc": "^0.28.18", + "typescript": "^5.6.3" + }, + "engines": { + "node": ">=20" } }, "node_modules/@ampproject/remapping": { @@ -59,6 +66,7 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", "dev": true, + "peer": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.21.4", @@ -552,6 +560,128 @@ "node": ">=12" } }, + "node_modules/@gerrit0/mini-shiki": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.23.0.tgz", + "integrity": "sha512-bEMORlG0cqdjVyCEuU0cDQbORWX+kYCeo0kV1lbxF5bt4r7SID2l9bqsxJEM0zndaxpOUT7riCyIVEuqq/Ynxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/engine-oniguruma": "^3.23.0", + "@shikijs/langs": "^3.23.0", + "@shikijs/themes": "^3.23.0", + "@shikijs/types": "^3.23.0", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.2.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz", @@ -1354,6 +1484,111 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@npmcli/agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.23.0.tgz", + "integrity": "sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.23.0", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@shikijs/langs": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.23.0.tgz", + "integrity": "sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.23.0" + } + }, + "node_modules/@shikijs/themes": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.23.0.tgz", + "integrity": "sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.23.0" + } + }, + "node_modules/@shikijs/types": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.23.0.tgz", + "integrity": "sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "dev": true, + "license": "MIT" + }, "node_modules/@sinclair/typebox": { "version": "0.25.24", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", @@ -1452,6 +1687,16 @@ "@types/node": "*" } }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", @@ -1487,10 +1732,15 @@ } }, "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==", - "dev": true + "version": "24.12.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.0.tgz", + "integrity": "sha512-GYDxsZi3ChgmckRT9HPU0WEhKLP08ev/Yfcq2AstjrDASOYCSXeyjDsHg4v5t4jOj7cyDX3vmprafKlWIG9MXQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "undici-types": "~7.16.0" + } }, "node_modules/@types/prettier": { "version": "2.7.2", @@ -1504,6 +1754,13 @@ "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/yargs": { "version": "17.0.24", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", @@ -1519,6 +1776,15 @@ "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", "dev": true }, + "node_modules/abbrev": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.1.tgz", + "integrity": "sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==", + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/acorn": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", @@ -1540,6 +1806,15 @@ "node": ">=0.4.0" } }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -1571,17 +1846,10 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } }, - "node_modules/ansi-sequence-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz", - "integrity": "sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==", - "dev": true - }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -1793,8 +2061,7 @@ "node_modules/balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "node_modules/brace-expansion": { "version": "1.1.11", @@ -1833,6 +2100,7 @@ "url": "https://tidelift.com/funding/github/npm/browserslist" } ], + "peer": true, "dependencies": { "caniuse-lite": "^1.0.30001449", "electron-to-chromium": "^1.4.284", @@ -1873,6 +2141,80 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, + "node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", + "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1955,6 +2297,15 @@ "node": ">=10" } }, + "node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/ci-info": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", @@ -2029,10 +2380,10 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -2046,7 +2397,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -2061,7 +2411,6 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -2077,8 +2426,7 @@ "node_modules/debug/node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/dedent": { "version": "0.7.0", @@ -2113,6 +2461,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "license": "MIT" + }, "node_modules/electron-to-chromium": { "version": "1.4.367", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.367.tgz", @@ -2134,8 +2488,45 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "license": "MIT" }, "node_modules/error-ex": { "version": "1.3.2", @@ -2225,6 +2616,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/exponential-backoff": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", + "license": "Apache-2.0" + }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -2252,6 +2649,46 @@ "node": ">=8" } }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2340,8 +2777,7 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/has": { "version": "1.0.3", @@ -2370,6 +2806,38 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -2379,6 +2847,19 @@ "node": ">=10.17.0" } }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -2402,7 +2883,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, "engines": { "node": ">=0.8.19" } @@ -2423,6 +2903,15 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -2445,7 +2934,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, "engines": { "node": ">=8" } @@ -2480,8 +2968,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "node_modules/istanbul-lib-coverage": { "version": "3.2.0", @@ -2545,11 +3032,27 @@ "node": ">=8" } }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jest": { "version": "29.5.0", "resolved": "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz", "integrity": "sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==", "dev": true, + "peer": true, "dependencies": { "@jest/core": "^29.5.0", "@jest/types": "^29.5.0", @@ -4119,12 +4622,6 @@ "node": ">=6" } }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -4149,6 +4646,16 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "uc.micro": "^2.0.0" + } + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -4191,6 +4698,28 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", @@ -4200,18 +4729,38 @@ "tmpl": "1.0.5" } }, - "node_modules/marked": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", - "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "node_modules/markdown-it": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.1.tgz", + "integrity": "sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==", "dev": true, - "bin": { - "marked": "bin/marked.js" + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" }, - "engines": { - "node": ">= 12" + "bin": { + "markdown-it": "bin/markdown-it.mjs" } }, + "node_modules/markdown-it/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "dev": true, + "license": "MIT" + }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -4252,12 +4801,205 @@ "node": "*" } }, + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.1.tgz", + "integrity": "sha512-j7U11C5HXigVuutxebFadoYBbd7VSdZWggSe64NVdvWNBqGAiXPL2QVCehjmw7lY1oF9gOllYbORh+hiNgfPgQ==", + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.7.tgz", + "integrity": "sha512-TbqTz9cUwWyHS2Dy89P3ocAGUGxKjjLuR9z8w4WUTGAVgEj17/4nhgo2Du56i0Fm3Pm30g4iA8Lcqctc76jCzA==", + "license": "BlueOak-1.0.0", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" + }, + "node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-addon-api": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.7.0.tgz", + "integrity": "sha512-9MdFxmkKaOYVTV+XVRG8ArDwwQ77XIgIPyKASB1k3JPq3M8fGQQQE3YpMOrKm6g//Ktx8ivZr8xo1Qmtqub+GA==", + "engines": { + "node": "^18 || ^20 || >= 21" + } + }, + "node_modules/node-gyp": { + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.5.0.tgz", + "integrity": "sha512-ra7Kvlhxn5V9Slyus0ygMa2h+UqExPqUIkfk7Pc8QTLT956JLSy51uWFwHtIYy0vI8cB4BDhc/S03+880My/LQ==", + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "tar": "^7.4.3", + "tinyglobby": "^0.2.12", + "which": "^5.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/node-gyp/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", @@ -4270,6 +5012,21 @@ "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "dev": true }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "license": "ISC", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -4330,6 +5087,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-map": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.4.tgz", + "integrity": "sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -4339,6 +5108,12 @@ "node": ">=6" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "license": "BlueOak-1.0.0" + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -4379,7 +5154,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -4390,6 +5164,28 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -4507,6 +5303,28 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -4520,6 +5338,16 @@ "node": ">= 6" } }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/pure-rand": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.1.tgz", @@ -4598,12 +5426,28 @@ "node": ">=10" } }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, "node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT", + "optional": true + }, "node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -4617,7 +5461,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -4629,23 +5472,10 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } }, - "node_modules/shiki": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.1.tgz", - "integrity": "sha512-+Jz4nBkCBe0mEDqo1eKRcCdjRtrCjozmcbTUjbPTX7OOJfEbTZzlUWlZtGe3Gb5oV1/jnojhG//YZc3rs9zSEw==", - "dev": true, - "dependencies": { - "ansi-sequence-parser": "^1.1.0", - "jsonc-parser": "^3.2.0", - "vscode-oniguruma": "^1.7.0", - "vscode-textmate": "^8.0.0" - } - }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -4667,6 +5497,44 @@ "node": ">=8" } }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -4692,6 +5560,18 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, + "node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -4730,7 +5610,21 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -4744,7 +5638,19 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -4809,6 +5715,31 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/tar": { + "version": "7.5.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.13.tgz", + "integrity": "sha512-tOG/7GyXpFevhXVh8jOPJrmtRpOTsYqUIkVdVooZYJS/z8WhfQUX8RJILmeuJNinGAMSu1veBr4asSHFt5/hng==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -4823,6 +5754,52 @@ "node": ">=8" } }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -4940,6 +5917,7 @@ "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", "dev": true, + "peer": true, "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -4997,61 +5975,118 @@ } }, "node_modules/typedoc": { - "version": "0.24.4", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.24.4.tgz", - "integrity": "sha512-vQuliyGhJEGeKzzCFHbkS3m0gHoIL6cfr0fHf6eX658iGELtq2J9mWe0b+X5McEYgFoMuHFt5Py3Zug6Sxjn/Q==", + "version": "0.28.18", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.18.tgz", + "integrity": "sha512-NTWTUOFRQ9+SGKKTuWKUioUkjxNwtS3JDRPVKZAXGHZy2wCA8bdv2iJiyeePn0xkmK+TCCqZFT0X7+2+FLjngA==", "dev": true, + "license": "Apache-2.0", "dependencies": { + "@gerrit0/mini-shiki": "^3.23.0", "lunr": "^2.3.9", - "marked": "^4.3.0", - "minimatch": "^9.0.0", - "shiki": "^0.14.1" + "markdown-it": "^14.1.1", + "minimatch": "^10.2.4", + "yaml": "^2.8.2" }, "bin": { "typedoc": "bin/typedoc" }, "engines": { - "node": ">= 14.14" + "node": ">= 18", + "pnpm": ">= 10" }, "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x" + "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x" + } + }, + "node_modules/typedoc/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" } }, "node_modules/typedoc/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz", + "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==", "dev": true, + "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" } }, "node_modules/typedoc/node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^5.0.5" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "18 || 20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" + } + }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "dev": true, + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true, + "license": "MIT" + }, + "node_modules/unique-filename": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", + "license": "ISC", + "dependencies": { + "unique-slug": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/unique-slug": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/update-browserslist-db": { @@ -5129,18 +6164,6 @@ "@jridgewell/sourcemap-codec": "1.4.14" } }, - "node_modules/vscode-oniguruma": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", - "dev": true - }, - "node_modules/vscode-textmate": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", - "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", - "dev": true - }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -5150,6 +6173,30 @@ "makeerror": "1.0.12" } }, + "node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/which/node_modules/isexe": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.5.tgz", + "integrity": "sha512-6B3tLtFqtQS4ekarvLVMZ+X+VlvQekbe4taUkf/rhVO3d/h0M2rfARm/pXLcPEsjjMsFgrFgSrhQIxcSVrBz8w==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -5167,6 +6214,57 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, "node_modules/wrap-ansi/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -5212,6 +6310,22 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, + "node_modules/yaml": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", + "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, "node_modules/yn": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", diff --git a/package.json b/package.json index 861fb9c..ea140ec 100644 --- a/package.json +++ b/package.json @@ -1,22 +1,23 @@ { "name": "nblas", - "version": "2.1.13", + "version": "3.0.0", "description": "C++ bindings for all single- and double-precision CBLAS (Basic Linear Algebra Subprograms) routines.", "main": "dist/index.js", "types": "dist/index.d.ts", "scripts": { "test": "jest", + "codegen": "python3 scripts/codegen.py", "docs": "typedoc --out docs --exclude \"**/*+(.spec).ts\" src && touch docs/.nojekyll", - "build": "node-gyp rebuild -j max", - "prepublishOnly": "rm -rf dist && tsc", + "build": "npm run codegen && node-gyp rebuild -j max", + "prepublishOnly": "npm run codegen && rm -rf dist && tsc", "install": "npm run build" }, "files": [ "dist", + "scripts/codegen.py", "src/index.cc", "routines", - "lib", - "binding.gyp" + "lib" ], "nyc": { "extension": [ @@ -38,15 +39,22 @@ }, "homepage": "https://github.com/nperf/nblas#readme", "repository": "github:nperf/nblas", + "engines": { + "node": ">=20" + }, + "dependencies": { + "node-addon-api": "^8.3.1", + "node-gyp": "^11.2.0" + }, "devDependencies": { "@types/jest": "^29.5.0", - "@types/node": "^18.15.11", + "@types/node": "^24.0.0", "jest": "^29.5.0", "prettier": "^2.8.7", "ts-jest": "^29.1.0", "ts-node": "^10.9.1", - "typedoc": "^0.24.4", - "typescript": "^5.0.4" + "typedoc": "^0.28.18", + "typescript": "^5.6.3" }, "author": "Mateo Gianolio", "license": "MIT", diff --git a/routines/level1/asum.cc b/routines/level1/asum.cc deleted file mode 100644 index 1c5805b..0000000 --- a/routines/level1/asum.cc +++ /dev/null @@ -1,38 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dasum(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_dasum(n, x, inc_x)) - ); -} - -void sasum(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_sasum(n, x, inc_x)) - ); -} - -void dzasum(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_dzasum(n, x, inc_x)) - ); -} - -void scasum(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_scasum(n, x, inc_x)) - ); -} diff --git a/routines/level1/axpy.cc b/routines/level1/axpy.cc deleted file mode 100644 index 26b389f..0000000 --- a/routines/level1/axpy.cc +++ /dev/null @@ -1,42 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void daxpy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double alpha = info[1].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_y = info[5].As()->Value(); - cblas_daxpy(n, alpha, x, inc_x, y, inc_y); -} - -void saxpy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float alpha = info[1].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_y = info[5].As()->Value(); - cblas_saxpy(n, alpha, x, inc_x, y, inc_y); -} - -void zaxpy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[1].As())); - const double *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_y = info[5].As()->Value(); - cblas_zaxpy(n, alpha, x, inc_x, y, inc_y); -} - -void caxpy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[1].As())); - const float *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_y = info[5].As()->Value(); - cblas_caxpy(n, alpha, x, inc_x, y, inc_y); -} diff --git a/routines/level1/copy.cc b/routines/level1/copy.cc deleted file mode 100644 index ab7fbd9..0000000 --- a/routines/level1/copy.cc +++ /dev/null @@ -1,38 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dcopy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_dcopy(n, x, inc_x, y, inc_y); -} - -void scopy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_scopy(n, x, inc_x, y, inc_y); -} - -void zcopy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_zcopy(n, x, inc_x, y, inc_y); -} - -void ccopy(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_ccopy(n, x, inc_x, y, inc_y); -} diff --git a/routines/level1/dot.cc b/routines/level1/dot.cc deleted file mode 100644 index 2ff64ed..0000000 --- a/routines/level1/dot.cc +++ /dev/null @@ -1,24 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void ddot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - const double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_ddot(n, x, inc_x, y, inc_y)) - ); -} - -void sdot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_sdot(n, x, inc_x, y, inc_y)) - ); -} diff --git a/routines/level1/iamax.cc b/routines/level1/iamax.cc deleted file mode 100644 index 4e32d52..0000000 --- a/routines/level1/iamax.cc +++ /dev/null @@ -1,38 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void idamax(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_idamax(n, x, inc_x)) - ); -} - -void isamax(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_isamax(n, x, inc_x)) - ); -} - -void izamax(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_izamax(n, x, inc_x)) - ); -} - -void icamax(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_icamax(n, x, inc_x)) - ); -} diff --git a/routines/level1/nrm2.cc b/routines/level1/nrm2.cc deleted file mode 100644 index 6b43451..0000000 --- a/routines/level1/nrm2.cc +++ /dev/null @@ -1,38 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dnrm2(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_dnrm2(n, x, inc_x)) - ); -} - -void snrm2(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_snrm2(n, x, inc_x)) - ); -} - -void dznrm2(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_dznrm2(n, x, inc_x)) - ); -} - -void scnrm2(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_scnrm2(n, x, inc_x)) - ); -} diff --git a/routines/level1/rot.cc b/routines/level1/rot.cc deleted file mode 100644 index abdb099..0000000 --- a/routines/level1/rot.cc +++ /dev/null @@ -1,24 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void drot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - const double c = info[5].As()->Value(); - const double s = info[6].As()->Value(); - cblas_drot(n, x, inc_x, y, inc_y, c, s); -} - -void srot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - const float c = info[5].As()->Value(); - const float s = info[6].As()->Value(); - cblas_srot(n, x, inc_x, y, inc_y, c, s); -} diff --git a/routines/level1/rotg.cc b/routines/level1/rotg.cc deleted file mode 100644 index fc28c11..0000000 --- a/routines/level1/rotg.cc +++ /dev/null @@ -1,18 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void drotg(const v8::FunctionCallbackInfo& info) { - double *a = reinterpret_cast(GET_CONTENTS(info[0].As())); - double *b = reinterpret_cast(GET_CONTENTS(info[1].As())); - double *c = reinterpret_cast(GET_CONTENTS(info[2].As())); - double *s = reinterpret_cast(GET_CONTENTS(info[3].As())); - cblas_drotg(a, b, c, s); -} - -void srotg(const v8::FunctionCallbackInfo& info) { - float *a = reinterpret_cast(GET_CONTENTS(info[0].As())); - float *b = reinterpret_cast(GET_CONTENTS(info[1].As())); - float *c = reinterpret_cast(GET_CONTENTS(info[2].As())); - float *s = reinterpret_cast(GET_CONTENTS(info[3].As())); - cblas_srotg(a, b, c, s); -} diff --git a/routines/level1/rotm.cc b/routines/level1/rotm.cc deleted file mode 100644 index a81377c..0000000 --- a/routines/level1/rotm.cc +++ /dev/null @@ -1,22 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void drotm(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - const double *param = reinterpret_cast(GET_CONTENTS(info[5].As())); - cblas_drotm(n, x, inc_x, y, inc_y, param); -} - -void srotm(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - const float *param = reinterpret_cast(GET_CONTENTS(info[5].As())); - cblas_srotm(n, x, inc_x, y, inc_y, param); -} diff --git a/routines/level1/rotmg.cc b/routines/level1/rotmg.cc deleted file mode 100644 index 1dae059..0000000 --- a/routines/level1/rotmg.cc +++ /dev/null @@ -1,20 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void drotmg(const v8::FunctionCallbackInfo& info) { - double *d1 = reinterpret_cast(GET_CONTENTS(info[0].As())); - double *d2 = reinterpret_cast(GET_CONTENTS(info[1].As())); - double *b1 = reinterpret_cast(GET_CONTENTS(info[2].As())); - const double b2 = info[3].As()->Value(); - double *param = reinterpret_cast(GET_CONTENTS(info[4].As())); - cblas_drotmg(d1, d2, b1, b2, param); -} - -void srotmg(const v8::FunctionCallbackInfo& info) { - float *d1 = reinterpret_cast(GET_CONTENTS(info[0].As())); - float *d2 = reinterpret_cast(GET_CONTENTS(info[1].As())); - float *b1 = reinterpret_cast(GET_CONTENTS(info[2].As())); - const float b2 = info[3].As()->Value(); - float *param = reinterpret_cast(GET_CONTENTS(info[4].As())); - cblas_srotmg(d1, d2, b1, b2, param); -} diff --git a/routines/level1/scal.cc b/routines/level1/scal.cc deleted file mode 100644 index e5b2ed5..0000000 --- a/routines/level1/scal.cc +++ /dev/null @@ -1,34 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dscal(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double alpha = info[1].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - cblas_dscal(n, alpha, x, inc_x); -} - -void sscal(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float alpha = info[1].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - cblas_sscal(n, alpha, x, inc_x); -} - -void zscal(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[1].As())); - double *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - cblas_zscal(n, alpha, x, inc_x); -} - -void cscal(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[1].As())); - float *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - cblas_cscal(n, alpha, x, inc_x); -} diff --git a/routines/level1/sdot.cc b/routines/level1/sdot.cc deleted file mode 100644 index 601c3b5..0000000 --- a/routines/level1/sdot.cc +++ /dev/null @@ -1,25 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsdot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_dsdot(n, x, inc_x, y, inc_y)) - ); -} - -void sdsdot(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - const float alpha = info[1].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[2].As())); - const int inc_x = info[3].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_y = info[5].As()->Value(); - info.GetReturnValue().Set( - v8::Number::New(info.GetIsolate(), cblas_sdsdot(n, alpha, x, inc_x, y, inc_y)) - ); -} diff --git a/routines/level1/swap.cc b/routines/level1/swap.cc deleted file mode 100644 index ddfa7f3..0000000 --- a/routines/level1/swap.cc +++ /dev/null @@ -1,38 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dswap(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_dswap(n, x, inc_x, y, inc_y); -} - -void sswap(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_sswap(n, x, inc_x, y, inc_y); -} - -void zswap(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_zswap(n, x, inc_x, y, inc_y); -} - -void cswap(const v8::FunctionCallbackInfo& info) { - const int n = info[0].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[1].As())); - const int inc_x = info[2].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_y = info[4].As()->Value(); - cblas_cswap(n, x, inc_x, y, inc_y); -} diff --git a/routines/level2/gbmv.cc b/routines/level2/gbmv.cc deleted file mode 100644 index 43937d8..0000000 --- a/routines/level2/gbmv.cc +++ /dev/null @@ -1,70 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dgbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const int kl = info[3].As()->Value(); - const int ku = info[4].As()->Value(); - const double alpha = info[5].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_x = info[9].As()->Value(); - const double beta = info[10].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int inc_y = info[12].As()->Value(); - cblas_dgbmv(CblasRowMajor, trans, m, n, kl, ku, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void sgbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const int kl = info[3].As()->Value(); - const int ku = info[4].As()->Value(); - const float alpha = info[5].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_x = info[9].As()->Value(); - const float beta = info[10].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int inc_y = info[12].As()->Value(); - cblas_sgbmv(CblasRowMajor, trans, m, n, kl, ku, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void zgbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const int kl = info[3].As()->Value(); - const int ku = info[4].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[5].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_x = info[9].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[10].As())); - double *y = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int inc_y = info[12].As()->Value(); - cblas_zgbmv(CblasRowMajor, trans, m, n, kl, ku, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void cgbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const int kl = info[3].As()->Value(); - const int ku = info[4].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[5].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_x = info[9].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[10].As())); - float *y = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int inc_y = info[12].As()->Value(); - cblas_cgbmv(CblasRowMajor, trans, m, n, kl, ku, alpha, a, lda, x, inc_x, beta, y, inc_y); -} diff --git a/routines/level2/gemv.cc b/routines/level2/gemv.cc deleted file mode 100644 index 5c35d5e..0000000 --- a/routines/level2/gemv.cc +++ /dev/null @@ -1,62 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dgemv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const double alpha = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const double beta = info[8].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_dgemv(CblasRowMajor, trans, m, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void sgemv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const float alpha = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const float beta = info[8].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_sgemv(CblasRowMajor, trans, m, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void zgemv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[3].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[8].As())); - double *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_zgemv(CblasRowMajor, trans, m, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void cgemv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE trans = static_cast(info[0].As()->Value()); - const int m = info[1].As()->Value(); - const int n = info[2].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[3].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[8].As())); - float *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_cgemv(CblasRowMajor, trans, m, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} diff --git a/routines/level2/ger.cc b/routines/level2/ger.cc deleted file mode 100644 index 7d819b5..0000000 --- a/routines/level2/ger.cc +++ /dev/null @@ -1,28 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dger(const v8::FunctionCallbackInfo& info) { - unsigned int m = info[0].As()->Value(); - unsigned int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - unsigned int inc_x = info[4].As()->Value(); - const double *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - unsigned int inc_y = info[6].As()->Value(); - double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - unsigned int lda = info[8].As()->Value(); - cblas_dger(CblasRowMajor, m, n, alpha, x, inc_x, y, inc_y, a, lda); -} - -void sger(const v8::FunctionCallbackInfo& info) { - unsigned int m = info[0].As()->Value(); - unsigned int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - unsigned int inc_x = info[4].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - unsigned int inc_y = info[6].As()->Value(); - float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - unsigned int lda = info[8].As()->Value(); - cblas_sger(CblasRowMajor, m, n, alpha, x, inc_x, y, inc_y, a, lda); -} diff --git a/routines/level2/sbmv.cc b/routines/level2/sbmv.cc deleted file mode 100644 index 371b517..0000000 --- a/routines/level2/sbmv.cc +++ /dev/null @@ -1,32 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const int k = info[2].As()->Value(); - const double alpha = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const double beta = info[8].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_dsbmv(CblasRowMajor, uplo, n, k, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void ssbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const int k = info[2].As()->Value(); - const float alpha = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - const float beta = info[8].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int inc_y = info[10].As()->Value(); - cblas_ssbmv(CblasRowMajor, uplo, n, k, alpha, a, lda, x, inc_x, beta, y, inc_y); -} diff --git a/routines/level2/spmv.cc b/routines/level2/spmv.cc deleted file mode 100644 index bec3bc5..0000000 --- a/routines/level2/spmv.cc +++ /dev/null @@ -1,28 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dspmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *ap = reinterpret_cast(GET_CONTENTS(info[3].As())); - const double *x = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_x = info[5].As()->Value(); - const double beta = info[6].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_y = info[8].As()->Value(); - cblas_dspmv(CblasRowMajor, uplo, n, alpha, ap, x, inc_x, beta, y, inc_y); -} - -void sspmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *ap = reinterpret_cast(GET_CONTENTS(info[3].As())); - const float *x = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int inc_x = info[5].As()->Value(); - const float beta = info[6].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_y = info[8].As()->Value(); - cblas_sspmv(CblasRowMajor, uplo, n, alpha, ap, x, inc_x, beta, y, inc_y); -} diff --git a/routines/level2/spr.cc b/routines/level2/spr.cc deleted file mode 100644 index c11a08b..0000000 --- a/routines/level2/spr.cc +++ /dev/null @@ -1,22 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dspr(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - double *ap = reinterpret_cast(GET_CONTENTS(info[5].As())); - cblas_dspr(CblasRowMajor, uplo, n, alpha, x, inc_x, ap); -} - -void sspr(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - float *ap = reinterpret_cast(GET_CONTENTS(info[5].As())); - cblas_sspr(CblasRowMajor, uplo, n, alpha, x, inc_x, ap); -} diff --git a/routines/level2/spr2.cc b/routines/level2/spr2.cc deleted file mode 100644 index f2a197d..0000000 --- a/routines/level2/spr2.cc +++ /dev/null @@ -1,26 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dspr2(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - const double *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_y = info[6].As()->Value(); - double *ap = reinterpret_cast(GET_CONTENTS(info[7].As())); - cblas_dspr2(CblasRowMajor, uplo, n, alpha, x, inc_x, y, inc_y, ap); -} - -void sspr2(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_y = info[6].As()->Value(); - float *ap = reinterpret_cast(GET_CONTENTS(info[7].As())); - cblas_sspr2(CblasRowMajor, uplo, n, alpha, x, inc_x, y, inc_y, ap); -} diff --git a/routines/level2/symv.cc b/routines/level2/symv.cc deleted file mode 100644 index 422bc8f..0000000 --- a/routines/level2/symv.cc +++ /dev/null @@ -1,30 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsymv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int lda = info[4].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - const double beta = info[7].As()->Value(); - double *y = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_y = info[9].As()->Value(); - cblas_dsymv(CblasRowMajor, uplo, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} - -void ssymv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int lda = info[4].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - const float beta = info[7].As()->Value(); - float *y = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int inc_y = info[9].As()->Value(); - cblas_ssymv(CblasRowMajor, uplo, n, alpha, a, lda, x, inc_x, beta, y, inc_y); -} diff --git a/routines/level2/syr.cc b/routines/level2/syr.cc deleted file mode 100644 index 31587e0..0000000 --- a/routines/level2/syr.cc +++ /dev/null @@ -1,24 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsyr(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - cblas_dsyr(CblasRowMajor, uplo, n, alpha, x, inc_x, a, lda); -} - -void ssyr(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - cblas_ssyr(CblasRowMajor, uplo, n, alpha, x, inc_x, a, lda); -} diff --git a/routines/level2/syr2.cc b/routines/level2/syr2.cc deleted file mode 100644 index 9fc383e..0000000 --- a/routines/level2/syr2.cc +++ /dev/null @@ -1,28 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsyr2(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const double alpha = info[2].As()->Value(); - const double *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - const double *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_y = info[6].As()->Value(); - double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - cblas_dsyr2(CblasRowMajor, uplo, n, alpha, x, inc_x, y, inc_y, a, lda); -} - -void ssyr2(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const int n = info[1].As()->Value(); - const float alpha = info[2].As()->Value(); - const float *x = reinterpret_cast(GET_CONTENTS(info[3].As())); - const int inc_x = info[4].As()->Value(); - const float *y = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_y = info[6].As()->Value(); - float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - cblas_ssyr2(CblasRowMajor, uplo, n, alpha, x, inc_x, y, inc_y, a, lda); -} diff --git a/routines/level2/tbmv.cc b/routines/level2/tbmv.cc deleted file mode 100644 index 5a4c552..0000000 --- a/routines/level2/tbmv.cc +++ /dev/null @@ -1,54 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_dtbmv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void stbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_stbmv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void ztbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_ztbmv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void ctbmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_ctbmv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} diff --git a/routines/level2/tbsv.cc b/routines/level2/tbsv.cc deleted file mode 100644 index abc0f14..0000000 --- a/routines/level2/tbsv.cc +++ /dev/null @@ -1,54 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtbsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_dtbsv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void stbsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_stbsv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void ztbsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_ztbsv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} - -void ctbsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int inc_x = info[8].As()->Value(); - cblas_ctbsv(CblasRowMajor, uplo, trans, diag, n, k, a, lda, x, inc_x); -} diff --git a/routines/level2/tpmv.cc b/routines/level2/tpmv.cc deleted file mode 100644 index d1d3f08..0000000 --- a/routines/level2/tpmv.cc +++ /dev/null @@ -1,46 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtpmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - double *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_dtpmv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void stpmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - float *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_stpmv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void ztpmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - double *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_ztpmv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void ctpmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - float *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_ctpmv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} diff --git a/routines/level2/tpsv.cc b/routines/level2/tpsv.cc deleted file mode 100644 index 209cbcd..0000000 --- a/routines/level2/tpsv.cc +++ /dev/null @@ -1,46 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtpsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - double *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_dtpsv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void stpsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - float *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_stpsv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void ztpsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - double *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_ztpsv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} - -void ctpsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *ap = reinterpret_cast(GET_CONTENTS(info[4].As())); - float *x = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int inc_x = info[6].As()->Value(); - cblas_ctpsv(CblasRowMajor, uplo, trans, diag, n, ap, x, inc_x); -} diff --git a/routines/level2/trmv.cc b/routines/level2/trmv.cc deleted file mode 100644 index d140023..0000000 --- a/routines/level2/trmv.cc +++ /dev/null @@ -1,50 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtrmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_dtrmv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void strmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_strmv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void ztrmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_ztrmv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void ctrmv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_ctrmv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} diff --git a/routines/level2/trsv.cc b/routines/level2/trsv.cc deleted file mode 100644 index ce5e677..0000000 --- a/routines/level2/trsv.cc +++ /dev/null @@ -1,50 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtrsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_dtrsv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void strsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_strsv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void ztrsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - double *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_ztrsv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} - -void ctrsv(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[2].As()->Value()); - const int n = info[3].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[4].As())); - const int lda = info[5].As()->Value(); - float *x = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int inc_x = info[7].As()->Value(); - cblas_ctrsv(CblasRowMajor, uplo, trans, diag, n, a, lda, x, inc_x); -} diff --git a/routines/level3/gemm.cc b/routines/level3/gemm.cc deleted file mode 100644 index eff30a4..0000000 --- a/routines/level3/gemm.cc +++ /dev/null @@ -1,70 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dgemm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE transa = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE transb = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double alpha = info[5].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldb = info[9].As()->Value(); - const double beta = info[10].As()->Value(); - double *c = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int ldc = info[12].As()->Value(); - cblas_dgemm(CblasRowMajor, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void sgemm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE transa = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE transb = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float alpha = info[5].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldb = info[9].As()->Value(); - const float beta = info[10].As()->Value(); - float *c = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int ldc = info[12].As()->Value(); - cblas_sgemm(CblasRowMajor, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void zgemm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE transa = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE transb = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[5].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldb = info[9].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[10].As())); - double *c = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int ldc = info[12].As()->Value(); - cblas_zgemm(CblasRowMajor, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void cgemm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_TRANSPOSE transa = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE transb = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const int k = info[4].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[5].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[6].As())); - const int lda = info[7].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldb = info[9].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[10].As())); - float *c = reinterpret_cast(GET_CONTENTS(info[11].As())); - const int ldc = info[12].As()->Value(); - cblas_cgemm(CblasRowMajor, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} diff --git a/routines/level3/symm.cc b/routines/level3/symm.cc deleted file mode 100644 index 4bb52a5..0000000 --- a/routines/level3/symm.cc +++ /dev/null @@ -1,66 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsymm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const double alpha = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const double beta = info[9].As()->Value(); - double *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_dsymm(CblasRowMajor, side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void ssymm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const float alpha = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const float beta = info[9].As()->Value(); - float *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_ssymm(CblasRowMajor, side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void zsymm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[9].As())); - double *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_zsymm(CblasRowMajor, side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void csymm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const int m = info[2].As()->Value(); - const int n = info[3].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[9].As())); - float *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_csymm(CblasRowMajor, side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc); -} diff --git a/routines/level3/syr2k.cc b/routines/level3/syr2k.cc deleted file mode 100644 index 1680e11..0000000 --- a/routines/level3/syr2k.cc +++ /dev/null @@ -1,66 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsyr2k(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const double alpha = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const double beta = info[9].As()->Value(); - double *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_dsyr2k(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void ssyr2k(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const float alpha = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const float beta = info[9].As()->Value(); - float *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_ssyr2k(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void zsyr2k(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[9].As())); - double *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_zsyr2k(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} - -void csyr2k(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float *b = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int ldb = info[8].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[9].As())); - float *c = reinterpret_cast(GET_CONTENTS(info[10].As())); - const int ldc = info[11].As()->Value(); - cblas_csyr2k(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, b, ldb, beta, c, ldc); -} diff --git a/routines/level3/syrk.cc b/routines/level3/syrk.cc deleted file mode 100644 index 91a2af7..0000000 --- a/routines/level3/syrk.cc +++ /dev/null @@ -1,58 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dsyrk(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const double alpha = info[4].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double beta = info[7].As()->Value(); - double *c = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldc = info[9].As()->Value(); - cblas_dsyrk(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, beta, c, ldc); -} - -void ssyrk(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const float alpha = info[4].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float beta = info[7].As()->Value(); - float *c = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldc = info[9].As()->Value(); - cblas_ssyrk(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, beta, c, ldc); -} - -void zsyrk(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const double *beta = reinterpret_cast(GET_CONTENTS(info[7].As())); - double *c = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldc = info[9].As()->Value(); - cblas_zsyrk(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, beta, c, ldc); -} - -void csyrk(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_UPLO uplo = static_cast(info[0].As()->Value()); - const enum CBLAS_TRANSPOSE trans = static_cast(info[1].As()->Value()); - const int n = info[2].As()->Value(); - const int k = info[3].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[4].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[5].As())); - const int lda = info[6].As()->Value(); - const float *beta = reinterpret_cast(GET_CONTENTS(info[7].As())); - float *c = reinterpret_cast(GET_CONTENTS(info[8].As())); - const int ldc = info[9].As()->Value(); - cblas_csyrk(CblasRowMajor, uplo, trans, n, k, alpha, a, lda, beta, c, ldc); -} diff --git a/routines/level3/trmm.cc b/routines/level3/trmm.cc deleted file mode 100644 index 4d7cb92..0000000 --- a/routines/level3/trmm.cc +++ /dev/null @@ -1,62 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtrmm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const double alpha = info[6].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - double *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_dtrmm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void strmm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const float alpha = info[6].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - float *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_strmm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void ztrmm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[6].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - double *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_ztrmm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void ctrmm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[6].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - float *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_ctrmm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} diff --git a/routines/level3/trsm.cc b/routines/level3/trsm.cc deleted file mode 100644 index ee031ae..0000000 --- a/routines/level3/trsm.cc +++ /dev/null @@ -1,62 +0,0 @@ -#include "cblas.h" -#include "routines.h" - -void dtrsm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const double alpha = info[6].As()->Value(); - const double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - double *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_dtrsm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void strsm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const float alpha = info[6].As()->Value(); - const float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - float *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_strsm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void ztrsm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const double *alpha = reinterpret_cast(GET_CONTENTS(info[6].As())); - const double *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - double *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_ztrsm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} - -void ctrsm(const v8::FunctionCallbackInfo& info) { - const enum CBLAS_SIDE side = static_cast(info[0].As()->Value()); - const enum CBLAS_UPLO uplo = static_cast(info[1].As()->Value()); - const enum CBLAS_TRANSPOSE transa = static_cast(info[2].As()->Value()); - const enum CBLAS_DIAG diag = static_cast(info[3].As()->Value()); - const int m = info[4].As()->Value(); - const int n = info[5].As()->Value(); - const float *alpha = reinterpret_cast(GET_CONTENTS(info[6].As())); - const float *a = reinterpret_cast(GET_CONTENTS(info[7].As())); - const int lda = info[8].As()->Value(); - float *b = reinterpret_cast(GET_CONTENTS(info[9].As())); - const int ldb = info[10].As()->Value(); - cblas_ctrsm(CblasRowMajor, side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb); -} diff --git a/scripts/codegen.py b/scripts/codegen.py new file mode 100644 index 0000000..55a6563 --- /dev/null +++ b/scripts/codegen.py @@ -0,0 +1,1163 @@ +#!/usr/bin/env python3 + +from __future__ import annotations + +import argparse +import json +import os +import re +import shlex +import subprocess +import sys +from dataclasses import dataclass +from pathlib import Path + + +AUTO_GENERATED_BY = "scripts/codegen.py" +CBLAS_LEVEL_MARKERS = [ + ("Prototypes for level 1 BLAS functions", "level1"), + ("Prototypes for level 1 BLAS routines", "level1"), + ("Prototypes for level 2 BLAS", "level2"), + ("Prototypes for level 3 BLAS", "level3"), +] + + +@dataclass(frozen=True) +class Parameter: + type: str + name: str + + +@dataclass(frozen=True) +class Prototype: + level: str + return_type: str + native_name: str + wrapper_name: str + params: list[Parameter] + + +@dataclass(frozen=True) +class ConvenienceSpec: + name: str + type_signature: str + impl_signature: str + body: str + + +@dataclass(frozen=True) +class ParseConfig: + symbol_prefix: str + level_markers: tuple[tuple[str, str], ...] = () + default_level: str = "default" + + +@dataclass(frozen=True) +class RenderConfig: + header_include: str + module_name: str + strip_param_type: str | None = None + strip_param_value: str | None = None + native_types_path: str = "./generated-native-types" + native_module_path: str = "./generated-native" + convenience_types_path: str = "./generated-convenience-types" + emit_convenience: bool = False + + +@dataclass(frozen=True) +class OutputConfig: + root_dir: Path + routines_dir: Path + binding_gyp: Path + index_cc: Path + routines_header: Path + generated_native_types: Path + generated_native_ts: Path + generated_convenience_types: Path | None + generated_convenience_ts: Path | None + + +@dataclass(frozen=True) +class BlasSelection: + name: str + libraries: tuple[str, ...] + include_dirs: tuple[str, ...] = () + cflags: tuple[str, ...] = () + header_path: str | None = None + + +def normalize_whitespace(value: str) -> str: + return re.sub(r"\s+", " ", value).strip() + + +def parse_parameter(raw_param: str) -> Parameter | None: + param = normalize_whitespace(raw_param) + if param == "void": + return None + + match = re.match(r"^(.*?)([A-Za-z_]\w*)$", param) + if match is None: + raise ValueError(f"Failed to parse parameter: {raw_param}") + + return Parameter( + type=normalize_whitespace(re.sub(r"\s+\*$", " *", match.group(1)).strip()), + name=match.group(2), + ) + + +def parse_prototype(statement: str, config: ParseConfig, level: str) -> Prototype | None: + symbol_pattern = re.escape(config.symbol_prefix) + r"[A-Za-z0-9_]+" + match = re.match(rf"^(.*?)\s+({symbol_pattern})\s*\((.*)\)\s*;$", statement) + if match is None: + return None + + params_source = normalize_whitespace(match.group(3)) + if "..." in params_source: + return None + + params = [ + parsed + for raw_param in params_source.split(",") + if (parsed := parse_parameter(raw_param)) is not None + ] + native_name = match.group(2) + return_type = normalize_whitespace(match.group(1)) + + if should_skip_prototype(native_name, return_type): + return None + + return Prototype( + level=level, + return_type=return_type, + native_name=native_name, + wrapper_name=native_name[len(config.symbol_prefix) :], + params=params, + ) + + +def should_skip_prototype(native_name: str, return_type: str) -> bool: + # Some OpenBLAS headers expose non-portable direct-return complex dot + # variants (for example cblas_cdotu returning openblas_complex_float) + # alongside the portable *_sub routines. Skip those and keep generating + # against the portable CBLAS surface. + if native_name in {"cblas_cdotu", "cblas_cdotc", "cblas_zdotu", "cblas_zdotc"}: + return True + + if return_type in { + "openblas_complex_float", + "openblas_complex_double", + }: + return True + + return False + + +def normalize_header_source(source: str) -> str: + normalized_lines: list[str] = [] + for raw_line in source.splitlines(): + stripped = raw_line.strip() + if re.match(r"^API_[A-Z_]+\(", stripped): + normalized_lines.append(";") + continue + + line = raw_line + # Vendor BLAS headers sometimes prefix declarations with export macros + # (for example BLIS_EXPORT_BLAS). Strip those so the parser sees the + # underlying C type instead of a storage/export annotation. + line = re.sub(r"\b[A-Z][A-Z0-9_]*EXPORT[A-Z0-9_]*\b", "", line) + line = re.sub(r"\bBLIS_EXPORT_BLAS\b", "", line) + line = re.sub(r"\s{2,}", " ", line) + normalized_lines.append(line) + return "\n".join(normalized_lines) + + +def parse_header(source: str, config: ParseConfig) -> list[Prototype]: + statements: list[Prototype] = [] + current_level = config.default_level + prototype_buffer = "" + + for raw_line in normalize_header_source(source).splitlines(): + line = raw_line.strip() + + for marker, level in config.level_markers: + if marker in line: + current_level = level + break + + if ( + not line + or line.startswith("#") + or line.startswith("/*") + or line.startswith("*") + or line.startswith("//") + or line in {"extern \"C\" {", "}"} + ): + continue + + if not prototype_buffer and re.match(r"^[-A-Za-z_]", line) is None: + continue + + prototype_buffer = normalize_whitespace(f"{prototype_buffer} {line}") + if not line.endswith(";"): + continue + + prototype = parse_prototype(prototype_buffer, config, current_level) + if prototype is not None: + statements.append(prototype) + + prototype_buffer = "" + + return statements + + +def uses_float64_void_arrays(prototype: Prototype) -> bool: + return ( + prototype.wrapper_name.startswith("z") + or prototype.wrapper_name.startswith("dz") + or prototype.wrapper_name == "izamax" + ) + + +def pointer_array_type(prototype: Prototype, param: Parameter) -> str: + param_type = param.type + if any(token in param_type for token in ("double", "lapack_complex_double")): + return "Napi::Float64Array" + if any(token in param_type for token in ("float", "lapack_complex_float")): + return "Napi::Float32Array" + if any(token in param_type for token in ("lapack_int", "lapack_logical", "int")): + return "Napi::Int32Array" + if "void *" in param_type: + return "Napi::Float64Array" if uses_float64_void_arrays(prototype) else "Napi::Float32Array" + raise ValueError(f'Unsupported pointer parameter type "{param.type}" in {prototype.native_name}') + + +def cast_type(param: Parameter) -> str: + if "*" not in param.type: + raise ValueError(f'Unsupported cast type "{param.type}"') + + is_const = "const" in param.type + for source, target in ( + ("lapack_complex_double", "lapack_complex_double"), + ("lapack_complex_float", "lapack_complex_float"), + ("void", "void"), + ("double", "double"), + ("float", "float"), + ("lapack_int", "lapack_int"), + ("int", "int"), + ): + if source in param.type: + return f"{'const ' if is_const else ''}{target} *" + + raise ValueError(f'Unsupported cast type "{param.type}"') + + +def render_number_extractor(js_index: int, param: Parameter) -> str: + if "enum " in param.type: + enum_type = re.sub(r"^const\s+", "", param.type) + return f"static_cast<{enum_type}>(info[{js_index}].As().Int32Value())" + if any(token in param.type for token in ("size_t", "CBLAS_INDEX")): + return f"static_cast(info[{js_index}].As().Int64Value())" + if any(token in param.type for token in ("lapack_int", "lapack_logical", "int")): + target_type = "int" if "int" in param.type and "lapack_" not in param.type else param.type.replace("const ", "") + return f"static_cast<{target_type}>(info[{js_index}].As().Int32Value())" + if "float" in param.type: + return f"static_cast(info[{js_index}].As().FloatValue())" + if "double" in param.type: + return f"info[{js_index}].As().DoubleValue()" + raise ValueError(f'Unsupported numeric parameter type "{param.type}"') + + +def render_char_extractor(js_index: int) -> str: + return ( + f"({{ std::string value = info[{js_index}].As().Utf8Value(); " + "value.empty() ? '\\0' : value[0]; }})()" + ) + + +def render_param_declaration(prototype: Prototype, param: Parameter, js_index: int) -> str: + if "*" in param.type: + array_type = pointer_array_type(prototype, param) + cast = cast_type(param) + return ( + f" auto {param.name}Array = info[{js_index}].As<{array_type}>();\n" + f" {cast} {param.name} = reinterpret_cast<{cast}>({param.name}Array.Data());" + ) + + if re.fullmatch(r"const\s+char|char", param.type): + return f" const char {param.name} = {render_char_extractor(js_index)};" + + return ( + f" const {re.sub(r'^const\\s+', '', param.type)} {param.name} = " + f"{render_number_extractor(js_index, param)};" + ) + + +def render_return_statement(prototype: Prototype, call_expression: str) -> str: + if prototype.return_type == "void": + return f" {call_expression};\n return env.Undefined();" + if prototype.return_type in {"float", "double", "CBLAS_INDEX", "lapack_int", "lapack_logical", "int"}: + return f" return Napi::Number::New(env, {call_expression});" + raise ValueError(f'Unsupported return type "{prototype.return_type}" for {prototype.native_name}') + + +def should_strip_param(param: Parameter, config: RenderConfig) -> bool: + return config.strip_param_type is not None and config.strip_param_type in param.type + + +def render_call_arg(param: Parameter, config: RenderConfig) -> str: + if should_strip_param(param, config): + if config.strip_param_value is None: + raise ValueError(f"Missing strip value for parameter type {config.strip_param_type}") + return config.strip_param_value + return param.name + + +def render_routine(prototype: Prototype, config: RenderConfig) -> str: + js_params = [param for param in prototype.params if not should_strip_param(param, config)] + declarations = [render_param_declaration(prototype, param, index) for index, param in enumerate(js_params)] + call_args = [render_call_arg(param, config) for param in prototype.params] + body_lines = declarations + [render_return_statement(prototype, f"{prototype.native_name}({', '.join(call_args)})")] + + return f"""#include +#include "{config.header_include}" + +Napi::Value {prototype.wrapper_name}(const Napi::CallbackInfo& info) {{ + Napi::Env env = info.Env(); +{chr(10).join(body_lines)} +}} +""" + + +def render_index_cc(routines: list[Prototype], config: RenderConfig) -> str: + methods = [ + f' exports.Set(Napi::String::New(env, "{routine.wrapper_name}"), ' + f"Napi::Function::New(env, {routine.wrapper_name}));" + for routine in routines + ] + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +#include +#include "routines.h" + +Napi::Object Init(Napi::Env env, Napi::Object exports) {{ +{chr(10).join(methods)} + return exports; +}} + +NODE_API_MODULE({config.module_name}, Init) +""" + + +def render_routines_header(routines: list[Prototype]) -> str: + declarations = [f"Napi::Value {routine.wrapper_name}(const Napi::CallbackInfo& info);" for routine in routines] + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +#ifndef ROUTINES_H +#define ROUTINES_H + +#include + +{chr(10).join(declarations)} + +#endif +""" + + +def render_string_list(values: list[str], indent: str = " ") -> str: + return ",\n".join(f"{indent}{json.dumps(value)}" for value in values) + + +def render_binding_gyp( + source_files: list[str], + module_name: str, + include_dirs: list[str], + blas: BlasSelection, +) -> str: + sources = ["src/index.cc", *source_files] + include_dirs = list(dict.fromkeys([ + " list[str]: + return shlex.split(value.strip()) if value.strip() else [] + + +def pkg_config_exists(name: str) -> bool: + result = subprocess.run( + ["pkg-config", "--exists", name], + check=False, + stdout=subprocess.DEVNULL, + stderr=subprocess.DEVNULL, + ) + return result.returncode == 0 + + +def pkg_config_query(name: str, option: str) -> list[str]: + result = subprocess.run( + ["pkg-config", option, name], + check=True, + capture_output=True, + text=True, + ) + return split_pkg_config_flags(result.stdout) + + +def pkg_config_names_for_backend(name: str) -> list[str]: + if name == "mkl": + return [ + "mkl-sdl", + "mkl-dynamic-lp64-seq", + "mkl-dynamic-ilp64-seq", + ] + return [name] + + +def resolve_pkg_config_backend(name: str) -> BlasSelection | None: + for pkg_name in pkg_config_names_for_backend(name): + if not pkg_config_exists(pkg_name): + continue + + include_dirs: list[str] = [] + cflags: list[str] = [] + for flag in pkg_config_query(pkg_name, "--cflags"): + if flag.startswith("-I"): + include_dirs.append(flag[2:]) + else: + cflags.append(flag) + + return BlasSelection( + name=name, + libraries=tuple(pkg_config_query(pkg_name, "--libs")), + include_dirs=tuple(include_dirs), + cflags=tuple(cflags), + header_path=find_cblas_header(name, include_dirs), + ) + + return None + + +def resolve_accelerate_backend() -> BlasSelection: + header_path = find_cblas_header("accelerate", ()) + include_dirs = (str(Path(header_path).parent),) if header_path is not None else () + return BlasSelection( + name="accelerate", + libraries=("-framework Accelerate",), + include_dirs=include_dirs, + header_path=header_path, + ) + + +def sdk_search_roots() -> list[Path]: + if sys.platform != "darwin": + return [] + + roots: list[Path] = [] + for command in (["xcrun", "--show-sdk-path"],): + try: + result = subprocess.run(command, check=True, capture_output=True, text=True) + except (FileNotFoundError, subprocess.CalledProcessError): + continue + sdk_path = result.stdout.strip() + if sdk_path: + roots.append(Path(sdk_path)) + return roots + + +def candidate_header_paths(backend_name: str, include_dirs: tuple[str, ...]) -> list[Path]: + candidates: list[Path] = [] + seen: set[Path] = set() + + def add(path: Path) -> None: + resolved = path.expanduser() + if resolved in seen: + return + seen.add(resolved) + candidates.append(resolved) + + for include_dir in include_dirs: + add(Path(include_dir) / "cblas.h") + + env_header = os.environ.get("NBLAS_CBLAS_HEADER") + if env_header: + add(Path(env_header)) + + if backend_name == "accelerate": + for sdk_root in sdk_search_roots(): + add( + sdk_root + / "System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/cblas.h" + ) + add(sdk_root / "System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/Headers/cblas.h") + + for search_root in ( + Path("/opt/homebrew/include"), + Path("/usr/local/include"), + Path("/usr/include"), + Path("/opt/local/include"), + ): + add(search_root / "cblas.h") + + add(Path(__file__).resolve().parent.parent / "lib" / "cblas.h") + return candidates + + +def find_cblas_header(backend_name: str, include_dirs: tuple[str, ...]) -> str | None: + for candidate in candidate_header_paths(backend_name, include_dirs): + if candidate.exists(): + return str(candidate) + return None + + +def resolve_header_path(args: argparse.Namespace, blas: BlasSelection) -> Path: + if args.header: + return Path(args.header) + if blas.header_path: + return Path(blas.header_path) + raise RuntimeError( + f"Failed to find cblas.h for backend '{blas.name}'. " + "Set NBLAS_CBLAS_HEADER or pass --header with the path to cblas.h." + ) + + +def candidate_backend_names(platform: str, requested_order: str | None) -> list[str]: + if requested_order: + return [name.strip().lower() for name in requested_order.split(",") if name.strip()] + if platform == "darwin": + return ["accelerate", "openblas", "blis", "blas"] + return ["mkl", "openblas", "blis", "blas"] + + +def select_blas_backend(args: argparse.Namespace) -> BlasSelection: + requested_backend = ( + os.environ.get("NBLAS_BACKEND") + or os.environ.get("NBLAS_BLAS_BACKEND") + or args.blas_backend + ).strip().lower() + requested_order = os.environ.get("NBLAS_BLAS_ORDER") or args.blas_order + platform = sys.platform + + candidates = [requested_backend] if requested_backend != "auto" else candidate_backend_names(platform, requested_order) + + for candidate in candidates: + if candidate == "accelerate": + if platform == "darwin": + return resolve_accelerate_backend() + continue + + backend = resolve_pkg_config_backend(candidate) + if backend is not None: + return backend + + if requested_backend != "auto": + raise RuntimeError( + f"Requested BLAS backend '{requested_backend}' was not found. " + "Set NBLAS_BACKEND to a detected pkg-config package name or use NBLAS_BACKEND=auto." + ) + + raise RuntimeError( + "Failed to detect a BLAS backend. " + "Install a BLAS library with pkg-config metadata or set NBLAS_BACKEND explicitly." + ) + + +def render_ts_param_type(prototype: Prototype, param: Parameter) -> str: + if "*" in param.type: + if any(token in param.type for token in ("double", "lapack_complex_double")): + return "Float64Array" + if any(token in param.type for token in ("float", "lapack_complex_float")): + return "Float32Array" + if "void *" in param.type: + return "Float64Array" if uses_float64_void_arrays(prototype) else "Float32Array" + if any(token in param.type for token in ("lapack_int", "int")): + return "Int32Array" + + if "enum CBLAS_TRANSPOSE" in param.type: + return "111 | 112 | 113" + if "enum CBLAS_UPLO" in param.type: + return "121 | 122" + if "enum CBLAS_DIAG" in param.type: + return "131 | 132" + if "enum CBLAS_SIDE" in param.type: + return "141 | 142" + if re.fullmatch(r"const\s+char|char", param.type): + return "string" + if any(token in param.type for token in ("int", "float", "double", "size_t", "CBLAS_INDEX", "lapack_int", "lapack_logical")): + return "number" + + raise ValueError(f'Unsupported TS parameter type "{param.type}" in {prototype.native_name}') + + +def render_ts_return_type(prototype: Prototype) -> str: + if prototype.return_type == "void": + return "void" + if prototype.return_type in {"float", "double", "CBLAS_INDEX", "lapack_int", "lapack_logical", "int"}: + return "number" + raise ValueError(f'Unsupported TS return type "{prototype.return_type}" in {prototype.native_name}') + + +def render_generated_native_types(routines: list[Prototype], config: RenderConfig) -> str: + lines = [] + for routine in routines: + params = ", ".join( + f"{param.name}: {render_ts_param_type(routine, param)}" + for param in routine.params + if not should_strip_param(param, config) + ) + lines.append(f" {routine.wrapper_name}({params}): {render_ts_return_type(routine)};") + + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +export interface INativeBlas {{ +{chr(10).join(lines)} +}} +""" + + +def render_generated_native_ts(routines: list[Prototype], config: RenderConfig) -> str: + exports = [ + f"export const {routine.wrapper_name}: INativeBlas['{routine.wrapper_name}'] = nativeAddon.{routine.wrapper_name};" + for routine in routines + ] + + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +import {{ INativeBlas }} from '{config.native_types_path}'; + +function loadNativeAddon(): INativeBlas {{ + try {{ + return require('../build/Release/{config.module_name}'); + }} catch (releaseError) {{ + try {{ + return require('../build/Debug/{config.module_name}'); + }} catch {{ + const error = new Error('Failed to load the {config.module_name} native addon. Run `npm run build` first.'); + (error as Error & {{ cause?: unknown }}).cause = releaseError; + throw error; + }} + }} +}} + +const nativeAddon = loadNativeAddon(); + +export default nativeAddon; +{chr(10).join(exports)} +""" + + +def convenience_family(wrapper_name: str) -> str | None: + for pattern, replacement in ( + (r"^i[sdcz]amax$", "iamax"), + (r"^(?:[sd]|sc|dz)(asum|nrm2)$", r"\1"), + (r"^(?:[sd])(dot|rot|rotg|rotm|rotmg|ger|sbmv|spmv|spr|spr2|symv|syr|syr2)$", r"\1"), + (r"^(?:[sdcz])(axpy|copy|swap|scal|gbmv|gemv|tbmv|tbsv|tpmv|tpsv|trmv|trsv|gemm|symm|syrk|syr2k|trmm|trsm)$", r"\1"), + ): + if re.match(pattern, wrapper_name): + return re.sub(pattern, replacement, wrapper_name) + return None + + +def choose_representative_routine(routines: list[Prototype]) -> Prototype: + priority = [r"^d", r"^s", r"^dz", r"^sc", r"^z", r"^c"] + + def rank(routine: Prototype) -> int: + for index, pattern in enumerate(priority): + if re.match(pattern, routine.wrapper_name): + return index + return len(priority) + + return sorted(routines, key=rank)[0] + + +def default_for_convenience(name: str, type_name: str) -> str | None: + if name in {"alpha", "a"} and type_name == "number": + return "1" + if name == "beta" and type_name == "number": + return "0" + if name in {"k", "kl", "ku"} and type_name == "number": + return "0" + if type_name == "MatrixTrans": + return "NoTrans" + if type_name == "MatrixUpperLower": + return "Upper" + if type_name == "MatrixUnit": + return "NonUnit" + if type_name == "MatrixLeftRight": + return "Left" + return None + + +def format_convenience_params(params: list[tuple[str, str]], with_defaults: bool) -> str: + formatted = [] + for name, type_name in params: + default_value = default_for_convenience(name, type_name) + if with_defaults and default_value is not None: + formatted.append(f"{name}: {type_name} = {default_value}") + elif not with_defaults and default_value is not None: + formatted.append(f"{name}?: {type_name}") + else: + formatted.append(f"{name}: {type_name}") + return ", ".join(formatted) + + +def vector_param(name: str) -> tuple[str, str]: + return (name, "FloatArray") + + +def scalar_param(name: str) -> tuple[str, str]: + return (name, "number") + + +def enum_param(name: str, type_name: str) -> tuple[str, str]: + return (name, type_name) + + +def convenience_definition(params: list[tuple[str, str]], return_type: str, body: str) -> tuple[list[tuple[str, str]], str, str]: + return (params, return_type, body) + + +def unary_vector_definition(family: str) -> tuple[list[tuple[str, str]], str, str]: + return convenience_definition([vector_param("x")], "number", f"call('{family}', x, x.length, x, 1)") + + +def binary_vector_definition( + family: str, *, return_type: str = "void", with_alpha: bool = False +) -> tuple[list[tuple[str, str]], str, str]: + params = [vector_param("x"), vector_param("y")] + if with_alpha: + params.append(scalar_param("a")) + + if return_type == "number": + return convenience_definition(params, return_type, f"call('{family}', x, x.length, x, 1, y, 1)") + + body = ( + f"call('{family}', x, x.length, a, x, 1, y, 1)" + if with_alpha + else f"call('{family}', x, x.length, x, 1, y, 1)" + ) + return convenience_definition(params, return_type, body) + + +def build_convenience_definition(family: str, routine: Prototype) -> tuple[list[tuple[str, str]], str, str]: + if family in {"asum", "nrm2"}: + return unary_vector_definition(family) + if family == "iamax": + return convenience_definition([vector_param("x")], "number", "callIndex(x, x.length, x, 1)") + if family == "axpy": + return binary_vector_definition(family, with_alpha=True) + if family in {"copy", "swap"}: + return binary_vector_definition(family) + if family == "dot": + return binary_vector_definition(family, return_type="number") + if family == "scal": + return convenience_definition([vector_param("x"), scalar_param("a")], "void", "call('scal', x, x.length, a, x, 1)") + if family == "rot": + return convenience_definition( + [vector_param("x"), vector_param("y"), scalar_param("c"), scalar_param("s")], + "void", + "call('rot', x, x.length, x, 1, y, 1, c, s)", + ) + if family == "rotg": + return convenience_definition( + [vector_param("a"), vector_param("b"), vector_param("c"), vector_param("s")], + "void", + "call('rotg', a, a, b, c, s)", + ) + if family == "rotm": + return convenience_definition( + [vector_param("x"), vector_param("y"), vector_param("param")], + "void", + "call('rotm', x, x.length, x, 1, y, 1, param)", + ) + if family == "rotmg": + return convenience_definition( + [vector_param("d1"), vector_param("d2"), vector_param("x1"), vector_param("y1"), vector_param("param")], + "void", + "call('rotmg', d1, d1, d2, x1, y1, param)", + ) + if family == "gbmv": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), scalar_param("kl"), scalar_param("ku"), scalar_param("alpha"), scalar_param("beta"), enum_param("trans", "MatrixTrans")], + "void", + "call('gbmv', x, trans, x.length, y.length, kl, ku, alpha, a, x.length, x, 1, beta, y, 1)", + ) + if family == "gemv": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), scalar_param("alpha"), scalar_param("beta"), enum_param("trans", "MatrixTrans")], + "void", + "call('gemv', x, trans, x.length, y.length, alpha, a, x.length, x, 1, beta, y, 1)", + ) + if family == "ger": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), scalar_param("alpha")], + "void", + "call('ger', x, x.length, y.length, alpha, x, 1, y, 1, a, x.length)", + ) + if family == "sbmv": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), scalar_param("k"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('sbmv', x, uplo, x.length, k, alpha, a, x.length, x, 1, beta, y, 1)", + ) + if family == "spmv": + return convenience_definition( + [vector_param("ap"), vector_param("x"), vector_param("y"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('spmv', x, uplo, x.length, alpha, ap, x, 1, beta, y, 1)", + ) + if family == "spr": + return convenience_definition( + [vector_param("ap"), vector_param("x"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha")], + "void", + "call('spr', x, uplo, x.length, alpha, x, 1, ap)", + ) + if family == "spr2": + return convenience_definition( + [vector_param("ap"), vector_param("x"), vector_param("y"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha")], + "void", + "call('spr2', x, uplo, x.length, alpha, x, 1, y, 1, ap)", + ) + if family == "symv": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('symv', x, uplo, x.length, alpha, a, x.length, x, 1, beta, y, 1)", + ) + if family == "syr": + return convenience_definition( + [vector_param("a"), vector_param("x"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha")], + "void", + "call('syr', x, uplo, x.length, alpha, x, 1, a, x.length)", + ) + if family == "syr2": + return convenience_definition( + [vector_param("a"), vector_param("x"), vector_param("y"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha")], + "void", + "call('syr2', x, uplo, x.length, alpha, x, 1, y, 1, a, x.length)", + ) + if family in {"tbmv", "tbsv"}: + return convenience_definition( + [vector_param("a"), vector_param("x"), enum_param("uplo", "MatrixUpperLower"), enum_param("trans", "MatrixTrans"), enum_param("diag", "MatrixUnit")], + "void", + f"call('{family}', x, uplo, trans, diag, x.length, 0, a, x.length, x, 1)", + ) + if family in {"tpmv", "tpsv"}: + return convenience_definition( + [vector_param("ap"), vector_param("x"), enum_param("uplo", "MatrixUpperLower"), enum_param("trans", "MatrixTrans"), enum_param("diag", "MatrixUnit")], + "void", + f"call('{family}', x, uplo, trans, diag, x.length, ap, x, 1)", + ) + if family in {"trmv", "trsv"}: + return convenience_definition( + [vector_param("a"), vector_param("x"), enum_param("uplo", "MatrixUpperLower"), enum_param("trans", "MatrixTrans"), enum_param("diag", "MatrixUnit")], + "void", + f"call('{family}', x, uplo, trans, diag, x.length, a, x.length, x, 1)", + ) + if family == "gemm": + return convenience_definition( + [vector_param("a"), vector_param("b"), vector_param("c"), scalar_param("m"), scalar_param("n"), scalar_param("k"), enum_param("transa", "MatrixTrans"), enum_param("transb", "MatrixTrans"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('gemm', a, transa, transb, m, n, k, alpha, a, k, b, n, beta, c, n)", + ) + if family == "symm": + return convenience_definition( + [vector_param("a"), vector_param("b"), vector_param("c"), scalar_param("m"), scalar_param("n"), enum_param("side", "MatrixLeftRight"), enum_param("uplo", "MatrixUpperLower"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('symm', a, side, uplo, m, n, alpha, a, m, b, n, beta, c, m)", + ) + if family == "syrk": + return convenience_definition( + [vector_param("a"), vector_param("c"), scalar_param("n"), scalar_param("k"), enum_param("uplo", "MatrixUpperLower"), enum_param("trans", "MatrixTrans"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('syrk', a, uplo, trans, n, k, alpha, a, n, beta, c, n)", + ) + if family == "syr2k": + return convenience_definition( + [vector_param("a"), vector_param("b"), vector_param("c"), scalar_param("n"), scalar_param("k"), enum_param("uplo", "MatrixUpperLower"), enum_param("trans", "MatrixTrans"), scalar_param("alpha"), scalar_param("beta")], + "void", + "call('syr2k', a, uplo, trans, n, k, alpha, a, n, b, n, beta, c, n)", + ) + if family in {"trmm", "trsm"}: + return convenience_definition( + [vector_param("a"), vector_param("b"), scalar_param("m"), scalar_param("n"), enum_param("side", "MatrixLeftRight"), enum_param("uplo", "MatrixUpperLower"), enum_param("transa", "MatrixTrans"), enum_param("diag", "MatrixUnit"), scalar_param("alpha")], + "void", + f"call('{family}', a, side, uplo, transa, diag, m, n, alpha, a, m, b, m)", + ) + raise ValueError(f'No convenience generator available for family "{family}" from {routine.native_name}') + + +def derive_convenience_specs(routines: list[Prototype]) -> list[ConvenienceSpec]: + by_family: dict[str, list[Prototype]] = {} + for routine in routines: + family = convenience_family(routine.wrapper_name) + if family is not None: + by_family.setdefault(family, []).append(routine) + + specs: list[ConvenienceSpec] = [] + for family in sorted(by_family): + routine = choose_representative_routine(by_family[family]) + params, return_type, body = build_convenience_definition(family, routine) + specs.append( + ConvenienceSpec( + name=family, + type_signature=f"({format_convenience_params(params, False)}): {return_type}", + impl_signature=f"({format_convenience_params(params, True)}): {return_type}", + body=body, + ) + ) + return specs + + +def render_generated_convenience_types(specs: list[ConvenienceSpec]) -> str: + lines = [f" {spec.name}{spec.type_signature};" for spec in specs] + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +import type {{ + FloatArray, + MatrixLeftRight, + MatrixTrans, + MatrixUnit, + MatrixUpperLower, +}} from './types'; + +export interface IConvenienceBlas {{ +{chr(10).join(lines)} +}} +""" + + +def render_generated_convenience_ts(specs: list[ConvenienceSpec], config: RenderConfig) -> str: + exports = [ + f"export const {spec.name}: IConvenienceBlas['{spec.name}'] = {spec.impl_signature} => {spec.body};" + for spec in specs + ] + return f"""// This file is auto-generated by {AUTO_GENERATED_BY}. +// Do not edit it manually. + +import nativeAddon from '{config.native_module_path}'; +import {{ Left, NoTrans, NonUnit, Upper }} from './constants'; +import type {{ + FloatArray, + MatrixLeftRight, + MatrixTrans, + MatrixUnit, + MatrixUpperLower, +}} from './types'; +import type {{ IConvenienceBlas }} from '{config.convenience_types_path}'; +import {{ prefix }} from './util'; + +type NativeDispatch = Record any>; + +const native = nativeAddon as unknown as NativeDispatch; + +const call = (name: string, key: FloatArray, ...args: any[]): T => + native[`${{prefix(key)}}${{name}}`](...args) as T; + +const callIndex = (key: FloatArray, ...args: any[]): T => + native[`i${{prefix(key)}}amax`](...args) as T; + +{chr(10).join(exports)} +""" + + +def clear_generated_routine_sources(directory: Path) -> None: + if not directory.exists(): + return + + for path in directory.rglob("*.cc"): + path.unlink() + + for path in sorted(directory.rglob("*"), reverse=True): + if path.is_dir(): + try: + path.rmdir() + except OSError: + pass + + +def write_text(path: Path, content: str) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(content) + + +def posix_relpath(path: Path, start: Path) -> str: + return Path(os.path.relpath(path, start)).as_posix() + + +def default_output_config(root_dir: Path) -> OutputConfig: + return OutputConfig( + root_dir=root_dir, + routines_dir=root_dir / "routines", + binding_gyp=root_dir / "binding.gyp", + index_cc=root_dir / "src" / "index.cc", + routines_header=root_dir / "lib" / "routines.h", + generated_native_types=root_dir / "src" / "generated-native-types.ts", + generated_native_ts=root_dir / "src" / "generated-native.ts", + generated_convenience_types=root_dir / "src" / "generated-convenience-types.ts", + generated_convenience_ts=root_dir / "src" / "generated-convenience.ts", + ) + + +def parse_args() -> argparse.Namespace: + root_dir = Path(__file__).resolve().parent.parent + defaults = default_output_config(root_dir) + + parser = argparse.ArgumentParser(description="Generate Node-API wrappers from a C header.") + parser.add_argument("--header", default=None) + parser.add_argument("--symbol-prefix", default="cblas_") + parser.add_argument("--header-include", default=None) + parser.add_argument("--module-name", default="nblas") + parser.add_argument("--default-level", default="default") + parser.add_argument("--level-marker", action="append", default=[]) + parser.add_argument("--strip-param-type", default="enum CBLAS_ORDER") + parser.add_argument("--strip-param-value", default="CblasRowMajor") + parser.add_argument("--blas-backend", default="auto") + parser.add_argument("--blas-order", default=None) + parser.add_argument("--emit-convenience", action="store_true", default=True) + parser.add_argument("--no-convenience", action="store_false", dest="emit_convenience") + parser.add_argument("--routines-dir", default=str(defaults.routines_dir)) + parser.add_argument("--binding-gyp", default=str(defaults.binding_gyp)) + parser.add_argument("--index-cc", default=str(defaults.index_cc)) + parser.add_argument("--routines-header", default=str(defaults.routines_header)) + parser.add_argument("--generated-native-types", default=str(defaults.generated_native_types)) + parser.add_argument("--generated-native-ts", default=str(defaults.generated_native_ts)) + parser.add_argument("--generated-convenience-types", default=str(defaults.generated_convenience_types)) + parser.add_argument("--generated-convenience-ts", default=str(defaults.generated_convenience_ts)) + return parser.parse_args() + + +def build_parse_config(args: argparse.Namespace) -> ParseConfig: + level_markers = list(CBLAS_LEVEL_MARKERS) if args.symbol_prefix == "cblas_" and not args.level_marker else [] + for value in args.level_marker: + marker, level = value.split("=", 1) + level_markers.append((marker, level)) + return ParseConfig( + symbol_prefix=args.symbol_prefix, + level_markers=tuple(level_markers), + default_level=args.default_level, + ) + + +def build_render_config(args: argparse.Namespace) -> RenderConfig: + return RenderConfig( + header_include=args.header_include or "cblas.h", + module_name=args.module_name, + strip_param_type=args.strip_param_type or None, + strip_param_value=args.strip_param_value or None, + emit_convenience=args.emit_convenience, + ) + + +def build_output_config(args: argparse.Namespace) -> OutputConfig: + generated_convenience_types = Path(args.generated_convenience_types) if args.emit_convenience else None + generated_convenience_ts = Path(args.generated_convenience_ts) if args.emit_convenience else None + + return OutputConfig( + root_dir=Path(__file__).resolve().parent.parent, + routines_dir=Path(args.routines_dir), + binding_gyp=Path(args.binding_gyp), + index_cc=Path(args.index_cc), + routines_header=Path(args.routines_header), + generated_native_types=Path(args.generated_native_types), + generated_native_ts=Path(args.generated_native_ts), + generated_convenience_types=generated_convenience_types, + generated_convenience_ts=generated_convenience_ts, + ) + + +def main() -> None: + args = parse_args() + parse_config = build_parse_config(args) + render_config = build_render_config(args) + output_config = build_output_config(args) + blas = select_blas_backend(args) + header_path = resolve_header_path(args, blas) + include_dirs = [ + header_path.parent.as_posix(), + posix_relpath(output_config.routines_header.parent, output_config.binding_gyp.parent), + ] + header_include = args.header_include or header_path.name + render_config = RenderConfig( + header_include=header_include, + module_name=render_config.module_name, + strip_param_type=render_config.strip_param_type, + strip_param_value=render_config.strip_param_value, + native_types_path=render_config.native_types_path, + native_module_path=render_config.native_module_path, + convenience_types_path=render_config.convenience_types_path, + emit_convenience=render_config.emit_convenience, + ) + print(f"[nblas] Selected BLAS backend: {blas.name}") + print(f"[nblas] Using cblas header: {header_path}") + + routines = parse_header(header_path.read_text(), parse_config) + clear_generated_routine_sources(output_config.routines_dir) + + source_files: list[str] = [] + for routine in routines: + output_dir = output_config.routines_dir / routine.level + output_path = output_dir / f"{routine.wrapper_name}.cc" + write_text(output_path, render_routine(routine, render_config)) + source_files.append(posix_relpath(output_path, output_config.binding_gyp.parent)) + + source_files.sort() + + write_text(output_config.index_cc, render_index_cc(routines, render_config)) + write_text(output_config.routines_header, render_routines_header(routines)) + write_text(output_config.binding_gyp, render_binding_gyp(source_files, render_config.module_name, include_dirs, blas)) + write_text(output_config.generated_native_types, render_generated_native_types(routines, render_config)) + write_text(output_config.generated_native_ts, render_generated_native_ts(routines, render_config)) + + if render_config.emit_convenience: + convenience_specs = derive_convenience_specs(routines) + if output_config.generated_convenience_types is None or output_config.generated_convenience_ts is None: + raise ValueError("Convenience outputs must be configured when convenience generation is enabled.") + write_text(output_config.generated_convenience_types, render_generated_convenience_types(convenience_specs)) + write_text(output_config.generated_convenience_ts, render_generated_convenience_ts(convenience_specs, render_config)) + + +if __name__ == "__main__": + main() diff --git a/src/constants.ts b/src/constants.ts new file mode 100644 index 0000000..be02a57 --- /dev/null +++ b/src/constants.ts @@ -0,0 +1,14 @@ +import { MatrixLeftRight, MatrixTrans, MatrixUnit, MatrixUpperLower } from './types'; + +export const NoTrans: MatrixTrans = 111; +export const Trans: MatrixTrans = 112; +export const ConjTrans: MatrixTrans = 113; + +export const Upper: MatrixUpperLower = 121; +export const Lower: MatrixUpperLower = 122; + +export const NonUnit: MatrixUnit = 131; +export const Unit: MatrixUnit = 132; + +export const Left: MatrixLeftRight = 141; +export const Right: MatrixLeftRight = 142; diff --git a/src/index.cc b/src/index.cc index ae0883d..bad09cb 100644 --- a/src/index.cc +++ b/src/index.cc @@ -1,121 +1,157 @@ -#include -#include "routines.h" - -void Init(v8::Local exports) { - NODE_SET_METHOD(exports, "dasum", dasum); - NODE_SET_METHOD(exports, "sasum", sasum); - NODE_SET_METHOD(exports, "dzasum", dzasum); - NODE_SET_METHOD(exports, "scasum", scasum); - NODE_SET_METHOD(exports, "daxpy", daxpy); - NODE_SET_METHOD(exports, "saxpy", saxpy); - NODE_SET_METHOD(exports, "zaxpy", zaxpy); - NODE_SET_METHOD(exports, "caxpy", caxpy); - NODE_SET_METHOD(exports, "dcopy", dcopy); - NODE_SET_METHOD(exports, "scopy", scopy); - NODE_SET_METHOD(exports, "zcopy", zcopy); - NODE_SET_METHOD(exports, "ccopy", ccopy); - NODE_SET_METHOD(exports, "ddot", ddot); - NODE_SET_METHOD(exports, "sdot", sdot); - NODE_SET_METHOD(exports, "dsdot", dsdot); - NODE_SET_METHOD(exports, "sdsdot", sdsdot); - NODE_SET_METHOD(exports, "dnrm2", dnrm2); - NODE_SET_METHOD(exports, "snrm2", snrm2); - NODE_SET_METHOD(exports, "dznrm2", dznrm2); - NODE_SET_METHOD(exports, "scnrm2", scnrm2); - NODE_SET_METHOD(exports, "drot", drot); - NODE_SET_METHOD(exports, "srot", srot); - NODE_SET_METHOD(exports, "drotg", drotg); - NODE_SET_METHOD(exports, "srotg", srotg); - NODE_SET_METHOD(exports, "drotm", drotm); - NODE_SET_METHOD(exports, "srotm", srotm); - NODE_SET_METHOD(exports, "drotmg", drotmg); - NODE_SET_METHOD(exports, "srotmg", srotmg); - NODE_SET_METHOD(exports, "dscal", dscal); - NODE_SET_METHOD(exports, "sscal", sscal); - NODE_SET_METHOD(exports, "zscal", zscal); - NODE_SET_METHOD(exports, "cscal", cscal); - NODE_SET_METHOD(exports, "dswap", dswap); - NODE_SET_METHOD(exports, "sswap", sswap); - NODE_SET_METHOD(exports, "zswap", zswap); - NODE_SET_METHOD(exports, "cswap", cswap); - NODE_SET_METHOD(exports, "idamax", idamax); - NODE_SET_METHOD(exports, "isamax", isamax); - NODE_SET_METHOD(exports, "izamax", izamax); - NODE_SET_METHOD(exports, "icamax", icamax); +// This file is auto-generated by scripts/codegen.py. +// Do not edit it manually. - NODE_SET_METHOD(exports, "dgbmv", dgbmv); - NODE_SET_METHOD(exports, "sgbmv", sgbmv); - NODE_SET_METHOD(exports, "zgbmv", zgbmv); - NODE_SET_METHOD(exports, "cgbmv", cgbmv); - NODE_SET_METHOD(exports, "dgemv", dgemv); - NODE_SET_METHOD(exports, "sgemv", sgemv); - NODE_SET_METHOD(exports, "zgemv", zgemv); - NODE_SET_METHOD(exports, "cgemv", cgemv); - NODE_SET_METHOD(exports, "dger", dger); - NODE_SET_METHOD(exports, "sger", sger); - NODE_SET_METHOD(exports, "dsbmv", dsbmv); - NODE_SET_METHOD(exports, "ssbmv", ssbmv); - NODE_SET_METHOD(exports, "dspmv", dspmv); - NODE_SET_METHOD(exports, "sspmv", sspmv); - NODE_SET_METHOD(exports, "dspr", dspr); - NODE_SET_METHOD(exports, "sspr", sspr); - NODE_SET_METHOD(exports, "dspr2", dspr2); - NODE_SET_METHOD(exports, "sspr2", sspr2); - NODE_SET_METHOD(exports, "dsymv", dsymv); - NODE_SET_METHOD(exports, "ssymv", ssymv); - NODE_SET_METHOD(exports, "dsyr", dsyr); - NODE_SET_METHOD(exports, "ssyr", ssyr); - NODE_SET_METHOD(exports, "dsyr2", dsyr2); - NODE_SET_METHOD(exports, "ssyr2", ssyr2); - NODE_SET_METHOD(exports, "dtbmv", dtbmv); - NODE_SET_METHOD(exports, "stbmv", stbmv); - NODE_SET_METHOD(exports, "ztbmv", ztbmv); - NODE_SET_METHOD(exports, "ctbmv", ctbmv); - NODE_SET_METHOD(exports, "dtbsv", dtbsv); - NODE_SET_METHOD(exports, "stbsv", stbsv); - NODE_SET_METHOD(exports, "ztbsv", ztbsv); - NODE_SET_METHOD(exports, "ctbsv", ctbsv); - NODE_SET_METHOD(exports, "dtpmv", dtpmv); - NODE_SET_METHOD(exports, "stpmv", stpmv); - NODE_SET_METHOD(exports, "ztpmv", ztpmv); - NODE_SET_METHOD(exports, "ctpmv", ctpmv); - NODE_SET_METHOD(exports, "dtpsv", dtpsv); - NODE_SET_METHOD(exports, "stpsv", stpsv); - NODE_SET_METHOD(exports, "ztpsv", ztpsv); - NODE_SET_METHOD(exports, "ctpsv", ctpsv); - NODE_SET_METHOD(exports, "dtrmv", dtrmv); - NODE_SET_METHOD(exports, "strmv", strmv); - NODE_SET_METHOD(exports, "ztrmv", ztrmv); - NODE_SET_METHOD(exports, "ctrmv", ctrmv); - NODE_SET_METHOD(exports, "dtrsv", dtrsv); - NODE_SET_METHOD(exports, "strsv", strsv); - NODE_SET_METHOD(exports, "ztrsv", ztrsv); - NODE_SET_METHOD(exports, "ctrsv", ctrsv); +#include +#include "routines.h" - NODE_SET_METHOD(exports, "dgemm", dgemm); - NODE_SET_METHOD(exports, "sgemm", sgemm); - NODE_SET_METHOD(exports, "zgemm", zgemm); - NODE_SET_METHOD(exports, "cgemm", cgemm); - NODE_SET_METHOD(exports, "dsymm", dsymm); - NODE_SET_METHOD(exports, "ssymm", ssymm); - NODE_SET_METHOD(exports, "zsymm", zsymm); - NODE_SET_METHOD(exports, "csymm", csymm); - NODE_SET_METHOD(exports, "dsyrk", dsyrk); - NODE_SET_METHOD(exports, "ssyrk", ssyrk); - NODE_SET_METHOD(exports, "zsyrk", zsyrk); - NODE_SET_METHOD(exports, "csyrk", csyrk); - NODE_SET_METHOD(exports, "dsyr2k", dsyr2k); - NODE_SET_METHOD(exports, "ssyr2k", ssyr2k); - NODE_SET_METHOD(exports, "zsyr2k", zsyr2k); - NODE_SET_METHOD(exports, "csyr2k", csyr2k); - NODE_SET_METHOD(exports, "dtrmm", dtrmm); - NODE_SET_METHOD(exports, "strmm", strmm); - NODE_SET_METHOD(exports, "ztrmm", ztrmm); - NODE_SET_METHOD(exports, "ctrmm", ctrmm); - NODE_SET_METHOD(exports, "dtrsm", dtrsm); - NODE_SET_METHOD(exports, "strsm", strsm); - NODE_SET_METHOD(exports, "ztrsm", ztrsm); - NODE_SET_METHOD(exports, "ctrsm", ctrsm); +Napi::Object Init(Napi::Env env, Napi::Object exports) { + exports.Set(Napi::String::New(env, "sdsdot"), Napi::Function::New(env, sdsdot)); + exports.Set(Napi::String::New(env, "dsdot"), Napi::Function::New(env, dsdot)); + exports.Set(Napi::String::New(env, "sdot"), Napi::Function::New(env, sdot)); + exports.Set(Napi::String::New(env, "ddot"), Napi::Function::New(env, ddot)); + exports.Set(Napi::String::New(env, "cdotu_sub"), Napi::Function::New(env, cdotu_sub)); + exports.Set(Napi::String::New(env, "cdotc_sub"), Napi::Function::New(env, cdotc_sub)); + exports.Set(Napi::String::New(env, "zdotu_sub"), Napi::Function::New(env, zdotu_sub)); + exports.Set(Napi::String::New(env, "zdotc_sub"), Napi::Function::New(env, zdotc_sub)); + exports.Set(Napi::String::New(env, "snrm2"), Napi::Function::New(env, snrm2)); + exports.Set(Napi::String::New(env, "sasum"), Napi::Function::New(env, sasum)); + exports.Set(Napi::String::New(env, "dnrm2"), Napi::Function::New(env, dnrm2)); + exports.Set(Napi::String::New(env, "dasum"), Napi::Function::New(env, dasum)); + exports.Set(Napi::String::New(env, "scnrm2"), Napi::Function::New(env, scnrm2)); + exports.Set(Napi::String::New(env, "scasum"), Napi::Function::New(env, scasum)); + exports.Set(Napi::String::New(env, "dznrm2"), Napi::Function::New(env, dznrm2)); + exports.Set(Napi::String::New(env, "dzasum"), Napi::Function::New(env, dzasum)); + exports.Set(Napi::String::New(env, "isamax"), Napi::Function::New(env, isamax)); + exports.Set(Napi::String::New(env, "idamax"), Napi::Function::New(env, idamax)); + exports.Set(Napi::String::New(env, "icamax"), Napi::Function::New(env, icamax)); + exports.Set(Napi::String::New(env, "izamax"), Napi::Function::New(env, izamax)); + exports.Set(Napi::String::New(env, "sswap"), Napi::Function::New(env, sswap)); + exports.Set(Napi::String::New(env, "scopy"), Napi::Function::New(env, scopy)); + exports.Set(Napi::String::New(env, "saxpy"), Napi::Function::New(env, saxpy)); + exports.Set(Napi::String::New(env, "dswap"), Napi::Function::New(env, dswap)); + exports.Set(Napi::String::New(env, "dcopy"), Napi::Function::New(env, dcopy)); + exports.Set(Napi::String::New(env, "daxpy"), Napi::Function::New(env, daxpy)); + exports.Set(Napi::String::New(env, "cswap"), Napi::Function::New(env, cswap)); + exports.Set(Napi::String::New(env, "ccopy"), Napi::Function::New(env, ccopy)); + exports.Set(Napi::String::New(env, "caxpy"), Napi::Function::New(env, caxpy)); + exports.Set(Napi::String::New(env, "zswap"), Napi::Function::New(env, zswap)); + exports.Set(Napi::String::New(env, "zcopy"), Napi::Function::New(env, zcopy)); + exports.Set(Napi::String::New(env, "zaxpy"), Napi::Function::New(env, zaxpy)); + exports.Set(Napi::String::New(env, "srotg"), Napi::Function::New(env, srotg)); + exports.Set(Napi::String::New(env, "srotmg"), Napi::Function::New(env, srotmg)); + exports.Set(Napi::String::New(env, "srot"), Napi::Function::New(env, srot)); + exports.Set(Napi::String::New(env, "srotm"), Napi::Function::New(env, srotm)); + exports.Set(Napi::String::New(env, "drotg"), Napi::Function::New(env, drotg)); + exports.Set(Napi::String::New(env, "drotmg"), Napi::Function::New(env, drotmg)); + exports.Set(Napi::String::New(env, "drot"), Napi::Function::New(env, drot)); + exports.Set(Napi::String::New(env, "drotm"), Napi::Function::New(env, drotm)); + exports.Set(Napi::String::New(env, "sscal"), Napi::Function::New(env, sscal)); + exports.Set(Napi::String::New(env, "dscal"), Napi::Function::New(env, dscal)); + exports.Set(Napi::String::New(env, "cscal"), Napi::Function::New(env, cscal)); + exports.Set(Napi::String::New(env, "zscal"), Napi::Function::New(env, zscal)); + exports.Set(Napi::String::New(env, "csscal"), Napi::Function::New(env, csscal)); + exports.Set(Napi::String::New(env, "zdscal"), Napi::Function::New(env, zdscal)); + exports.Set(Napi::String::New(env, "crotg"), Napi::Function::New(env, crotg)); + exports.Set(Napi::String::New(env, "zrotg"), Napi::Function::New(env, zrotg)); + exports.Set(Napi::String::New(env, "csrot"), Napi::Function::New(env, csrot)); + exports.Set(Napi::String::New(env, "zdrot"), Napi::Function::New(env, zdrot)); + exports.Set(Napi::String::New(env, "sgemv"), Napi::Function::New(env, sgemv)); + exports.Set(Napi::String::New(env, "sgbmv"), Napi::Function::New(env, sgbmv)); + exports.Set(Napi::String::New(env, "strmv"), Napi::Function::New(env, strmv)); + exports.Set(Napi::String::New(env, "stbmv"), Napi::Function::New(env, stbmv)); + exports.Set(Napi::String::New(env, "stpmv"), Napi::Function::New(env, stpmv)); + exports.Set(Napi::String::New(env, "strsv"), Napi::Function::New(env, strsv)); + exports.Set(Napi::String::New(env, "stbsv"), Napi::Function::New(env, stbsv)); + exports.Set(Napi::String::New(env, "stpsv"), Napi::Function::New(env, stpsv)); + exports.Set(Napi::String::New(env, "dgemv"), Napi::Function::New(env, dgemv)); + exports.Set(Napi::String::New(env, "dgbmv"), Napi::Function::New(env, dgbmv)); + exports.Set(Napi::String::New(env, "dtrmv"), Napi::Function::New(env, dtrmv)); + exports.Set(Napi::String::New(env, "dtbmv"), Napi::Function::New(env, dtbmv)); + exports.Set(Napi::String::New(env, "dtpmv"), Napi::Function::New(env, dtpmv)); + exports.Set(Napi::String::New(env, "dtrsv"), Napi::Function::New(env, dtrsv)); + exports.Set(Napi::String::New(env, "dtbsv"), Napi::Function::New(env, dtbsv)); + exports.Set(Napi::String::New(env, "dtpsv"), Napi::Function::New(env, dtpsv)); + exports.Set(Napi::String::New(env, "cgemv"), Napi::Function::New(env, cgemv)); + exports.Set(Napi::String::New(env, "cgbmv"), Napi::Function::New(env, cgbmv)); + exports.Set(Napi::String::New(env, "ctrmv"), Napi::Function::New(env, ctrmv)); + exports.Set(Napi::String::New(env, "ctbmv"), Napi::Function::New(env, ctbmv)); + exports.Set(Napi::String::New(env, "ctpmv"), Napi::Function::New(env, ctpmv)); + exports.Set(Napi::String::New(env, "ctrsv"), Napi::Function::New(env, ctrsv)); + exports.Set(Napi::String::New(env, "ctbsv"), Napi::Function::New(env, ctbsv)); + exports.Set(Napi::String::New(env, "ctpsv"), Napi::Function::New(env, ctpsv)); + exports.Set(Napi::String::New(env, "zgemv"), Napi::Function::New(env, zgemv)); + exports.Set(Napi::String::New(env, "zgbmv"), Napi::Function::New(env, zgbmv)); + exports.Set(Napi::String::New(env, "ztrmv"), Napi::Function::New(env, ztrmv)); + exports.Set(Napi::String::New(env, "ztbmv"), Napi::Function::New(env, ztbmv)); + exports.Set(Napi::String::New(env, "ztpmv"), Napi::Function::New(env, ztpmv)); + exports.Set(Napi::String::New(env, "ztrsv"), Napi::Function::New(env, ztrsv)); + exports.Set(Napi::String::New(env, "ztbsv"), Napi::Function::New(env, ztbsv)); + exports.Set(Napi::String::New(env, "ztpsv"), Napi::Function::New(env, ztpsv)); + exports.Set(Napi::String::New(env, "ssymv"), Napi::Function::New(env, ssymv)); + exports.Set(Napi::String::New(env, "ssbmv"), Napi::Function::New(env, ssbmv)); + exports.Set(Napi::String::New(env, "sspmv"), Napi::Function::New(env, sspmv)); + exports.Set(Napi::String::New(env, "sger"), Napi::Function::New(env, sger)); + exports.Set(Napi::String::New(env, "ssyr"), Napi::Function::New(env, ssyr)); + exports.Set(Napi::String::New(env, "sspr"), Napi::Function::New(env, sspr)); + exports.Set(Napi::String::New(env, "ssyr2"), Napi::Function::New(env, ssyr2)); + exports.Set(Napi::String::New(env, "sspr2"), Napi::Function::New(env, sspr2)); + exports.Set(Napi::String::New(env, "dsymv"), Napi::Function::New(env, dsymv)); + exports.Set(Napi::String::New(env, "dsbmv"), Napi::Function::New(env, dsbmv)); + exports.Set(Napi::String::New(env, "dspmv"), Napi::Function::New(env, dspmv)); + exports.Set(Napi::String::New(env, "dger"), Napi::Function::New(env, dger)); + exports.Set(Napi::String::New(env, "dsyr"), Napi::Function::New(env, dsyr)); + exports.Set(Napi::String::New(env, "dspr"), Napi::Function::New(env, dspr)); + exports.Set(Napi::String::New(env, "dsyr2"), Napi::Function::New(env, dsyr2)); + exports.Set(Napi::String::New(env, "dspr2"), Napi::Function::New(env, dspr2)); + exports.Set(Napi::String::New(env, "chemv"), Napi::Function::New(env, chemv)); + exports.Set(Napi::String::New(env, "chbmv"), Napi::Function::New(env, chbmv)); + exports.Set(Napi::String::New(env, "chpmv"), Napi::Function::New(env, chpmv)); + exports.Set(Napi::String::New(env, "cgeru"), Napi::Function::New(env, cgeru)); + exports.Set(Napi::String::New(env, "cgerc"), Napi::Function::New(env, cgerc)); + exports.Set(Napi::String::New(env, "cher"), Napi::Function::New(env, cher)); + exports.Set(Napi::String::New(env, "chpr"), Napi::Function::New(env, chpr)); + exports.Set(Napi::String::New(env, "cher2"), Napi::Function::New(env, cher2)); + exports.Set(Napi::String::New(env, "chpr2"), Napi::Function::New(env, chpr2)); + exports.Set(Napi::String::New(env, "zhemv"), Napi::Function::New(env, zhemv)); + exports.Set(Napi::String::New(env, "zhbmv"), Napi::Function::New(env, zhbmv)); + exports.Set(Napi::String::New(env, "zhpmv"), Napi::Function::New(env, zhpmv)); + exports.Set(Napi::String::New(env, "zgeru"), Napi::Function::New(env, zgeru)); + exports.Set(Napi::String::New(env, "zgerc"), Napi::Function::New(env, zgerc)); + exports.Set(Napi::String::New(env, "zher"), Napi::Function::New(env, zher)); + exports.Set(Napi::String::New(env, "zhpr"), Napi::Function::New(env, zhpr)); + exports.Set(Napi::String::New(env, "zher2"), Napi::Function::New(env, zher2)); + exports.Set(Napi::String::New(env, "zhpr2"), Napi::Function::New(env, zhpr2)); + exports.Set(Napi::String::New(env, "sgemm"), Napi::Function::New(env, sgemm)); + exports.Set(Napi::String::New(env, "ssymm"), Napi::Function::New(env, ssymm)); + exports.Set(Napi::String::New(env, "ssyrk"), Napi::Function::New(env, ssyrk)); + exports.Set(Napi::String::New(env, "ssyr2k"), Napi::Function::New(env, ssyr2k)); + exports.Set(Napi::String::New(env, "strmm"), Napi::Function::New(env, strmm)); + exports.Set(Napi::String::New(env, "strsm"), Napi::Function::New(env, strsm)); + exports.Set(Napi::String::New(env, "dgemm"), Napi::Function::New(env, dgemm)); + exports.Set(Napi::String::New(env, "dsymm"), Napi::Function::New(env, dsymm)); + exports.Set(Napi::String::New(env, "dsyrk"), Napi::Function::New(env, dsyrk)); + exports.Set(Napi::String::New(env, "dsyr2k"), Napi::Function::New(env, dsyr2k)); + exports.Set(Napi::String::New(env, "dtrmm"), Napi::Function::New(env, dtrmm)); + exports.Set(Napi::String::New(env, "dtrsm"), Napi::Function::New(env, dtrsm)); + exports.Set(Napi::String::New(env, "cgemm"), Napi::Function::New(env, cgemm)); + exports.Set(Napi::String::New(env, "csymm"), Napi::Function::New(env, csymm)); + exports.Set(Napi::String::New(env, "csyrk"), Napi::Function::New(env, csyrk)); + exports.Set(Napi::String::New(env, "csyr2k"), Napi::Function::New(env, csyr2k)); + exports.Set(Napi::String::New(env, "ctrmm"), Napi::Function::New(env, ctrmm)); + exports.Set(Napi::String::New(env, "ctrsm"), Napi::Function::New(env, ctrsm)); + exports.Set(Napi::String::New(env, "zgemm"), Napi::Function::New(env, zgemm)); + exports.Set(Napi::String::New(env, "zsymm"), Napi::Function::New(env, zsymm)); + exports.Set(Napi::String::New(env, "zsyrk"), Napi::Function::New(env, zsyrk)); + exports.Set(Napi::String::New(env, "zsyr2k"), Napi::Function::New(env, zsyr2k)); + exports.Set(Napi::String::New(env, "ztrmm"), Napi::Function::New(env, ztrmm)); + exports.Set(Napi::String::New(env, "ztrsm"), Napi::Function::New(env, ztrsm)); + exports.Set(Napi::String::New(env, "chemm"), Napi::Function::New(env, chemm)); + exports.Set(Napi::String::New(env, "cherk"), Napi::Function::New(env, cherk)); + exports.Set(Napi::String::New(env, "cher2k"), Napi::Function::New(env, cher2k)); + exports.Set(Napi::String::New(env, "zhemm"), Napi::Function::New(env, zhemm)); + exports.Set(Napi::String::New(env, "zherk"), Napi::Function::New(env, zherk)); + exports.Set(Napi::String::New(env, "zher2k"), Napi::Function::New(env, zher2k)); + return exports; } -NODE_MODULE(addon, Init) +NODE_API_MODULE(nblas, Init) diff --git a/src/index.spec.ts b/src/index.spec.ts index f23c4bc..3520b46 100644 --- a/src/index.spec.ts +++ b/src/index.spec.ts @@ -1,6 +1,38 @@ import { deepStrictEqual, strictEqual } from 'assert'; -import { asum, axpy, copy, dot, gemm, iamax, nrm2, scal, swap } from './'; +import { + asum, + axpy, + copy, + dot, + gbmv, + gemm, + gemv, + ger, + iamax, + nrm2, + rot, + sbmv, + scal, + spmv, + spr, + spr2, + swap, + symm, + symv, + syr, + syr2, + syr2k, + syrk, + tbmv, + tbsv, + tpmv, + tpsv, + trmm, + trmv, + trsm, + trsv, +} from './'; describe('?asum', () => { it('works for different sizes', () => { @@ -89,7 +121,14 @@ describe('?nrm2', () => { }); describe('?rot', () => { - // Should perform plane rotation of points + it('rotates two vectors in the plane', () => { + const x = new Float64Array([1, 2]); + const y = new Float64Array([3, 4]); + + rot(x, y, 0, 1); + deepStrictEqual(x, new Float64Array([3, 4])); + deepStrictEqual(y, new Float64Array([-1, -2])); + }); }); describe('?scal', () => { @@ -143,67 +182,171 @@ describe('i?amax', () => { }); describe('?gbmv', () => { - // Computes matrix-vector product using a general band matrix + it('works for a 1 x 1 diagonal band matrix', () => { + const a = new Float64Array([2]); + const x = new Float64Array([3]); + const y = new Float64Array([0]); + + gbmv(a, x, y, 0, 0); + deepStrictEqual(y, new Float64Array([6])); + }); }); describe('?gemv', () => { - // Computes a matrix-vector product using a general matrix + it('computes a dense matrix-vector product', () => { + const a = new Float64Array([2, 0, 0, 3]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([0, 0]); + + gemv(a, x, y); + deepStrictEqual(y, new Float64Array([2, 6])); + }); }); describe('?ger', () => { - // Performs a rank-1 update of a general matrix + it('performs a rank-1 update', () => { + const a = new Float64Array(4); + const x = new Float64Array([1, 2]); + const y = new Float64Array([3, 4]); + + ger(a, x, y); + deepStrictEqual(a, new Float64Array([3, 4, 6, 8])); + }); }); describe('?sbmv', () => { - // Computes a matrix-vector product using a symmetric band matrix + it('computes a symmetric band matrix-vector product', () => { + const a = new Float64Array([2, 1, 3, 0]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([0, 0]); + + sbmv(a, x, y, 1); + deepStrictEqual(y, new Float64Array([4, 7])); + }); }); describe('?spmv', () => { - // Computes a matrix-vector product using a symmetric packed matrix + it('computes a symmetric packed matrix-vector product', () => { + const ap = new Float64Array([2, 1, 3]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([0, 0]); + + spmv(ap, x, y); + deepStrictEqual(y, new Float64Array([4, 7])); + }); }); describe('?spr', () => { - // Performs a rank-1 update of a symmetric packed matrix + it('performs a rank-1 update on a symmetric packed matrix', () => { + const ap = new Float64Array([2, 1, 3]); + const x = new Float64Array([1, 2]); + + spr(ap, x); + deepStrictEqual(ap, new Float64Array([3, 3, 7])); + }); }); describe('?spr2', () => { - // Performs a rank-2 update of a symmetric packed matrix + it('performs a rank-2 update on a symmetric packed matrix', () => { + const ap = new Float64Array([2, 1, 3]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([3, 4]); + + spr2(ap, x, y); + deepStrictEqual(ap, new Float64Array([8, 11, 19])); + }); }); describe('?symv', () => { - // Computes a matrix-vector product for a symmetric matrix + it('computes a symmetric matrix-vector product', () => { + const a = new Float64Array([2, 1, 1, 3]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([0, 0]); + + symv(a, x, y); + deepStrictEqual(y, new Float64Array([4, 7])); + }); }); describe('?syr', () => { - // Performs a rank-1 update of a symmetric matrix + it('performs a rank-1 update on a symmetric matrix', () => { + const a = new Float64Array([2, 1, 1, 3]); + const x = new Float64Array([1, 2]); + + syr(a, x); + deepStrictEqual(a, new Float64Array([3, 3, 1, 7])); + }); }); describe('?syr2', () => { - // Performs a rank-2 update of a symmetric matrix + it('performs a rank-2 update on a symmetric matrix', () => { + const a = new Float64Array([2, 1, 1, 3]); + const x = new Float64Array([1, 2]); + const y = new Float64Array([3, 4]); + + syr2(a, x, y); + deepStrictEqual(a, new Float64Array([8, 11, 1, 19])); + }); }); describe('?tbmv', () => { - // Computes a matrix-vector product using a triangular band matrix + it('computes a triangular band matrix-vector product', () => { + const a = new Float64Array([2, 1, 3, 0]); + const x = new Float64Array([1, 2]); + + tbmv(a, x); + deepStrictEqual(x, new Float64Array([2, 6])); + }); }); describe('?tbsv', () => { - // Solves a system of linear equations whose coefficients are in a triangular band matrix + it('solves a triangular band system', () => { + const a = new Float64Array([2, 1, 3, 0]); + const x = new Float64Array([4, 6]); + + tbsv(a, x); + deepStrictEqual(x, new Float64Array([2, 2])); + }); }); describe('?tpmv', () => { - // Computes a matrix-vector product using a triangular band matrix + it('computes a triangular packed matrix-vector product', () => { + const ap = new Float64Array([2, 1, 3]); + const x = new Float64Array([1, 2]); + + tpmv(ap, x); + deepStrictEqual(x, new Float64Array([4, 6])); + }); }); describe('?tpsv', () => { - // Solves a system of linear equations whose coefficients are in a triangular packed matrix + it('solves a triangular packed system', () => { + const ap = new Float64Array([2, 1, 3]); + const x = new Float64Array([4, 6]); + + tpsv(ap, x); + deepStrictEqual(x, new Float64Array([1, 2])); + }); }); describe('?trmv', () => { - // Computes a matrix-vector product using a triangular matrix + it('computes a triangular matrix-vector product', () => { + const a = new Float64Array([2, 1, 0, 3]); + const x = new Float64Array([1, 2]); + + trmv(a, x); + deepStrictEqual(x, new Float64Array([4, 6])); + }); }); describe('?trsv', () => { - // Solves a system of linear equations whose coefficients are in a triangular matrix + it('solves a triangular matrix system', () => { + const a = new Float64Array([2, 1, 0, 3]); + const x = new Float64Array([4, 6]); + + trsv(a, x); + deepStrictEqual(x, new Float64Array([1, 2])); + }); }); describe('?gemm', () => { @@ -237,21 +380,53 @@ describe('?gemm', () => { }); describe('?symm', () => { - // Computes a matrix-matrix product where one input matrix is symmetric + it('computes a matrix-matrix product with a symmetric matrix', () => { + const a = new Float64Array([2, 1, 1, 3]); + const b = new Float64Array([1, 2, 3, 4]); + const c = new Float64Array(4); + + symm(a, b, c, 2, 2); + deepStrictEqual(c, new Float64Array([5, 8, 10, 14])); + }); }); describe('?syrk', () => { - // Performs a symmetric rank-k update + it('performs a symmetric rank-k update', () => { + const a = new Float64Array([1, 2, 3, 4]); + const c = new Float64Array(4); + + syrk(a, c, 2, 2); + deepStrictEqual(c, new Float64Array([5, 11, 0, 25])); + }); }); describe('?syr2k', () => { - // Performs a symmetric rank-2k update + it('performs a symmetric rank-2k update', () => { + const a = new Float64Array([1, 2, 3, 4]); + const b = new Float64Array([5, 6, 7, 8]); + const c = new Float64Array(4); + + syr2k(a, b, c, 2, 2); + deepStrictEqual(c, new Float64Array([34, 62, 0, 106])); + }); }); describe('?trmm', () => { - // Computes a matrix-matrix product where one input matrix is triangular + it('computes a matrix-matrix product with a triangular matrix', () => { + const a = new Float64Array([2, 1, 0, 3]); + const b = new Float64Array([1, 2, 3, 4]); + + trmm(a, b, 2, 2); + deepStrictEqual(b, new Float64Array([5, 8, 9, 12])); + }); }); describe('?trsm', () => { - // Solves a triangular matrix equation + it('solves a triangular matrix equation', () => { + const a = new Float64Array([2, 1, 0, 3]); + const b = new Float64Array([5, 8, 9, 12]); + + trsm(a, b, 2, 2); + deepStrictEqual(b, new Float64Array([1, 2, 3, 4])); + }); }); diff --git a/src/index.ts b/src/index.ts index 49831ae..05b9dd8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,648 +1,3 @@ -import { - FloatArray, - INBlas, - MatrixLeftRight, - MatrixTrans, - MatrixUnit, - MatrixUpperLower, -} from './types'; -import { prefix } from './util'; - -let nblas: INBlas; -try { - nblas = require('../build/Release/nblas'); -} catch (_) { - nblas = require('./nblas'); -} - -// From enums declared in functions/cblas.h -export const NoTrans: MatrixTrans = 111; -export const Trans: MatrixTrans = 112; -export const ConjTrans: MatrixTrans = 113; - -export const Upper: MatrixUpperLower = 121; -export const Lower: MatrixUpperLower = 122; - -export const NonUnit: MatrixUnit = 131; -export const Unit: MatrixUnit = 132; - -export const Left: MatrixLeftRight = 141; -export const Right: MatrixLeftRight = 142; - -// BLAS Level 1 Routines and Functions - -/** - * sum of the magnitudes of elements of a real vector - * res = \sum_i=0^n{|x_i|} - */ -export const dasum: typeof nblas.dasum = nblas.dasum; -export const sasum: typeof nblas.sasum = nblas.sasum; -export const dzasum: typeof nblas.dzasum = nblas.dzasum; -export const scasum: typeof nblas.scasum = nblas.scasum; -export const asum: typeof nblas.asum = (x: FloatArray): number => - // @ts-ignore - nblas[`${prefix(x)}asum`](x.length, x, 1); - -/** - * vector-vector operation defined as - * y := a * x + y - */ -export const daxpy: typeof nblas.daxpy = nblas.daxpy; -export const saxpy: typeof nblas.saxpy = nblas.saxpy; -export const zaxpy: typeof nblas.zaxpy = nblas.zaxpy; -export const caxpy: typeof nblas.caxpy = nblas.caxpy; -export const axpy: typeof nblas.axpy = (x: FloatArray, y: FloatArray, a: number = 1): void => - // @ts-ignore - nblas[`${prefix(x)}axpy`](x.length, a, x, 1, y, 1); - -/** - * vector-vector operation defined as - * y = x - */ -export const dcopy: typeof nblas.dcopy = nblas.dcopy; -export const scopy: typeof nblas.scopy = nblas.scopy; -export const zcopy: typeof nblas.zcopy = nblas.zcopy; -export const ccopy: typeof nblas.ccopy = nblas.ccopy; -export const copy: typeof nblas.copy = (x: FloatArray, y: FloatArray): void => - // @ts-ignore - nblas[`${prefix(x)}copy`](x.length, x, 1, y, 1); - -/** - * vector-vector reduction operation defined as - * res = \sum_i=0^n{x_i * y_i} - */ -export const ddot: typeof nblas.ddot = nblas.ddot; -export const sdot: typeof nblas.sdot = nblas.sdot; -export const dot: typeof nblas.dot = (x: FloatArray, y: FloatArray): number => - // @ts-ignore - nblas[`${prefix(x)}dot`](x.length, x, 1, y, 1); - -/** - * vector reduction operation defined as - * res = ||x|| - */ -export const dnrm2: typeof nblas.dnrm2 = nblas.dnrm2; -export const snrm2: typeof nblas.snrm2 = nblas.snrm2; -export const dznrm2: typeof nblas.dznrm2 = nblas.dznrm2; -export const scnrm2: typeof nblas.scnrm2 = nblas.scnrm2; -export const nrm2: typeof nblas.nrm2 = (x: FloatArray): number => - // @ts-ignore - nblas[`${prefix(x)}nrm2`](x.length, x, 1); - -/** - * rotation of points in the plane - */ -export const drot: typeof nblas.drot = nblas.drot; -export const srot: typeof nblas.srot = nblas.srot; -export const rot: typeof nblas.rot = (x: FloatArray, y: FloatArray, c: number, s: number): void => - // @ts-ignore - nblas[`${prefix(x)}rot`](x.length, x, 1, y, 1, c, s); - -/** - * computes the parameters for a Givens rotation - */ -export const drotg: typeof nblas.drotg = nblas.drotg; -export const srotg: typeof nblas.srotg = nblas.srotg; -export const rotg: typeof nblas.rotg = ( - a: FloatArray, - b: FloatArray, - c: FloatArray, - s: FloatArray -): void => - // @ts-ignore - nblas[`${prefix(a)}rotg`](a, b, c, s); - -/** - * performs modified Givens rotation of points in the plane - */ -export const drotm: typeof nblas.drotm = nblas.drotm; -export const srotm: typeof nblas.srotm = nblas.srotm; -export const rotm: typeof nblas.rotm = (x: FloatArray, y: FloatArray, param: FloatArray): void => - // @ts-ignore - nblas[`${prefix(x)}rotm`](x.length, x, 1, y, 1, param); - -/** - * computes the parameters for a modified Givens rotation. - */ -export const drotmg: typeof nblas.drotmg = nblas.drotmg; -export const srotmg: typeof nblas.srotmg = nblas.srotmg; -export const rotmg: typeof nblas.rotmg = ( - d1: FloatArray, - d2: FloatArray, - x1: FloatArray, - y1: FloatArray, - param: FloatArray -): void => - // @ts-ignore - nblas[`${prefix(d1)}rotmg`](d1, d2, x1, y1, param); - -/** - * vector operation defined as - * x = a * x - */ -export const dscal: typeof nblas.dscal = nblas.dscal; -export const sscal: typeof nblas.sscal = nblas.sscal; -export const zscal: typeof nblas.zscal = nblas.zscal; -export const cscal: typeof nblas.cscal = nblas.cscal; -export const scal: typeof nblas.scal = (x: FloatArray, a: number): void => - // @ts-ignore - nblas[`${prefix(x)}scal`](x.length, a, x, 1); - -/** - * given two vectors x and y, the vectors y and x swapped, each replacing the other. - */ -export const dswap: typeof nblas.dswap = nblas.dswap; -export const sswap: typeof nblas.sswap = nblas.sswap; -export const zswap: typeof nblas.zswap = nblas.zswap; -export const cswap: typeof nblas.cswap = nblas.cswap; -export const swap: typeof nblas.swap = (x: FloatArray, y: FloatArray): void => - // @ts-ignore - nblas[`${prefix(x)}swap`](x.length, x, 1, y, 1); - -/** - * finds the index of the element with maximum absolute value. - */ -export const idamax: typeof nblas.idamax = nblas.idamax; -export const isamax: typeof nblas.isamax = nblas.isamax; -export const izamax: typeof nblas.izamax = nblas.izamax; -export const icamax: typeof nblas.icamax = nblas.icamax; -export const iamax: typeof nblas.iamax = (x: FloatArray): number => - // @ts-ignore - nblas[`i${prefix(x)}amax`](x.length, x, 1); - -// BLAS Level 2 Routines - -/** - * matrix-vector operation defined as - * y := alpha * A * x + beta * y - * or - * y := alpha * A' * x + beta * y - * where A is a general band matrix with kl sub-diagonals and ku super-diagonals - */ -export const dgbmv: typeof nblas.dgbmv = nblas.dgbmv; -export const sgbmv: typeof nblas.sgbmv = nblas.sgbmv; -export const zgbmv: typeof nblas.zgbmv = nblas.zgbmv; -export const cgbmv: typeof nblas.cgbmv = nblas.cgbmv; -export const gbmv: typeof nblas.gbmv = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - kl: number = 0, - ku: number = 0, - alpha: number = 1, - beta: number = 0, - trans: MatrixTrans = NoTrans -): void => - nblas[`${prefix(x)}gbmv`]( - trans, - x.length, - y.length, - kl, - ku, - alpha, - // @ts-ignore - a, - x.length, - x, - 1, - beta, - y, - 1 - ); - -/** - * matrix-vector operation defined as - * y := alpha * A * x + beta * y - * or - * y := alpha * A' * x + beta * y - * where A is a general matrix - */ -export const dgemv: typeof nblas.dgemv = nblas.dgemv; -export const sgemv: typeof nblas.sgemv = nblas.sgemv; -export const zgemv: typeof nblas.zgemv = nblas.zgemv; -export const cgemv: typeof nblas.cgemv = nblas.cgemv; -export const gemv: typeof nblas.gemv = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - alpha: number = 1, - beta: number = 0, - trans: MatrixTrans = NoTrans -): void => - // @ts-ignore - nblas[`${prefix(x)}gemv`](trans, x.length, y.length, alpha, a, x.length, x, 1, beta, y, 1); - -/** - * matrix-vector operation defined as - * A := alpha * x * y' + A - * where A is a general matrix - */ -export const dger: typeof nblas.dger = nblas.dger; -export const sger: typeof nblas.sger = nblas.sger; -export const ger: typeof nblas.ger = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(x)}ger`](x.length, y.length, alpha, x, 1, y, 1, a, x.length); - -/** - * matrix-vector operation defined as - * y := alpha * A * x + beta * y - * where A is a symmetric band matrix with k super-diagonals - */ -export const dsbmv: typeof nblas.dsbmv = nblas.dsbmv; -export const ssbmv: typeof nblas.ssbmv = nblas.ssbmv; -export const sbmv: typeof nblas.sbmv = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - k: number = 0, - uplo: MatrixUpperLower = Upper, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(x)}sbmv`](uplo, x.length, k, alpha, a, x.length, x, 1, beta, y, 1); - -/** - * matrix-vector operation defined as - * y := alpha * A * x + beta * y - * or - * y := alpha * A' * x + beta * y - * where A is a symmetric matrix, supplied in packed form - */ -export const dspmv: typeof nblas.dspmv = nblas.dspmv; -export const sspmv: typeof nblas.sspmv = nblas.sspmv; -export const spmv: typeof nblas.spmv = ( - ap: FloatArray, - x: FloatArray, - y: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(x)}spmv`](uplo, x.length, alpha, ap, x, 1, beta, y, 1); - -/** - * matrix-vector operation defined as - * A := alpha * x * x' + A - * where A is a symmetric matrix, supplied in packed form - */ -export const dspr: typeof nblas.dspr = nblas.dspr; -export const sspr: typeof nblas.sspr = nblas.sspr; -export const spr: typeof nblas.spr = ( - ap: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(x)}spr`](uplo, x.length, alpha, x, 1, ap); - -/** - * matrix-vector operation defined as - * A := alpha * x * y' + alpha * y * x' + A - * where A is a symmetric matrix, supplied in packed form - */ -export const dspr2: typeof nblas.dspr2 = nblas.dspr2; -export const sspr2: typeof nblas.sspr2 = nblas.sspr2; -export const spr2: typeof nblas.spr2 = ( - ap: FloatArray, - x: FloatArray, - y: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(x)}spr2`](uplo, x.length, alpha, x, 1, y, 1, ap); - -/** - * matrix-vector operation defined as - * y := alpha * A * x + beta * y - * where A is a symmetric matrix - */ -export const dsymv: typeof nblas.dsymv = nblas.dsymv; -export const ssymv: typeof nblas.ssymv = nblas.ssymv; -export const symv: typeof nblas.symv = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(x)}symv`](uplo, x.length, alpha, a, x.length, x, 1, beta, y, 1); - -/** - * matrix-vector operation defined as - * A := alpha * x * x' + A - * where A is a symmetric matrix - */ -export const dsyr: typeof nblas.dsyr = nblas.dsyr; -export const ssyr: typeof nblas.ssyr = nblas.ssyr; -export const syr: typeof nblas.syr = ( - a: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(x)}syr`](uplo, x.length, alpha, x, 1, a, x.length); - -/** - * matrix-vector operation defined as - * A := alpha * x * y' + alpha * y * x' + A - * where A is a symmetric matrix - */ -export const dsyr2: typeof nblas.dsyr2 = nblas.dsyr2; -export const ssyr2: typeof nblas.ssyr2 = nblas.ssyr2; -export const syr2: typeof nblas.syr2 = ( - a: FloatArray, - x: FloatArray, - y: FloatArray, - uplo: MatrixUpperLower = Upper, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(x)}syr2`](uplo, x.length, alpha, x, 1, y, 1, a, x.length); - -/** - * matrix-vector operation defined as - * x := A * x - * or - * x := A' * x - * where A is a unit or non-unit upper or lower triangular band matrix, with k + 1 diagonals - */ -export const dtbmv: typeof nblas.dtbmv = nblas.dtbmv; -export const stbmv: typeof nblas.stbmv = nblas.stbmv; -export const ztbmv: typeof nblas.ztbmv = nblas.ztbmv; -export const ctbmv: typeof nblas.ctbmv = nblas.ctbmv; -export const tbmv: typeof nblas.tbmv = ( - a: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}tbmv`](uplo, trans, diag, x.length, 0, a, x.length, x, 1); - -/** - * solves one of the following systems of equations - * A * x = b - * or - * A' * x = b - * where A is a unit or non-unit upper or lower triangular band matrix, with k + 1 diagonals - */ -export const dtbsv: typeof nblas.dtbsv = nblas.dtbsv; -export const stbsv: typeof nblas.stbsv = nblas.stbsv; -export const ztbsv: typeof nblas.ztbsv = nblas.ztbsv; -export const ctbsv: typeof nblas.ctbsv = nblas.ctbsv; -export const tbsv: typeof nblas.tbsv = ( - a: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}tbsv`](uplo, trans, diag, x.length, 0, a, x.length, x, 1); - -/** - * matrix-vector operation defined as - * x := A * x - * or - * x := A' * x - * where A is a unit or non-unit upper or lower triangular matrix, supplied in packed form - */ -export const dtpmv: typeof nblas.dtpmv = nblas.dtpmv; -export const stpmv: typeof nblas.stpmv = nblas.stpmv; -export const ztpmv: typeof nblas.ztpmv = nblas.ztpmv; -export const ctpmv: typeof nblas.ctpmv = nblas.ctpmv; -export const tpmv: typeof nblas.tpmv = ( - ap: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}tpmv`](uplo, trans, diag, x.length, ap, x, 1); - -/** - * solves one of the following systems of equations - * A * x = b - * or - * A' * x = b - * where A is a unit or non-unit upper or lower triangular matrix, supplied in packed form - */ -export const dtpsv: typeof nblas.dtpsv = nblas.dtpsv; -export const stpsv: typeof nblas.stpsv = nblas.stpsv; -export const ztpsv: typeof nblas.ztpsv = nblas.ztpsv; -export const ctpsv: typeof nblas.ctpsv = nblas.ctpsv; -export const tpsv: typeof nblas.tpsv = ( - ap: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}tpsv`](uplo, trans, diag, x.length, ap, x, 1); - -/** - * matrix-vector operation defined as - * x := A * x - * or - * x := A' * x - * where A is a unit or non-unit upper or lower triangular matrix - */ -export const dtrmv: typeof nblas.dtrmv = nblas.dtrmv; -export const strmv: typeof nblas.strmv = nblas.strmv; -export const ztrmv: typeof nblas.ztrmv = nblas.ztrmv; -export const ctrmv: typeof nblas.ctrmv = nblas.ctrmv; -export const trmv: typeof nblas.trmv = ( - a: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}trmv`](uplo, trans, diag, x.length, a, x.length, x, 1); - -/** - * solves one of the following systems of equations - * A * x = b - * or - * A' * x = b - * where A is a unit or non-unit upper or lower triangular matrix - */ -export const dtrsv: typeof nblas.dtrsv = nblas.dtrsv; -export const strsv: typeof nblas.strsv = nblas.strsv; -export const ztrsv: typeof nblas.ztrsv = nblas.ztrsv; -export const ctrsv: typeof nblas.ctrsv = nblas.ctrsv; -export const trsv: typeof nblas.trsv = ( - a: FloatArray, - x: FloatArray, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit -): void => - // @ts-ignore - nblas[`${prefix(x)}trsv`](uplo, trans, diag, x.length, a, x.length, x, 1); - -// BLAS Level 3 Routines - -/** - * computes a scalar-matrix-matrix product and adds the result to a scalar-matrix product defined as - * C := alpha * op(A) * op(B) + beta * C - */ -export const dgemm: typeof nblas.dgemm = nblas.dgemm; -export const sgemm: typeof nblas.sgemm = nblas.sgemm; -export const zgemm: typeof nblas.zgemm = nblas.zgemm; -export const cgemm: typeof nblas.cgemm = nblas.cgemm; -export const gemm: typeof nblas.gemm = ( - a: FloatArray, - b: FloatArray, - c: FloatArray, - m: number, - n: number, - k: number, - transa: MatrixTrans = NoTrans, - transb: MatrixTrans = NoTrans, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(a)}gemm`](transa, transb, m, n, k, alpha, a, k, b, n, beta, c, n); - -/** - * computes a scalar-matrix-matrix product with one symmetric matrix and - * adds the result to a scalar-matrix product defined as - * C := alpha * A * B + beta * C - * or - * C := alpha * B * A + beta * C - * where A is a symmetric matrix - */ -export const dsymm: typeof nblas.dsymm = nblas.dsymm; -export const ssymm: typeof nblas.ssymm = nblas.ssymm; -export const zsymm: typeof nblas.zsymm = nblas.zsymm; -export const csymm: typeof nblas.csymm = nblas.csymm; -export const symm: typeof nblas.symm = ( - a: FloatArray, - b: FloatArray, - c: FloatArray, - m: number, - n: number, - side: MatrixLeftRight = Left, - uplo: MatrixUpperLower = Upper, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(a)}symm`](side, uplo, m, n, alpha, a, m, b, n, beta, c, m); - -/** - * performs a rank-k matrix-matrix operation for a symmetric matrix C using a general matrix A defined as - * C := alpha * A * A' + beta * C - * or - * C := alpha * A' * A + beta * C - * where C is a symmetric matrix - */ -export const dsyrk: typeof nblas.dsyrk = nblas.dsyrk; -export const ssyrk: typeof nblas.ssyrk = nblas.ssyrk; -export const zsyrk: typeof nblas.zsyrk = nblas.zsyrk; -export const csyrk: typeof nblas.csyrk = nblas.csyrk; -export const syrk: typeof nblas.syrk = ( - a: FloatArray, - c: FloatArray, - n: FloatArray, - k: number, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(a)}syrk`](uplo, trans, n, k, alpha, a, n, beta, c, n); - -/** - * perform a rank-2k matrix-matrix operation for a symmetric matrix C using general matrices A and B defined as - * C := alpha * A * B' + alpha * B * A' + beta * C - * or - * C := alpha * A' * B + alpha * B' * A + beta * C - * where C is a symmetric matrix - */ -export const dsyr2k: typeof nblas.dsyr2k = nblas.dsyr2k; -export const ssyr2k: typeof nblas.ssyr2k = nblas.ssyr2k; -export const zsyr2k: typeof nblas.zsyr2k = nblas.zsyr2k; -export const csyr2k: typeof nblas.csyr2k = nblas.csyr2k; -export const syr2k: typeof nblas.syr2k = ( - a: FloatArray, - b: FloatArray, - c: FloatArray, - n: number, - k: number, - uplo: MatrixUpperLower = Upper, - trans: MatrixTrans = NoTrans, - alpha: number = 1, - beta: number = 0 -): void => - // @ts-ignore - nblas[`${prefix(a)}syr2k`](uplo, trans, n, k, alpha, a, n, b, n, beta, c, n); - -/** - * computes a scalar-matrix-matrix product with one triangular matrix defined as - * B := alpha * op(A) * B - * or - * B := alpha * B * op(A) - * where A is a unit or non-unit upper or lower triangular matrix - */ -export const dtrmm: typeof nblas.dtrmm = nblas.dtrmm; -export const strmm: typeof nblas.strmm = nblas.strmm; -export const ztrmm: typeof nblas.ztrmm = nblas.ztrmm; -export const ctrmm: typeof nblas.ctrmm = nblas.ctrmm; -export const trmm: typeof nblas.trmm = ( - a: FloatArray, - b: FloatArray, - m: number, - n: number, - side: MatrixLeftRight = Left, - uplo: MatrixUpperLower = Upper, - transa: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(a)}trmm`](side, uplo, transa, diag, m, n, alpha, a, m, b, m); - -/** - * solves one of the following matrix equations - * op(A) * X = alpha * B - * or - * X * op(A) = alpha * B - * where A is a unit or non-unit upper or lower triangular matrix - */ -export const dtrsm: typeof nblas.dtrsm = nblas.dtrsm; -export const strsm: typeof nblas.strsm = nblas.strsm; -export const ztrsm: typeof nblas.ztrsm = nblas.ztrsm; -export const ctrsm: typeof nblas.ctrsm = nblas.ctrsm; -export const trsm: typeof nblas.trsm = ( - a: FloatArray, - b: FloatArray, - m: number, - n: number, - side: MatrixLeftRight = Left, - uplo: MatrixUpperLower = Upper, - transa: MatrixTrans = NoTrans, - diag: MatrixUnit = NonUnit, - alpha: number = 1 -): void => - // @ts-ignore - nblas[`${prefix(a)}trsm`](side, uplo, transa, diag, m, n, alpha, a, m, b, m); +export * from './constants'; +export * from './generated-native'; +export * from './generated-convenience'; diff --git a/src/types.ts b/src/types.ts index ced541c..bf17fe6 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,1122 +1,13 @@ +import { IConvenienceBlas } from './generated-convenience-types'; +import { INativeBlas } from './generated-native-types'; + +export { IConvenienceBlas }; +export { INativeBlas }; + export type FloatArray = Float64Array | Float32Array; export type MatrixTrans = 111 | 112 | 113; export type MatrixUpperLower = 121 | 122; export type MatrixUnit = 131 | 132; export type MatrixLeftRight = 141 | 142; -export interface INBlas { - [key: string]: any; - - dasum(n: number, x: Float64Array, incx: number): number; - sasum(n: number, x: Float32Array, incx: number): number; - dzasum(n: number, x: Float64Array, incx: number): number; - scasum(n: number, x: Float32Array, incx: number): number; - daxpy( - n: number, - alpha: number, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number - ): void; - saxpy( - n: number, - alpha: number, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number - ): void; - zaxpy( - n: number, - alpha: Float64Array, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number - ): void; - caxpy( - n: number, - alpha: Float32Array, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number - ): void; - dcopy(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - scopy(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - zcopy(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - ccopy(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - ddot(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): number; - sdot(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): number; - dnrm2(n: number, x: Float64Array, incx: number): number; - snrm2(n: number, x: Float32Array, incx: number): number; - dznrm2(n: number, x: Float64Array, incx: number): number; - scnrm2(n: number, x: Float32Array, incx: number): number; - drot( - n: number, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number, - c: number, - s: number - ): void; - srot( - n: number, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number, - c: number, - s: number - ): void; - drotg(a: Float64Array, b: Float64Array, c: Float64Array, s: Float64Array): void; - srotg(a: Float32Array, b: Float32Array, c: Float32Array, s: Float32Array): void; - drotm(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - srotm(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - drotmg( - d1: Float64Array, - d2: Float64Array, - x1: Float64Array, - y1: Float64Array, - param: Float64Array - ): void; - srotmg( - d1: Float32Array, - d2: Float32Array, - x1: Float32Array, - y1: Float32Array, - param: Float32Array - ): void; - dscal(n: number, a: number, x: Float64Array, incx: number): void; - sscal(n: number, a: number, x: Float32Array, incx: number): void; - zscal(n: number, a: Float64Array, x: Float64Array, incx: number): void; - cscal(n: number, a: Float32Array, x: Float32Array, incx: number): void; - dswap(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - sswap(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - zswap(n: number, x: Float64Array, incx: number, y: Float64Array, incy: number): void; - cswap(n: number, x: Float32Array, incx: number, y: Float32Array, incy: number): void; - idamax(n: number, x: Float64Array, incx: number): number; - isamax(n: number, x: Float32Array, incx: number): number; - izamax(n: number, x: Float64Array, incx: number): number; - icamax(n: number, x: Float32Array, incx: number): number; - - // tslint:disable: max-line-length - dgbmv( - trans: MatrixTrans, - m: number, - n: number, - kl: number, - ku: number, - alpha: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: number, - y: Float64Array, - incy: number - ): void; - sgbmv( - trans: MatrixTrans, - m: number, - n: number, - kl: number, - ku: number, - alpha: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: number, - y: Float32Array, - incy: number - ): void; - zgbmv( - trans: MatrixTrans, - m: number, - n: number, - kl: number, - ku: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: Float64Array, - y: Float64Array, - incy: number - ): void; - cgbmv( - trans: MatrixTrans, - m: number, - n: number, - kl: number, - ku: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: Float32Array, - y: Float32Array, - incy: number - ): void; - dgemv( - trans: MatrixTrans, - m: number, - n: number, - alpha: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: number, - y: Float64Array, - incy: number - ): void; - sgemv( - trans: MatrixTrans, - m: number, - n: number, - alpha: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: number, - y: Float32Array, - incy: number - ): void; - zgemv( - trans: MatrixTrans, - m: number, - n: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: Float64Array, - y: Float64Array, - incy: number - ): void; - cgemv( - trans: MatrixTrans, - m: number, - n: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: Float32Array, - y: Float32Array, - incy: number - ): void; - dger( - m: number, - n: number, - alpha: number, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number, - a: Float64Array, - lda: number - ): void; - sger( - m: number, - n: number, - alpha: number, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number, - a: Float32Array, - lda: number - ): void; - dsbmv( - uplo: MatrixUpperLower, - n: number, - k: number, - alpha: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: number, - y: Float64Array, - incy: number - ): void; - ssbmv( - uplo: MatrixUpperLower, - n: number, - k: number, - alpha: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: number, - y: Float32Array, - incy: number - ): void; - dspmv( - uplo: MatrixUpperLower, - n: number, - alpha: number, - ap: Float64Array, - x: Float64Array, - incx: number, - beta: number, - y: Float64Array, - incy: number - ): void; - sspmv( - uplo: MatrixUpperLower, - n: number, - alpha: number, - ap: Float32Array, - x: Float32Array, - incx: number, - beta: number, - y: Float32Array, - incy: number - ): void; - dspr( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float64Array, - incx: number, - ap: Float64Array - ): void; - sspr( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float32Array, - incx: number, - ap: Float32Array - ): void; - dspr2( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number, - ap: Float64Array - ): void; - sspr2( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number, - ap: Float32Array - ): void; - dsymv( - uplo: MatrixUpperLower, - n: number, - alpha: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number, - beta: number, - y: Float64Array, - incy: number - ): void; - ssymv( - uplo: MatrixUpperLower, - n: number, - alpha: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number, - beta: number, - y: Float32Array, - incy: number - ): void; - dsyr( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float64Array, - incx: number, - a: Float64Array, - lda: number - ): void; - ssyr( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float32Array, - incx: number, - a: Float32Array, - lda: number - ): void; - dsyr2( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float64Array, - incx: number, - y: Float64Array, - incy: number, - a: Float64Array, - lda: number - ): void; - ssyr2( - uplo: MatrixUpperLower, - n: number, - alpha: number, - x: Float32Array, - incx: number, - y: Float32Array, - incy: number, - a: Float32Array, - lda: number - ): void; - dtbmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - stbmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - ztbmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - ctbmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - dtbsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - stbsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - ztbsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - ctbsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - k: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - dtpmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float64Array, - x: Float64Array, - incx: number - ): void; - stpmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float32Array, - x: Float32Array, - incx: number - ): void; - ztpmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float64Array, - x: Float64Array, - incx: number - ): void; - ctpmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float32Array, - x: Float32Array, - incx: number - ): void; - dtpsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float64Array, - x: Float64Array, - incx: number - ): void; - stpsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float32Array, - x: Float32Array, - incx: number - ): void; - ztpsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float64Array, - x: Float64Array, - incx: number - ): void; - ctpsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - ap: Float32Array, - x: Float32Array, - incx: number - ): void; - dtrmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - strmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - ztrmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - ctrmv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - dtrsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - strsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - ztrsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float64Array, - lda: number, - x: Float64Array, - incx: number - ): void; - ctrsv( - uplo: MatrixUpperLower, - trans: MatrixTrans, - diag: MatrixUnit, - n: number, - a: Float32Array, - lda: number, - x: Float32Array, - incx: number - ): void; - - dgemm( - transa: MatrixTrans, - transb: MatrixTrans, - m: number, - n: number, - k: number, - alpha: number, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: number, - c: Float64Array, - ldc: number - ): void; - sgemm( - transa: MatrixTrans, - transb: MatrixTrans, - m: number, - n: number, - k: number, - alpha: number, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: number, - c: Float32Array, - ldc: number - ): void; - zgemm( - transa: MatrixTrans, - transb: MatrixTrans, - m: number, - n: number, - k: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: Float64Array, - c: Float64Array, - ldc: number - ): void; - cgemm( - transa: MatrixTrans, - transb: MatrixTrans, - m: number, - n: number, - k: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: Float32Array, - c: Float32Array, - ldc: number - ): void; - dsymm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - m: number, - n: number, - alpha: number, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: number, - c: Float64Array, - ldc: number - ): void; - ssymm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - m: number, - n: number, - alpha: number, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: number, - c: Float32Array, - ldc: number - ): void; - zsymm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - m: number, - n: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: Float64Array, - c: Float64Array, - ldc: number - ): void; - csymm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - m: number, - n: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: Float32Array, - c: Float32Array, - ldc: number - ): void; - dsyrk( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: number, - a: Float64Array, - lda: number, - beta: number, - c: Float64Array, - ldc: number - ): void; - ssyrk( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: number, - a: Float32Array, - lda: number, - beta: number, - c: Float32Array, - ldc: number - ): void; - zsyrk( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - beta: Float64Array, - c: Float64Array, - ldc: number - ): void; - csyrk( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - beta: Float32Array, - c: Float32Array, - ldc: number - ): void; - dsyr2k( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: number, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: number, - c: Float64Array, - ldc: number - ): void; - ssyr2k( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: number, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: number, - c: Float32Array, - ldc: number - ): void; - zsyr2k( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number, - beta: Float64Array, - c: Float64Array, - ldc: number - ): void; - csyr2k( - uplo: MatrixUpperLower, - trans: MatrixTrans, - n: number, - k: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number, - beta: Float32Array, - c: Float32Array, - ldc: number - ): void; - dtrmm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: number, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number - ): void; - strmm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: number, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number - ): void; - ztrmm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number - ): void; - ctrmm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number - ): void; - dtrsm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: number, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number - ): void; - strsm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: number, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number - ): void; - ztrsm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: Float64Array, - a: Float64Array, - lda: number, - b: Float64Array, - ldb: number - ): void; - ctrsm( - side: MatrixLeftRight, - uplo: MatrixUpperLower, - transa: MatrixTrans, - diag: MatrixUnit, - m: number, - n: number, - alpha: Float32Array, - a: Float32Array, - lda: number, - b: Float32Array, - ldb: number - ): void; - - asum(x: FloatArray): number; - axpy(x: FloatArray, y: FloatArray, a?: number): void; - copy(x: FloatArray, y: FloatArray): void; - dot(x: FloatArray, y: FloatArray): number; - nrm2(x: FloatArray): number; - rot(x: FloatArray, y: FloatArray, c: number, s: number): void; - rotg(a: FloatArray, b: FloatArray, c: FloatArray, s: FloatArray): void; - rotm(x: FloatArray, y: FloatArray, param: FloatArray): void; - rotmg(d1: FloatArray, d2: FloatArray, x1: FloatArray, y1: FloatArray, param: FloatArray): void; - scal(x: FloatArray, a: number): void; - swap(x: FloatArray, y: FloatArray): void; - iamax(x: FloatArray): number; - gbmv( - a: FloatArray, - x: FloatArray, - y: FloatArray, - kl?: number, - ku?: number, - alpha?: number, - beta?: number, - trans?: MatrixTrans - ): void; - gemv( - a: FloatArray, - x: FloatArray, - y: FloatArray, - alpha?: number, - beta?: number, - trans?: MatrixTrans - ): void; - ger(a: FloatArray, x: FloatArray, y: FloatArray, alpha?: number): void; - sbmv( - a: FloatArray, - x: FloatArray, - y: FloatArray, - k?: number, - uplo?: MatrixUpperLower, - alpha?: number, - beta?: number - ): void; - spmv( - ap: FloatArray, - x: FloatArray, - y: FloatArray, - uplo?: MatrixUpperLower, - alpha?: number, - beta?: number - ): void; - spr(ap: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - spr2(ap: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - symv( - a: FloatArray, - x: FloatArray, - y: FloatArray, - uplo?: MatrixUpperLower, - alpha?: number, - beta?: number - ): void; - syr(a: FloatArray, x: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - syr2(a: FloatArray, x: FloatArray, y: FloatArray, uplo?: MatrixUpperLower, alpha?: number): void; - tbmv( - a: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - tbsv( - a: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - tpmv( - ap: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - tpsv( - ap: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - trmv( - a: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - trsv( - a: FloatArray, - x: FloatArray, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - diag?: MatrixUnit - ): void; - gemm( - a: FloatArray, - b: FloatArray, - c: FloatArray, - m: number, - n: number, - k: number, - transa?: MatrixTrans, - transb?: MatrixTrans, - alpha?: number, - beta?: number - ): void; - symm( - a: FloatArray, - b: FloatArray, - c: FloatArray, - m: number, - n: number, - side?: MatrixLeftRight, - uplo?: MatrixUpperLower, - alpha?: number, - beta?: number - ): void; - syrk( - a: FloatArray, - c: FloatArray, - n: FloatArray, - k: number, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - alpha?: number, - beta?: number - ): void; - syr2k( - a: FloatArray, - b: FloatArray, - c: FloatArray, - n: number, - k: number, - uplo?: MatrixUpperLower, - trans?: MatrixTrans, - alpha?: number, - beta?: number - ): void; - trmm( - a: FloatArray, - b: FloatArray, - m: number, - n: number, - side?: MatrixLeftRight, - uplo?: MatrixUpperLower, - transa?: MatrixTrans, - diag?: MatrixUnit, - alpha?: number - ): void; - trsm( - a: FloatArray, - b: FloatArray, - m: number, - n: number, - side?: MatrixLeftRight, - uplo?: MatrixUpperLower, - transa?: MatrixTrans, - diag?: MatrixUnit, - alpha?: number - ): void; -} +export interface INBlas extends INativeBlas, IConvenienceBlas {} diff --git a/tsconfig.json b/tsconfig.json index bd19431..0efe8c8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,7 +12,7 @@ "noImplicitReturns": true, "noUnusedLocals": true, "noUnusedParameters": true, - "lib": ["es2015", "dom"] + "lib": ["es2023", "dom", "esnext.disposable"] }, "include": ["src/**/*"], "exclude": ["src/**/*.spec.ts"]