numbl 0.4.7 → 0.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-browser/browser/index.d.ts +21 -0
- package/dist-browser/browser/mip.d.ts +10 -0
- package/dist-browser/browser/protocol.d.ts +59 -0
- package/dist-browser/browser/session.d.ts +55 -0
- package/dist-browser/browser/system-store.d.ts +30 -0
- package/dist-browser/browser/worker.d.ts +1 -0
- package/dist-browser/browser.js +131 -0
- package/dist-browser/db/operations.d.ts +25 -0
- package/dist-browser/db/schema.d.ts +26 -0
- package/dist-browser/graphics/axisLimits.d.ts +23 -0
- package/dist-browser/graphics/figuresReducer.d.ts +86 -0
- package/dist-browser/graphics/types.d.ts +423 -0
- package/dist-browser/hooks/useProjectFiles.d.ts +45 -0
- package/dist-browser/numbl-core/diagnostics/errors.d.ts +8 -0
- package/dist-browser/numbl-core/diagnostics/index.d.ts +27 -0
- package/dist-browser/numbl-core/executeCode.d.ts +108 -0
- package/dist-browser/numbl-core/executors/cache.d.ts +26 -0
- package/dist-browser/numbl-core/executors/classification.d.ts +134 -0
- package/dist-browser/numbl-core/executors/context.d.ts +76 -0
- package/dist-browser/numbl-core/executors/handleInline.d.ts +58 -0
- package/dist-browser/numbl-core/executors/index.d.ts +14 -0
- package/dist-browser/numbl-core/executors/jit/cJitCallExecutor.d.ts +35 -0
- package/dist-browser/numbl-core/executors/jit/cJitLoopExecutor.d.ts +31 -0
- package/dist-browser/numbl-core/executors/jit/cJitTopLevelExecutor.d.ts +29 -0
- package/dist-browser/numbl-core/executors/jit/callExecutor.d.ts +45 -0
- package/dist-browser/numbl-core/executors/jit/compileC.d.ts +51 -0
- package/dist-browser/numbl-core/executors/jit/compileC.node.d.ts +25 -0
- package/dist-browser/numbl-core/executors/jit/hostHelpers.d.ts +31 -0
- package/dist-browser/numbl-core/executors/jit/loopExecutor.d.ts +41 -0
- package/dist-browser/numbl-core/executors/jit/session.d.ts +17 -0
- package/dist-browser/numbl-core/executors/jit/topLevelExecutor.d.ts +36 -0
- package/dist-browser/numbl-core/executors/jit/typeAdapter.d.ts +28 -0
- package/dist-browser/numbl-core/executors/jit/typeAdapterC.d.ts +73 -0
- package/dist-browser/numbl-core/executors/jit/valueAdapter.d.ts +55 -0
- package/dist-browser/numbl-core/executors/jit/valueAdapterC.d.ts +108 -0
- package/dist-browser/numbl-core/executors/lowering.d.ts +120 -0
- package/dist-browser/numbl-core/executors/plugins.d.ts +41 -0
- package/dist-browser/numbl-core/executors/registry.d.ts +148 -0
- package/dist-browser/numbl-core/executors/types.d.ts +103 -0
- package/dist-browser/numbl-core/externalAccessDirective.d.ts +6 -0
- package/dist-browser/numbl-core/fileIOAdapter.d.ts +88 -0
- package/dist-browser/numbl-core/functionResolve.d.ts +70 -0
- package/dist-browser/numbl-core/helpers/arithmetic.d.ts +47 -0
- package/dist-browser/numbl-core/helpers/bessel.d.ts +49 -0
- package/dist-browser/numbl-core/helpers/check-helpers.d.ts +49 -0
- package/dist-browser/numbl-core/helpers/constants.d.ts +6 -0
- package/dist-browser/numbl-core/helpers/dummy.d.ts +5 -0
- package/dist-browser/numbl-core/helpers/effectively-real.d.ts +25 -0
- package/dist-browser/numbl-core/helpers/eigs-select.d.ts +25 -0
- package/dist-browser/numbl-core/helpers/erf.d.ts +5 -0
- package/dist-browser/numbl-core/helpers/gmres.d.ts +51 -0
- package/dist-browser/numbl-core/helpers/linsolve.d.ts +25 -0
- package/dist-browser/numbl-core/helpers/marching-cubes-tables.d.ts +10 -0
- package/dist-browser/numbl-core/helpers/marching-cubes.d.ts +46 -0
- package/dist-browser/numbl-core/helpers/ode-rk.d.ts +83 -0
- package/dist-browser/numbl-core/helpers/prng.d.ts +19 -0
- package/dist-browser/numbl-core/helpers/quadgk.d.ts +32 -0
- package/dist-browser/numbl-core/helpers/reduction/cumulative.d.ts +8 -0
- package/dist-browser/numbl-core/helpers/reduction/min-max.d.ts +5 -0
- package/dist-browser/numbl-core/helpers/reduction-helpers.d.ts +66 -0
- package/dist-browser/numbl-core/helpers/registry.d.ts +7 -0
- package/dist-browser/numbl-core/helpers/scanFormat.d.ts +11 -0
- package/dist-browser/numbl-core/helpers/shape-utils.d.ts +7 -0
- package/dist-browser/numbl-core/helpers/sparse-arithmetic.d.ts +16 -0
- package/dist-browser/numbl-core/helpers/string.d.ts +11 -0
- package/dist-browser/numbl-core/interpreter/builtins/arithmetic.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/array-construction.d.ts +10 -0
- package/dist-browser/numbl-core/interpreter/builtins/array-extras.d.ts +5 -0
- package/dist-browser/numbl-core/interpreter/builtins/array-manipulation.d.ts +7 -0
- package/dist-browser/numbl-core/interpreter/builtins/cell-struct.d.ts +5 -0
- package/dist-browser/numbl-core/interpreter/builtins/complex.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/datetime.d.ts +40 -0
- package/dist-browser/numbl-core/interpreter/builtins/dictionary.d.ts +15 -0
- package/dist-browser/numbl-core/interpreter/builtins/fft.d.ts +7 -0
- package/dist-browser/numbl-core/interpreter/builtins/gallery.d.ts +7 -0
- package/dist-browser/numbl-core/interpreter/builtins/geometry.d.ts +10 -0
- package/dist-browser/numbl-core/interpreter/builtins/graph.d.ts +29 -0
- package/dist-browser/numbl-core/interpreter/builtins/help-text.d.ts +5 -0
- package/dist-browser/numbl-core/interpreter/builtins/index.d.ts +39 -0
- package/dist-browser/numbl-core/interpreter/builtins/introspection.d.ts +6 -0
- package/dist-browser/numbl-core/interpreter/builtins/linear-algebra.d.ts +9 -0
- package/dist-browser/numbl-core/interpreter/builtins/logical.d.ts +9 -0
- package/dist-browser/numbl-core/interpreter/builtins/math.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/misc.d.ts +7 -0
- package/dist-browser/numbl-core/interpreter/builtins/numerical.d.ts +10 -0
- package/dist-browser/numbl-core/interpreter/builtins/predicates.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/prng.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/reductions.d.ts +6 -0
- package/dist-browser/numbl-core/interpreter/builtins/set-operations.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/sparse.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/special-math.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/string-extras.d.ts +5 -0
- package/dist-browser/numbl-core/interpreter/builtins/strings.d.ts +7 -0
- package/dist-browser/numbl-core/interpreter/builtins/time-system.d.ts +6 -0
- package/dist-browser/numbl-core/interpreter/builtins/type-constructors.d.ts +5 -0
- package/dist-browser/numbl-core/interpreter/builtins/types.d.ts +98 -0
- package/dist-browser/numbl-core/interpreter/builtins/utility.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/builtins/validation.d.ts +4 -0
- package/dist-browser/numbl-core/interpreter/interpreter.d.ts +199 -0
- package/dist-browser/numbl-core/interpreter/interpreterExec.d.ts +81 -0
- package/dist-browser/numbl-core/interpreter/interpreterFunctions.d.ts +62 -0
- package/dist-browser/numbl-core/interpreter/interpreterSpecialBuiltins.d.ts +35 -0
- package/dist-browser/numbl-core/interpreter/types.d.ts +114 -0
- package/dist-browser/numbl-core/jit/builtins/defs/_shared.d.ts +43 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/_elemwise.d.ts +123 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/minus.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mpower.d.ts +12 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mrdivide.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mtimes.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/plus.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/power.d.ts +30 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/rdivide.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/times.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/uminus.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/_compare.d.ts +12 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/eq.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/ge.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/gt.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/le.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/lt.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/compare/ne.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/diag/assert.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/_format_args.d.ts +17 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/disp.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/error.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/fprintf.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/sprintf.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/io/warning.d.ts +15 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/_shortcircuit.d.ts +30 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/_unary_pred.d.ts +30 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/and.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/andand.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/boolconst.d.ts +3 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/classBuiltin.d.ts +21 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/fieldnames.d.ts +15 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isa.d.ts +13 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/iscell.d.ts +8 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isempty.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isequal.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isfield.d.ts +20 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isinf.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isnan.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isnumeric.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isreal.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isscalar.d.ts +20 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/isstruct.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/logical.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/not.d.ts +15 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/or.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/oror.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/strcmp.d.ts +21 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/typequery.d.ts +10 -0
- package/dist-browser/numbl-core/jit/builtins/defs/logical/xor.d.ts +12 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/_complex_fold.d.ts +34 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/_unary_real.d.ts +51 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/abs.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/angle.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/asinh.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/atan.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/atan2.d.ts +3 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/besselh.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/ceil.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/conj.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/constants.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/cos.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/cosh.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/dot.d.ts +20 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/double.d.ts +28 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/exp.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/fix.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/floor.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/hypot.d.ts +3 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/imag.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/linspace.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/log.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/log10.d.ts +3 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/log2.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/logspace.d.ts +8 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/mod.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/norm.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/rand.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/real.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/rem.d.ts +3 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/round.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/sign.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/sin.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/sinh.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/sqrt.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/tan.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/tanh.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/math/uniquetol.d.ts +22 -0
- package/dist-browser/numbl-core/jit/builtins/defs/plot/dispatch.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/_cumulative.d.ts +49 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/_shape.d.ts +126 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/_variance.d.ts +17 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/all.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/any.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/cummax.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/cummin.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/cumprod.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/cumsum.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/diff.d.ts +16 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/length.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/max.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/mean.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/min.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/numel.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/prod.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/std.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/sum.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/reduction/var.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/_construct.d.ts +67 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/_triangular.d.ts +34 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/cat.d.ts +33 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/diag.d.ts +29 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/eye.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/flip.d.ts +7 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/meshgrid.d.ts +12 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/ones.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/repmat.d.ts +37 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/reshape.d.ts +39 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/size.d.ts +20 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/sort.d.ts +19 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/transpose.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/tril.d.ts +16 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/triu.d.ts +16 -0
- package/dist-browser/numbl-core/jit/builtins/defs/shape/zeros.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/defs/system/deal.d.ts +20 -0
- package/dist-browser/numbl-core/jit/builtins/defs/system/feval.d.ts +36 -0
- package/dist-browser/numbl-core/jit/builtins/defs/system/pathBuiltins.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/defs/system/tic.d.ts +8 -0
- package/dist-browser/numbl-core/jit/builtins/defs/system/toc.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/index.d.ts +16 -0
- package/dist-browser/numbl-core/jit/builtins/registry.d.ts +138 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/cell/cell.d.ts +24 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/indexing/loop_count.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/indexing/range_value.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/indexing/scalar_index.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/indexing/tensor_make_range.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/assert_fmt.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_complex.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_double.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_struct.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_tensor.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_tensor_complex.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/error_fmt.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/format_complex.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/format_double.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/format_engine.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/fprintf.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/sprintf.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/io/warning_fmt.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/plot/plot_dispatch.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/snippets.c.gen.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/snippets.gen.d.ts +85 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/system/cdiv.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/system/cscalar.d.ts +103 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/system/deep_clone.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/system/isequal.d.ts +2 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/system/tictoc.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_nd.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_nd_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_copy_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_matrix.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_matrix_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_row.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_row_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_cat.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_cumulative.d.ts +32 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_diag.d.ts +33 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_diff.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_dot.d.ts +16 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_complex.d.ts +90 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_real.d.ts +75 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_real_fn.d.ts +95 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_eye.d.ts +10 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_fill_nd.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_fill_square.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_flip.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_imag_all_zero.d.ts +1 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_linspace.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_logical_real.d.ts +10 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_logspace.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_meshgrid.d.ts +29 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_mtimes_complex.d.ts +10 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_mtimes_real.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_norm.d.ts +4 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_ones_nd.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_ones_square.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_predicate.d.ts +42 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reduce_complex.d.ts +53 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reduce_real.d.ts +42 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_repmat.d.ts +11 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reshape_nd.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reshape_nd_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_size.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_sort_real.d.ts +36 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_transpose.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_transpose_complex.d.ts +6 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_triangular.d.ts +22 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_unary_complex_math.d.ts +128 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_unary_real_math.d.ts +95 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_uniquetol.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_var.d.ts +12 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_zeros_nd.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_zeros_square.d.ts +5 -0
- package/dist-browser/numbl-core/jit/builtins/runtime/text/strcmp.d.ts +2 -0
- package/dist-browser/numbl-core/jit/codegen/cFormat.d.ts +36 -0
- package/dist-browser/numbl-core/jit/codegen/cHelpers.d.ts +48 -0
- package/dist-browser/numbl-core/jit/codegen/emit.d.ts +55 -0
- package/dist-browser/numbl-core/jit/codegen/emitCellTypedef.d.ts +23 -0
- package/dist-browser/numbl-core/jit/codegen/emitExpr.d.ts +33 -0
- package/dist-browser/numbl-core/jit/codegen/emitIndex.d.ts +56 -0
- package/dist-browser/numbl-core/jit/codegen/emitJs.d.ts +64 -0
- package/dist-browser/numbl-core/jit/codegen/emitNamedTypedef.d.ts +58 -0
- package/dist-browser/numbl-core/jit/codegen/emitStmt.d.ts +76 -0
- package/dist-browser/numbl-core/jit/codegen/emitTensorConcat.d.ts +23 -0
- package/dist-browser/numbl-core/jit/codegen/emitTensorConcatJs.d.ts +16 -0
- package/dist-browser/numbl-core/jit/codegen/emitTensorFused.d.ts +77 -0
- package/dist-browser/numbl-core/jit/codegen/inlinePass.d.ts +66 -0
- package/dist-browser/numbl-core/jit/codegen/liveness.d.ts +58 -0
- package/dist-browser/numbl-core/jit/codegen/prettyIR.d.ts +24 -0
- package/dist-browser/numbl-core/jit/codegen/runtime.d.ts +152 -0
- package/dist-browser/numbl-core/jit/compileSpec.d.ts +84 -0
- package/dist-browser/numbl-core/jit/compileSpecC.d.ts +100 -0
- package/dist-browser/numbl-core/jit/index.d.ts +15 -0
- package/dist-browser/numbl-core/jit/lowering/classDefs.d.ts +109 -0
- package/dist-browser/numbl-core/jit/lowering/definiteAssign.d.ts +42 -0
- package/dist-browser/numbl-core/jit/lowering/errors.d.ts +35 -0
- package/dist-browser/numbl-core/jit/lowering/indexFold.d.ts +31 -0
- package/dist-browser/numbl-core/jit/lowering/indexResolve.d.ts +100 -0
- package/dist-browser/numbl-core/jit/lowering/ir.d.ts +584 -0
- package/dist-browser/numbl-core/jit/lowering/lower.d.ts +271 -0
- package/dist-browser/numbl-core/jit/lowering/lowerCellIndex.d.ts +41 -0
- package/dist-browser/numbl-core/jit/lowering/lowerCellLit.d.ts +19 -0
- package/dist-browser/numbl-core/jit/lowering/lowerClassConstructor.d.ts +55 -0
- package/dist-browser/numbl-core/jit/lowering/lowerFuncCall.d.ts +34 -0
- package/dist-browser/numbl-core/jit/lowering/lowerHandle.d.ts +57 -0
- package/dist-browser/numbl-core/jit/lowering/lowerIndexLoad.d.ts +16 -0
- package/dist-browser/numbl-core/jit/lowering/lowerIndexSlice.d.ts +29 -0
- package/dist-browser/numbl-core/jit/lowering/lowerIndexSliceStore.d.ts +19 -0
- package/dist-browser/numbl-core/jit/lowering/lowerIndexStore.d.ts +14 -0
- package/dist-browser/numbl-core/jit/lowering/lowerMethodCall.d.ts +45 -0
- package/dist-browser/numbl-core/jit/lowering/lowerMultiAssign.d.ts +36 -0
- package/dist-browser/numbl-core/jit/lowering/lowerTensorLit.d.ts +25 -0
- package/dist-browser/numbl-core/jit/lowering/rangeCount.d.ts +19 -0
- package/dist-browser/numbl-core/jit/lowering/specialize.d.ts +93 -0
- package/dist-browser/numbl-core/jit/lowering/types.d.ts +503 -0
- package/dist-browser/numbl-core/jit/lowering/walk.d.ts +17 -0
- package/dist-browser/numbl-core/jit/numbl/index.d.ts +30 -0
- package/dist-browser/numbl-core/jit/parser/astUtils.d.ts +43 -0
- package/dist-browser/numbl-core/jit/parser/index.d.ts +12 -0
- package/dist-browser/numbl-core/jit/parser/sourceLoc.d.ts +12 -0
- package/dist-browser/numbl-core/jit/runtime/context.d.ts +23 -0
- package/dist-browser/numbl-core/jit/runtime/inferType.d.ts +10 -0
- package/dist-browser/numbl-core/jit/runtime/value.d.ts +101 -0
- package/dist-browser/numbl-core/jit/workspace/driverPrologue.d.ts +59 -0
- package/dist-browser/numbl-core/jit/workspace/mtoc2UserFunctionLoader.d.ts +62 -0
- package/dist-browser/numbl-core/jit/workspace/workspace.d.ts +243 -0
- package/dist-browser/numbl-core/jitDeclineDiagnostics.d.ts +32 -0
- package/dist-browser/numbl-core/jitTypes.d.ts +94 -0
- package/dist-browser/numbl-core/jsUserFunctions.d.ts +61 -0
- package/dist-browser/numbl-core/lexer/helpers.d.ts +15 -0
- package/dist-browser/numbl-core/lexer/index.d.ts +4 -0
- package/dist-browser/numbl-core/lexer/keywords.d.ts +3 -0
- package/dist-browser/numbl-core/lexer/token-config.d.ts +94 -0
- package/dist-browser/numbl-core/lexer/tokenizer.d.ts +9 -0
- package/dist-browser/numbl-core/lexer/types.d.ts +80 -0
- package/dist-browser/numbl-core/lowering/classInfo.d.ts +53 -0
- package/dist-browser/numbl-core/lowering/constants.d.ts +4 -0
- package/dist-browser/numbl-core/lowering/errors.d.ts +17 -0
- package/dist-browser/numbl-core/lowering/index.d.ts +3 -0
- package/dist-browser/numbl-core/lowering/itemTypes.d.ts +87 -0
- package/dist-browser/numbl-core/lowering/loweringContext.d.ts +241 -0
- package/dist-browser/numbl-core/native/bridge-resolve.d.ts +14 -0
- package/dist-browser/numbl-core/native/geometry-bridge.d.ts +39 -0
- package/dist-browser/numbl-core/native/lapack-bridge.d.ts +482 -0
- package/dist-browser/numbl-core/native/qhull-browser.d.ts +15 -0
- package/dist-browser/numbl-core/native/qhull-node.d.ts +13 -0
- package/dist-browser/numbl-core/native/ts-lapack-bridge.d.ts +9 -0
- package/dist-browser/numbl-core/native/ts-lapack-eig-complex.d.ts +32 -0
- package/dist-browser/numbl-core/ops/bessel.d.ts +18 -0
- package/dist-browser/numbl-core/ops/comparison.d.ts +11 -0
- package/dist-browser/numbl-core/ops/complexBinaryElemwise.d.ts +10 -0
- package/dist-browser/numbl-core/ops/complexUnaryElemwise.d.ts +8 -0
- package/dist-browser/numbl-core/ops/dispatch.d.ts +26 -0
- package/dist-browser/numbl-core/ops/index.d.ts +8 -0
- package/dist-browser/numbl-core/ops/opCodes.d.ts +70 -0
- package/dist-browser/numbl-core/ops/realBinaryElemwise.d.ts +8 -0
- package/dist-browser/numbl-core/ops/realUnaryElemwise.d.ts +5 -0
- package/dist-browser/numbl-core/ops/reduce.d.ts +6 -0
- package/dist-browser/numbl-core/parser/ArgumentsParser.d.ts +33 -0
- package/dist-browser/numbl-core/parser/ClassParser.d.ts +21 -0
- package/dist-browser/numbl-core/parser/CommandParser.d.ts +31 -0
- package/dist-browser/numbl-core/parser/ControlFlowParser.d.ts +16 -0
- package/dist-browser/numbl-core/parser/ExpressionParser.d.ts +32 -0
- package/dist-browser/numbl-core/parser/FunctionParser.d.ts +10 -0
- package/dist-browser/numbl-core/parser/Parser.d.ts +17 -0
- package/dist-browser/numbl-core/parser/ParserBase.d.ts +35 -0
- package/dist-browser/numbl-core/parser/StatementParser.d.ts +13 -0
- package/dist-browser/numbl-core/parser/errors.d.ts +15 -0
- package/dist-browser/numbl-core/parser/index.d.ts +7 -0
- package/dist-browser/numbl-core/parser/types.d.ts +342 -0
- package/dist-browser/numbl-core/runtime/alloc.d.ts +12 -0
- package/dist-browser/numbl-core/runtime/axisCommand.d.ts +34 -0
- package/dist-browser/numbl-core/runtime/compare.d.ts +5 -0
- package/dist-browser/numbl-core/runtime/constructors.d.ts +39 -0
- package/dist-browser/numbl-core/runtime/convert.d.ts +10 -0
- package/dist-browser/numbl-core/runtime/cow.d.ts +33 -0
- package/dist-browser/numbl-core/runtime/display.d.ts +6 -0
- package/dist-browser/numbl-core/runtime/error.d.ts +78 -0
- package/dist-browser/numbl-core/runtime/index.d.ts +13 -0
- package/dist-browser/numbl-core/runtime/indexing.d.ts +28 -0
- package/dist-browser/numbl-core/runtime/plotBuiltinDispatch.d.ts +92 -0
- package/dist-browser/numbl-core/runtime/plotUtils.d.ts +336 -0
- package/dist-browser/numbl-core/runtime/refcount.d.ts +85 -0
- package/dist-browser/numbl-core/runtime/runtime.d.ts +354 -0
- package/dist-browser/numbl-core/runtime/runtimeDispatch.d.ts +27 -0
- package/dist-browser/numbl-core/runtime/runtimeHelpers.d.ts +31 -0
- package/dist-browser/numbl-core/runtime/runtimeIndexing.d.ts +28 -0
- package/dist-browser/numbl-core/runtime/runtimeMemberAccess.d.ts +26 -0
- package/dist-browser/numbl-core/runtime/runtimeOperators.d.ts +24 -0
- package/dist-browser/numbl-core/runtime/runtimePlot.d.ts +129 -0
- package/dist-browser/numbl-core/runtime/sentinels.d.ts +4 -0
- package/dist-browser/numbl-core/runtime/specialBuiltinNames.d.ts +2 -0
- package/dist-browser/numbl-core/runtime/specialBuiltins.d.ts +13 -0
- package/dist-browser/numbl-core/runtime/struct-access.d.ts +11 -0
- package/dist-browser/numbl-core/runtime/syncChannel.d.ts +1 -0
- package/dist-browser/numbl-core/runtime/tensor-construction.d.ts +10 -0
- package/dist-browser/numbl-core/runtime/types.d.ts +197 -0
- package/dist-browser/numbl-core/runtime/uihtmlSession.d.ts +40 -0
- package/dist-browser/numbl-core/runtime/utils.d.ts +19 -0
- package/dist-browser/numbl-core/stdlib-bundle.d.ts +3 -0
- package/dist-browser/numbl-core/systemAdapter.d.ts +23 -0
- package/dist-browser/numbl-core/version.d.ts +2 -0
- package/dist-browser/numbl-core/workspace/index.d.ts +4 -0
- package/dist-browser/numbl-core/workspace/types.d.ts +24 -0
- package/dist-browser/ts-lapack/src/BLAS/daxpy.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dcopy.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/ddot.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dgemm.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dgemm_optimized.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dgemv.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dger.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dnrm2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/drot.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dscal.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dswap.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dtrmm.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dtrmv.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/dtrsm.d.ts +1 -0
- package/dist-browser/ts-lapack/src/BLAS/idamax.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dbdsqr.d.ts +10 -0
- package/dist-browser/ts-lapack/src/SRC/dgebak.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgebal.d.ts +5 -0
- package/dist-browser/ts-lapack/src/SRC/dgebd2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgebrd.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgeev.d.ts +3 -0
- package/dist-browser/ts-lapack/src/SRC/dgehd2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgehrd.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgelq2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgelqf.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgeqr2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgeqrf.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgeqrf_optimized.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgesvd.d.ts +28 -0
- package/dist-browser/ts-lapack/src/SRC/dgetrf.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgetrf2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dgetri.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dhseqr.d.ts +32 -0
- package/dist-browser/ts-lapack/src/SRC/dlabrd.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlacpy.d.ts +18 -0
- package/dist-browser/ts-lapack/src/SRC/dladiv.d.ts +9 -0
- package/dist-browser/ts-lapack/src/SRC/dlaexc.d.ts +21 -0
- package/dist-browser/ts-lapack/src/SRC/dlahqr.d.ts +24 -0
- package/dist-browser/ts-lapack/src/SRC/dlahr2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlaln2.d.ts +5 -0
- package/dist-browser/ts-lapack/src/SRC/dlamch.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlange.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlanv2.d.ts +12 -0
- package/dist-browser/ts-lapack/src/SRC/dlapy2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlaqr1.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlaqr30.d.ts +81 -0
- package/dist-browser/ts-lapack/src/SRC/dlaqr5.d.ts +38 -0
- package/dist-browser/ts-lapack/src/SRC/dlarf.d.ts +18 -0
- package/dist-browser/ts-lapack/src/SRC/dlarf1f.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlarfb.d.ts +25 -0
- package/dist-browser/ts-lapack/src/SRC/dlarfg.d.ts +4 -0
- package/dist-browser/ts-lapack/src/SRC/dlarft.d.ts +20 -0
- package/dist-browser/ts-lapack/src/SRC/dlarfx.d.ts +17 -0
- package/dist-browser/ts-lapack/src/SRC/dlartg.d.ts +5 -0
- package/dist-browser/ts-lapack/src/SRC/dlas2.d.ts +4 -0
- package/dist-browser/ts-lapack/src/SRC/dlascl.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlaset.d.ts +19 -0
- package/dist-browser/ts-lapack/src/SRC/dlasr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlassq.d.ts +18 -0
- package/dist-browser/ts-lapack/src/SRC/dlasv2.d.ts +8 -0
- package/dist-browser/ts-lapack/src/SRC/dlaswp.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dlasy2.d.ts +5 -0
- package/dist-browser/ts-lapack/src/SRC/dorg2r.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorgbr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorghr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorgl2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorglq.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorgqr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorgqr_optimized.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dorm2r.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dormhr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dormqr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dpotf2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dtrevc3.d.ts +27 -0
- package/dist-browser/ts-lapack/src/SRC/dtrexc.d.ts +24 -0
- package/dist-browser/ts-lapack/src/SRC/dtrti2.d.ts +1 -0
- package/dist-browser/ts-lapack/src/SRC/dtrtri.d.ts +1 -0
- package/dist-browser/ts-lapack/src/utils/constants.d.ts +28 -0
- package/dist-browser/ts-lapack/src/utils/iladlc.d.ts +1 -0
- package/dist-browser/ts-lapack/src/utils/iladlr.d.ts +1 -0
- package/dist-browser/ts-lapack/src/utils/ilaenv.d.ts +1 -0
- package/dist-browser/ts-lapack/src/utils/xerbla.d.ts +1 -0
- package/dist-browser/vfs/BrowserFileIOAdapter.d.ts +60 -0
- package/dist-browser/vfs/BrowserSystemAdapter.d.ts +27 -0
- package/dist-browser/vfs/VirtualFileSystem.d.ts +66 -0
- package/dist-browser/vfs/syncVfsChanges.d.ts +23 -0
- package/dist-browser/vfs/unzipToFiles.d.ts +7 -0
- package/dist-cli/cli.js +1527 -205
- package/dist-lib/lib.d.ts +4 -0
- package/dist-lib/lib.js +2217 -199
- package/dist-lib/numbl-core/executors/jit/hostHelpers.d.ts +4 -0
- package/dist-lib/numbl-core/fileIOAdapter.d.ts +13 -0
- package/dist-lib/numbl-core/helpers/scanFormat.d.ts +11 -0
- package/dist-lib/numbl-core/jit/builtins/defs/logical/fieldnames.d.ts +2 -2
- package/dist-lib/numbl-core/jit/builtins/defs/math/rand.d.ts +2 -0
- package/dist-lib/numbl-core/jitDeclineDiagnostics.d.ts +32 -0
- package/dist-lib/numbl-core/jsUserFunctions.d.ts +13 -0
- package/dist-lib/numbl-core/runtime/constructors.d.ts +3 -1
- package/dist-lib/numbl-core/runtime/indexing.d.ts +3 -0
- package/dist-lib/numbl-core/runtime/runtime.d.ts +1 -0
- package/dist-lib/numbl-core/runtime/types.d.ts +15 -1
- package/dist-lib/numbl-core/runtime/utils.d.ts +3 -0
- package/dist-lib/numbl-core/version.d.ts +1 -1
- package/dist-lib/vfs/BrowserFileIOAdapter.d.ts +60 -0
- package/dist-lib/vfs/BrowserSystemAdapter.d.ts +27 -0
- package/dist-lib/vfs/VirtualFileSystem.d.ts +66 -0
- package/dist-site-viewer/assets/index-CT9HA1Pn.js +4831 -0
- package/dist-site-viewer/assets/numbl-worker-CYPflGmm.js +5246 -0
- package/dist-site-viewer/index.html +1 -1
- package/package.json +9 -3
- package/dist-site-viewer/assets/index-RucHpf4b.js +0 -4826
- package/dist-site-viewer/assets/numbl-worker-IO39kohI.js +0 -5228
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JIT type system.
|
|
3
|
+
*
|
|
4
|
+
* Used by the executor classification phase and by the JIT type
|
|
5
|
+
* adapter to map numbl runtime values onto JIT specializations.
|
|
6
|
+
* The IR node definitions that previously lived alongside this file
|
|
7
|
+
* (`JitExpr` / `JitStmt` / `JitCacheEntry`) belonged to the legacy
|
|
8
|
+
* in-tree JS-JIT / C-JIT pipeline and were deleted with it.
|
|
9
|
+
*/
|
|
10
|
+
export type SignCategory = "positive" | "nonneg" | "nonpositive" | "negative";
|
|
11
|
+
export type JitType = {
|
|
12
|
+
kind: "number";
|
|
13
|
+
exact?: number;
|
|
14
|
+
sign?: SignCategory;
|
|
15
|
+
isInteger?: boolean;
|
|
16
|
+
} | {
|
|
17
|
+
kind: "boolean";
|
|
18
|
+
value?: boolean;
|
|
19
|
+
} | {
|
|
20
|
+
kind: "complex_or_number";
|
|
21
|
+
pureImaginary?: boolean;
|
|
22
|
+
} | {
|
|
23
|
+
kind: "tensor";
|
|
24
|
+
isComplex: boolean;
|
|
25
|
+
shape?: number[];
|
|
26
|
+
ndim?: number;
|
|
27
|
+
isLogical?: boolean;
|
|
28
|
+
nonneg?: boolean;
|
|
29
|
+
} | {
|
|
30
|
+
kind: "string";
|
|
31
|
+
value?: string;
|
|
32
|
+
} | {
|
|
33
|
+
kind: "char";
|
|
34
|
+
value?: string;
|
|
35
|
+
} | {
|
|
36
|
+
kind: "struct";
|
|
37
|
+
fields?: Record<string, JitType>;
|
|
38
|
+
} | {
|
|
39
|
+
/**
|
|
40
|
+
* A 1-D homogeneous array of structs (matlab struct array form
|
|
41
|
+
* `T.nodes(i)`). `elemFields` records the per-element field types
|
|
42
|
+
* unified across all elements. `length` is optional and carries
|
|
43
|
+
* the statically-known element count when available.
|
|
44
|
+
*/
|
|
45
|
+
kind: "struct_array";
|
|
46
|
+
elemFields?: Record<string, JitType>;
|
|
47
|
+
length?: number;
|
|
48
|
+
} | {
|
|
49
|
+
kind: "class_instance";
|
|
50
|
+
className: string;
|
|
51
|
+
isHandleClass?: boolean;
|
|
52
|
+
fields?: Record<string, JitType>;
|
|
53
|
+
} | {
|
|
54
|
+
kind: "sparse_matrix";
|
|
55
|
+
isComplex: boolean;
|
|
56
|
+
m?: number;
|
|
57
|
+
n?: number;
|
|
58
|
+
} | {
|
|
59
|
+
kind: "cell";
|
|
60
|
+
shape?: number[];
|
|
61
|
+
/** Per-index element types (1-based), tracked when literal-index
|
|
62
|
+
* writes happen with a known type. Reads with a literal index in
|
|
63
|
+
* the map return the tracked type instead of `unknown`, which
|
|
64
|
+
* unblocks chunkerfunc's `[out{1:3}] = fcurve(ts); r = out{1}; …`
|
|
65
|
+
* pattern. Sparse — missing keys mean "unknown". */
|
|
66
|
+
elements?: Record<number, JitType>;
|
|
67
|
+
} | {
|
|
68
|
+
kind: "dictionary";
|
|
69
|
+
} | {
|
|
70
|
+
kind: "function_handle";
|
|
71
|
+
} | {
|
|
72
|
+
kind: "unknown";
|
|
73
|
+
};
|
|
74
|
+
export declare function signFromNumber(v: number): SignCategory | undefined;
|
|
75
|
+
export declare function isNonneg(t: JitType): boolean;
|
|
76
|
+
export declare function flipSign(s?: SignCategory): SignCategory | undefined;
|
|
77
|
+
export declare function unifySign(a?: SignCategory, b?: SignCategory): SignCategory | undefined;
|
|
78
|
+
export declare function jitTypeKey(t: JitType): string;
|
|
79
|
+
/** Widen/unify two types at control-flow join points. */
|
|
80
|
+
export declare function unifyJitTypes(a: JitType, b: JitType): JitType;
|
|
81
|
+
export declare function isScalarType(t: JitType): boolean;
|
|
82
|
+
export declare function isNumericScalarType(t: JitType): boolean;
|
|
83
|
+
export declare function isTensorType(t: JitType): boolean;
|
|
84
|
+
export declare function isComplexType(t: JitType): boolean;
|
|
85
|
+
/** True when the type guarantees an integer value at runtime (safe for |0). */
|
|
86
|
+
export declare function isKnownInteger(t: JitType): boolean;
|
|
87
|
+
/** Types that support arithmetic binary operations in the JIT. */
|
|
88
|
+
export declare function isArithmeticType(t: JitType): boolean;
|
|
89
|
+
export declare function shapeAfterReduction(shape: number[], dim?: number): {
|
|
90
|
+
scalar: true;
|
|
91
|
+
} | {
|
|
92
|
+
scalar: false;
|
|
93
|
+
shape: number[];
|
|
94
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loader for .numbl.js user functions.
|
|
3
|
+
*
|
|
4
|
+
* Evaluates .numbl.js files that define IBuiltins via
|
|
5
|
+
* register({ resolve }).
|
|
6
|
+
* Supports optional WASM and native shared library bindings via directives:
|
|
7
|
+
* // wasm: <name>
|
|
8
|
+
* // native: <name>
|
|
9
|
+
*
|
|
10
|
+
* The `.numbl.js` extension distinguishes numbl user functions from
|
|
11
|
+
* unrelated `.js` files (config files, source maps, etc.) so that they can
|
|
12
|
+
* be auto-discovered from the current working directory like `.m` files.
|
|
13
|
+
*/
|
|
14
|
+
import type { WorkspaceFile, NativeBridge } from "./workspace/index.js";
|
|
15
|
+
import type { IBuiltin } from "./interpreter/builtins/types.js";
|
|
16
|
+
/**
|
|
17
|
+
* Per-WASM-instance registry that exposes numbl function handles to WASM as
|
|
18
|
+
* integer ids. A `.numbl.js` apply registers a JS thunk (closing over a
|
|
19
|
+
* handle + `callHandle`) with `add()`, passes the returned id into a WASM
|
|
20
|
+
* export, and removes it once the export returns. Inside WASM the handle is
|
|
21
|
+
* invoked by calling the host-provided `env.numbl_cb_d(id, x)` import.
|
|
22
|
+
*/
|
|
23
|
+
export interface WasmCallbackRegistry {
|
|
24
|
+
/** Register a callback thunk; returns its integer id. */
|
|
25
|
+
add(fn: (...args: number[]) => number): number;
|
|
26
|
+
/** Drop a previously registered callback. */
|
|
27
|
+
remove(id: number): void;
|
|
28
|
+
}
|
|
29
|
+
/** A loaded JS user function ready for registration in the workspace. */
|
|
30
|
+
export interface LoadedJsUserFunction {
|
|
31
|
+
name: string;
|
|
32
|
+
fileName: string;
|
|
33
|
+
builtin: IBuiltin;
|
|
34
|
+
}
|
|
35
|
+
/** Returns true if the file is a numbl JS user function file (`*.numbl.js`). */
|
|
36
|
+
export declare function isNumblJsFile(fileName: string): boolean;
|
|
37
|
+
/** Returns true if the file is an mtoc2-only user function file (`*.mtoc2.js`).
|
|
38
|
+
* Numbl recognizes the extension for workspace discovery + function-name
|
|
39
|
+
* resolution, but never executes the body — mtoc2's loader does that. */
|
|
40
|
+
export declare function isMtoc2JsFile(fileName: string): boolean;
|
|
41
|
+
/** Derive a function name from a `.mtoc2.js` workspace file path.
|
|
42
|
+
* "myadd.mtoc2.js" → "myadd"
|
|
43
|
+
* "/path/to/myadd.mtoc2.js" → "myadd" */
|
|
44
|
+
export declare function funcNameFromMtoc2JsFile(fileName: string): string;
|
|
45
|
+
/**
|
|
46
|
+
* Load .numbl.js user function files and return them as LoadedJsUserFunction
|
|
47
|
+
* records. Each loaded record carries the function name, source file name,
|
|
48
|
+
* and the IBuiltin object built from the file's `register()` call.
|
|
49
|
+
*
|
|
50
|
+
* Each .numbl.js file calls register({ resolve }) to define an
|
|
51
|
+
* IBuiltin. resolve(argTypes, nargout) returns { outputTypes, apply } or null.
|
|
52
|
+
*
|
|
53
|
+
* A .numbl.js file can specify bindings via directives at the top of the file:
|
|
54
|
+
* // wasm: <name> — load a WASM module (looked up by name in wasmFiles)
|
|
55
|
+
* // native: <name> — load a native shared library (resolved relative to file)
|
|
56
|
+
*
|
|
57
|
+
* Files whose basename starts with `_` are library files. They must not call
|
|
58
|
+
* register() and instead export values via `return`. Other .numbl.js files
|
|
59
|
+
* can import them with `importJS("_name")`.
|
|
60
|
+
*/
|
|
61
|
+
export declare function loadJsUserFunctions(jsFiles: WorkspaceFile[], wasmFiles?: WorkspaceFile[], nativeBridge?: NativeBridge): LoadedJsUserFunction[];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper functions for the lexer.
|
|
3
|
+
*/
|
|
4
|
+
import { Token } from "./types.js";
|
|
5
|
+
export declare function isAlpha(ch: string): boolean;
|
|
6
|
+
export declare function isAlnum(ch: string): boolean;
|
|
7
|
+
export declare function isDigit(ch: string): boolean;
|
|
8
|
+
export declare function isWhitespace(ch: string): boolean;
|
|
9
|
+
/** Check if a token represents a "value" for transpose disambiguation. */
|
|
10
|
+
export declare function isValueToken(tok: Token): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Find the first line terminator (\n or \r\n or \r) in `s`.
|
|
13
|
+
* Returns [index, length] or undefined.
|
|
14
|
+
*/
|
|
15
|
+
export declare function findLineTerminator(s: string, offset?: number): [number, number] | undefined;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token configuration types and loader.
|
|
3
|
+
*/
|
|
4
|
+
import { Token } from "./types.js";
|
|
5
|
+
export interface OperatorConfig {
|
|
6
|
+
pattern: string;
|
|
7
|
+
token: string;
|
|
8
|
+
special?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface BlockCommentConfig {
|
|
11
|
+
start: string;
|
|
12
|
+
end: string;
|
|
13
|
+
consumeTrailingNewline?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface SectionMarkerConfig {
|
|
16
|
+
pattern: string;
|
|
17
|
+
requireLineStart: boolean;
|
|
18
|
+
token: string;
|
|
19
|
+
consumeToEOL: boolean;
|
|
20
|
+
consumeTrailingNewline?: boolean;
|
|
21
|
+
fallbackToLineComment?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface LineCommentConfig {
|
|
24
|
+
start: string;
|
|
25
|
+
}
|
|
26
|
+
export interface CommentsConfig {
|
|
27
|
+
blockComment: BlockCommentConfig;
|
|
28
|
+
sectionMarker: SectionMarkerConfig;
|
|
29
|
+
lineComment: LineCommentConfig;
|
|
30
|
+
}
|
|
31
|
+
export interface StringDisambiguation {
|
|
32
|
+
type: "transpose";
|
|
33
|
+
transposeToken: string;
|
|
34
|
+
conditions: {
|
|
35
|
+
requireAdjacency: boolean;
|
|
36
|
+
requirePrevValueOrDot: boolean;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
export interface StringConfig {
|
|
40
|
+
delimiter: string;
|
|
41
|
+
escape: string;
|
|
42
|
+
token: string;
|
|
43
|
+
allowMultiline: boolean;
|
|
44
|
+
disambiguation?: StringDisambiguation;
|
|
45
|
+
}
|
|
46
|
+
export interface SpecialPatternConfig {
|
|
47
|
+
pattern: string;
|
|
48
|
+
token: string;
|
|
49
|
+
consumeToEOL?: boolean;
|
|
50
|
+
consumeTrailingNewline?: boolean;
|
|
51
|
+
coalesceMultiple?: boolean;
|
|
52
|
+
setsLineStart?: boolean;
|
|
53
|
+
}
|
|
54
|
+
export interface NumbersConfig {
|
|
55
|
+
allowUnderscores: boolean;
|
|
56
|
+
stripUnderscores: boolean;
|
|
57
|
+
integerToken: string;
|
|
58
|
+
floatToken: string;
|
|
59
|
+
exponentChars: string[];
|
|
60
|
+
decimalPoint: string;
|
|
61
|
+
dotOperatorPrefixes: string[];
|
|
62
|
+
}
|
|
63
|
+
export interface IdentifiersConfig {
|
|
64
|
+
token: string;
|
|
65
|
+
startChars: "alpha";
|
|
66
|
+
continueChars: "alnum";
|
|
67
|
+
}
|
|
68
|
+
export interface TokenConfig {
|
|
69
|
+
operators: {
|
|
70
|
+
twoChar: OperatorConfig[];
|
|
71
|
+
singleChar: OperatorConfig[];
|
|
72
|
+
};
|
|
73
|
+
comments: CommentsConfig;
|
|
74
|
+
strings: StringConfig[];
|
|
75
|
+
special: {
|
|
76
|
+
ellipsis: SpecialPatternConfig;
|
|
77
|
+
newline: SpecialPatternConfig;
|
|
78
|
+
};
|
|
79
|
+
numbers: NumbersConfig;
|
|
80
|
+
identifiers: IdentifiersConfig;
|
|
81
|
+
}
|
|
82
|
+
export declare const TOKEN_CONFIG: TokenConfig;
|
|
83
|
+
/**
|
|
84
|
+
* Build a map from pattern to token for two-character operators.
|
|
85
|
+
*/
|
|
86
|
+
export declare function buildTwoCharMap(): Map<string, Token>;
|
|
87
|
+
/**
|
|
88
|
+
* Build a map from pattern to token for single-character operators.
|
|
89
|
+
*/
|
|
90
|
+
export declare function buildSingleCharMap(): Map<string, Token>;
|
|
91
|
+
/**
|
|
92
|
+
* Get the special behavior flag for a single-character operator.
|
|
93
|
+
*/
|
|
94
|
+
export declare function getSingleCharSpecial(pattern: string): string | undefined;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SpannedToken, Token } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Tokenize source into a flat token array (no newlines).
|
|
4
|
+
*/
|
|
5
|
+
export declare function tokenize(input: string): Token[];
|
|
6
|
+
/**
|
|
7
|
+
* Tokenize source with full span information.
|
|
8
|
+
*/
|
|
9
|
+
export declare function tokenizeDetailed(input: string): SpannedToken[];
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
export declare enum Token {
|
|
2
|
+
Integer = 0,
|
|
3
|
+
Float = 1,
|
|
4
|
+
Str = 2,
|
|
5
|
+
Char = 3,
|
|
6
|
+
Ident = 4,
|
|
7
|
+
Function = 5,
|
|
8
|
+
If = 6,
|
|
9
|
+
Else = 7,
|
|
10
|
+
ElseIf = 8,
|
|
11
|
+
For = 9,
|
|
12
|
+
ParFor = 10,
|
|
13
|
+
While = 11,
|
|
14
|
+
Break = 12,
|
|
15
|
+
Continue = 13,
|
|
16
|
+
Return = 14,
|
|
17
|
+
End = 15,
|
|
18
|
+
ClassDef = 16,
|
|
19
|
+
Properties = 17,
|
|
20
|
+
Methods = 18,
|
|
21
|
+
Events = 19,
|
|
22
|
+
Enumeration = 20,
|
|
23
|
+
Arguments = 21,
|
|
24
|
+
Import = 22,
|
|
25
|
+
Switch = 23,
|
|
26
|
+
Case = 24,
|
|
27
|
+
Otherwise = 25,
|
|
28
|
+
Try = 26,
|
|
29
|
+
Catch = 27,
|
|
30
|
+
Global = 28,
|
|
31
|
+
Persistent = 29,
|
|
32
|
+
True = 30,
|
|
33
|
+
False = 31,
|
|
34
|
+
Plus = 32,
|
|
35
|
+
Minus = 33,
|
|
36
|
+
Star = 34,
|
|
37
|
+
Slash = 35,
|
|
38
|
+
Backslash = 36,
|
|
39
|
+
Caret = 37,
|
|
40
|
+
And = 38,
|
|
41
|
+
Or = 39,
|
|
42
|
+
Tilde = 40,
|
|
43
|
+
At = 41,
|
|
44
|
+
Question = 42,
|
|
45
|
+
Less = 43,
|
|
46
|
+
Greater = 44,
|
|
47
|
+
Dot = 45,
|
|
48
|
+
Colon = 46,
|
|
49
|
+
Comma = 47,
|
|
50
|
+
Assign = 48,
|
|
51
|
+
Semicolon = 49,
|
|
52
|
+
LParen = 50,
|
|
53
|
+
RParen = 51,
|
|
54
|
+
LBracket = 52,
|
|
55
|
+
RBracket = 53,
|
|
56
|
+
LBrace = 54,
|
|
57
|
+
RBrace = 55,
|
|
58
|
+
DotStar = 56,
|
|
59
|
+
DotSlash = 57,
|
|
60
|
+
DotBackslash = 58,
|
|
61
|
+
DotCaret = 59,
|
|
62
|
+
AndAnd = 60,
|
|
63
|
+
OrOr = 61,
|
|
64
|
+
Equal = 62,
|
|
65
|
+
NotEqual = 63,
|
|
66
|
+
LessEqual = 64,
|
|
67
|
+
GreaterEqual = 65,
|
|
68
|
+
Transpose = 66,
|
|
69
|
+
Ellipsis = 67,
|
|
70
|
+
Newline = 68,
|
|
71
|
+
Section = 69,
|
|
72
|
+
Error = 70,
|
|
73
|
+
Directive = 71
|
|
74
|
+
}
|
|
75
|
+
export interface SpannedToken {
|
|
76
|
+
token: Token;
|
|
77
|
+
lexeme: string;
|
|
78
|
+
start: number;
|
|
79
|
+
end: number;
|
|
80
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Class information types and extraction utilities.
|
|
3
|
+
*/
|
|
4
|
+
import { type Expr, type Stmt } from "../parser/index.js";
|
|
5
|
+
/**
|
|
6
|
+
* Metadata about a class definition.
|
|
7
|
+
* The ctx field is typed as 'unknown' to avoid circular dependencies with LoweringContext.
|
|
8
|
+
* At runtime, it will hold a LoweringContext instance.
|
|
9
|
+
*/
|
|
10
|
+
export interface ClassInfo {
|
|
11
|
+
name: string;
|
|
12
|
+
qualifiedName: string;
|
|
13
|
+
fileName: string;
|
|
14
|
+
source: string;
|
|
15
|
+
superClass: string | null;
|
|
16
|
+
propertyNames: string[];
|
|
17
|
+
propertyDefaults: Map<string, Expr>;
|
|
18
|
+
methodNames: Set<string>;
|
|
19
|
+
staticMethodNames: Set<string>;
|
|
20
|
+
constructorName: string | null;
|
|
21
|
+
ast: (Stmt & {
|
|
22
|
+
type: "ClassDef";
|
|
23
|
+
}) | null;
|
|
24
|
+
isOldStyle?: boolean;
|
|
25
|
+
inferiorClasses: string[];
|
|
26
|
+
externalMethodFiles: Map<string, {
|
|
27
|
+
fileName: string;
|
|
28
|
+
source: string;
|
|
29
|
+
}>;
|
|
30
|
+
ctx?: any;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Extract ClassInfo from a parsed ClassDef AST node.
|
|
34
|
+
*/
|
|
35
|
+
export declare function extractClassInfo(classDef: Stmt & {
|
|
36
|
+
type: "ClassDef";
|
|
37
|
+
}, qualifiedName: string, fileName: string, source: string): ClassInfo;
|
|
38
|
+
/**
|
|
39
|
+
* Build ClassInfo for an old-style (pre-classdef) `@ClassName` folder class.
|
|
40
|
+
* There is no classdef AST: the constructor is the `@Name/Name.m` plain
|
|
41
|
+
* function (which calls `obj = class(struct, 'Name')`), and every other `.m`
|
|
42
|
+
* in the folder is an external method dispatched on instances. Fields are
|
|
43
|
+
* dynamic (defined by the constructor's struct), so there are no declared
|
|
44
|
+
* property names.
|
|
45
|
+
*/
|
|
46
|
+
export declare function makeOldStyleClassInfo(qualifiedName: string, baseName: string, constructorFile: {
|
|
47
|
+
fileName: string;
|
|
48
|
+
source: string;
|
|
49
|
+
}, methodFiles: {
|
|
50
|
+
name: string;
|
|
51
|
+
fileName: string;
|
|
52
|
+
source: string;
|
|
53
|
+
}[]): ClassInfo;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Semantic Errors
|
|
3
|
+
*/
|
|
4
|
+
import type { Span } from "../parser";
|
|
5
|
+
export declare class SemanticError extends Error {
|
|
6
|
+
span: Span | null;
|
|
7
|
+
identifier: string | null;
|
|
8
|
+
/** Resolved source file name (set by prepare.ts) */
|
|
9
|
+
file: string | null;
|
|
10
|
+
/** Resolved 1-based line number (set by prepare.ts) */
|
|
11
|
+
line: number | null;
|
|
12
|
+
/** Resolved 1-based column number (set by prepare.ts) */
|
|
13
|
+
column: number | undefined;
|
|
14
|
+
constructor(message: string, span?: Span | null, identifier?: string | null);
|
|
15
|
+
withSpan(span: Span): SemanticError;
|
|
16
|
+
withIdentifier(identifier: string): SemanticError;
|
|
17
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type System for IR
|
|
3
|
+
*/
|
|
4
|
+
export type ItemType = {
|
|
5
|
+
kind: "Number";
|
|
6
|
+
} | {
|
|
7
|
+
kind: "ComplexNumber";
|
|
8
|
+
} | {
|
|
9
|
+
kind: "Boolean";
|
|
10
|
+
} | {
|
|
11
|
+
kind: "Char";
|
|
12
|
+
} | {
|
|
13
|
+
kind: "String";
|
|
14
|
+
} | {
|
|
15
|
+
kind: "Tensor";
|
|
16
|
+
isComplex?: boolean;
|
|
17
|
+
isLogical?: boolean;
|
|
18
|
+
} | {
|
|
19
|
+
kind: "Cell";
|
|
20
|
+
elementType: ItemType | "unknown";
|
|
21
|
+
length: number | "unknown";
|
|
22
|
+
} | {
|
|
23
|
+
kind: "Function";
|
|
24
|
+
params: ItemType[];
|
|
25
|
+
returns: ItemType;
|
|
26
|
+
} | {
|
|
27
|
+
kind: "Struct";
|
|
28
|
+
knownFields: Record<string, ItemType>;
|
|
29
|
+
} | {
|
|
30
|
+
kind: "Void";
|
|
31
|
+
} | {
|
|
32
|
+
kind: "Unknown";
|
|
33
|
+
} | {
|
|
34
|
+
kind: "Union";
|
|
35
|
+
types: ItemType[];
|
|
36
|
+
} | {
|
|
37
|
+
kind: "MultipleOutputs";
|
|
38
|
+
outputTypes: ItemType[];
|
|
39
|
+
} | {
|
|
40
|
+
kind: "ClassInstance";
|
|
41
|
+
className: string;
|
|
42
|
+
} | {
|
|
43
|
+
kind: "DummyHandle";
|
|
44
|
+
} | {
|
|
45
|
+
kind: "SparseMatrix";
|
|
46
|
+
isComplex?: boolean;
|
|
47
|
+
} | {
|
|
48
|
+
kind: "Dictionary";
|
|
49
|
+
};
|
|
50
|
+
/** Returns true if the type is definitely Num, false if definitely not, undefined if unknown. */
|
|
51
|
+
export declare function isNum(t: ItemType): boolean | undefined;
|
|
52
|
+
/** Returns true if the type is definitely Tensor, false if definitely not, undefined if unknown. */
|
|
53
|
+
export declare function isTensor(t: ItemType): boolean | undefined;
|
|
54
|
+
/** Returns true if the type is definitely Complex, false if definitely not, undefined if unknown. */
|
|
55
|
+
export declare function isComplex(t: ItemType): boolean | undefined;
|
|
56
|
+
/** Returns true if the type is fully unknown ({kind: "Unknown"}). */
|
|
57
|
+
export declare function isFullyUnknown(t: ItemType): boolean;
|
|
58
|
+
/** Returns true if the type is definitely String, false if definitely not, undefined if unknown. */
|
|
59
|
+
export declare function isString(t: ItemType): boolean | undefined;
|
|
60
|
+
/** Returns true if the type is definitely Char, false if definitely not, undefined if unknown. */
|
|
61
|
+
export declare function isChar(t: ItemType): boolean | undefined;
|
|
62
|
+
export declare const IType: {
|
|
63
|
+
Num: ItemType;
|
|
64
|
+
Complex: ItemType;
|
|
65
|
+
Bool: ItemType;
|
|
66
|
+
Logical: ItemType;
|
|
67
|
+
Char: ItemType;
|
|
68
|
+
String: ItemType;
|
|
69
|
+
Void: ItemType;
|
|
70
|
+
Unknown: ItemType;
|
|
71
|
+
DummyHandle: ItemType;
|
|
72
|
+
SparseMatrix: ItemType;
|
|
73
|
+
Dictionary: ItemType;
|
|
74
|
+
/** Create a Num type */
|
|
75
|
+
num(): ItemType;
|
|
76
|
+
tensor(opts?: {
|
|
77
|
+
isComplex?: boolean;
|
|
78
|
+
isLogical?: boolean;
|
|
79
|
+
}): ItemType;
|
|
80
|
+
cell(elementType?: ItemType | "unknown", length?: number | "unknown"): ItemType;
|
|
81
|
+
func(params: ItemType[], returns: ItemType): ItemType;
|
|
82
|
+
struct(fields?: Record<string, ItemType>): ItemType;
|
|
83
|
+
sparseMatrix(isComplex?: boolean): ItemType;
|
|
84
|
+
union(types: ItemType[]): ItemType;
|
|
85
|
+
/** Unify two types, producing a common supertype */
|
|
86
|
+
unify(a: ItemType | undefined, b: ItemType | undefined): ItemType | undefined;
|
|
87
|
+
};
|