openalgo-script 0.1.0-alpha.1 → 0.4.0
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/CHANGELOG.md +1469 -0
- package/README.md +85 -30
- package/dist/adapters/charts/alerts.d.ts +70 -0
- package/dist/adapters/charts/alerts.d.ts.map +1 -0
- package/dist/adapters/charts/alerts.js +52 -0
- package/dist/adapters/charts/alerts.js.map +1 -0
- package/dist/adapters/charts/bars.d.ts +39 -0
- package/dist/adapters/charts/bars.d.ts.map +1 -0
- package/dist/adapters/charts/bars.js +32 -0
- package/dist/adapters/charts/bars.js.map +1 -0
- package/dist/adapters/charts/candles.d.ts +40 -0
- package/dist/adapters/charts/candles.d.ts.map +1 -0
- package/dist/adapters/charts/candles.js +85 -0
- package/dist/adapters/charts/candles.js.map +1 -0
- package/dist/adapters/charts/colours.d.ts +47 -0
- package/dist/adapters/charts/colours.d.ts.map +1 -0
- package/dist/adapters/charts/colours.js +80 -0
- package/dist/adapters/charts/colours.js.map +1 -0
- package/dist/adapters/charts/columns.d.ts +37 -0
- package/dist/adapters/charts/columns.d.ts.map +1 -0
- package/dist/adapters/charts/columns.js +56 -0
- package/dist/adapters/charts/columns.js.map +1 -0
- package/dist/adapters/charts/contract.d.ts +278 -0
- package/dist/adapters/charts/contract.d.ts.map +1 -0
- package/dist/adapters/charts/contract.js +2 -0
- package/dist/adapters/charts/contract.js.map +1 -0
- package/dist/adapters/charts/descriptor.d.ts +48 -0
- package/dist/adapters/charts/descriptor.d.ts.map +1 -0
- package/dist/adapters/charts/descriptor.js +111 -0
- package/dist/adapters/charts/descriptor.js.map +1 -0
- package/dist/adapters/charts/drawings.d.ts +43 -0
- package/dist/adapters/charts/drawings.d.ts.map +1 -0
- package/dist/adapters/charts/drawings.js +172 -0
- package/dist/adapters/charts/drawings.js.map +1 -0
- package/dist/adapters/charts/errors.d.ts +28 -0
- package/dist/adapters/charts/errors.d.ts.map +1 -0
- package/dist/adapters/charts/errors.js +21 -0
- package/dist/adapters/charts/errors.js.map +1 -0
- package/dist/adapters/charts/fields.d.ts +33 -0
- package/dist/adapters/charts/fields.d.ts.map +1 -0
- package/dist/adapters/charts/fields.js +51 -0
- package/dist/adapters/charts/fields.js.map +1 -0
- package/dist/adapters/charts/fills.d.ts +23 -0
- package/dist/adapters/charts/fills.d.ts.map +1 -0
- package/dist/adapters/charts/fills.js +48 -0
- package/dist/adapters/charts/fills.js.map +1 -0
- package/dist/adapters/charts/index.d.ts +37 -0
- package/dist/adapters/charts/index.d.ts.map +1 -0
- package/dist/adapters/charts/index.js +33 -0
- package/dist/adapters/charts/index.js.map +1 -0
- package/dist/adapters/charts/levels.d.ts +39 -0
- package/dist/adapters/charts/levels.d.ts.map +1 -0
- package/dist/adapters/charts/levels.js +61 -0
- package/dist/adapters/charts/levels.js.map +1 -0
- package/dist/adapters/charts/markers.d.ts +41 -0
- package/dist/adapters/charts/markers.d.ts.map +1 -0
- package/dist/adapters/charts/markers.js +75 -0
- package/dist/adapters/charts/markers.js.map +1 -0
- package/dist/adapters/charts/paint.d.ts +61 -0
- package/dist/adapters/charts/paint.d.ts.map +1 -0
- package/dist/adapters/charts/paint.js +47 -0
- package/dist/adapters/charts/paint.js.map +1 -0
- package/dist/adapters/charts/plots.d.ts +39 -0
- package/dist/adapters/charts/plots.d.ts.map +1 -0
- package/dist/adapters/charts/plots.js +117 -0
- package/dist/adapters/charts/plots.js.map +1 -0
- package/dist/adapters/charts/produced.d.ts +57 -0
- package/dist/adapters/charts/produced.d.ts.map +1 -0
- package/dist/adapters/charts/produced.js +11 -0
- package/dist/adapters/charts/produced.js.map +1 -0
- package/dist/adapters/charts/requests.d.ts +114 -0
- package/dist/adapters/charts/requests.d.ts.map +1 -0
- package/dist/adapters/charts/requests.js +277 -0
- package/dist/adapters/charts/requests.js.map +1 -0
- package/dist/adapters/charts/run.d.ts +147 -0
- package/dist/adapters/charts/run.d.ts.map +1 -0
- package/dist/adapters/charts/run.js +148 -0
- package/dist/adapters/charts/run.js.map +1 -0
- package/dist/adapters/charts/settings.d.ts +78 -0
- package/dist/adapters/charts/settings.d.ts.map +1 -0
- package/dist/adapters/charts/settings.js +225 -0
- package/dist/adapters/charts/settings.js.map +1 -0
- package/dist/adapters/charts/surfaces.d.ts +221 -0
- package/dist/adapters/charts/surfaces.d.ts.map +1 -0
- package/dist/adapters/charts/surfaces.js +2 -0
- package/dist/adapters/charts/surfaces.js.map +1 -0
- package/dist/adapters/charts/tables.d.ts +65 -0
- package/dist/adapters/charts/tables.d.ts.map +1 -0
- package/dist/adapters/charts/tables.js +166 -0
- package/dist/adapters/charts/tables.js.map +1 -0
- package/dist/adapters/codemirror/commands.d.ts +14 -0
- package/dist/adapters/codemirror/commands.d.ts.map +1 -0
- package/dist/adapters/codemirror/commands.js +52 -0
- package/dist/adapters/codemirror/commands.js.map +1 -0
- package/dist/adapters/codemirror/completion.d.ts +15 -0
- package/dist/adapters/codemirror/completion.d.ts.map +1 -0
- package/dist/adapters/codemirror/completion.js +64 -0
- package/dist/adapters/codemirror/completion.js.map +1 -0
- package/dist/adapters/codemirror/contract.d.ts +156 -0
- package/dist/adapters/codemirror/contract.d.ts.map +1 -0
- package/dist/adapters/codemirror/contract.js +42 -0
- package/dist/adapters/codemirror/contract.js.map +1 -0
- package/dist/adapters/codemirror/index.d.ts +43 -0
- package/dist/adapters/codemirror/index.d.ts.map +1 -0
- package/dist/adapters/codemirror/index.js +8 -0
- package/dist/adapters/codemirror/index.js.map +1 -0
- package/dist/adapters/codemirror/lint.d.ts +17 -0
- package/dist/adapters/codemirror/lint.d.ts.map +1 -0
- package/dist/adapters/codemirror/lint.js +62 -0
- package/dist/adapters/codemirror/lint.js.map +1 -0
- package/dist/adapters/codemirror/positions.d.ts +16 -0
- package/dist/adapters/codemirror/positions.d.ts.map +1 -0
- package/dist/adapters/codemirror/positions.js +65 -0
- package/dist/adapters/codemirror/positions.js.map +1 -0
- package/dist/adapters/codemirror/stream.d.ts +23 -0
- package/dist/adapters/codemirror/stream.d.ts.map +1 -0
- package/dist/adapters/codemirror/stream.js +70 -0
- package/dist/adapters/codemirror/stream.js.map +1 -0
- package/dist/adapters/codemirror/tokens.d.ts +44 -0
- package/dist/adapters/codemirror/tokens.d.ts.map +1 -0
- package/dist/adapters/codemirror/tokens.js +34 -0
- package/dist/adapters/codemirror/tokens.js.map +1 -0
- package/dist/adapters/codemirror/tooltips.d.ts +35 -0
- package/dist/adapters/codemirror/tooltips.d.ts.map +1 -0
- package/dist/adapters/codemirror/tooltips.js +108 -0
- package/dist/adapters/codemirror/tooltips.js.map +1 -0
- package/dist/core/accounting/charges.d.ts +136 -0
- package/dist/core/accounting/charges.d.ts.map +1 -0
- package/dist/core/accounting/charges.js +362 -0
- package/dist/core/accounting/charges.js.map +1 -0
- package/dist/core/accounting/equity.d.ts +158 -0
- package/dist/core/accounting/equity.d.ts.map +1 -0
- package/dist/core/accounting/equity.js +155 -0
- package/dist/core/accounting/equity.js.map +1 -0
- package/dist/core/accounting/index.d.ts +44 -0
- package/dist/core/accounting/index.d.ts.map +1 -0
- package/dist/core/accounting/index.js +36 -0
- package/dist/core/accounting/index.js.map +1 -0
- package/dist/core/accounting/markers.d.ts +43 -0
- package/dist/core/accounting/markers.d.ts.map +1 -0
- package/dist/core/accounting/markers.js +64 -0
- package/dist/core/accounting/markers.js.map +1 -0
- package/dist/core/accounting/monthly.d.ts +52 -0
- package/dist/core/accounting/monthly.d.ts.map +1 -0
- package/dist/core/accounting/monthly.js +99 -0
- package/dist/core/accounting/monthly.js.map +1 -0
- package/dist/core/accounting/report.d.ts +38 -0
- package/dist/core/accounting/report.d.ts.map +1 -0
- package/dist/core/accounting/report.js +63 -0
- package/dist/core/accounting/report.js.map +1 -0
- package/dist/core/accounting/shapes.d.ts +70 -0
- package/dist/core/accounting/shapes.d.ts.map +1 -0
- package/dist/core/accounting/shapes.js +21 -0
- package/dist/core/accounting/shapes.js.map +1 -0
- package/dist/core/accounting/statistics.d.ts +75 -0
- package/dist/core/accounting/statistics.d.ts.map +1 -0
- package/dist/core/accounting/statistics.js +246 -0
- package/dist/core/accounting/statistics.js.map +1 -0
- package/dist/core/accounting/trades.d.ts +118 -0
- package/dist/core/accounting/trades.d.ts.map +1 -0
- package/dist/core/accounting/trades.js +186 -0
- package/dist/core/accounting/trades.js.map +1 -0
- package/dist/core/backtest/compare.d.ts +38 -0
- package/dist/core/backtest/compare.d.ts.map +1 -0
- package/dist/core/backtest/compare.js +189 -0
- package/dist/core/backtest/compare.js.map +1 -0
- package/dist/core/backtest/declaration.d.ts +52 -0
- package/dist/core/backtest/declaration.d.ts.map +1 -0
- package/dist/core/backtest/declaration.js +48 -0
- package/dist/core/backtest/declaration.js.map +1 -0
- package/dist/core/backtest/drive.d.ts +29 -0
- package/dist/core/backtest/drive.d.ts.map +1 -0
- package/dist/core/backtest/drive.js +262 -0
- package/dist/core/backtest/drive.js.map +1 -0
- package/dist/core/backtest/index.d.ts +46 -0
- package/dist/core/backtest/index.d.ts.map +1 -0
- package/dist/core/backtest/index.js +36 -0
- package/dist/core/backtest/index.js.map +1 -0
- package/dist/core/backtest/range.d.ts +84 -0
- package/dist/core/backtest/range.d.ts.map +1 -0
- package/dist/core/backtest/range.js +90 -0
- package/dist/core/backtest/range.js.map +1 -0
- package/dist/core/backtest/record.d.ts +238 -0
- package/dist/core/backtest/record.d.ts.map +1 -0
- package/dist/core/backtest/record.js +176 -0
- package/dist/core/backtest/record.js.map +1 -0
- package/dist/core/backtest/replay.d.ts +48 -0
- package/dist/core/backtest/replay.d.ts.map +1 -0
- package/dist/core/backtest/replay.js +127 -0
- package/dist/core/backtest/replay.js.map +1 -0
- package/dist/core/backtest/resting.d.ts +62 -0
- package/dist/core/backtest/resting.d.ts.map +1 -0
- package/dist/core/backtest/resting.js +59 -0
- package/dist/core/backtest/resting.js.map +1 -0
- package/dist/core/backtest/settings.d.ts +117 -0
- package/dist/core/backtest/settings.d.ts.map +1 -0
- package/dist/core/backtest/settings.js +207 -0
- package/dist/core/backtest/settings.js.map +1 -0
- package/dist/core/backtest/simulate.d.ts +146 -0
- package/dist/core/backtest/simulate.d.ts.map +1 -0
- package/dist/core/backtest/simulate.js +217 -0
- package/dist/core/backtest/simulate.js.map +1 -0
- package/dist/core/catalogue/catalogue.generated.d.ts +164 -10
- package/dist/core/catalogue/catalogue.generated.d.ts.map +1 -1
- package/dist/core/catalogue/catalogue.generated.js +23 -9
- package/dist/core/catalogue/catalogue.generated.js.map +1 -1
- package/dist/core/catalogue/values.generated.d.ts +49 -0
- package/dist/core/catalogue/values.generated.d.ts.map +1 -1
- package/dist/core/check/arguments.d.ts +41 -0
- package/dist/core/check/arguments.d.ts.map +1 -0
- package/dist/core/check/arguments.js +84 -0
- package/dist/core/check/arguments.js.map +1 -0
- package/dist/core/check/call-sites.d.ts +22 -0
- package/dist/core/check/call-sites.d.ts.map +1 -0
- package/dist/core/check/call-sites.js +329 -0
- package/dist/core/check/call-sites.js.map +1 -0
- package/dist/core/check/call-warmup.d.ts +37 -0
- package/dist/core/check/call-warmup.d.ts.map +1 -0
- package/dist/core/check/call-warmup.js +97 -0
- package/dist/core/check/call-warmup.js.map +1 -0
- package/dist/core/check/calls.d.ts +33 -0
- package/dist/core/check/calls.d.ts.map +1 -0
- package/dist/core/check/calls.js +348 -0
- package/dist/core/check/calls.js.map +1 -0
- package/dist/core/check/check.d.ts +23 -0
- package/dist/core/check/check.d.ts.map +1 -0
- package/dist/core/check/check.js +163 -0
- package/dist/core/check/check.js.map +1 -0
- package/dist/core/check/checked.d.ts +198 -0
- package/dist/core/check/checked.d.ts.map +1 -0
- package/dist/core/check/checked.js +19 -0
- package/dist/core/check/checked.js.map +1 -0
- package/dist/core/check/checker.d.ts +182 -0
- package/dist/core/check/checker.d.ts.map +1 -0
- package/dist/core/check/checker.js +280 -0
- package/dist/core/check/checker.js.map +1 -0
- package/dist/core/check/conditional.d.ts +35 -0
- package/dist/core/check/conditional.d.ts.map +1 -0
- package/dist/core/check/conditional.js +100 -0
- package/dist/core/check/conditional.js.map +1 -0
- package/dist/core/check/constant.d.ts +47 -0
- package/dist/core/check/constant.d.ts.map +1 -0
- package/dist/core/check/constant.js +101 -0
- package/dist/core/check/constant.js.map +1 -0
- package/dist/core/check/declaration.d.ts +33 -0
- package/dist/core/check/declaration.d.ts.map +1 -0
- package/dist/core/check/declaration.js +181 -0
- package/dist/core/check/declaration.js.map +1 -0
- package/dist/core/check/expressions.d.ts +36 -0
- package/dist/core/check/expressions.d.ts.map +1 -0
- package/dist/core/check/expressions.js +398 -0
- package/dist/core/check/expressions.js.map +1 -0
- package/dist/core/check/functions.d.ts +31 -0
- package/dist/core/check/functions.d.ts.map +1 -0
- package/dist/core/check/functions.js +238 -0
- package/dist/core/check/functions.js.map +1 -0
- package/dist/core/check/handles.d.ts +48 -0
- package/dist/core/check/handles.d.ts.map +1 -0
- package/dist/core/check/handles.js +43 -0
- package/dist/core/check/handles.js.map +1 -0
- package/dist/core/check/index.d.ts +31 -0
- package/dist/core/check/index.d.ts.map +1 -0
- package/dist/core/check/index.js +26 -0
- package/dist/core/check/index.js.map +1 -0
- package/dist/core/check/library-bars.d.ts +7 -0
- package/dist/core/check/library-bars.d.ts.map +1 -0
- package/dist/core/check/library-bars.js +181 -0
- package/dist/core/check/library-bars.js.map +1 -0
- package/dist/core/check/library-orders.d.ts +5 -0
- package/dist/core/check/library-orders.d.ts.map +1 -0
- package/dist/core/check/library-orders.js +250 -0
- package/dist/core/check/library-orders.js.map +1 -0
- package/dist/core/check/library-output.d.ts +7 -0
- package/dist/core/check/library-output.d.ts.map +1 -0
- package/dist/core/check/library-output.js +195 -0
- package/dist/core/check/library-output.js.map +1 -0
- package/dist/core/check/library-prose.generated.d.ts +16 -0
- package/dist/core/check/library-prose.generated.d.ts.map +1 -0
- package/dist/core/check/library-prose.generated.js +353 -0
- package/dist/core/check/library-prose.generated.js.map +1 -0
- package/dist/core/check/library-series.d.ts +3 -0
- package/dist/core/check/library-series.d.ts.map +1 -0
- package/dist/core/check/library-series.js +415 -0
- package/dist/core/check/library-series.js.map +1 -0
- package/dist/core/check/library.d.ts +204 -0
- package/dist/core/check/library.d.ts.map +1 -0
- package/dist/core/check/library.js +198 -0
- package/dist/core/check/library.js.map +1 -0
- package/dist/core/check/literals.d.ts +19 -0
- package/dist/core/check/literals.d.ts.map +1 -0
- package/dist/core/check/literals.js +22 -0
- package/dist/core/check/literals.js.map +1 -0
- package/dist/core/check/outputs.d.ts +31 -0
- package/dist/core/check/outputs.d.ts.map +1 -0
- package/dist/core/check/outputs.js +113 -0
- package/dist/core/check/outputs.js.map +1 -0
- package/dist/core/check/statements.d.ts +25 -0
- package/dist/core/check/statements.d.ts.map +1 -0
- package/dist/core/check/statements.js +377 -0
- package/dist/core/check/statements.js.map +1 -0
- package/dist/core/check/suggest.d.ts +25 -0
- package/dist/core/check/suggest.d.ts.map +1 -0
- package/dist/core/check/suggest.js +61 -0
- package/dist/core/check/suggest.js.map +1 -0
- package/dist/core/check/surface.d.ts +62 -0
- package/dist/core/check/surface.d.ts.map +1 -0
- package/dist/core/check/surface.js +129 -0
- package/dist/core/check/surface.js.map +1 -0
- package/dist/core/check/tags.d.ts +4 -0
- package/dist/core/check/tags.d.ts.map +1 -0
- package/dist/core/check/tags.js +54 -0
- package/dist/core/check/tags.js.map +1 -0
- package/dist/core/check/types.d.ts +153 -0
- package/dist/core/check/types.d.ts.map +1 -0
- package/dist/core/check/types.js +221 -0
- package/dist/core/check/types.js.map +1 -0
- package/dist/core/check/warmup.d.ts +73 -0
- package/dist/core/check/warmup.d.ts.map +1 -0
- package/dist/core/check/warmup.js +62 -0
- package/dist/core/check/warmup.js.map +1 -0
- package/dist/core/diagnostics/collector.d.ts +12 -0
- package/dist/core/diagnostics/collector.d.ts.map +1 -1
- package/dist/core/diagnostics/collector.js +27 -1
- package/dist/core/diagnostics/collector.js.map +1 -1
- package/dist/core/emit/calls.d.ts +38 -0
- package/dist/core/emit/calls.d.ts.map +1 -0
- package/dist/core/emit/calls.js +347 -0
- package/dist/core/emit/calls.js.map +1 -0
- package/dist/core/emit/canonical.d.ts +39 -0
- package/dist/core/emit/canonical.d.ts.map +1 -0
- package/dist/core/emit/canonical.js +71 -0
- package/dist/core/emit/canonical.js.map +1 -0
- package/dist/core/emit/channels.d.ts +28 -0
- package/dist/core/emit/channels.d.ts.map +1 -0
- package/dist/core/emit/channels.js +110 -0
- package/dist/core/emit/channels.js.map +1 -0
- package/dist/core/emit/code.d.ts +75 -0
- package/dist/core/emit/code.d.ts.map +1 -0
- package/dist/core/emit/code.js +104 -0
- package/dist/core/emit/code.js.map +1 -0
- package/dist/core/emit/colours.d.ts +35 -0
- package/dist/core/emit/colours.d.ts.map +1 -0
- package/dist/core/emit/colours.js +50 -0
- package/dist/core/emit/colours.js.map +1 -0
- package/dist/core/emit/context.d.ts +271 -0
- package/dist/core/emit/context.d.ts.map +1 -0
- package/dist/core/emit/context.js +358 -0
- package/dist/core/emit/context.js.map +1 -0
- package/dist/core/emit/defaults.d.ts +64 -0
- package/dist/core/emit/defaults.d.ts.map +1 -0
- package/dist/core/emit/defaults.js +182 -0
- package/dist/core/emit/defaults.js.map +1 -0
- package/dist/core/emit/emit.d.ts +13 -0
- package/dist/core/emit/emit.d.ts.map +1 -0
- package/dist/core/emit/emit.js +281 -0
- package/dist/core/emit/emit.js.map +1 -0
- package/dist/core/emit/events.d.ts +21 -0
- package/dist/core/emit/events.d.ts.map +1 -0
- package/dist/core/emit/events.js +112 -0
- package/dist/core/emit/events.js.map +1 -0
- package/dist/core/emit/expressions.d.ts +23 -0
- package/dist/core/emit/expressions.d.ts.map +1 -0
- package/dist/core/emit/expressions.js +253 -0
- package/dist/core/emit/expressions.js.map +1 -0
- package/dist/core/emit/functions.d.ts +30 -0
- package/dist/core/emit/functions.d.ts.map +1 -0
- package/dist/core/emit/functions.js +171 -0
- package/dist/core/emit/functions.js.map +1 -0
- package/dist/core/emit/gaps.d.ts +34 -0
- package/dist/core/emit/gaps.d.ts.map +1 -0
- package/dist/core/emit/gaps.js +16 -0
- package/dist/core/emit/gaps.js.map +1 -0
- package/dist/core/emit/index.d.ts +31 -0
- package/dist/core/emit/index.d.ts.map +1 -0
- package/dist/core/emit/index.js +25 -0
- package/dist/core/emit/index.js.map +1 -0
- package/dist/core/emit/inputs.d.ts +47 -0
- package/dist/core/emit/inputs.d.ts.map +1 -0
- package/dist/core/emit/inputs.js +150 -0
- package/dist/core/emit/inputs.js.map +1 -0
- package/dist/core/emit/layout.d.ts +73 -0
- package/dist/core/emit/layout.d.ts.map +1 -0
- package/dist/core/emit/layout.js +126 -0
- package/dist/core/emit/layout.js.map +1 -0
- package/dist/core/emit/meta.d.ts +14 -0
- package/dist/core/emit/meta.d.ts.map +1 -0
- package/dist/core/emit/meta.js +68 -0
- package/dist/core/emit/meta.js.map +1 -0
- package/dist/core/emit/opcodes.d.ts +28 -0
- package/dist/core/emit/opcodes.d.ts.map +1 -0
- package/dist/core/emit/opcodes.js +137 -0
- package/dist/core/emit/opcodes.js.map +1 -0
- package/dist/core/emit/outputs.d.ts +67 -0
- package/dist/core/emit/outputs.d.ts.map +1 -0
- package/dist/core/emit/outputs.js +293 -0
- package/dist/core/emit/outputs.js.map +1 -0
- package/dist/core/emit/pool.d.ts +33 -0
- package/dist/core/emit/pool.d.ts.map +1 -0
- package/dist/core/emit/pool.js +79 -0
- package/dist/core/emit/pool.js.map +1 -0
- package/dist/core/emit/program.d.ts +333 -0
- package/dist/core/emit/program.d.ts.map +1 -0
- package/dist/core/emit/program.js +15 -0
- package/dist/core/emit/program.js.map +1 -0
- package/dist/core/emit/registers.d.ts +35 -0
- package/dist/core/emit/registers.d.ts.map +1 -0
- package/dist/core/emit/registers.js +170 -0
- package/dist/core/emit/registers.js.map +1 -0
- package/dist/core/emit/request-scope.d.ts +36 -0
- package/dist/core/emit/request-scope.d.ts.map +1 -0
- package/dist/core/emit/request-scope.js +41 -0
- package/dist/core/emit/request-scope.js.map +1 -0
- package/dist/core/emit/requests.d.ts +69 -0
- package/dist/core/emit/requests.d.ts.map +1 -0
- package/dist/core/emit/requests.js +230 -0
- package/dist/core/emit/requests.js.map +1 -0
- package/dist/core/emit/requires.d.ts +4 -0
- package/dist/core/emit/requires.d.ts.map +1 -0
- package/dist/core/emit/requires.js +71 -0
- package/dist/core/emit/requires.js.map +1 -0
- package/dist/core/emit/sha256.d.ts +24 -0
- package/dist/core/emit/sha256.d.ts.map +1 -0
- package/dist/core/emit/sha256.js +109 -0
- package/dist/core/emit/sha256.js.map +1 -0
- package/dist/core/emit/statements.d.ts +20 -0
- package/dist/core/emit/statements.d.ts.map +1 -0
- package/dist/core/emit/statements.js +393 -0
- package/dist/core/emit/statements.js.map +1 -0
- package/dist/core/emit/values.d.ts +80 -0
- package/dist/core/emit/values.d.ts.map +1 -0
- package/dist/core/emit/values.js +242 -0
- package/dist/core/emit/values.js.map +1 -0
- package/dist/core/engine/alerts.d.ts +66 -0
- package/dist/core/engine/alerts.d.ts.map +1 -0
- package/dist/core/engine/alerts.js +119 -0
- package/dist/core/engine/alerts.js.map +1 -0
- package/dist/core/engine/arithmetic.d.ts +82 -0
- package/dist/core/engine/arithmetic.d.ts.map +1 -0
- package/dist/core/engine/arithmetic.js +141 -0
- package/dist/core/engine/arithmetic.js.map +1 -0
- package/dist/core/engine/bars.d.ts +95 -0
- package/dist/core/engine/bars.d.ts.map +1 -0
- package/dist/core/engine/bars.js +133 -0
- package/dist/core/engine/bars.js.map +1 -0
- package/dist/core/engine/budget.d.ts +162 -0
- package/dist/core/engine/budget.d.ts.map +1 -0
- package/dist/core/engine/budget.js +188 -0
- package/dist/core/engine/budget.js.map +1 -0
- package/dist/core/engine/channels.d.ts +106 -0
- package/dist/core/engine/channels.d.ts.map +1 -0
- package/dist/core/engine/channels.js +99 -0
- package/dist/core/engine/channels.js.map +1 -0
- package/dist/core/engine/drawings.d.ts +64 -0
- package/dist/core/engine/drawings.d.ts.map +1 -0
- package/dist/core/engine/drawings.js +67 -0
- package/dist/core/engine/drawings.js.map +1 -0
- package/dist/core/engine/engine.d.ts +140 -0
- package/dist/core/engine/engine.d.ts.map +1 -0
- package/dist/core/engine/engine.js +405 -0
- package/dist/core/engine/engine.js.map +1 -0
- package/dist/core/engine/errors.d.ts +64 -0
- package/dist/core/engine/errors.d.ts.map +1 -0
- package/dist/core/engine/errors.js +63 -0
- package/dist/core/engine/errors.js.map +1 -0
- package/dist/core/engine/frames.d.ts +48 -0
- package/dist/core/engine/frames.d.ts.map +1 -0
- package/dist/core/engine/frames.js +41 -0
- package/dist/core/engine/frames.js.map +1 -0
- package/dist/core/engine/grids.d.ts +25 -0
- package/dist/core/engine/grids.d.ts.map +1 -0
- package/dist/core/engine/grids.js +77 -0
- package/dist/core/engine/grids.js.map +1 -0
- package/dist/core/engine/guard.d.ts +4 -0
- package/dist/core/engine/guard.d.ts.map +1 -0
- package/dist/core/engine/guard.js +46 -0
- package/dist/core/engine/guard.js.map +1 -0
- package/dist/core/engine/host.d.ts +219 -0
- package/dist/core/engine/host.d.ts.map +1 -0
- package/dist/core/engine/host.js +38 -0
- package/dist/core/engine/host.js.map +1 -0
- package/dist/core/engine/index.d.ts +49 -0
- package/dist/core/engine/index.d.ts.map +1 -0
- package/dist/core/engine/index.js +33 -0
- package/dist/core/engine/index.js.map +1 -0
- package/dist/core/engine/inputs.d.ts +77 -0
- package/dist/core/engine/inputs.d.ts.map +1 -0
- package/dist/core/engine/inputs.js +205 -0
- package/dist/core/engine/inputs.js.map +1 -0
- package/dist/core/engine/ledger/call.d.ts +63 -0
- package/dist/core/engine/ledger/call.d.ts.map +1 -0
- package/dist/core/engine/ledger/call.js +136 -0
- package/dist/core/engine/ledger/call.js.map +1 -0
- package/dist/core/engine/ledger/closable.d.ts +155 -0
- package/dist/core/engine/ledger/closable.d.ts.map +1 -0
- package/dist/core/engine/ledger/closable.js +173 -0
- package/dist/core/engine/ledger/closable.js.map +1 -0
- package/dist/core/engine/ledger/holdings.d.ts +194 -0
- package/dist/core/engine/ledger/holdings.d.ts.map +1 -0
- package/dist/core/engine/ledger/holdings.js +237 -0
- package/dist/core/engine/ledger/holdings.js.map +1 -0
- package/dist/core/engine/ledger/index.d.ts +19 -0
- package/dist/core/engine/ledger/index.d.ts.map +1 -0
- package/dist/core/engine/ledger/index.js +2 -0
- package/dist/core/engine/ledger/index.js.map +1 -0
- package/dist/core/engine/ledger/intent.d.ts +106 -0
- package/dist/core/engine/ledger/intent.d.ts.map +1 -0
- package/dist/core/engine/ledger/intent.js +21 -0
- package/dist/core/engine/ledger/intent.js.map +1 -0
- package/dist/core/engine/ledger/ledger.d.ts +143 -0
- package/dist/core/engine/ledger/ledger.d.ts.map +1 -0
- package/dist/core/engine/ledger/ledger.js +237 -0
- package/dist/core/engine/ledger/ledger.js.map +1 -0
- package/dist/core/engine/ledger/place.d.ts +75 -0
- package/dist/core/engine/ledger/place.d.ts.map +1 -0
- package/dist/core/engine/ledger/place.js +174 -0
- package/dist/core/engine/ledger/place.js.map +1 -0
- package/dist/core/engine/ledger/positions.d.ts +68 -0
- package/dist/core/engine/ledger/positions.d.ts.map +1 -0
- package/dist/core/engine/ledger/positions.js +114 -0
- package/dist/core/engine/ledger/positions.js.map +1 -0
- package/dist/core/engine/ledger/refuse.d.ts +43 -0
- package/dist/core/engine/ledger/refuse.d.ts.map +1 -0
- package/dist/core/engine/ledger/refuse.js +329 -0
- package/dist/core/engine/ledger/refuse.js.map +1 -0
- package/dist/core/engine/ledger/row.d.ts +176 -0
- package/dist/core/engine/ledger/row.d.ts.map +1 -0
- package/dist/core/engine/ledger/row.js +169 -0
- package/dist/core/engine/ledger/row.js.map +1 -0
- package/dist/core/engine/ledger/sizing.d.ts +142 -0
- package/dist/core/engine/ledger/sizing.d.ts.map +1 -0
- package/dist/core/engine/ledger/sizing.js +223 -0
- package/dist/core/engine/ledger/sizing.js.map +1 -0
- package/dist/core/engine/library/arrays.d.ts +14 -0
- package/dist/core/engine/library/arrays.d.ts.map +1 -0
- package/dist/core/engine/library/arrays.js +285 -0
- package/dist/core/engine/library/arrays.js.map +1 -0
- package/dist/core/engine/library/averages.d.ts +9 -0
- package/dist/core/engine/library/averages.d.ts.map +1 -0
- package/dist/core/engine/library/averages.js +41 -0
- package/dist/core/engine/library/averages.js.map +1 -0
- package/dist/core/engine/library/binding.d.ts +230 -0
- package/dist/core/engine/library/binding.d.ts.map +1 -0
- package/dist/core/engine/library/binding.js +109 -0
- package/dist/core/engine/library/binding.js.map +1 -0
- package/dist/core/engine/library/chart.d.ts +3 -0
- package/dist/core/engine/library/chart.d.ts.map +1 -0
- package/dist/core/engine/library/chart.js +83 -0
- package/dist/core/engine/library/chart.js.map +1 -0
- package/dist/core/engine/library/colours.d.ts +26 -0
- package/dist/core/engine/library/colours.d.ts.map +1 -0
- package/dist/core/engine/library/colours.js +81 -0
- package/dist/core/engine/library/colours.js.map +1 -0
- package/dist/core/engine/library/dates.d.ts +3 -0
- package/dist/core/engine/library/dates.d.ts.map +1 -0
- package/dist/core/engine/library/dates.js +75 -0
- package/dist/core/engine/library/dates.js.map +1 -0
- package/dist/core/engine/library/index.d.ts +13 -0
- package/dist/core/engine/library/index.d.ts.map +1 -0
- package/dist/core/engine/library/index.js +86 -0
- package/dist/core/engine/library/index.js.map +1 -0
- package/dist/core/engine/library/maths.d.ts +3 -0
- package/dist/core/engine/library/maths.d.ts.map +1 -0
- package/dist/core/engine/library/maths.js +89 -0
- package/dist/core/engine/library/maths.js.map +1 -0
- package/dist/core/engine/library/objects.d.ts +3 -0
- package/dist/core/engine/library/objects.d.ts.map +1 -0
- package/dist/core/engine/library/objects.js +199 -0
- package/dist/core/engine/library/objects.js.map +1 -0
- package/dist/core/engine/library/oscillators.d.ts +3 -0
- package/dist/core/engine/library/oscillators.d.ts.map +1 -0
- package/dist/core/engine/library/oscillators.js +29 -0
- package/dist/core/engine/library/oscillators.js.map +1 -0
- package/dist/core/engine/library/ranges.d.ts +3 -0
- package/dist/core/engine/library/ranges.d.ts.map +1 -0
- package/dist/core/engine/library/ranges.js +23 -0
- package/dist/core/engine/library/ranges.js.map +1 -0
- package/dist/core/engine/library/series.d.ts +3 -0
- package/dist/core/engine/library/series.d.ts.map +1 -0
- package/dist/core/engine/library/series.js +46 -0
- package/dist/core/engine/library/series.js.map +1 -0
- package/dist/core/engine/library/state.d.ts +35 -0
- package/dist/core/engine/library/state.d.ts.map +1 -0
- package/dist/core/engine/library/state.js +19 -0
- package/dist/core/engine/library/state.js.map +1 -0
- package/dist/core/engine/library/studies.d.ts +3 -0
- package/dist/core/engine/library/studies.d.ts.map +1 -0
- package/dist/core/engine/library/studies.js +35 -0
- package/dist/core/engine/library/studies.js.map +1 -0
- package/dist/core/engine/library/text.d.ts +6 -0
- package/dist/core/engine/library/text.d.ts.map +1 -0
- package/dist/core/engine/library/text.js +280 -0
- package/dist/core/engine/library/text.js.map +1 -0
- package/dist/core/engine/library/trend.d.ts +3 -0
- package/dist/core/engine/library/trend.d.ts.map +1 -0
- package/dist/core/engine/library/trend.js +29 -0
- package/dist/core/engine/library/trend.js.map +1 -0
- package/dist/core/engine/library/volume.d.ts +3 -0
- package/dist/core/engine/library/volume.d.ts.map +1 -0
- package/dist/core/engine/library/volume.js +51 -0
- package/dist/core/engine/library/volume.js.map +1 -0
- package/dist/core/engine/load.d.ts +59 -0
- package/dist/core/engine/load.d.ts.map +1 -0
- package/dist/core/engine/load.js +61 -0
- package/dist/core/engine/load.js.map +1 -0
- package/dist/core/engine/machine.d.ts +107 -0
- package/dist/core/engine/machine.d.ts.map +1 -0
- package/dist/core/engine/machine.js +337 -0
- package/dist/core/engine/machine.js.map +1 -0
- package/dist/core/engine/memory.d.ts +60 -0
- package/dist/core/engine/memory.d.ts.map +1 -0
- package/dist/core/engine/memory.js +92 -0
- package/dist/core/engine/memory.js.map +1 -0
- package/dist/core/engine/operations.d.ts +62 -0
- package/dist/core/engine/operations.d.ts.map +1 -0
- package/dist/core/engine/operations.js +149 -0
- package/dist/core/engine/operations.js.map +1 -0
- package/dist/core/engine/orders.d.ts +56 -0
- package/dist/core/engine/orders.d.ts.map +1 -0
- package/dist/core/engine/orders.js +83 -0
- package/dist/core/engine/orders.js.map +1 -0
- package/dist/core/engine/registers.d.ts +50 -0
- package/dist/core/engine/registers.d.ts.map +1 -0
- package/dist/core/engine/registers.js +85 -0
- package/dist/core/engine/registers.js.map +1 -0
- package/dist/core/engine/request-body.d.ts +138 -0
- package/dist/core/engine/request-body.d.ts.map +1 -0
- package/dist/core/engine/request-body.js +227 -0
- package/dist/core/engine/request-body.js.map +1 -0
- package/dist/core/engine/request-plan.d.ts +79 -0
- package/dist/core/engine/request-plan.d.ts.map +1 -0
- package/dist/core/engine/request-plan.js +228 -0
- package/dist/core/engine/request-plan.js.map +1 -0
- package/dist/core/engine/requests.d.ts +105 -0
- package/dist/core/engine/requests.d.ts.map +1 -0
- package/dist/core/engine/requests.js +260 -0
- package/dist/core/engine/requests.js.map +1 -0
- package/dist/core/engine/results.d.ts +40 -0
- package/dist/core/engine/results.d.ts.map +1 -0
- package/dist/core/engine/results.js +2 -0
- package/dist/core/engine/results.js.map +1 -0
- package/dist/core/engine/series.d.ts +61 -0
- package/dist/core/engine/series.d.ts.map +1 -0
- package/dist/core/engine/series.js +41 -0
- package/dist/core/engine/series.js.map +1 -0
- package/dist/core/engine/session/hours.d.ts +49 -0
- package/dist/core/engine/session/hours.d.ts.map +1 -0
- package/dist/core/engine/session/hours.js +31 -0
- package/dist/core/engine/session/hours.js.map +1 -0
- package/dist/core/engine/session/index.d.ts +17 -0
- package/dist/core/engine/session/index.d.ts.map +1 -0
- package/dist/core/engine/session/index.js +3 -0
- package/dist/core/engine/session/index.js.map +1 -0
- package/dist/core/engine/session/record.d.ts +56 -0
- package/dist/core/engine/session/record.d.ts.map +1 -0
- package/dist/core/engine/session/record.js +165 -0
- package/dist/core/engine/session/record.js.map +1 -0
- package/dist/core/engine/session/spec.d.ts +19 -0
- package/dist/core/engine/session/spec.d.ts.map +1 -0
- package/dist/core/engine/session/spec.js +31 -0
- package/dist/core/engine/session/spec.js.map +1 -0
- package/dist/core/engine/timeframe.d.ts +59 -0
- package/dist/core/engine/timeframe.d.ts.map +1 -0
- package/dist/core/engine/timeframe.js +140 -0
- package/dist/core/engine/timeframe.js.map +1 -0
- package/dist/core/engine/types.d.ts +15 -0
- package/dist/core/engine/types.d.ts.map +1 -0
- package/dist/core/engine/types.js +2 -0
- package/dist/core/engine/types.js.map +1 -0
- package/dist/core/engine/values/heap.d.ts +134 -0
- package/dist/core/engine/values/heap.d.ts.map +1 -0
- package/dist/core/engine/values/heap.js +230 -0
- package/dist/core/engine/values/heap.js.map +1 -0
- package/dist/core/engine/values/index.d.ts +13 -0
- package/dist/core/engine/values/index.d.ts.map +1 -0
- package/dist/core/engine/values/index.js +3 -0
- package/dist/core/engine/values/index.js.map +1 -0
- package/dist/core/engine/values/value.d.ts +82 -0
- package/dist/core/engine/values/value.d.ts.map +1 -0
- package/dist/core/engine/values/value.js +134 -0
- package/dist/core/engine/values/value.js.map +1 -0
- package/dist/core/engine/verify-budgets.d.ts +35 -0
- package/dist/core/engine/verify-budgets.d.ts.map +1 -0
- package/dist/core/engine/verify-budgets.js +172 -0
- package/dist/core/engine/verify-budgets.js.map +1 -0
- package/dist/core/engine/verify-code.d.ts +32 -0
- package/dist/core/engine/verify-code.d.ts.map +1 -0
- package/dist/core/engine/verify-code.js +278 -0
- package/dist/core/engine/verify-code.js.map +1 -0
- package/dist/core/engine/verify-requests.d.ts +44 -0
- package/dist/core/engine/verify-requests.d.ts.map +1 -0
- package/dist/core/engine/verify-requests.js +220 -0
- package/dist/core/engine/verify-requests.js.map +1 -0
- package/dist/core/engine/verify-shape.d.ts +46 -0
- package/dist/core/engine/verify-shape.d.ts.map +1 -0
- package/dist/core/engine/verify-shape.js +147 -0
- package/dist/core/engine/verify-shape.js.map +1 -0
- package/dist/core/engine/verify-tables.d.ts +19 -0
- package/dist/core/engine/verify-tables.d.ts.map +1 -0
- package/dist/core/engine/verify-tables.js +171 -0
- package/dist/core/engine/verify-tables.js.map +1 -0
- package/dist/core/engine/verify.d.ts +19 -0
- package/dist/core/engine/verify.d.ts.map +1 -0
- package/dist/core/engine/verify.js +309 -0
- package/dist/core/engine/verify.js.map +1 -0
- package/dist/core/index.d.ts +95 -6
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +64 -6
- package/dist/core/index.js.map +1 -1
- package/dist/core/parse/expressions.js +1 -1
- package/dist/core/parse/expressions.js.map +1 -1
- package/dist/core/parse/names.d.ts +7 -1
- package/dist/core/parse/names.d.ts.map +1 -1
- package/dist/core/parse/names.js +28 -2
- package/dist/core/parse/names.js.map +1 -1
- package/dist/core/stdlib/averages/exponential.d.ts +51 -0
- package/dist/core/stdlib/averages/exponential.d.ts.map +1 -0
- package/dist/core/stdlib/averages/exponential.js +72 -0
- package/dist/core/stdlib/averages/exponential.js.map +1 -0
- package/dist/core/stdlib/averages/index.d.ts +7 -0
- package/dist/core/stdlib/averages/index.d.ts.map +1 -0
- package/dist/core/stdlib/averages/index.js +5 -0
- package/dist/core/stdlib/averages/index.js.map +1 -0
- package/dist/core/stdlib/averages/select.d.ts +35 -0
- package/dist/core/stdlib/averages/select.d.ts.map +1 -0
- package/dist/core/stdlib/averages/select.js +43 -0
- package/dist/core/stdlib/averages/select.js.map +1 -0
- package/dist/core/stdlib/averages/shaped.d.ts +61 -0
- package/dist/core/stdlib/averages/shaped.d.ts.map +1 -0
- package/dist/core/stdlib/averages/shaped.js +126 -0
- package/dist/core/stdlib/averages/shaped.js.map +1 -0
- package/dist/core/stdlib/averages/simple.d.ts +58 -0
- package/dist/core/stdlib/averages/simple.d.ts.map +1 -0
- package/dist/core/stdlib/averages/simple.js +92 -0
- package/dist/core/stdlib/averages/simple.js.map +1 -0
- package/dist/core/stdlib/calendar/civil.d.ts +56 -0
- package/dist/core/stdlib/calendar/civil.d.ts.map +1 -0
- package/dist/core/stdlib/calendar/civil.js +70 -0
- package/dist/core/stdlib/calendar/civil.js.map +1 -0
- package/dist/core/stdlib/calendar/fields.d.ts +36 -0
- package/dist/core/stdlib/calendar/fields.d.ts.map +1 -0
- package/dist/core/stdlib/calendar/fields.js +93 -0
- package/dist/core/stdlib/calendar/fields.js.map +1 -0
- package/dist/core/stdlib/calendar/format.d.ts +19 -0
- package/dist/core/stdlib/calendar/format.d.ts.map +1 -0
- package/dist/core/stdlib/calendar/format.js +51 -0
- package/dist/core/stdlib/calendar/format.js.map +1 -0
- package/dist/core/stdlib/calendar/index.d.ts +7 -0
- package/dist/core/stdlib/calendar/index.d.ts.map +1 -0
- package/dist/core/stdlib/calendar/index.js +5 -0
- package/dist/core/stdlib/calendar/index.js.map +1 -0
- package/dist/core/stdlib/calendar/zone.d.ts +53 -0
- package/dist/core/stdlib/calendar/zone.d.ts.map +1 -0
- package/dist/core/stdlib/calendar/zone.js +138 -0
- package/dist/core/stdlib/calendar/zone.js.map +1 -0
- package/dist/core/stdlib/index.d.ts +57 -0
- package/dist/core/stdlib/index.d.ts.map +1 -0
- package/dist/core/stdlib/index.js +51 -0
- package/dist/core/stdlib/index.js.map +1 -0
- package/dist/core/stdlib/maths/arithmetic.d.ts +38 -0
- package/dist/core/stdlib/maths/arithmetic.d.ts.map +1 -0
- package/dist/core/stdlib/maths/arithmetic.js +66 -0
- package/dist/core/stdlib/maths/arithmetic.js.map +1 -0
- package/dist/core/stdlib/maths/elementary.d.ts +65 -0
- package/dist/core/stdlib/maths/elementary.d.ts.map +1 -0
- package/dist/core/stdlib/maths/elementary.js +93 -0
- package/dist/core/stdlib/maths/elementary.js.map +1 -0
- package/dist/core/stdlib/maths/index.d.ts +4 -0
- package/dist/core/stdlib/maths/index.d.ts.map +1 -0
- package/dist/core/stdlib/maths/index.js +4 -0
- package/dist/core/stdlib/maths/index.js.map +1 -0
- package/dist/core/stdlib/maths/rounding.d.ts +43 -0
- package/dist/core/stdlib/maths/rounding.d.ts.map +1 -0
- package/dist/core/stdlib/maths/rounding.js +62 -0
- package/dist/core/stdlib/maths/rounding.js.map +1 -0
- package/dist/core/stdlib/momentum/convergence.d.ts +36 -0
- package/dist/core/stdlib/momentum/convergence.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/convergence.js +48 -0
- package/dist/core/stdlib/momentum/convergence.js.map +1 -0
- package/dist/core/stdlib/momentum/index.d.ts +6 -0
- package/dist/core/stdlib/momentum/index.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/index.js +6 -0
- package/dist/core/stdlib/momentum/index.js.map +1 -0
- package/dist/core/stdlib/momentum/pressure.d.ts +43 -0
- package/dist/core/stdlib/momentum/pressure.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/pressure.js +103 -0
- package/dist/core/stdlib/momentum/pressure.js.map +1 -0
- package/dist/core/stdlib/momentum/rates.d.ts +74 -0
- package/dist/core/stdlib/momentum/rates.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/rates.js +134 -0
- package/dist/core/stdlib/momentum/rates.js.map +1 -0
- package/dist/core/stdlib/momentum/rsi.d.ts +21 -0
- package/dist/core/stdlib/momentum/rsi.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/rsi.js +30 -0
- package/dist/core/stdlib/momentum/rsi.js.map +1 -0
- package/dist/core/stdlib/momentum/stochastic.d.ts +44 -0
- package/dist/core/stdlib/momentum/stochastic.d.ts.map +1 -0
- package/dist/core/stdlib/momentum/stochastic.js +97 -0
- package/dist/core/stdlib/momentum/stochastic.js.map +1 -0
- package/dist/core/stdlib/series/changes.d.ts +59 -0
- package/dist/core/stdlib/series/changes.d.ts.map +1 -0
- package/dist/core/stdlib/series/changes.js +129 -0
- package/dist/core/stdlib/series/changes.js.map +1 -0
- package/dist/core/stdlib/series/conditions.d.ts +34 -0
- package/dist/core/stdlib/series/conditions.d.ts.map +1 -0
- package/dist/core/stdlib/series/conditions.js +52 -0
- package/dist/core/stdlib/series/conditions.js.map +1 -0
- package/dist/core/stdlib/series/extremes.d.ts +29 -0
- package/dist/core/stdlib/series/extremes.d.ts.map +1 -0
- package/dist/core/stdlib/series/extremes.js +62 -0
- package/dist/core/stdlib/series/extremes.js.map +1 -0
- package/dist/core/stdlib/series/index.d.ts +9 -0
- package/dist/core/stdlib/series/index.d.ts.map +1 -0
- package/dist/core/stdlib/series/index.js +7 -0
- package/dist/core/stdlib/series/index.js.map +1 -0
- package/dist/core/stdlib/series/pivots.d.ts +25 -0
- package/dist/core/stdlib/series/pivots.d.ts.map +1 -0
- package/dist/core/stdlib/series/pivots.js +42 -0
- package/dist/core/stdlib/series/pivots.js.map +1 -0
- package/dist/core/stdlib/series/statistics.d.ts +64 -0
- package/dist/core/stdlib/series/statistics.d.ts.map +1 -0
- package/dist/core/stdlib/series/statistics.js +148 -0
- package/dist/core/stdlib/series/statistics.js.map +1 -0
- package/dist/core/stdlib/series/totals.d.ts +68 -0
- package/dist/core/stdlib/series/totals.d.ts.map +1 -0
- package/dist/core/stdlib/series/totals.js +115 -0
- package/dist/core/stdlib/series/totals.js.map +1 -0
- package/dist/core/stdlib/trend/directional.d.ts +69 -0
- package/dist/core/stdlib/trend/directional.d.ts.map +1 -0
- package/dist/core/stdlib/trend/directional.js +151 -0
- package/dist/core/stdlib/trend/directional.js.map +1 -0
- package/dist/core/stdlib/trend/index.d.ts +4 -0
- package/dist/core/stdlib/trend/index.d.ts.map +1 -0
- package/dist/core/stdlib/trend/index.js +4 -0
- package/dist/core/stdlib/trend/index.js.map +1 -0
- package/dist/core/stdlib/trend/psar.d.ts +33 -0
- package/dist/core/stdlib/trend/psar.d.ts.map +1 -0
- package/dist/core/stdlib/trend/psar.js +86 -0
- package/dist/core/stdlib/trend/psar.js.map +1 -0
- package/dist/core/stdlib/trend/supertrend.d.ts +30 -0
- package/dist/core/stdlib/trend/supertrend.d.ts.map +1 -0
- package/dist/core/stdlib/trend/supertrend.js +65 -0
- package/dist/core/stdlib/trend/supertrend.js.map +1 -0
- package/dist/core/stdlib/values/bar.d.ts +39 -0
- package/dist/core/stdlib/values/bar.d.ts.map +1 -0
- package/dist/core/stdlib/values/bar.js +33 -0
- package/dist/core/stdlib/values/bar.js.map +1 -0
- package/dist/core/stdlib/values/index.d.ts +11 -0
- package/dist/core/stdlib/values/index.d.ts.map +1 -0
- package/dist/core/stdlib/values/index.js +6 -0
- package/dist/core/stdlib/values/index.js.map +1 -0
- package/dist/core/stdlib/values/lookback.d.ts +83 -0
- package/dist/core/stdlib/values/lookback.d.ts.map +1 -0
- package/dist/core/stdlib/values/lookback.js +134 -0
- package/dist/core/stdlib/values/lookback.js.map +1 -0
- package/dist/core/stdlib/values/region.d.ts +55 -0
- package/dist/core/stdlib/values/region.d.ts.map +1 -0
- package/dist/core/stdlib/values/region.js +73 -0
- package/dist/core/stdlib/values/region.js.map +1 -0
- package/dist/core/stdlib/values/tail.d.ts +44 -0
- package/dist/core/stdlib/values/tail.d.ts.map +1 -0
- package/dist/core/stdlib/values/tail.js +23 -0
- package/dist/core/stdlib/values/tail.js.map +1 -0
- package/dist/core/stdlib/values/value.d.ts +64 -0
- package/dist/core/stdlib/values/value.d.ts.map +1 -0
- package/dist/core/stdlib/values/value.js +61 -0
- package/dist/core/stdlib/values/value.js.map +1 -0
- package/dist/core/stdlib/volatility/bands.d.ts +50 -0
- package/dist/core/stdlib/volatility/bands.d.ts.map +1 -0
- package/dist/core/stdlib/volatility/bands.js +101 -0
- package/dist/core/stdlib/volatility/bands.js.map +1 -0
- package/dist/core/stdlib/volatility/deviation.d.ts +43 -0
- package/dist/core/stdlib/volatility/deviation.d.ts.map +1 -0
- package/dist/core/stdlib/volatility/deviation.js +75 -0
- package/dist/core/stdlib/volatility/deviation.js.map +1 -0
- package/dist/core/stdlib/volatility/index.d.ts +6 -0
- package/dist/core/stdlib/volatility/index.d.ts.map +1 -0
- package/dist/core/stdlib/volatility/index.js +5 -0
- package/dist/core/stdlib/volatility/index.js.map +1 -0
- package/dist/core/stdlib/volatility/measures.d.ts +48 -0
- package/dist/core/stdlib/volatility/measures.d.ts.map +1 -0
- package/dist/core/stdlib/volatility/measures.js +73 -0
- package/dist/core/stdlib/volatility/measures.js.map +1 -0
- package/dist/core/stdlib/volatility/range.d.ts +69 -0
- package/dist/core/stdlib/volatility/range.d.ts.map +1 -0
- package/dist/core/stdlib/volatility/range.js +86 -0
- package/dist/core/stdlib/volatility/range.js.map +1 -0
- package/dist/core/stdlib/volume/accumulation.d.ts +61 -0
- package/dist/core/stdlib/volume/accumulation.d.ts.map +1 -0
- package/dist/core/stdlib/volume/accumulation.js +127 -0
- package/dist/core/stdlib/volume/accumulation.js.map +1 -0
- package/dist/core/stdlib/volume/flow.d.ts +60 -0
- package/dist/core/stdlib/volume/flow.d.ts.map +1 -0
- package/dist/core/stdlib/volume/flow.js +125 -0
- package/dist/core/stdlib/volume/flow.js.map +1 -0
- package/dist/core/stdlib/volume/index.d.ts +5 -0
- package/dist/core/stdlib/volume/index.d.ts.map +1 -0
- package/dist/core/stdlib/volume/index.js +4 -0
- package/dist/core/stdlib/volume/index.js.map +1 -0
- package/dist/core/stdlib/volume/weighted.d.ts +52 -0
- package/dist/core/stdlib/volume/weighted.d.ts.map +1 -0
- package/dist/core/stdlib/volume/weighted.js +64 -0
- package/dist/core/stdlib/volume/weighted.js.map +1 -0
- package/dist/core/version/version.generated.d.ts +2 -2
- package/dist/core/version/version.generated.d.ts.map +1 -1
- package/dist/core/version/version.generated.js +2 -2
- package/dist/core/version/version.generated.js.map +1 -1
- package/dist/editor/complete.d.ts +40 -0
- package/dist/editor/complete.d.ts.map +1 -0
- package/dist/editor/complete.js +206 -0
- package/dist/editor/complete.js.map +1 -0
- package/dist/editor/diagnose.d.ts +18 -0
- package/dist/editor/diagnose.d.ts.map +1 -0
- package/dist/editor/diagnose.js +70 -0
- package/dist/editor/diagnose.js.map +1 -0
- package/dist/editor/format.d.ts +11 -0
- package/dist/editor/format.d.ts.map +1 -0
- package/dist/editor/format.js +50 -0
- package/dist/editor/format.js.map +1 -0
- package/dist/editor/highlight.d.ts +28 -0
- package/dist/editor/highlight.d.ts.map +1 -0
- package/dist/editor/highlight.js +65 -0
- package/dist/editor/highlight.js.map +1 -0
- package/dist/editor/hover.d.ts +40 -0
- package/dist/editor/hover.d.ts.map +1 -0
- package/dist/editor/hover.js +147 -0
- package/dist/editor/hover.js.map +1 -0
- package/dist/editor/index.d.ts +60 -0
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/editor/index.js +7 -0
- package/dist/editor/index.js.map +1 -0
- package/dist/editor/kinds.d.ts +27 -0
- package/dist/editor/kinds.d.ts.map +1 -0
- package/dist/editor/kinds.js +118 -0
- package/dist/editor/kinds.js.map +1 -0
- package/dist/editor/layout.d.ts +47 -0
- package/dist/editor/layout.d.ts.map +1 -0
- package/dist/editor/layout.js +135 -0
- package/dist/editor/layout.js.map +1 -0
- package/dist/editor/manifest.d.ts +47 -0
- package/dist/editor/manifest.d.ts.map +1 -0
- package/dist/editor/manifest.js +93 -0
- package/dist/editor/manifest.js.map +1 -0
- package/dist/editor/reading.d.ts +41 -0
- package/dist/editor/reading.d.ts.map +1 -0
- package/dist/editor/reading.js +51 -0
- package/dist/editor/reading.js.map +1 -0
- package/dist/editor/scan.d.ts +26 -0
- package/dist/editor/scan.d.ts.map +1 -0
- package/dist/editor/scan.js +139 -0
- package/dist/editor/scan.js.map +1 -0
- package/dist/editor/scope.d.ts +19 -0
- package/dist/editor/scope.d.ts.map +1 -0
- package/dist/editor/scope.js +99 -0
- package/dist/editor/scope.js.map +1 -0
- package/dist/editor/signature.d.ts +38 -0
- package/dist/editor/signature.d.ts.map +1 -0
- package/dist/editor/signature.js +112 -0
- package/dist/editor/signature.js.map +1 -0
- package/dist/editor/site.d.ts +46 -0
- package/dist/editor/site.d.ts.map +1 -0
- package/dist/editor/site.js +184 -0
- package/dist/editor/site.js.map +1 -0
- package/dist/editor/spacing.d.ts +29 -0
- package/dist/editor/spacing.d.ts.map +1 -0
- package/dist/editor/spacing.js +116 -0
- package/dist/editor/spacing.js.map +1 -0
- package/package.json +66 -15
- package/spec/errors.json +522 -183
- package/src/adapters/charts/alerts.ts +116 -0
- package/src/adapters/charts/bars.ts +63 -0
- package/src/adapters/charts/candles.ts +137 -0
- package/src/adapters/charts/colours.ts +113 -0
- package/src/adapters/charts/columns.ts +99 -0
- package/src/adapters/charts/contract.ts +320 -0
- package/src/adapters/charts/descriptor.ts +199 -0
- package/src/adapters/charts/drawings.ts +213 -0
- package/src/adapters/charts/errors.ts +45 -0
- package/src/adapters/charts/fields.ts +74 -0
- package/src/adapters/charts/fills.ts +71 -0
- package/src/adapters/charts/index.ts +78 -0
- package/src/adapters/charts/levels.ts +92 -0
- package/src/adapters/charts/markers.ts +119 -0
- package/src/adapters/charts/paint.ts +101 -0
- package/src/adapters/charts/plots.ts +185 -0
- package/src/adapters/charts/produced.ts +68 -0
- package/src/adapters/charts/requests.ts +357 -0
- package/src/adapters/charts/run.ts +327 -0
- package/src/adapters/charts/settings.ts +273 -0
- package/src/adapters/charts/surfaces.ts +255 -0
- package/src/adapters/charts/tables.ts +243 -0
- package/src/adapters/codemirror/commands.ts +53 -0
- package/src/adapters/codemirror/completion.ts +74 -0
- package/src/adapters/codemirror/contract.ts +156 -0
- package/src/adapters/codemirror/index.ts +66 -0
- package/src/adapters/codemirror/lint.ts +66 -0
- package/src/adapters/codemirror/positions.ts +79 -0
- package/src/adapters/codemirror/stream.ts +87 -0
- package/src/adapters/codemirror/tokens.ts +64 -0
- package/src/adapters/codemirror/tooltips.ts +113 -0
- package/src/core/accounting/charges.ts +452 -0
- package/src/core/accounting/equity.ts +276 -0
- package/src/core/accounting/index.ts +49 -0
- package/src/core/accounting/markers.ts +95 -0
- package/src/core/accounting/monthly.ts +137 -0
- package/src/core/accounting/report.ts +89 -0
- package/src/core/accounting/shapes.ts +73 -0
- package/src/core/accounting/statistics.ts +350 -0
- package/src/core/accounting/trades.ts +313 -0
- package/src/core/backtest/compare.ts +244 -0
- package/src/core/backtest/declaration.ts +97 -0
- package/src/core/backtest/drive.ts +364 -0
- package/src/core/backtest/index.ts +52 -0
- package/src/core/backtest/range.ts +137 -0
- package/src/core/backtest/record.ts +341 -0
- package/src/core/backtest/replay.ts +158 -0
- package/src/core/backtest/resting.ts +125 -0
- package/src/core/backtest/settings.ts +280 -0
- package/src/core/backtest/simulate.ts +304 -0
- package/src/core/catalogue/catalogue.generated.ts +23 -9
- package/src/core/catalogue/values.generated.ts +14 -0
- package/src/core/check/arguments.ts +126 -0
- package/src/core/check/call-sites.ts +385 -0
- package/src/core/check/call-warmup.ts +121 -0
- package/src/core/check/calls.ts +412 -0
- package/src/core/check/check.ts +183 -0
- package/src/core/check/checked.ts +228 -0
- package/src/core/check/checker.ts +393 -0
- package/src/core/check/conditional.ts +143 -0
- package/src/core/check/constant.ts +127 -0
- package/src/core/check/declaration.ts +230 -0
- package/src/core/check/expressions.ts +471 -0
- package/src/core/check/functions.ts +283 -0
- package/src/core/check/handles.ts +75 -0
- package/src/core/check/index.ts +70 -0
- package/src/core/check/library-bars.ts +194 -0
- package/src/core/check/library-orders.ts +290 -0
- package/src/core/check/library-output.ts +241 -0
- package/src/core/check/library-prose.generated.ts +367 -0
- package/src/core/check/library-series.ts +457 -0
- package/src/core/check/library.ts +374 -0
- package/src/core/check/literals.ts +35 -0
- package/src/core/check/outputs.ts +152 -0
- package/src/core/check/statements.ts +465 -0
- package/src/core/check/suggest.ts +63 -0
- package/src/core/check/surface.ts +149 -0
- package/src/core/check/tags.ts +94 -0
- package/src/core/check/types.ts +260 -0
- package/src/core/check/warmup.ts +100 -0
- package/src/core/diagnostics/collector.ts +27 -1
- package/src/core/emit/calls.ts +415 -0
- package/src/core/emit/canonical.ts +81 -0
- package/src/core/emit/channels.ts +144 -0
- package/src/core/emit/code.ts +155 -0
- package/src/core/emit/colours.ts +75 -0
- package/src/core/emit/context.ts +461 -0
- package/src/core/emit/defaults.ts +220 -0
- package/src/core/emit/emit.ts +313 -0
- package/src/core/emit/events.ts +141 -0
- package/src/core/emit/expressions.ts +292 -0
- package/src/core/emit/functions.ts +195 -0
- package/src/core/emit/gaps.ts +44 -0
- package/src/core/emit/index.ts +76 -0
- package/src/core/emit/inputs.ts +179 -0
- package/src/core/emit/layout.ts +165 -0
- package/src/core/emit/meta.ts +104 -0
- package/src/core/emit/opcodes.ts +160 -0
- package/src/core/emit/outputs.ts +357 -0
- package/src/core/emit/pool.ts +102 -0
- package/src/core/emit/program.ts +385 -0
- package/src/core/emit/registers.ts +179 -0
- package/src/core/emit/request-scope.ts +52 -0
- package/src/core/emit/requests.ts +258 -0
- package/src/core/emit/requires.ts +91 -0
- package/src/core/emit/sha256.ts +119 -0
- package/src/core/emit/statements.ts +438 -0
- package/src/core/emit/values.ts +284 -0
- package/src/core/engine/alerts.ts +152 -0
- package/src/core/engine/arithmetic.ts +165 -0
- package/src/core/engine/bars.ts +224 -0
- package/src/core/engine/budget.ts +284 -0
- package/src/core/engine/channels.ts +171 -0
- package/src/core/engine/drawings.ts +127 -0
- package/src/core/engine/engine.ts +498 -0
- package/src/core/engine/errors.ts +100 -0
- package/src/core/engine/frames.ts +85 -0
- package/src/core/engine/grids.ts +98 -0
- package/src/core/engine/guard.ts +71 -0
- package/src/core/engine/host.ts +251 -0
- package/src/core/engine/index.ts +93 -0
- package/src/core/engine/inputs.ts +263 -0
- package/src/core/engine/ledger/call.ts +218 -0
- package/src/core/engine/ledger/closable.ts +269 -0
- package/src/core/engine/ledger/holdings.ts +354 -0
- package/src/core/engine/ledger/index.ts +28 -0
- package/src/core/engine/ledger/intent.ts +112 -0
- package/src/core/engine/ledger/ledger.ts +314 -0
- package/src/core/engine/ledger/place.ts +277 -0
- package/src/core/engine/ledger/positions.ts +123 -0
- package/src/core/engine/ledger/refuse.ts +378 -0
- package/src/core/engine/ledger/row.ts +318 -0
- package/src/core/engine/ledger/sizing.ts +292 -0
- package/src/core/engine/library/arrays.ts +316 -0
- package/src/core/engine/library/averages.ts +97 -0
- package/src/core/engine/library/binding.ts +325 -0
- package/src/core/engine/library/chart.ts +115 -0
- package/src/core/engine/library/colours.ts +111 -0
- package/src/core/engine/library/dates.ts +109 -0
- package/src/core/engine/library/index.ts +103 -0
- package/src/core/engine/library/maths.ts +134 -0
- package/src/core/engine/library/objects.ts +265 -0
- package/src/core/engine/library/oscillators.ts +124 -0
- package/src/core/engine/library/ranges.ts +51 -0
- package/src/core/engine/library/series.ts +236 -0
- package/src/core/engine/library/state.ts +47 -0
- package/src/core/engine/library/studies.ts +150 -0
- package/src/core/engine/library/text.ts +303 -0
- package/src/core/engine/library/trend.ts +79 -0
- package/src/core/engine/library/volume.ts +101 -0
- package/src/core/engine/load.ts +118 -0
- package/src/core/engine/machine.ts +446 -0
- package/src/core/engine/memory.ts +129 -0
- package/src/core/engine/operations.ts +171 -0
- package/src/core/engine/orders.ts +121 -0
- package/src/core/engine/registers.ts +104 -0
- package/src/core/engine/request-body.ts +328 -0
- package/src/core/engine/request-plan.ts +270 -0
- package/src/core/engine/requests.ts +382 -0
- package/src/core/engine/results.ts +41 -0
- package/src/core/engine/series.ts +82 -0
- package/src/core/engine/session/hours.ts +86 -0
- package/src/core/engine/session/index.ts +17 -0
- package/src/core/engine/session/record.ts +191 -0
- package/src/core/engine/session/spec.ts +45 -0
- package/src/core/engine/timeframe.ts +161 -0
- package/src/core/engine/types.ts +47 -0
- package/src/core/engine/values/heap.ts +295 -0
- package/src/core/engine/values/index.ts +34 -0
- package/src/core/engine/values/value.ts +158 -0
- package/src/core/engine/verify-budgets.ts +202 -0
- package/src/core/engine/verify-code.ts +332 -0
- package/src/core/engine/verify-requests.ts +255 -0
- package/src/core/engine/verify-shape.ts +164 -0
- package/src/core/engine/verify-tables.ts +176 -0
- package/src/core/engine/verify.ts +341 -0
- package/src/core/index.ts +212 -6
- package/src/core/parse/expressions.ts +1 -1
- package/src/core/parse/names.ts +29 -2
- package/src/core/stdlib/averages/exponential.ts +119 -0
- package/src/core/stdlib/averages/index.ts +45 -0
- package/src/core/stdlib/averages/select.ts +71 -0
- package/src/core/stdlib/averages/shaped.ts +161 -0
- package/src/core/stdlib/averages/simple.ts +139 -0
- package/src/core/stdlib/calendar/civil.ts +89 -0
- package/src/core/stdlib/calendar/fields.ts +124 -0
- package/src/core/stdlib/calendar/format.ts +71 -0
- package/src/core/stdlib/calendar/index.ts +15 -0
- package/src/core/stdlib/calendar/zone.ts +161 -0
- package/src/core/stdlib/index.ts +400 -0
- package/src/core/stdlib/maths/arithmetic.ts +74 -0
- package/src/core/stdlib/maths/elementary.ts +124 -0
- package/src/core/stdlib/maths/index.ts +43 -0
- package/src/core/stdlib/maths/rounding.ts +78 -0
- package/src/core/stdlib/momentum/convergence.ts +82 -0
- package/src/core/stdlib/momentum/index.ts +47 -0
- package/src/core/stdlib/momentum/pressure.ts +141 -0
- package/src/core/stdlib/momentum/rates.ts +188 -0
- package/src/core/stdlib/momentum/rsi.ts +49 -0
- package/src/core/stdlib/momentum/stochastic.ts +147 -0
- package/src/core/stdlib/series/changes.ts +177 -0
- package/src/core/stdlib/series/conditions.ts +74 -0
- package/src/core/stdlib/series/extremes.ts +92 -0
- package/src/core/stdlib/series/index.ts +83 -0
- package/src/core/stdlib/series/pivots.ts +63 -0
- package/src/core/stdlib/series/statistics.ts +207 -0
- package/src/core/stdlib/series/totals.ts +164 -0
- package/src/core/stdlib/trend/directional.ts +196 -0
- package/src/core/stdlib/trend/index.ts +13 -0
- package/src/core/stdlib/trend/psar.ts +131 -0
- package/src/core/stdlib/trend/supertrend.ts +100 -0
- package/src/core/stdlib/values/bar.ts +54 -0
- package/src/core/stdlib/values/index.ts +14 -0
- package/src/core/stdlib/values/lookback.ts +198 -0
- package/src/core/stdlib/values/region.ts +86 -0
- package/src/core/stdlib/values/tail.ts +58 -0
- package/src/core/stdlib/values/value.ts +82 -0
- package/src/core/stdlib/volatility/bands.ts +178 -0
- package/src/core/stdlib/volatility/deviation.ts +111 -0
- package/src/core/stdlib/volatility/index.ts +48 -0
- package/src/core/stdlib/volatility/measures.ts +96 -0
- package/src/core/stdlib/volatility/range.ts +143 -0
- package/src/core/stdlib/volume/accumulation.ts +152 -0
- package/src/core/stdlib/volume/flow.ts +173 -0
- package/src/core/stdlib/volume/index.ts +43 -0
- package/src/core/stdlib/volume/weighted.ts +101 -0
- package/src/core/version/version.generated.ts +2 -2
- package/src/editor/complete.ts +266 -0
- package/src/editor/diagnose.ts +71 -0
- package/src/editor/format.ts +85 -0
- package/src/editor/highlight.ts +110 -0
- package/src/editor/hover.ts +199 -0
- package/src/editor/index.ts +65 -0
- package/src/editor/kinds.ts +157 -0
- package/src/editor/layout.ts +189 -0
- package/src/editor/manifest.ts +119 -0
- package/src/editor/reading.ts +69 -0
- package/src/editor/scan.ts +162 -0
- package/src/editor/scope.ts +122 -0
- package/src/editor/signature.ts +150 -0
- package/src/editor/site.ts +233 -0
- package/src/editor/spacing.ts +132 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { Value } from './values.js';
|
|
2
|
+
/** `language.md` 13.2. `title` is required and `short` falls back to it. */
|
|
3
|
+
export declare const STUDY_DEFAULTS: Readonly<Record<string, Value>>;
|
|
4
|
+
/** `language.md` 13.3, the options only a `strategy()` adds. */
|
|
5
|
+
export declare const STRATEGY_DEFAULTS: Readonly<Record<string, Value>>;
|
|
6
|
+
/** The order `meta.strategy` lists them in, 2.3. */
|
|
7
|
+
export declare const STRATEGY_OPTIONS: readonly string[];
|
|
8
|
+
/**
|
|
9
|
+
* `stdlib.md` 14.2.
|
|
10
|
+
*
|
|
11
|
+
* `lineStyle` has no argument on `plot` at all: the call's `style` names the
|
|
12
|
+
* column's shape and becomes the entry's `type`. A plot therefore always
|
|
13
|
+
* carries the one line style a host draws an undecorated line with.
|
|
14
|
+
*/
|
|
15
|
+
export declare const PLOT_DEFAULTS: Readonly<Record<string, Value>>;
|
|
16
|
+
export declare const PLOT_LINE_STYLE: Value;
|
|
17
|
+
/** `stdlib.md` 14.2. A candle's border takes a plot's own width and style. */
|
|
18
|
+
export declare const CANDLE_DEFAULTS: Readonly<Record<string, Value>>;
|
|
19
|
+
export declare const FILL_DEFAULTS: Readonly<Record<string, Value>>;
|
|
20
|
+
export declare const LEVEL_DEFAULTS: Readonly<Record<string, Value>>;
|
|
21
|
+
/** `stdlib.md` 14.3. `title`, `rows` and `cols` have no default. */
|
|
22
|
+
export declare const TABLE_DEFAULTS: Readonly<Record<string, Value>>;
|
|
23
|
+
export declare const MARKER_DEFAULTS: Readonly<Record<string, Value>>;
|
|
24
|
+
export declare const ALERT_DEFAULTS: Readonly<Record<string, Value>>;
|
|
25
|
+
/** `stdlib.md` 13.2, the arguments every input kind accepts. */
|
|
26
|
+
export declare const INPUT_DEFAULTS: Readonly<Record<string, Value>>;
|
|
27
|
+
/** `language.md` 10.7 and 7.4, carried by `limits` whether or not it was written. */
|
|
28
|
+
export declare const LOOP_BUDGET = 2000000;
|
|
29
|
+
/**
|
|
30
|
+
* Which map holds each declaration call's defaults.
|
|
31
|
+
*
|
|
32
|
+
* The association is made at the call sites in `outputs.ts`, `events.ts` and
|
|
33
|
+
* `inputs.ts`, where each map is read for the call it belongs to, and there was
|
|
34
|
+
* nothing to read it off in one place. `scripts/check-defaults.mjs` therefore
|
|
35
|
+
* carried a copy of it, and so would anything else that wanted to know what a
|
|
36
|
+
* `plot` written without a `width` is given. It is written once here instead,
|
|
37
|
+
* and that check holds it to the surface: a declaration call with optional
|
|
38
|
+
* parameters and no map fails, and a key in a map that is not a parameter of
|
|
39
|
+
* its call fails.
|
|
40
|
+
*/
|
|
41
|
+
export declare const DECLARATION_DEFAULTS: Readonly<Record<string, Readonly<Record<string, Value>>>>;
|
|
42
|
+
/**
|
|
43
|
+
* What a declaration call's omitted argument resolves to, spelled as a default.
|
|
44
|
+
*
|
|
45
|
+
* A `plot` or a `level` carries no default in the library manifest, because its
|
|
46
|
+
* optional arguments become fields of a declaration rather than arguments an
|
|
47
|
+
* engine is passed (`compiled-program.md` 2.3), and this file is where their
|
|
48
|
+
* values are. So a reader of the manifest alone sees `width?: number` with no
|
|
49
|
+
* value beside it while the compiler writes 1.5, and anything that showed a
|
|
50
|
+
* writer the manifest's answer would be showing them nothing where the compiler
|
|
51
|
+
* has something.
|
|
52
|
+
*
|
|
53
|
+
* This is the one answer to that question. `scripts/check-defaults.mjs` compares
|
|
54
|
+
* what it returns against what `stdlib.md` prints, so a tooltip built on it
|
|
55
|
+
* cannot state a default the compiler does not apply: the two are the same text
|
|
56
|
+
* from the same table, or the build fails.
|
|
57
|
+
*
|
|
58
|
+
* Nothing comes back for a parameter whose value is absence, because absence is
|
|
59
|
+
* not a default a writer can be shown: the specification states `none` for some
|
|
60
|
+
* of those and words in place of a value for others, and which is which is
|
|
61
|
+
* recorded in `spec/default-exceptions.json` rather than invented here.
|
|
62
|
+
*/
|
|
63
|
+
export declare function declarationDefaultText(call: string, parameter: string): string | undefined;
|
|
64
|
+
//# sourceMappingURL=defaults.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/core/emit/defaults.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAsBzC,4EAA4E;AAC5E,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAQ1D,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAY7D,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAY7C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CASzD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAuB,CAAC;AAEtD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAK3D,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAMzD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAK1D,CAAC;AAEF,oEAAoE;AACpE,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAK1D,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAI3D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAI1D,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAG1D,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,WAAW,UAAY,CAAC;AAErC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAS1F,CAAC;AASF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgB1F"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { namedColour } from './colours.js';
|
|
2
|
+
const ABSENT = { kind: 'absent' };
|
|
3
|
+
function number(value) {
|
|
4
|
+
return { kind: 'number', value };
|
|
5
|
+
}
|
|
6
|
+
function string(value) {
|
|
7
|
+
return { kind: 'string', value };
|
|
8
|
+
}
|
|
9
|
+
function bool(value) {
|
|
10
|
+
return { kind: 'bool', value };
|
|
11
|
+
}
|
|
12
|
+
function colour(name) {
|
|
13
|
+
const value = namedColour(name);
|
|
14
|
+
return value === undefined ? ABSENT : { kind: 'colour', value };
|
|
15
|
+
}
|
|
16
|
+
/** `language.md` 13.2. `title` is required and `short` falls back to it. */
|
|
17
|
+
export const STUDY_DEFAULTS = {
|
|
18
|
+
overlay: bool(false),
|
|
19
|
+
precision: number(4),
|
|
20
|
+
format: string('price'),
|
|
21
|
+
range: ABSENT,
|
|
22
|
+
scale: string('right'),
|
|
23
|
+
group: string(''),
|
|
24
|
+
onUnconfirmed: bool(false),
|
|
25
|
+
};
|
|
26
|
+
/** `language.md` 13.3, the options only a `strategy()` adds. */
|
|
27
|
+
export const STRATEGY_DEFAULTS = {
|
|
28
|
+
capital: number(100000),
|
|
29
|
+
currency: string(''),
|
|
30
|
+
qty: number(1),
|
|
31
|
+
qtyType: string('units'),
|
|
32
|
+
product: string('intraday'),
|
|
33
|
+
fillOn: string('nextOpen'),
|
|
34
|
+
slippage: number(0),
|
|
35
|
+
commission: number(0),
|
|
36
|
+
commissionType: string('perTrade'),
|
|
37
|
+
pyramiding: number(1),
|
|
38
|
+
closeOnSessionEnd: bool(false),
|
|
39
|
+
};
|
|
40
|
+
/** The order `meta.strategy` lists them in, 2.3. */
|
|
41
|
+
export const STRATEGY_OPTIONS = [
|
|
42
|
+
'capital',
|
|
43
|
+
'currency',
|
|
44
|
+
'qty',
|
|
45
|
+
'qtyType',
|
|
46
|
+
'product',
|
|
47
|
+
'fillOn',
|
|
48
|
+
'slippage',
|
|
49
|
+
'commission',
|
|
50
|
+
'commissionType',
|
|
51
|
+
'pyramiding',
|
|
52
|
+
'closeOnSessionEnd',
|
|
53
|
+
];
|
|
54
|
+
/**
|
|
55
|
+
* `stdlib.md` 14.2.
|
|
56
|
+
*
|
|
57
|
+
* `lineStyle` has no argument on `plot` at all: the call's `style` names the
|
|
58
|
+
* column's shape and becomes the entry's `type`. A plot therefore always
|
|
59
|
+
* carries the one line style a host draws an undecorated line with.
|
|
60
|
+
*/
|
|
61
|
+
export const PLOT_DEFAULTS = {
|
|
62
|
+
color: ABSENT,
|
|
63
|
+
width: number(1.5),
|
|
64
|
+
style: string('line'),
|
|
65
|
+
offset: number(0),
|
|
66
|
+
overlay: ABSENT,
|
|
67
|
+
precision: ABSENT,
|
|
68
|
+
format: ABSENT,
|
|
69
|
+
scale: string('right'),
|
|
70
|
+
};
|
|
71
|
+
export const PLOT_LINE_STYLE = string('solid');
|
|
72
|
+
/** `stdlib.md` 14.2. A candle's border takes a plot's own width and style. */
|
|
73
|
+
export const CANDLE_DEFAULTS = {
|
|
74
|
+
colorUp: colour('lime'),
|
|
75
|
+
colorDown: colour('red'),
|
|
76
|
+
wickColor: ABSENT,
|
|
77
|
+
borderColor: ABSENT,
|
|
78
|
+
};
|
|
79
|
+
export const FILL_DEFAULTS = {
|
|
80
|
+
color: ABSENT,
|
|
81
|
+
colorUp: ABSENT,
|
|
82
|
+
colorDown: ABSENT,
|
|
83
|
+
opacity: number(1),
|
|
84
|
+
overlay: ABSENT,
|
|
85
|
+
};
|
|
86
|
+
export const LEVEL_DEFAULTS = {
|
|
87
|
+
title: string(''),
|
|
88
|
+
color: colour('gray'),
|
|
89
|
+
style: string('dashed'),
|
|
90
|
+
width: number(1),
|
|
91
|
+
};
|
|
92
|
+
/** `stdlib.md` 14.3. `title`, `rows` and `cols` have no default. */
|
|
93
|
+
export const TABLE_DEFAULTS = {
|
|
94
|
+
position: string('topRight'),
|
|
95
|
+
textColor: ABSENT,
|
|
96
|
+
bgColor: ABSENT,
|
|
97
|
+
borderWidth: number(0),
|
|
98
|
+
};
|
|
99
|
+
export const MARKER_DEFAULTS = {
|
|
100
|
+
color: ABSENT,
|
|
101
|
+
at: string('above'),
|
|
102
|
+
shape: string('label'),
|
|
103
|
+
};
|
|
104
|
+
export const ALERT_DEFAULTS = {
|
|
105
|
+
id: string(''),
|
|
106
|
+
title: string(''),
|
|
107
|
+
frequency: string('oncePerBar'),
|
|
108
|
+
};
|
|
109
|
+
/** `stdlib.md` 13.2, the arguments every input kind accepts. */
|
|
110
|
+
export const INPUT_DEFAULTS = {
|
|
111
|
+
group: string(''),
|
|
112
|
+
tooltip: string(''),
|
|
113
|
+
};
|
|
114
|
+
/** `language.md` 10.7 and 7.4, carried by `limits` whether or not it was written. */
|
|
115
|
+
export const LOOP_BUDGET = 2_000_000;
|
|
116
|
+
/**
|
|
117
|
+
* Which map holds each declaration call's defaults.
|
|
118
|
+
*
|
|
119
|
+
* The association is made at the call sites in `outputs.ts`, `events.ts` and
|
|
120
|
+
* `inputs.ts`, where each map is read for the call it belongs to, and there was
|
|
121
|
+
* nothing to read it off in one place. `scripts/check-defaults.mjs` therefore
|
|
122
|
+
* carried a copy of it, and so would anything else that wanted to know what a
|
|
123
|
+
* `plot` written without a `width` is given. It is written once here instead,
|
|
124
|
+
* and that check holds it to the surface: a declaration call with optional
|
|
125
|
+
* parameters and no map fails, and a key in a map that is not a parameter of
|
|
126
|
+
* its call fails.
|
|
127
|
+
*/
|
|
128
|
+
export const DECLARATION_DEFAULTS = {
|
|
129
|
+
plot: PLOT_DEFAULTS,
|
|
130
|
+
plotCandles: CANDLE_DEFAULTS,
|
|
131
|
+
fill: FILL_DEFAULTS,
|
|
132
|
+
level: LEVEL_DEFAULTS,
|
|
133
|
+
table: TABLE_DEFAULTS,
|
|
134
|
+
signal: MARKER_DEFAULTS,
|
|
135
|
+
alert: ALERT_DEFAULTS,
|
|
136
|
+
input: INPUT_DEFAULTS,
|
|
137
|
+
};
|
|
138
|
+
/** A colour as the specification's tables print one, so the two compare. */
|
|
139
|
+
function hexOf(colour) {
|
|
140
|
+
const byte = (channel) => Math.round(channel).toString(16).padStart(2, '0');
|
|
141
|
+
return `#${byte(colour[0])}${byte(colour[1])}${byte(colour[2])}${byte(colour[3] * 255)}`;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* What a declaration call's omitted argument resolves to, spelled as a default.
|
|
145
|
+
*
|
|
146
|
+
* A `plot` or a `level` carries no default in the library manifest, because its
|
|
147
|
+
* optional arguments become fields of a declaration rather than arguments an
|
|
148
|
+
* engine is passed (`compiled-program.md` 2.3), and this file is where their
|
|
149
|
+
* values are. So a reader of the manifest alone sees `width?: number` with no
|
|
150
|
+
* value beside it while the compiler writes 1.5, and anything that showed a
|
|
151
|
+
* writer the manifest's answer would be showing them nothing where the compiler
|
|
152
|
+
* has something.
|
|
153
|
+
*
|
|
154
|
+
* This is the one answer to that question. `scripts/check-defaults.mjs` compares
|
|
155
|
+
* what it returns against what `stdlib.md` prints, so a tooltip built on it
|
|
156
|
+
* cannot state a default the compiler does not apply: the two are the same text
|
|
157
|
+
* from the same table, or the build fails.
|
|
158
|
+
*
|
|
159
|
+
* Nothing comes back for a parameter whose value is absence, because absence is
|
|
160
|
+
* not a default a writer can be shown: the specification states `none` for some
|
|
161
|
+
* of those and words in place of a value for others, and which is which is
|
|
162
|
+
* recorded in `spec/default-exceptions.json` rather than invented here.
|
|
163
|
+
*/
|
|
164
|
+
export function declarationDefaultText(call, parameter) {
|
|
165
|
+
const value = DECLARATION_DEFAULTS[call]?.[parameter];
|
|
166
|
+
if (value === undefined)
|
|
167
|
+
return undefined;
|
|
168
|
+
switch (value.kind) {
|
|
169
|
+
case 'absent':
|
|
170
|
+
return 'none';
|
|
171
|
+
case 'bool':
|
|
172
|
+
case 'number':
|
|
173
|
+
return String(value.value);
|
|
174
|
+
case 'string':
|
|
175
|
+
return JSON.stringify(value.value);
|
|
176
|
+
case 'colour':
|
|
177
|
+
return hexOf(value.value);
|
|
178
|
+
default:
|
|
179
|
+
return `a ${value.kind}`;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/core/emit/defaults.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,GAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAEzC,SAAS,MAAM,CAAC,KAAa;IAC3B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC3B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,MAAM,CAAC,IAAY;IAC1B,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAClE,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IACjB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC;CAC3B,CAAC;AAEF,gEAAgE;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAoC;IAChE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACrB,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC;CAC/B,CAAC;AAEF,oDAAoD;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,SAAS;IACT,UAAU;IACV,KAAK;IACL,SAAS;IACT,SAAS;IACT,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,gBAAgB;IAChB,YAAY;IACZ,mBAAmB;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAoC;IAC5D,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,MAAM;IACjB,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAU,MAAM,CAAC,OAAO,CAAC,CAAC;AAEtD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC9D,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;IACxB,SAAS,EAAE,MAAM;IACjB,WAAW,EAAE,MAAM;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAoC;IAC5D,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAClB,OAAO,EAAE,MAAM;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;CACjB,CAAC;AAEF,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;IAC5B,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC9D,KAAK,EAAE,MAAM;IACb,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC;CAChC,CAAC;AAEF,gEAAgE;AAChE,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;CACpB,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA8D;IAC7F,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,eAAe;IAC5B,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,eAAe;IACvB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;CACtB,CAAC;AAEF,4EAA4E;AAC5E,SAAS,KAAK,CAAC,MAAc;IAC3B,MAAM,IAAI,GAAG,CAAC,OAAe,EAAU,EAAE,CACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,SAAiB;IACpE,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACtD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC;QAChB,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B;YACE,OAAO,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CheckedScript } from '../check/index.js';
|
|
2
|
+
import type { DiagnosticSink } from '../diagnostics/index.js';
|
|
3
|
+
import type { SourceFile } from '../source/index.js';
|
|
4
|
+
import type { EmitOptions } from './context.js';
|
|
5
|
+
import type { Gap } from './gaps.js';
|
|
6
|
+
import type { CompiledProgram } from './program.js';
|
|
7
|
+
export interface EmitResult {
|
|
8
|
+
/** The program, or nothing when a gap stopped a faithful one being produced. */
|
|
9
|
+
readonly program: CompiledProgram | undefined;
|
|
10
|
+
readonly gaps: readonly Gap[];
|
|
11
|
+
}
|
|
12
|
+
export declare function emit(file: SourceFile, checked: CheckedScript, sink: DiagnosticSink, options?: EmitOptions): EmitResult;
|
|
13
|
+
//# sourceMappingURL=emit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../../src/core/emit/emit.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAOrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAKrC,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,cAAc,CAAC;AAM1E,MAAM,WAAW,UAAU;IACzB,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;CAC/B;AAKD,wBAAgB,IAAI,CAClB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,cAAc,EACpB,OAAO,GAAE,WAAgB,GACxB,UAAU,CA2EZ"}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A checked file in, a compiled program out.
|
|
3
|
+
*
|
|
4
|
+
* The order below is the order the format forces, and each step is here rather
|
|
5
|
+
* than inside a pass because each one needs a total the passes do not have
|
|
6
|
+
* until they have finished.
|
|
7
|
+
*
|
|
8
|
+
* Registers first, because the two instructions that keep a shadow register in
|
|
9
|
+
* step with a cell have to be the first and the last thing a bar does, and a
|
|
10
|
+
* prologue cannot be written after the list it belongs at the front of. Inputs
|
|
11
|
+
* next, because each one owns a slot the engine writes at step 5 and the slots
|
|
12
|
+
* have to exist before a statement reads one. Then the statements. Then the
|
|
13
|
+
* bases of every call site, which can only be assigned once the top level's own
|
|
14
|
+
* cells and state regions are counted.
|
|
15
|
+
*
|
|
16
|
+
* The last step is the one worth defending: the emitter walks its own
|
|
17
|
+
* instruction lists and computes the stack depth exactly as section 3.5 check 5
|
|
18
|
+
* says an engine will. A compiler that cannot compute that number does not know
|
|
19
|
+
* whether it emitted a program any engine will load, and finding out from a
|
|
20
|
+
* verifier in another language is finding out too late.
|
|
21
|
+
*/
|
|
22
|
+
import { CATALOGUE_LANGUAGE_VERSION } from '../catalogue/index.js';
|
|
23
|
+
import { COMPILED_FORMAT_VERSION, VERSION } from '../version/index.js';
|
|
24
|
+
import { sourceHash } from './canonical.js';
|
|
25
|
+
import { orderChannels, renumberCode, renumberOutputs } from './channels.js';
|
|
26
|
+
import { walkDepths } from './code.js';
|
|
27
|
+
import { Emitter, Frame } from './context.js';
|
|
28
|
+
import { assignRegions } from './functions.js';
|
|
29
|
+
import { buildInputs } from './inputs.js';
|
|
30
|
+
import { buildLimits, buildMeta } from './meta.js';
|
|
31
|
+
import { placementOf, prepareRegisters } from './registers.js';
|
|
32
|
+
import { linkRequestNames } from './requests.js';
|
|
33
|
+
import { requiresOf } from './requires.js';
|
|
34
|
+
import { emitStatement } from './statements.js';
|
|
35
|
+
/** The library manifest version, tied to `openscript.language` (2.5). */
|
|
36
|
+
const DEFAULT_MANIFEST = 1;
|
|
37
|
+
export function emit(file, checked, sink, options = {}) {
|
|
38
|
+
const e = new Emitter(file, checked, sink, options);
|
|
39
|
+
const top = new Frame(true);
|
|
40
|
+
prepareRegisters(e);
|
|
41
|
+
buildInputs(e, top);
|
|
42
|
+
openCarriedRegisters(e, top);
|
|
43
|
+
linkRequestNames(e);
|
|
44
|
+
for (const item of checked.script.items) {
|
|
45
|
+
if (item.kind === 'functionDeclaration')
|
|
46
|
+
continue;
|
|
47
|
+
emitStatement(e, top, item);
|
|
48
|
+
}
|
|
49
|
+
closeShadowRegisters(e, top);
|
|
50
|
+
// `HALT` takes the position of whatever came before it, which is 12.2's own
|
|
51
|
+
// reading of a run of instructions costing one triple.
|
|
52
|
+
if (top.builder.here === 0)
|
|
53
|
+
top.builder.at(checked.script.span);
|
|
54
|
+
top.builder.push('HALT');
|
|
55
|
+
const { cells, states } = assignRegions(e, top);
|
|
56
|
+
// The channel table is written in the order `outputs` lists its groups, which
|
|
57
|
+
// is not the order the declarations were met in; `channels.ts` says why.
|
|
58
|
+
const order = orderChannels(e);
|
|
59
|
+
const code = renumberCode(top.builder.code, order.moved);
|
|
60
|
+
const functions = e.functions.map((one) => ({
|
|
61
|
+
...one,
|
|
62
|
+
code: renumberCode(one.code, order.moved),
|
|
63
|
+
}));
|
|
64
|
+
checkDepths(e, top, code);
|
|
65
|
+
checkLimits(e, code, states.length);
|
|
66
|
+
const program = {
|
|
67
|
+
openscript: { format: COMPILED_FORMAT_VERSION, language: languageOf(checked) },
|
|
68
|
+
requires: requiresOf(e, code),
|
|
69
|
+
compiler: { name: 'openscript', version: VERSION },
|
|
70
|
+
source: { hash: sourceHash(file.text), lines: file.lineCount, file: file.name },
|
|
71
|
+
meta: buildMeta(e),
|
|
72
|
+
limits: buildLimits(e),
|
|
73
|
+
lib: { manifest: options.manifest ?? DEFAULT_MANIFEST, functions: e.libraryFunctions },
|
|
74
|
+
inputs: e.inputs,
|
|
75
|
+
channels: order.channels,
|
|
76
|
+
outputs: renumberOutputs(e, order.moved),
|
|
77
|
+
consts: e.pool.all,
|
|
78
|
+
series: e.layout.registers,
|
|
79
|
+
frame: { slots: top.layout.slotCount },
|
|
80
|
+
cells,
|
|
81
|
+
states,
|
|
82
|
+
functions,
|
|
83
|
+
callSites: e.sites.map((site) => ({
|
|
84
|
+
fn: site.fn,
|
|
85
|
+
argc: site.argc,
|
|
86
|
+
cellBase: site.cellBase,
|
|
87
|
+
stateBase: site.stateBase,
|
|
88
|
+
series: site.series,
|
|
89
|
+
})),
|
|
90
|
+
loops: e.loops,
|
|
91
|
+
code,
|
|
92
|
+
requests: e.requests,
|
|
93
|
+
debug: {
|
|
94
|
+
pos: top.builder.pos,
|
|
95
|
+
fnPos: e.functionPos,
|
|
96
|
+
names: {
|
|
97
|
+
slots: top.layout.slotNames,
|
|
98
|
+
cells: cells.map((one) => one.name ?? ''),
|
|
99
|
+
series: e.layout.registers.map((one) => one.name ?? ''),
|
|
100
|
+
channels: order.names,
|
|
101
|
+
},
|
|
102
|
+
retain: options.retain === true,
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
if (!e.gaps.blocked)
|
|
106
|
+
return { program, gaps: e.gaps.gaps };
|
|
107
|
+
reportRefusal(e);
|
|
108
|
+
return { program: undefined, gaps: e.gaps.gaps };
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Why there is no program, said to the person who asked for one.
|
|
112
|
+
*
|
|
113
|
+
* A gap is a note between the parts of this project and nobody outside it ever
|
|
114
|
+
* reads one, so an emitter that returned nothing and logged a gap left a trader
|
|
115
|
+
* with a compile that produced no program, no message and nothing to ask a
|
|
116
|
+
* question about. That is the worst failure this compiler has available: the
|
|
117
|
+
* script may be perfectly good, and silence gives its author no way to find out
|
|
118
|
+
* whether it is.
|
|
119
|
+
*
|
|
120
|
+
* So every gap that stopped a program becomes a diagnostic. It carries the line
|
|
121
|
+
* that provoked it, what could not be done, and the section that asks for it,
|
|
122
|
+
* and it says where to take it. The sentence is careful about whose fault it
|
|
123
|
+
* is, because this runs whether or not an earlier stage refused the file: a
|
|
124
|
+
* checked tree the emitter cannot emit is a defect in the compiler only when
|
|
125
|
+
* nothing else was reported about it.
|
|
126
|
+
*/
|
|
127
|
+
function reportRefusal(e) {
|
|
128
|
+
for (const gap of e.gaps.gaps) {
|
|
129
|
+
if (!gap.blocking)
|
|
130
|
+
continue;
|
|
131
|
+
e.sink.report('OS6018', gap.span ?? e.checked.script.span, {
|
|
132
|
+
location: gap.specification,
|
|
133
|
+
reason: `${gap.what}; this compiler produced no program rather than a wrong one, and if ` +
|
|
134
|
+
'nothing else was reported about this script that is a defect in the compiler ' +
|
|
135
|
+
'rather than in the script: please report it, with the script that produced it',
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
function languageOf(checked) {
|
|
140
|
+
const line = checked.script.items.find((item) => item.kind === 'versionLine');
|
|
141
|
+
return line !== undefined && line.kind === 'versionLine'
|
|
142
|
+
? line.version.value
|
|
143
|
+
: CATALOGUE_LANGUAGE_VERSION;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* The register beside a `var` a function body reads, filled before the bar runs.
|
|
147
|
+
*
|
|
148
|
+
* The pair at the end of the bar (below) writes the entry for the bar. This one
|
|
149
|
+
* writes the value the bar starts with, so a body called before the first
|
|
150
|
+
* assignment reads what the cell carried in rather than an absence. On bar 0
|
|
151
|
+
* the cell has not been initialised yet and reads absent, which is what the
|
|
152
|
+
* name is worth before its declaration line (3.4).
|
|
153
|
+
*/
|
|
154
|
+
function openCarriedRegisters(e, top) {
|
|
155
|
+
for (const binding of e.checked.bindings) {
|
|
156
|
+
if (!e.carried.has(binding.id))
|
|
157
|
+
continue;
|
|
158
|
+
const register = e.layout.registerFor(binding);
|
|
159
|
+
if (register === undefined)
|
|
160
|
+
continue;
|
|
161
|
+
top.builder.at(binding.declaredAt);
|
|
162
|
+
top.builder.push('LOADC', top.layout.cellFor(binding));
|
|
163
|
+
top.builder.push('SSTORE', register);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* The one instruction pair that keeps a persistent name's past readable.
|
|
168
|
+
*
|
|
169
|
+
* A cell has no history and a register has no persistence, so `x[1]` on a `var`
|
|
170
|
+
* needs both (`language.md` 8.3). The register's entry for a bar is written
|
|
171
|
+
* from the cell at the end of the bar rather than at each assignment, because a
|
|
172
|
+
* bar on which the `var` was not assigned still holds a value, and a register
|
|
173
|
+
* written only where the source writes the name would be absent there and say
|
|
174
|
+
* the value had never existed.
|
|
175
|
+
*/
|
|
176
|
+
function closeShadowRegisters(e, top) {
|
|
177
|
+
for (const binding of e.checked.bindings) {
|
|
178
|
+
if (!e.shadowed.has(binding.id))
|
|
179
|
+
continue;
|
|
180
|
+
if (placementOf(e, binding) !== 'cell')
|
|
181
|
+
continue;
|
|
182
|
+
if (!top.layout.hasCellFor(binding))
|
|
183
|
+
continue;
|
|
184
|
+
const register = e.layout.registerFor(binding);
|
|
185
|
+
if (register === undefined)
|
|
186
|
+
continue;
|
|
187
|
+
top.builder.at(binding.declaredAt);
|
|
188
|
+
top.builder.push('LOADC', top.layout.cellFor(binding));
|
|
189
|
+
top.builder.push('SSTORE', register);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/** Every instruction a read's body holds, its own reads included. */
|
|
193
|
+
function instructionsIn(requests) {
|
|
194
|
+
let total = 0;
|
|
195
|
+
for (const request of requests) {
|
|
196
|
+
total += request.body.code.length;
|
|
197
|
+
for (const one of request.body.functions)
|
|
198
|
+
total += one.code.length;
|
|
199
|
+
total += instructionsIn(request.body.requests);
|
|
200
|
+
}
|
|
201
|
+
return total;
|
|
202
|
+
}
|
|
203
|
+
/** Section 3.5 check 5, run here so a defect is found where it was written. */
|
|
204
|
+
function checkDepths(e, top, code) {
|
|
205
|
+
const argcOf = (site) => e.sites[site]?.argc ?? 0;
|
|
206
|
+
const lists = [code, ...e.functions.map((one) => one.code)];
|
|
207
|
+
for (const request of e.requests)
|
|
208
|
+
checkRequestDepths(e, request);
|
|
209
|
+
lists.forEach((list, index) => {
|
|
210
|
+
const walk = walkDepths(list, argcOf);
|
|
211
|
+
const at = walk.conflict ?? walk.underflow ?? walk.terminal;
|
|
212
|
+
if (at === undefined)
|
|
213
|
+
return;
|
|
214
|
+
e.gap(`the stack depth this compiler emitted does not survive its own walk at instruction ${at}, ` +
|
|
215
|
+
'so an engine would refuse the program at load', 'compiled-program.md 3.5 check 5',
|
|
216
|
+
// The bar's own list is the one whose positions are to hand, and it is
|
|
217
|
+
// where all but one of these can happen. A line beats no line: whoever
|
|
218
|
+
// reads this next starts at the statement rather than at the file.
|
|
219
|
+
index === 0 ? lineOfInstruction(e, top, at) : undefined, true);
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* The same walk over a read's body, which counts its own call sites (2.16).
|
|
224
|
+
*
|
|
225
|
+
* A body has no positions in the bar's own table, so a failure here carries the
|
|
226
|
+
* read's line rather than a line from the wrong list.
|
|
227
|
+
*/
|
|
228
|
+
function checkRequestDepths(e, request) {
|
|
229
|
+
const argcOf = (site) => request.body.callSites[site]?.argc ?? 0;
|
|
230
|
+
const lists = [request.body.code, ...request.body.functions.map((one) => one.code)];
|
|
231
|
+
for (const list of lists) {
|
|
232
|
+
const walk = walkDepths(list, argcOf);
|
|
233
|
+
const at = walk.conflict ?? walk.underflow ?? walk.terminal;
|
|
234
|
+
if (at === undefined)
|
|
235
|
+
continue;
|
|
236
|
+
e.gap(`the stack depth this compiler emitted for a read's expression does not survive its ` +
|
|
237
|
+
`own walk at instruction ${at}, so an engine would refuse the program at load`, 'compiled-program.md 3.5 check 5 and 2.16', undefined, true);
|
|
238
|
+
}
|
|
239
|
+
for (const nested of request.body.requests)
|
|
240
|
+
checkRequestDepths(e, nested);
|
|
241
|
+
}
|
|
242
|
+
/** Where the instruction at this index came from, from the debug positions. */
|
|
243
|
+
function lineOfInstruction(e, top, index) {
|
|
244
|
+
let found;
|
|
245
|
+
for (const position of top.builder.pos) {
|
|
246
|
+
if (position[0] > index)
|
|
247
|
+
break;
|
|
248
|
+
found = position;
|
|
249
|
+
}
|
|
250
|
+
if (found === undefined)
|
|
251
|
+
return undefined;
|
|
252
|
+
return e.file.spanAt(e.file.offsetAt({ line: found[1], column: found[2] }), 1);
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* OS5004 and OS5009, the two limits the compiler rather than the engine finds.
|
|
256
|
+
*
|
|
257
|
+
* Both are reported only against a ceiling a host actually declared. A compiler
|
|
258
|
+
* that invented one would refuse a program every engine present could run.
|
|
259
|
+
*/
|
|
260
|
+
function checkLimits(e, code, states) {
|
|
261
|
+
const span = e.checked.script.span;
|
|
262
|
+
const maxStates = e.options.maxStates;
|
|
263
|
+
if (maxStates !== undefined && states > maxStates) {
|
|
264
|
+
e.sink.report('OS5004', span, {
|
|
265
|
+
found: states,
|
|
266
|
+
max: maxStates,
|
|
267
|
+
first: e.functions[0]?.name ?? '',
|
|
268
|
+
second: e.functions[1]?.name ?? e.functions[0]?.name ?? '',
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
const maxInstructions = e.options.maxInstructions;
|
|
272
|
+
const total = code.length +
|
|
273
|
+
e.functions.reduce((sum, one) => sum + one.code.length, 0) +
|
|
274
|
+
// A read's expression is instructions an engine executes, once per
|
|
275
|
+
// requested bar, so it counts against the ceiling like any other (2.16).
|
|
276
|
+
instructionsIn(e.requests);
|
|
277
|
+
if (maxInstructions !== undefined && total > maxInstructions) {
|
|
278
|
+
e.sink.report('OS5009', span, { found: total, max: maxInstructions });
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
//# sourceMappingURL=emit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../src/core/emit/emit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The four calls that draw something for one bar: a marker, an alert, a bar
|
|
3
|
+
* colour and a pane background.
|
|
4
|
+
*
|
|
5
|
+
* All four are `EMIT` and a declared channel, and none of them is a library
|
|
6
|
+
* call an engine performs. One instruction covers every drawing surface
|
|
7
|
+
* (`compiled-program.md` 4.11); an instruction per surface would have added six
|
|
8
|
+
* opcodes that all do the same thing and would have made every new surface a
|
|
9
|
+
* format change.
|
|
10
|
+
*
|
|
11
|
+
* The alert is the one worth reading. `stdlib.md` 16.1 says the compiler lifts
|
|
12
|
+
* each call into a watched condition whose predicate is the chain of guards
|
|
13
|
+
* that reaches it. Nothing has to be lifted: the call site is only reached when
|
|
14
|
+
* those guards passed, so writing `true` into the condition channel there is
|
|
15
|
+
* the predicate, exactly. On a bar the guards refused, nothing writes the
|
|
16
|
+
* channel and a channel nothing wrote is absent, which is no alert.
|
|
17
|
+
*/
|
|
18
|
+
import type { Call } from '../ast/index.js';
|
|
19
|
+
import type { Emitter, Frame } from './context.js';
|
|
20
|
+
export declare function emitEventCall(e: Emitter, f: Frame, call: Call, name: string): void;
|
|
21
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/core/emit/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAKnD,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAiBlF"}
|