@helios-lang/contract-utils 0.2.81 → 0.3.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.
Files changed (66) hide show
  1. package/package.json +7 -7
  2. package/src/cast/Cast.js +149 -140
  3. package/src/cast/UserFunc.js +43 -50
  4. package/src/cast/index.js +2 -29
  5. package/src/codegen/LoadedScriptsWriter.js +55 -55
  6. package/src/codegen/TypeSchema.js +6 -14
  7. package/src/codegen/index.js +1 -14
  8. package/src/compiler/CompilerLib.js +1 -80
  9. package/src/compiler/CompilerLib_v0_16.js +14 -14
  10. package/src/compiler/CompilerLib_v0_17.js +25 -23
  11. package/src/compiler/index.js +0 -5
  12. package/src/compiler/ops.js +5 -7
  13. package/src/context/CacheEntry.js +86 -64
  14. package/src/context/ContractContextBuilder.js +37 -57
  15. package/src/context/ContractContextCache.js +5 -7
  16. package/src/context/DagCompiler.js +24 -20
  17. package/src/context/index.js +1 -7
  18. package/src/hl2ts.js +3 -6
  19. package/src/index.js +355 -9
  20. package/types/cast/Cast.d.ts +17 -103
  21. package/types/cast/Cast.d.ts.map +1 -1
  22. package/types/cast/UserFunc.d.ts +11 -94
  23. package/types/cast/UserFunc.d.ts.map +1 -1
  24. package/types/cast/index.d.ts +2 -9
  25. package/types/cast/index.d.ts.map +1 -1
  26. package/types/codegen/LoadedScriptsWriter.d.ts +8 -83
  27. package/types/codegen/LoadedScriptsWriter.d.ts.map +1 -1
  28. package/types/codegen/TypeCheckedValidator.d.ts +1 -1
  29. package/types/codegen/TypeCheckedValidator.d.ts.map +1 -1
  30. package/types/codegen/TypeSchema.d.ts +1 -1
  31. package/types/codegen/TypeSchema.d.ts.map +1 -1
  32. package/types/codegen/index.d.ts +1 -7
  33. package/types/codegen/index.d.ts.map +1 -1
  34. package/types/compiler/CompilerLib.d.ts +3 -138
  35. package/types/compiler/CompilerLib.d.ts.map +1 -1
  36. package/types/compiler/CompilerLib_v0_16.d.ts +8 -118
  37. package/types/compiler/CompilerLib_v0_16.d.ts.map +1 -1
  38. package/types/compiler/CompilerLib_v0_17.d.ts +12 -52
  39. package/types/compiler/CompilerLib_v0_17.d.ts.map +1 -1
  40. package/types/compiler/index.d.ts +0 -2
  41. package/types/compiler/index.d.ts.map +1 -1
  42. package/types/compiler/ops.d.ts +2 -2
  43. package/types/compiler/ops.d.ts.map +1 -1
  44. package/types/context/CacheEntry.d.ts +9 -22
  45. package/types/context/CacheEntry.d.ts.map +1 -1
  46. package/types/context/ContractContext.d.ts +8 -8
  47. package/types/context/ContractContext.d.ts.map +1 -1
  48. package/types/context/ContractContextBuilder.d.ts +5 -100
  49. package/types/context/ContractContextBuilder.d.ts.map +1 -1
  50. package/types/context/ContractContextCache.d.ts +5 -8
  51. package/types/context/ContractContextCache.d.ts.map +1 -1
  52. package/types/context/DagCompiler.d.ts +11 -15
  53. package/types/context/DagCompiler.d.ts.map +1 -1
  54. package/types/context/index.d.ts +1 -6
  55. package/types/context/index.d.ts.map +1 -1
  56. package/types/hl2ts.d.ts +0 -3
  57. package/types/hl2ts.d.ts.map +1 -1
  58. package/types/index.d.ts +284 -9
  59. package/types/index.d.ts.map +1 -1
  60. package/src/cast/PermissiveType.js +0 -18
  61. package/src/cast/StrictType.js +0 -18
  62. package/src/codegen/LoadedModule.js +0 -23
  63. package/src/codegen/LoadedValidator.js +0 -52
  64. package/src/codegen/TypeCheckedModule.js +0 -31
  65. package/src/codegen/TypeCheckedValidator.js +0 -15
  66. package/src/context/ContractContext.js +0 -130
@@ -1,102 +1,19 @@
1
1
  /**
2
- * @typedef {import("@helios-lang/type-utils").TypeSchema} TypeSchema
3
- * @typedef {import("@helios-lang/uplc").CekResult} CekResult
4
- * @typedef {import("@helios-lang/uplc").UplcData} UplcData
5
- * @typedef {import("@helios-lang/uplc").UplcLoggingI} UplcLoggingI
6
- * @typedef {import("@helios-lang/uplc").UplcProgram} UplcProgram
7
- * @typedef {import("@helios-lang/uplc").UplcValue} UplcValue
8
- * @typedef {import("./Cast.js").CastConfig} CastConfig
9
- */
10
- /**
11
- * TODO: add logOptions here as well (which can be overridden by logOptions passed directly to eval(), evalUnsafe() and profile())?
12
- * `returns` is optional to accomodate main functions that return void
13
- * @typedef {{
14
- * name: string
15
- * requiresScriptContext: boolean
16
- * requiresCurrentScript: boolean
17
- * arguments: {
18
- * name: string
19
- * type: TypeSchema
20
- * isOptional: boolean
21
- * }[]
22
- * returns?: TypeSchema
23
- * validatorIndices?: Record<string, number>
24
- * castConfig: CastConfig
25
- * }} UserFuncProps
26
- */
27
- /**
28
- * @template ArgsT
29
- * @typedef {{[K in keyof ArgsT]: K extends "$currentScript" ? string : UplcData}} UnsafeArgsT
2
+ * @import { TypeSchema } from "@helios-lang/type-utils"
3
+ * @import { CekResult, UplcData, UplcLogger, UplcProgram, UplcValue } from "@helios-lang/uplc"
4
+ * @import { Cast, CastConfig, UnsafeArgsT, UserFunc, UserFuncProps } from "../index.js"
30
5
  */
31
6
  /**
32
7
  * @template {{[argName: string]: any}} ArgsT
33
8
  * @template RetT
9
+ * @param {UplcProgram} uplc
10
+ * @param {UserFuncProps} props
11
+ * @returns {UserFunc<ArgsT, RetT>}
34
12
  */
35
- export class UserFunc<ArgsT extends {
13
+ export function makeUserFunc<ArgsT extends {
36
14
  [argName: string]: any;
37
- }, RetT> {
38
- /**
39
- * @param {UplcProgram} uplc
40
- * @param {UserFuncProps} props
41
- */
42
- constructor(uplc: UplcProgram, props: UserFuncProps);
43
- /**
44
- * @readonly
45
- * @type {UplcProgram}
46
- */
47
- readonly uplc: UplcProgram;
48
- /**
49
- * @private
50
- * @readonly
51
- * @type {UserFuncProps}
52
- */
53
- private readonly props;
54
- /**
55
- * @type {string}
56
- */
57
- get name(): string;
58
- /**
59
- * @param {ArgsT} namedArgs
60
- * @param {Option<UplcLoggingI>} logOptions
61
- * @returns {RetT}
62
- */
63
- eval(namedArgs: ArgsT, logOptions?: Option<UplcLoggingI>): RetT;
64
- /**
65
- * @param {UnsafeArgsT<ArgsT>} namedArgs
66
- * @param {Option<UplcLoggingI>} logOptions
67
- * @returns {RetT extends void ? void : UplcData}
68
- */
69
- evalUnsafe(namedArgs: UnsafeArgsT<ArgsT>, logOptions?: Option<UplcLoggingI>): RetT extends void ? void : UplcData;
70
- /**
71
- * @param {UnsafeArgsT<ArgsT>} namedArgs
72
- * @param {Option<UplcLoggingI>} logOptions - optional, passed to UplcProgram.eval if provided
73
- * @returns {CekResult}
74
- */
75
- profile(namedArgs: UnsafeArgsT<ArgsT>, logOptions?: Option<UplcLoggingI>): CekResult;
76
- }
77
- export type TypeSchema = import("@helios-lang/type-utils").TypeSchema;
78
- export type CekResult = import("@helios-lang/uplc").CekResult;
79
- export type UplcData = import("@helios-lang/uplc").UplcData;
80
- export type UplcLoggingI = import("@helios-lang/uplc").UplcLoggingI;
81
- export type UplcProgram = import("@helios-lang/uplc").UplcProgram;
82
- export type UplcValue = import("@helios-lang/uplc").UplcValue;
83
- export type CastConfig = import("./Cast.js").CastConfig;
84
- /**
85
- * TODO: add logOptions here as well (which can be overridden by logOptions passed directly to eval(), evalUnsafe() and profile())?
86
- * `returns` is optional to accomodate main functions that return void
87
- */
88
- export type UserFuncProps = {
89
- name: string;
90
- requiresScriptContext: boolean;
91
- requiresCurrentScript: boolean;
92
- arguments: {
93
- name: string;
94
- type: TypeSchema;
95
- isOptional: boolean;
96
- }[];
97
- returns?: TypeSchema;
98
- validatorIndices?: Record<string, number>;
99
- castConfig: CastConfig;
100
- };
101
- export type UnsafeArgsT<ArgsT> = { [K in keyof ArgsT]: K extends "$currentScript" ? string : UplcData; };
15
+ }, RetT>(uplc: UplcProgram, props: UserFuncProps): UserFunc<ArgsT, RetT>;
16
+ import type { UplcProgram } from "@helios-lang/uplc";
17
+ import type { UserFuncProps } from "../index.js";
18
+ import type { UserFunc } from "../index.js";
102
19
  //# sourceMappingURL=UserFunc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserFunc.d.ts","sourceRoot":"","sources":["../../src/cast/UserFunc.js"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH;;;GAGG;AAEH;;;GAGG;AACH,sBAHwC,KAAK,SAAhC;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAC1B,IAAI;IAgBb;;;OAGG;IACH,kBAHW,WAAW,SACX,aAAa,EAKvB;IApBD;;;OAGG;IACH,eAFU,WAAW,CAEjB;IAEJ;;;;OAIG;IACH,uBAAK;IAWL;;OAEG;IACH,mBAEC;IAED;;;;OAIG;IACH,gBAJW,KAAK,eACL,MAAM,CAAC,YAAY,CAAC,GAClB,IAAI,CA0ChB;IAED;;;;OAIG;IACH,sBAJW,WAAW,CAAC,KAAK,CAAC,eAClB,MAAM,CAAC,YAAY,CAAC,GAClB,IAAI,SAAS,IAAI,GAAG,IAAI,GAAG,QAAQ,CAc/C;IAED;;;;OAIG;IACH,mBAJW,WAAW,CAAC,KAAK,CAAC,eAClB,MAAM,CAAC,YAAY,CAAC,GAClB,SAAS,CAwGrB;CACJ;yBAhPY,OAAO,yBAAyB,EAAE,UAAU;wBAC5C,OAAO,mBAAmB,EAAE,SAAS;uBACrC,OAAO,mBAAmB,EAAE,QAAQ;2BACpC,OAAO,mBAAmB,EAAE,YAAY;0BACxC,OAAO,mBAAmB,EAAE,WAAW;wBACvC,OAAO,mBAAmB,EAAE,SAAS;yBACrC,OAAO,WAAW,EAAE,UAAU;;;;;4BAM9B;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB,EAAE,OAAO,CAAA;IAC9B,qBAAqB,EAAE,OAAO,CAAA;IAC9B,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,UAAU,CAAA;QAChB,UAAU,EAAE,OAAO,CAAA;KACpB,EAAE,CAAA;IACH,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,UAAU,EAAE,UAAU,CAAA;CACvB;wBAIS,KAAK,IACL,GAAE,CAAgB,IAAX,MAAM,KAAK,GAAG,CAAC,SAAS,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAC"}
1
+ {"version":3,"file":"UserFunc.d.ts","sourceRoot":"","sources":["../../src/cast/UserFunc.js"],"names":[],"mappings":"AAaA;;;;GAIG;AAEH;;;;;;GAMG;AACH,6BANwC,KAAK,SAAhC;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAC1B,IAAI,QACN,WAAW,SACX,aAAa,GACX,SAAS,KAAK,EAAE,IAAI,CAAC,CAIjC;iCAb2E,mBAAmB;mCACpB,aAAa;8BAAb,aAAa"}
@@ -1,10 +1,3 @@
1
- export { Cast };
2
- export { configureCast } from "./Cast.js";
3
- export { UserFunc } from "./UserFunc.js";
4
- export type CastConfig = import("./Cast.js").CastConfig;
5
- export type ConfigurableCast<TStrict, TPermissive> = import("./Cast.js").ConfigurableCast<TStrict, TPermissive>;
6
- export type CastLike<TStrict, TPermissive> = import("./Cast.js").CastLike<TStrict, TPermissive>;
7
- export type PermissiveType<C extends CastLike<any, any>> = import("./PermissiveType.js").PermissiveType<C>;
8
- export type StrictType<C extends CastLike<any, any>> = import("./StrictType.js").StrictType<C>;
9
- import { Cast } from "./Cast.js";
1
+ export { makeUserFunc } from "./UserFunc.js";
2
+ export { makeCast, configureCast } from "./Cast.js";
10
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cast/index.js"],"names":[],"mappings":";;;yBAMa,OAAO,WAAW,EAAE,UAAU;6BAI9B,OAAO,EACP,WAAW,IACX,OAAO,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC;qBAI1D,OAAO,EACP,WAAW,IACX,OAAO,WAAW,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;2BAI7B,CAAC,SAArB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAE,IACpB,OAAO,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC;uBAI1B,CAAC,SAArB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAE,IACpB,OAAO,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC;qBA5B/B,WAAW"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cast/index.js"],"names":[],"mappings":""}
@@ -1,86 +1,11 @@
1
1
  /**
2
- * @typedef {import("./TypeCheckedModule.js").TypeCheckedModule} TypeCheckedModule
3
- * @typedef {import("./TypeCheckedModule.js").TypeCheckedUserFunc} TypeCheckedUserFunc
4
- * @typedef {import("./TypeCheckedValidator.js").TypeCheckedValidator} TypeCheckedValidator
5
- * @typedef {import("./TypeSchema.js").TypeSchema} TypeSchema
2
+ * @import { TypeSchema } from "@helios-lang/type-utils"
3
+ * @import { LoadedScriptsWriter, TypeCheckedModule, TypeCheckedUserFunc, TypeCheckedValidator } from "../index.js"
6
4
  */
7
- export class LoadedScriptsWriter {
8
- /**
9
- * Constructs a LoadedScriptsWriter instance and initializes it be writing the header
10
- * @returns {LoadedScriptsWriter}
11
- */
12
- static "new"(): LoadedScriptsWriter;
13
- definition: StringWriter;
14
- declaration: StringWriter;
15
- combined: StringWriter;
16
- /**
17
- * @param {{[name: string]: TypeCheckedModule}} ms
18
- * @returns {LoadedScriptsWriter}
19
- */
20
- writeModules(ms: {
21
- [name: string]: TypeCheckedModule;
22
- }): LoadedScriptsWriter;
23
- /**
24
- * @param {{[name: string]: TypeCheckedValidator}} validators
25
- * @returns {LoadedScriptsWriter}
26
- */
27
- writeValidators(validators: {
28
- [name: string]: TypeCheckedValidator;
29
- }): LoadedScriptsWriter;
30
- /**
31
- * @returns {[string, string, string]}
32
- */
33
- finalize(): [string, string, string];
34
- /**
35
- * @private
36
- * @param {string} def
37
- * @param {string} decl
38
- * @returns {LoadedScriptsWriter}
39
- */
40
- private write;
41
- /**
42
- * @param {string} path
43
- * @param {string} typeName
44
- * @param {string[]} typeParams
45
- * @returns {LoadedScriptsWriter}
46
- */
47
- writeImportType(path: string, typeName: string, typeParams?: string[]): LoadedScriptsWriter;
48
- /**
49
- * @param {string} path
50
- * @param {string[]} objectNames
51
- * @returns {LoadedScriptsWriter}
52
- */
53
- writeImport(path: string, ...objectNames: string[]): LoadedScriptsWriter;
54
- /**
55
- * @private
56
- */
57
- private writeHeaders;
58
- /**
59
- * @param {Record<string, TypeSchema>} types
60
- */
61
- writeTypes(types: Record<string, TypeSchema>): void;
62
- /**
63
- * @param {Record<string, TypeCheckedUserFunc>} functions
64
- */
65
- writeFunctions(functions: Record<string, TypeCheckedUserFunc>): void;
66
- /**
67
- * @private
68
- * @param {TypeCheckedModule} m
69
- */
70
- private writeModule;
71
- /**
72
- * @private
73
- * @param {TypeCheckedValidator} v
74
- */
75
- private writeValidator;
76
- /**
77
- * @param {Record<string, TypeCheckedValidator>} validators
78
- */
79
- writeValidatorIndices(validators: Record<string, TypeCheckedValidator>): void;
80
- }
81
- export type TypeCheckedModule = import("./TypeCheckedModule.js").TypeCheckedModule;
82
- export type TypeCheckedUserFunc = import("./TypeCheckedModule.js").TypeCheckedUserFunc;
83
- export type TypeCheckedValidator = import("./TypeCheckedValidator.js").TypeCheckedValidator;
84
- export type TypeSchema = import("./TypeSchema.js").TypeSchema;
85
- import { StringWriter } from "@helios-lang/codec-utils";
5
+ /**
6
+ * Constructs a LoadedScriptsWriter instance and initializes it be writing the header
7
+ * @returns {LoadedScriptsWriter}
8
+ */
9
+ export function makeLoadedScriptsWriter(): LoadedScriptsWriter;
10
+ import type { LoadedScriptsWriter } from "../index.js";
86
11
  //# sourceMappingURL=LoadedScriptsWriter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadedScriptsWriter.d.ts","sourceRoot":"","sources":["../../src/codegen/LoadedScriptsWriter.js"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH;IAUI;;;OAGG;IACH,gBAFa,mBAAmB,CAQ/B;IAfG,yBAAoC;IACpC,0BAAqC;IACrC,uBAAkC;IAetC;;;OAGG;IACH,iBAHW;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAA;KAAC,GACjC,mBAAmB,CAgC/B;IAED;;;OAGG;IACH,4BAHW;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAC,GACpC,mBAAmB,CAoC/B;IAED;;OAEG;IACH,YAFa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQpC;IAED;;;;;OAKG;IACH,cAKC;IAED;;;;;OAKG;IACH,sBALW,MAAM,YACN,MAAM,eACN,MAAM,EAAE,GACN,mBAAmB,CAmB/B;IAED;;;;OAIG;IACH,kBAJW,MAAM,kBACN,MAAM,EAAE,GACN,mBAAmB,CAQ/B;IAED;;OAEG;IACH,qBAmCC;IAED;;OAEG;IACH,kBAFW,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,QAyBpC;IAED;;OAEG;IACH,0BAFW,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,QA2B7C;IAED;;;OAGG;IACH,oBA6BC;IAED;;;OAGG;IACH,uBAqDC;IAED;;OAEG;IACH,kCAFW,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAuB9C;CACJ;gCA/XY,OAAO,wBAAwB,EAAE,iBAAiB;kCAClD,OAAO,wBAAwB,EAAE,mBAAmB;mCACpD,OAAO,2BAA2B,EAAE,oBAAoB;yBACxD,OAAO,iBAAiB,EAAE,UAAU;6BARpB,0BAA0B"}
1
+ {"version":3,"file":"LoadedScriptsWriter.d.ts","sourceRoot":"","sources":["../../src/codegen/LoadedScriptsWriter.js"],"names":[],"mappings":"AAIA;;;GAGG;AAEH;;;GAGG;AACH,2CAFa,mBAAmB,CAI/B;yCATqG,aAAa"}
@@ -1,9 +1,9 @@
1
1
  export type TypeCheckedModule = import("./TypeCheckedModule.js").TypeCheckedModule;
2
- export type TypeSchema = import("./TypeSchema.js").TypeSchema;
3
2
  export type TypeCheckedValidator = TypeCheckedModule & {
4
3
  hashDependencies: string[];
5
4
  currentScriptIndex?: number;
6
5
  Redeemer: TypeSchema;
7
6
  Datum?: TypeSchema;
8
7
  };
8
+ import type { TypeSchema } from "@helios-lang/type-utils";
9
9
  //# sourceMappingURL=TypeCheckedValidator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypeCheckedValidator.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeCheckedValidator.js"],"names":[],"mappings":"gCAGa,OAAO,wBAAwB,EAAE,iBAAiB;yBAClD,OAAO,iBAAiB,EAAE,UAAU;mCAIpC,iBAAiB,GAAG;IAC5B,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,EAAE,UAAU,CAAA;IACpB,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB"}
1
+ {"version":3,"file":"TypeCheckedValidator.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeCheckedValidator.js"],"names":[],"mappings":"gCAIa,OAAO,wBAAwB,EAAE,iBAAiB;mCAIlD,iBAAiB,GAAG;IAC5B,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,EAAE,UAAU,CAAA;IACpB,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;gCAV2B,yBAAyB"}
@@ -4,5 +4,5 @@
4
4
  * @returns {[string, string]} - the first entry is the strict canonical type, the second is the permissive type
5
5
  */
6
6
  export function genTypes(schema: TypeSchema): [string, string];
7
- export type TypeSchema = import("@helios-lang/type-utils").TypeSchema;
7
+ import type { TypeSchema } from "@helios-lang/type-utils";
8
8
  //# sourceMappingURL=TypeSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypeSchema.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeSchema.js"],"names":[],"mappings":"AAMA;;;;GAIG;AAGH,iCALW,UAAU,GACR,CAAC,MAAM,EAAE,MAAM,CAAC,CAsK5B;yBA9KY,OAAO,yBAAyB,EAAE,UAAU"}
1
+ {"version":3,"file":"TypeSchema.d.ts","sourceRoot":"","sources":["../../src/codegen/TypeSchema.js"],"names":[],"mappings":"AAMA;;;;GAIG;AAGH,iCALW,UAAU,GACR,CAAC,MAAM,EAAE,MAAM,CAAC,CA8J5B;gCAtK8B,yBAAyB"}
@@ -1,8 +1,2 @@
1
- export { LoadedScriptsWriter } from "./LoadedScriptsWriter.js";
2
- export type LoadedModule = import("./LoadedModule.js").LoadedModule;
3
- export type LoadedValidator = import("./LoadedValidator.js").LoadedValidator;
4
- export type TypeCheckedModule = import("./TypeCheckedModule.js").TypeCheckedModule;
5
- export type TypeCheckedValidator = import("./TypeCheckedValidator.js").TypeCheckedValidator;
6
- export type TypeSchema = import("./TypeSchema.js").TypeSchema;
7
- export type ExtractDependencies<V extends LoadedValidator> = import("./LoadedValidator.js").ExtractDependencies<V>;
1
+ export { makeLoadedScriptsWriter } from "./LoadedScriptsWriter.js";
8
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.js"],"names":[],"mappings":";2BAGa,OAAO,mBAAmB,EAAE,YAAY;8BACxC,OAAO,sBAAsB,EAAE,eAAe;gCAC9C,OAAO,wBAAwB,EAAE,iBAAiB;mCAClD,OAAO,2BAA2B,EAAE,oBAAoB;yBACxD,OAAO,iBAAiB,EAAE,UAAU;gCAIlB,CAAC,SAAlB,eAAgB,IACjB,OAAO,sBAAsB,EAAE,mBAAmB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.js"],"names":[],"mappings":""}
@@ -1,75 +1,5 @@
1
1
  /**
2
- * @typedef {import("@helios-lang/uplc").PlutusVersion} PlutusVersion
3
- * @typedef {import("@helios-lang/uplc").UplcData} UplcData
4
- * @typedef {import("@helios-lang/uplc").UplcSourceMapJsonSafe} UplcSourceMapJsonSafe
5
- * @typedef {import("../codegen/index.js").TypeSchema} InternalTypeDetails
6
- * @typedef {import("../codegen/index.js").TypeCheckedModule} TypeCheckedModule
7
- * @typedef {import("../codegen/index.js").TypeCheckedValidator} TypeCheckedValidator
8
- */
9
- /**
10
- * @typedef {any} ScriptHashType
11
- */
12
- /**
13
- * if `debug` is true, the ir is included in the user functions where possible
14
- * @typedef {{
15
- * allValidatorHashTypes: Record<string, ScriptHashType>
16
- * allValidatorIndices?: Record<string, number>
17
- * hashDependencies: Record<string, string>
18
- * dependsOnOwnHash?: boolean
19
- * ownHash?: string
20
- * parameters?: Record<string, UplcData>
21
- * isTestnet: boolean
22
- * optimize: boolean
23
- * debug?: boolean
24
- * excludeUserFuncs?: Set<string>
25
- * onCompileUserFunc?: (props: {
26
- * name: string
27
- * cborHex: string
28
- * plutusVersion: PlutusVersion
29
- * ir?: string
30
- * sourceMap?: UplcSourceMapJsonSafe
31
- * alt?: {
32
- * cborHex: string
33
- * ir?: string
34
- * sourceMap?: UplcSourceMapJsonSafe
35
- * }
36
- * }) => void
37
- * }} CompileOptions
38
- */
39
- /**
40
- * @typedef {{
41
- * cborHex: string
42
- * plutusVersion: PlutusVersion
43
- * ir?: string
44
- * sourceMap?: import("@helios-lang/uplc").UplcSourceMapJsonSafe
45
- * }} CompileOutput
46
- */
47
- /**
48
- * @typedef {{
49
- * modules: {[name: string]: TypeCheckedModule}
50
- * validators: {[name: string]: TypeCheckedValidator}
51
- * }} TypeCheckOutput
52
- */
53
- /**
54
- * @typedef {{
55
- * name: string
56
- * purpose: string
57
- * sourceCode: string
58
- * }} SourceDetails
59
- */
60
- /**
61
- * @typedef {{
62
- * version: string
63
- * getScriptHashType: (purpose: string) => ScriptHashType
64
- * typeCheck: (validators: string[], modules: string[]) => ({
65
- * modules: {[name: string]: TypeCheckedModule},
66
- * validators: {[name: string]: TypeCheckedValidator}
67
- * })
68
- * compile: (main: string, modules: string[], options: CompileOptions) => CompileOutput
69
- * }} CompilerLib
70
- */
71
- /**
72
- * @typedef {Record<string, string[]>} DagDependencies
2
+ * @import { CompilerLib, ScriptHashType } from "../index.js"
73
3
  */
74
4
  /**
75
5
  * @param {CompilerLib} lib
@@ -79,71 +9,6 @@
79
9
  export function getValidatorTypes(lib: CompilerLib, validators: string[]): {
80
10
  [name: string]: ScriptHashType;
81
11
  };
82
- export type PlutusVersion = import("@helios-lang/uplc").PlutusVersion;
83
- export type UplcData = import("@helios-lang/uplc").UplcData;
84
- export type UplcSourceMapJsonSafe = import("@helios-lang/uplc").UplcSourceMapJsonSafe;
85
- export type InternalTypeDetails = import("../codegen/index.js").TypeSchema;
86
- export type TypeCheckedModule = import("../codegen/index.js").TypeCheckedModule;
87
- export type TypeCheckedValidator = import("../codegen/index.js").TypeCheckedValidator;
88
- export type ScriptHashType = any;
89
- /**
90
- * if `debug` is true, the ir is included in the user functions where possible
91
- */
92
- export type CompileOptions = {
93
- allValidatorHashTypes: Record<string, ScriptHashType>;
94
- allValidatorIndices?: Record<string, number>;
95
- hashDependencies: Record<string, string>;
96
- dependsOnOwnHash?: boolean;
97
- ownHash?: string;
98
- parameters?: Record<string, UplcData>;
99
- isTestnet: boolean;
100
- optimize: boolean;
101
- debug?: boolean;
102
- excludeUserFuncs?: Set<string>;
103
- onCompileUserFunc?: (props: {
104
- name: string;
105
- cborHex: string;
106
- plutusVersion: PlutusVersion;
107
- ir?: string;
108
- sourceMap?: UplcSourceMapJsonSafe;
109
- alt?: {
110
- cborHex: string;
111
- ir?: string;
112
- sourceMap?: UplcSourceMapJsonSafe;
113
- };
114
- }) => void;
115
- };
116
- export type CompileOutput = {
117
- cborHex: string;
118
- plutusVersion: PlutusVersion;
119
- ir?: string;
120
- sourceMap?: import("@helios-lang/uplc").UplcSourceMapJsonSafe;
121
- };
122
- export type TypeCheckOutput = {
123
- modules: {
124
- [name: string]: TypeCheckedModule;
125
- };
126
- validators: {
127
- [name: string]: TypeCheckedValidator;
128
- };
129
- };
130
- export type SourceDetails = {
131
- name: string;
132
- purpose: string;
133
- sourceCode: string;
134
- };
135
- export type CompilerLib = {
136
- version: string;
137
- getScriptHashType: (purpose: string) => ScriptHashType;
138
- typeCheck: (validators: string[], modules: string[]) => ({
139
- modules: {
140
- [name: string]: TypeCheckedModule;
141
- };
142
- validators: {
143
- [name: string]: TypeCheckedValidator;
144
- };
145
- });
146
- compile: (main: string, modules: string[], options: CompileOptions) => CompileOutput;
147
- };
148
- export type DagDependencies = Record<string, string[]>;
12
+ import type { CompilerLib } from "../index.js";
13
+ import type { ScriptHashType } from "../index.js";
149
14
  //# sourceMappingURL=CompilerLib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompilerLib.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompilerLib.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib.js"],"names":[],"mappings":"AAEA;;GAEG;AAEH;;;;GAIG;AACH,uCAJW,WAAW,cACX,MAAM,EAAE,GACN;IAAC,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;CAAC,CAS5C;iCAf+C,aAAa;oCAAb,aAAa"}
@@ -1,15 +1,7 @@
1
1
  /**
2
- * @typedef {import("@helios-lang/uplc").UplcData} UplcData
3
- * @typedef {import("../codegen/index.js").TypeCheckedModule} TypeCheckedModule
4
- * @typedef {import("../codegen/index.js").TypeCheckedValidator} TypeCheckedValidator
5
- * @typedef {import("../codegen/index.js").TypeSchema} TypeSchema
6
- * @typedef {import("./CompilerLib.js").CompileOptions} CompileOptions
7
- * @typedef {import("./CompilerLib.js").CompileOutput} CompileOutput
8
- * @typedef {import("./CompilerLib.js").CompilerLib} CompilerLib
9
- * @typedef {import("./CompilerLib.js").DagDependencies} DagDependencies
10
- * @typedef {import("./CompilerLib.js").ScriptHashType} ScriptHashType
11
- * @typedef {import("./CompilerLib.js").SourceDetails} SourceDetails
12
- * @typedef {import("./CompilerLib.js").TypeCheckOutput} TypeCheckOutput
2
+ * @import { TypeSchema } from "@helios-lang/type-utils"
3
+ * @import { UplcData } from "@helios-lang/uplc"
4
+ * @import { CompileOptions, CompileOutput, CompilerLib, DagDependencies, ScriptHashType, SourceDetails, TypeCheckOutput, TypeCheckedModule, TypeCheckedValidator } from "../index.js"
13
5
  */
14
6
  /**
15
7
  * @typedef {{
@@ -112,114 +104,10 @@
112
104
  * }} UserTypes
113
105
  */
114
106
  /**
115
- * @implements {CompilerLib}
107
+ * @param {any} lib
108
+ * @returns {CompilerLib}
116
109
  */
117
- export class CompilerLib_v0_16 implements CompilerLib {
118
- /**
119
- * @param {any} lib
120
- */
121
- constructor(lib: any);
122
- lib: any;
123
- /**
124
- * @private
125
- */
126
- private applyPatches;
127
- /**
128
- * @type {string}
129
- */
130
- get version(): string;
131
- /**
132
- * @param {string} purpose
133
- * @returns {ScriptHashType}
134
- */
135
- getScriptHashType(purpose: string): ScriptHashType;
136
- /**
137
- * @param {string} main
138
- * @param {string[]} modules
139
- * @param {CompileOptions} options
140
- * @returns {CompileOutput}
141
- */
142
- compile(main: string, modules: string[], options: CompileOptions): CompileOutput;
143
- /**
144
- * @param {string[]} validators
145
- * @param {string[]} modules
146
- * @returns {TypeCheckOutput}
147
- */
148
- typeCheck(validators: string[], modules: string[]): TypeCheckOutput;
149
- /**
150
- * Generate additional IR definitions
151
- * * dependency on own precalculated hash (eg. unoptimized program should use hash of optimized program)
152
- * * dependency on own hash through methods defined on the ScriptContext
153
- * * dependency on hashes of other validators
154
- * @private
155
- * @param {string} name - name of the validator being compiled
156
- * @param {string} purpose - purpose the validator being compiled
157
- * @param {number} nPosParams
158
- * @param {CompileOptions} options
159
- * @returns {Map<string, IR>}
160
- */
161
- private genExtraIRDefs;
162
- /**
163
- * @private
164
- * @param {string[]} validators
165
- * @param {string[]} modules
166
- * @param {{[name: string]: ScriptHashType}} validatorTypes
167
- * @returns {Program[]}
168
- */
169
- private createPrograms;
170
- /**
171
- * @private
172
- * @param {Program} program
173
- * @param {{[name: string]: ScriptHashType}} validatorTypes
174
- * @returns {IR}
175
- */
176
- private toTestIR;
177
- /**
178
- * @private
179
- * @param {Program[]} validators
180
- * @param {{[name: string]: ScriptHashType}} validatorTypes
181
- * @returns {DagDependencies}
182
- */
183
- private buildDagDependencies;
184
- /**
185
- * @private
186
- * @param {TypeSchema16} it
187
- * @returns {TypeSchema}
188
- */
189
- private convertInternalType;
190
- /**
191
- * Tries to convert a compiler type into TypeSchema
192
- * TODO: make sure it works for all structs and enums
193
- * @private
194
- * @param {DataType} dt
195
- * @returns {TypeSchema}
196
- */
197
- private getInternalTypeDetails;
198
- /**
199
- * @private
200
- * @param {Program} program
201
- * @param {{[name: string]: ScriptHashType}} validatorTypes
202
- * @returns {Record<string, Record<string, DataType>>}}
203
- */
204
- private getProgramTypes;
205
- /**
206
- * @private
207
- * @param {any} program
208
- * @param {Option<Record<string, UplcData>>} parameters
209
- */
210
- private setParameters;
211
- }
212
- export type UplcData = import("@helios-lang/uplc").UplcData;
213
- export type TypeCheckedModule = import("../codegen/index.js").TypeCheckedModule;
214
- export type TypeCheckedValidator = import("../codegen/index.js").TypeCheckedValidator;
215
- export type TypeSchema = import("../codegen/index.js").TypeSchema;
216
- export type CompileOptions = import("./CompilerLib.js").CompileOptions;
217
- export type CompileOutput = import("./CompilerLib.js").CompileOutput;
218
- export type CompilerLib = import("./CompilerLib.js").CompilerLib;
219
- export type DagDependencies = import("./CompilerLib.js").DagDependencies;
220
- export type ScriptHashType = import("./CompilerLib.js").ScriptHashType;
221
- export type SourceDetails = import("./CompilerLib.js").SourceDetails;
222
- export type TypeCheckOutput = import("./CompilerLib.js").TypeCheckOutput;
110
+ export function makeCompilerLib_v0_16(lib: any): CompilerLib;
223
111
  export type IR = {
224
112
  includes: (m: string) => boolean;
225
113
  };
@@ -296,4 +184,6 @@ export type TypeDetails = {
296
184
  internalType: TypeSchema16;
297
185
  };
298
186
  export type UserTypes = {};
187
+ import type { CompilerLib } from "../index.js";
188
+ import type { ScriptHashType } from "../index.js";
299
189
  //# sourceMappingURL=CompilerLib_v0_16.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompilerLib_v0_16.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib_v0_16.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompilerLib_v0_16.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib_v0_16.js"],"names":[],"mappings":"AAKA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;;;GAKG;AAEH;;;;;;GAMG;AACH;;;;;;;;;;;;GAYG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AAEH;;;GAGG;AACH,2CAHW,GAAG,GACD,WAAW,CAIvB;iBAtHY;IACR,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAA;CACjC;wBAIS;IACR,IAAI,EAAE,SAAS,CAAA;CAChB;mBAIS;IACR,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;wBAIS;IACR,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,IAAI,CAAA;CACX;qBAIS;IACR,IAAI,EAAE,SAAS,CAAA;IACf,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IAC/C,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB;sBAGS;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC3F,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,CAAA;IAC1C,KAAK,EAAE,SAAS,CAAA;IAChB,mBAAmB,EAAE,MAAM,EAAE,CAAA;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,QAAQ,EAAE,CAAA;IACxB,WAAW,QAAE;IACb,SAAS,CAAC,cAAc,EAAE;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;KAAC,GAAG,QAAQ,CAAA;CACtE;uBAIS;IACR,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,KAAK,CAAA;CACvC;yBAIS;IACR,UAAU,CAAC,EAAE,QAAQ,CAAA;CACtB;oBAIS;IACR,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,OAAC;CAC9D;uBAIS;IACR,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;2BAIS;IACR,IAAI,EAAG,MAAM,CAAA;CACd,GAAG;IACF,IAAI,EAAM,MAAM,CAAA;IAChB,QAAQ,EAAE,YAAY,CAAA;CACvB,GAAG;IACF,IAAI,EAAO,KAAK,CAAA;IAChB,OAAO,EAAI,YAAY,CAAA;IACvB,SAAS,EAAE,YAAY,CAAA;CACxB,GAAG;IACF,IAAI,EAAM,QAAQ,CAAA;IAClB,QAAQ,EAAE,YAAY,CAAA;CACvB,GAAG;IACF,IAAI,EAAQ,QAAQ,CAAA;IACpB,UAAU,EAAE,iBAAiB,EAAE,CAAA;CAChC,GAAG;IACF,IAAI,EAAU,MAAM,CAAA;IACpB,YAAY,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,iBAAiB,EAAE,CAAA;KAAC,EAAE,CAAA;CAChE;gCAIS;IACR,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,YAAY;0BAIN;IACR,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;CAC3B;wBAIS,EACT;iCAjHsK,aAAa;oCAAb,aAAa"}