@efffrida/il2cpp-bridge 0.0.55 → 0.0.56

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/README.md CHANGED
@@ -1,3 +1,40 @@
1
1
  # @efffrida/il2cpp-bridge
2
2
 
3
- Effect integration for <https://github.com/vfsfitvnm/frida-il2cpp-bridge>
3
+ Effect integration for
4
+ [frida-il2cpp-bridge](https://github.com/vfsfitvnm/frida-il2cpp-bridge), for use
5
+ inside frida agents that instrument Unity il2cpp applications.
6
+
7
+ - `FridaIl2cppBridge.il2cppPerformEffect` runs an effect inside
8
+ `Il2Cpp.perform`, so the caller thread is attached to the il2cpp domain while
9
+ it executes.
10
+ - `Assembly` and `Class` look up assemblies, classes, fields, methods, and
11
+ nested classes as effects. The plain variants (`assembly`, `class`, `field`,
12
+ ...) treat a missing member as a defect, the `try*` variants fail with a
13
+ `NoSuchElementError` instead, and the `*Cached` variants memoize lookups in a
14
+ `Cache` sized by the `CacheCapacity` reference (100 by default). Cache keys
15
+ compare il2cpp objects by their native handle.
16
+ - `Equivalence` compares images, classes, fields, and methods by their native
17
+ handle.
18
+ - `Extensions` provides `Dictionary` and `List` wrappers over
19
+ `System.Collections.Generic.Dictionary` and `System.Collections.Generic.List`
20
+ objects.
21
+
22
+ ### Example usage
23
+
24
+ ```typescript
25
+ import "@efffrida/polyfills";
26
+
27
+ import * as Effect from "effect/Effect";
28
+
29
+ import { Assembly, Class, Extensions, FridaIl2cppBridge } from "@efffrida/il2cpp-bridge";
30
+ import { FridaRuntime } from "@efffrida/platform";
31
+
32
+ Effect.gen(function* () {
33
+ const csharp = yield* Assembly.assembly("Assembly-CSharp");
34
+ const player = yield* Class.tryClass(csharp.image, "Player");
35
+ const allPlayers = yield* Class.tryField<Il2Cpp.Object>(player, "s_AllPlayers");
36
+
37
+ const players = Extensions.List.lift(allPlayers.value);
38
+ yield* Effect.logInfo(`There are ${players.length} players`);
39
+ }).pipe(FridaIl2cppBridge.il2cppPerformEffect, FridaRuntime.runMain);
40
+ ```
@@ -1 +1 @@
1
- {"version":3,"file":"Assembly.d.ts","sourceRoot":"","sources":["../src/Assembly.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,qBAAqB,CAAC;AAE7B,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAGnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAChC,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,WAAW,SAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAIxD,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,QAAQ,EAAE,KAAK,EAAE,KAAK,CAGvE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,WAAW,EAAE,KAAK,EAAE,KAAK,CAG7E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAGnE,CAAC"}
1
+ {"version":3,"file":"Assembly.d.ts","sourceRoot":"","sources":["../src/Assembly.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,qBAAqB,CAAC;AAE7B,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAGnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAChC,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,WAAW,SAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAGpG,CAAC;AAEN;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,QAAQ,EAAE,KAAK,EAAE,KAAK,CAGvE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,WAAW,EAAE,KAAK,EAAE,KAAK,CAG7E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAGnE,CAAC"}
package/dist/Assembly.js CHANGED
@@ -7,6 +7,7 @@ import * as Cache from "effect/Cache";
7
7
  import * as Cause from "effect/Cause";
8
8
  import * as Context from "effect/Context";
9
9
  import * as Effect from "effect/Effect";
10
+ import * as Option from "effect/Option";
10
11
  /**
11
12
  * @since 1.0.0
12
13
  * @category Cache
@@ -23,10 +24,7 @@ export const assembly = name => Effect.sync(() => Il2Cpp.domain.assembly(name));
23
24
  * @since 1.0.0
24
25
  * @category Assembly
25
26
  */
26
- export const tryAssembly = name => Effect.try({
27
- try: () => Il2Cpp.domain.tryAssembly(name),
28
- catch: () => new Cause.NoSuchElementError(`No assembly with name ${name}`)
29
- }).pipe(Effect.flatMap(Effect.fromNullishOr));
27
+ export const tryAssembly = name => Effect.sync(() => Option.fromNullishOr(Il2Cpp.domain.tryAssembly(name))).pipe(Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No assembly with name ${name}`))));
30
28
  /**
31
29
  * @since 1.0.0
32
30
  * @category Assembly
@@ -1 +1 @@
1
- {"version":3,"file":"Assembly.js","names":[],"sources":["../src/Assembly.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA,OAAO,qBAAqB;AAI5B,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe;AAEvC;;;;AAIA,OAAO,MAAM,aAAa,gBAA8B,OAAO,CAAC,SAAS,CACrE,uCAAuC,EACvC;EAAE,YAAY,EAAE,MAAM;AAAG,CAAE,CAC9B;AAED;;;;AAIA,OAAO,MAAM,QAAQ,GAAI,IAAY,IACjC,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEnD;;;;AAIA,OAAO,MAAM,WAAW,GAAI,IAAY,IACpC,MAAM,CAAC,GAAG,CAAC;EACP,GAAG,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;EAC1C,KAAK,EAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,yBAAyB,IAAI,EAAE;CAC5E,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEjD;;;;AAIA,OAAO,MAAM,cAAc,gBAAiD,aAAa,CAAC,IAAI,cAC1F,MAAM,CAAC,OAAO,CAAE,QAAQ,IAAK,KAAK,CAAC,IAAI,CAAC;EAAE,QAAQ;EAAE,MAAM,EAAE;AAAQ,CAAE,CAAC,CAAC,eACxE,MAAM,CAAC,GAAG,CAAE,KAAK,IAAM,IAAY,IAAK,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAClE;AAED;;;;AAIA,OAAO,MAAM,iBAAiB,gBAAoD,aAAa,CAAC,IAAI,cAChG,MAAM,CAAC,OAAO,CAAE,QAAQ,IAAK,KAAK,CAAC,IAAI,CAAC;EAAE,QAAQ;EAAE,MAAM,EAAE;AAAW,CAAE,CAAC,CAAC,eAC3E,MAAM,CAAC,GAAG,CAAE,KAAK,IAAM,IAAY,IAAK,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAClE;AAED;;;;AAIA,OAAO,MAAM,MAAM,gBAAqD,MAAM,CAAC,cAAc,cACzF,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EACxC,MAAM,IAAK,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CACjD","ignoreList":[]}
1
+ {"version":3,"file":"Assembly.js","names":[],"sources":["../src/Assembly.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA,OAAO,qBAAqB;AAI5B,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe;AAEvC;;;;AAIA,OAAO,MAAM,aAAa,gBAA8B,OAAO,CAAC,SAAS,CACrE,uCAAuC,EACvC;EAAE,YAAY,EAAE,MAAM;AAAG,CAAE,CAC9B;AAED;;;;AAIA,OAAO,MAAM,QAAQ,GAAI,IAAY,IACjC,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEnD;;;;AAIA,OAAO,MAAM,WAAW,GAAI,IAAY,IACpC,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACzE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC,CAAC,CACzG;AAEL;;;;AAIA,OAAO,MAAM,cAAc,gBAAiD,aAAa,CAAC,IAAI,cAC1F,MAAM,CAAC,OAAO,CAAE,QAAQ,IAAK,KAAK,CAAC,IAAI,CAAC;EAAE,QAAQ;EAAE,MAAM,EAAE;AAAQ,CAAE,CAAC,CAAC,eACxE,MAAM,CAAC,GAAG,CAAE,KAAK,IAAM,IAAY,IAAK,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAClE;AAED;;;;AAIA,OAAO,MAAM,iBAAiB,gBAAoD,aAAa,CAAC,IAAI,cAChG,MAAM,CAAC,OAAO,CAAE,QAAQ,IAAK,KAAK,CAAC,IAAI,CAAC;EAAE,QAAQ;EAAE,MAAM,EAAE;AAAW,CAAE,CAAC,CAAC,eAC3E,MAAM,CAAC,GAAG,CAAE,KAAK,IAAM,IAAY,IAAK,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAClE;AAED;;;;AAIA,OAAO,MAAM,MAAM,gBAAqD,MAAM,CAAC,cAAc,cACzF,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EACxC,MAAM,IAAK,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CACjD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Class.d.ts","sourceRoot":"","sources":["../src/Class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Class.d.ts","sourceRoot":"","sources":["../src/Class.ts"],"names":[],"mappings":"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"}
package/dist/Class.js CHANGED
@@ -5,11 +5,11 @@
5
5
  import "frida-il2cpp-bridge";
6
6
  import * as Cache from "effect/Cache";
7
7
  import * as Cause from "effect/Cause";
8
- import * as Data from "effect/Data";
9
8
  import * as Effect from "effect/Effect";
10
9
  import * as Equal from "effect/Equal";
11
10
  import * as Function from "effect/Function";
12
11
  import * as Hash from "effect/Hash";
12
+ import * as Option from "effect/Option";
13
13
  import { CacheCapacity } from "./Assembly.js";
14
14
  export {
15
15
  /**
@@ -17,8 +17,23 @@ export {
17
17
  * @category Cache
18
18
  */
19
19
  CacheCapacity } from "./Assembly.js";
20
- /** @internal */
21
- class ImageNameKey extends Data.Class {
20
+ /**
21
+ * Cache keys identify il2cpp objects by their native handle rather than by
22
+ * reference, since frida-il2cpp-bridge can hand out distinct wrapper instances
23
+ * for the same underlying image/class.
24
+ *
25
+ * @internal
26
+ */
27
+ class ImageNameKey {
28
+ image;
29
+ name;
30
+ constructor({
31
+ image,
32
+ name
33
+ }) {
34
+ this.image = image;
35
+ this.name = name;
36
+ }
22
37
  [Hash.symbol]() {
23
38
  return Hash.string(`${this.image.handle}:${this.name}`);
24
39
  }
@@ -27,7 +42,16 @@ class ImageNameKey extends Data.Class {
27
42
  }
28
43
  }
29
44
  /** @internal */
30
- class ClassNameKey extends Data.Class {
45
+ class ClassNameKey {
46
+ klass;
47
+ name;
48
+ constructor({
49
+ klass,
50
+ name
51
+ }) {
52
+ this.klass = klass;
53
+ this.name = name;
54
+ }
31
55
  [Hash.symbol]() {
32
56
  return Hash.string(`${this.klass.handle}:${this.name}`);
33
57
  }
@@ -36,7 +60,19 @@ class ClassNameKey extends Data.Class {
36
60
  }
37
61
  }
38
62
  /** @internal */
39
- class MethodKey extends Data.Class {
63
+ class MethodKey {
64
+ klass;
65
+ name;
66
+ parameterCount;
67
+ constructor({
68
+ klass,
69
+ name,
70
+ parameterCount
71
+ }) {
72
+ this.klass = klass;
73
+ this.name = name;
74
+ this.parameterCount = parameterCount;
75
+ }
40
76
  [Hash.symbol]() {
41
77
  return Hash.string(`${this.klass.handle}:${this.name}:${this.parameterCount}`);
42
78
  }
@@ -59,10 +95,7 @@ class_ as class };
59
95
  * @since 1.0.0
60
96
  * @category Class
61
97
  */
62
- export const tryClass = /*#__PURE__*/Function.dual(2, (image, name) => Effect.try({
63
- try: () => image.tryClass(name),
64
- catch: () => new Cause.NoSuchElementError(`No class with name ${name}`)
65
- }).pipe(Effect.flatMap(Effect.fromNullishOr)));
98
+ export const tryClass = /*#__PURE__*/Function.dual(2, (image, name) => Effect.sync(() => Option.fromNullishOr(image.tryClass(name))).pipe(Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No class with name ${name}`)))));
66
99
  /**
67
100
  * @since 1.0.0
68
101
  * @category Class
@@ -99,10 +132,7 @@ export const field = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.sync(
99
132
  * @since 1.0.0
100
133
  * @category Class
101
134
  */
102
- export const tryField = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.try({
103
- try: () => klass.field(name),
104
- catch: () => new Cause.NoSuchElementError(`No field with name ${name}`)
105
- }).pipe(Effect.flatMap(Effect.fromNullishOr)));
135
+ export const tryField = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.sync(() => Option.fromNullishOr(klass.tryField(name))).pipe(Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No field with name ${name}`)))));
106
136
  /**
107
137
  * @since 1.0.0
108
138
  * @category Class
@@ -139,10 +169,7 @@ export const method = /*#__PURE__*/Function.dual(_arguments => typeof _arguments
139
169
  * @since 1.0.0
140
170
  * @category Class
141
171
  */
142
- export const tryMethod = /*#__PURE__*/Function.dual(_arguments => typeof _arguments[1] === "string", (klass, name, parameterCount) => Effect.try({
143
- try: () => klass.tryMethod(name, parameterCount),
144
- catch: () => new Cause.NoSuchElementError(`No method with name ${name}`)
145
- }).pipe(Effect.flatMap(Effect.fromNullishOr)));
172
+ export const tryMethod = /*#__PURE__*/Function.dual(_arguments => typeof _arguments[1] === "string", (klass, name, parameterCount) => Effect.sync(() => Option.fromNullishOr(klass.tryMethod(name, parameterCount))).pipe(Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(parameterCount === undefined ? `No method with name ${name}` : `No method with name ${name} and ${parameterCount} parameters`)))));
146
173
  /**
147
174
  * @since 1.0.0
148
175
  * @category Class
@@ -176,10 +203,7 @@ export const nested = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.sync
176
203
  * @since 1.0.0
177
204
  * @category Class
178
205
  */
179
- export const tryNested = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.try({
180
- try: () => klass.tryNested(name),
181
- catch: () => new Cause.NoSuchElementError(`No nested class with name ${name}`)
182
- }).pipe(Effect.flatMap(Effect.fromNullishOr)));
206
+ export const tryNested = /*#__PURE__*/Function.dual(2, (klass, name) => Effect.sync(() => Option.fromNullishOr(klass.tryNested(name))).pipe(Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No nested class with name ${name}`)))));
183
207
  /**
184
208
  * @since 1.0.0
185
209
  * @category Class
package/dist/Class.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Class.js","names":[],"sources":["../src/Class.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Class.js","names":[],"sources":["../src/Class.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -34,10 +34,13 @@ export declare class Dictionary<K extends Il2Cpp.Field.Type = Il2Cpp.Field.Type,
34
34
  remove(key: K): boolean;
35
35
  [Symbol.iterator](): IterableIterator<[K, V]>;
36
36
  toString(): string;
37
- toRecord(keys?: Array<K> | undefined): Record<string, V>;
37
+ toRecord(keys?: ReadonlyArray<K> | undefined): Record<string, V>;
38
38
  /** The Dictionary class. */
39
39
  static get class(): Il2Cpp.Class;
40
- /** Lifts an Il2Cpp.Object to a Dictionary. */
40
+ /**
41
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.Dictionary
42
+ * instance to a Dictionary.
43
+ */
41
44
  static lift<K extends Il2Cpp.Field.Type = Il2Cpp.Field.Type, V extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(object: Il2Cpp.Object): Dictionary<K, V>;
42
45
  /** Creates a new dictionary with the given elements. */
43
46
  static of<K extends Il2Cpp.Field.Type = Il2Cpp.Field.Type, V extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(keyClass: Il2Cpp.Class, valueClass: Il2Cpp.Class, elements?: Map<K, V> | undefined): Dictionary<K, V>;
@@ -77,9 +80,12 @@ export declare class List<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type> exten
77
80
  toString(): string;
78
81
  /** The List class. */
79
82
  static get class(): Il2Cpp.Class;
80
- /** Lifts an Il2Cpp.Array to a List. */
83
+ /**
84
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.List instance
85
+ * to a List.
86
+ */
81
87
  static lift<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(object: Il2Cpp.Object): List<T>;
82
88
  /** Creates a new list with the given elements. */
83
- static of<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(klass: Il2Cpp.Class, elements?: Array<T> | undefined): List<T>;
89
+ static of<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(klass: Il2Cpp.Class, elements?: ReadonlyArray<T> | undefined): List<T>;
84
90
  }
85
91
  //# sourceMappingURL=Extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Extensions.d.ts","sourceRoot":"","sources":["../src/Extensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Extensions.d.ts","sourceRoot":"","sources":["../src/Extensions.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,11 @@
3
3
  * @category Extensions
4
4
  */
5
5
  import "frida-il2cpp-bridge";
6
- import { Array, Option, Record, pipe, Result } from "effect";
6
+ import * as Array from "effect/Array";
7
+ import * as Function from "effect/Function";
8
+ import * as Option from "effect/Option";
9
+ import * as Record from "effect/Record";
10
+ import * as Result from "effect/Result";
7
11
  /**
8
12
  * @since 1.0.0
9
13
  * @category Extensions
@@ -62,18 +66,15 @@ export class Dictionary extends Il2Cpp.Object {
62
66
  return this.method("Remove").invoke(key);
63
67
  }
64
68
  *[Symbol.iterator]() {
65
- const entries = this.entries;
66
- for (let i = 0; i < this.length; i++) {
67
- yield entries[i];
68
- }
69
+ yield* this.entries;
69
70
  }
70
71
  toString() {
71
- return this.isNull() ? "null" : `{${[...this.entries].map(([k, v]) => `${k}: ${v}`).join(", ")}}`;
72
+ return this.isNull() ? "null" : `{${this.entries.map(([k, v]) => `${k}: ${v}`).join(", ")}}`;
72
73
  }
73
74
  toRecord(keys) {
74
75
  const readKeyOptionString = key => key instanceof Il2Cpp.String ? Option.fromNullOr(key.isNull() ? null : key.content) : Option.some(key.toString());
75
76
  const readValueOption = key => this.containsKey(key) ? Option.some(this.get(key)) : Option.none();
76
- return pipe(keys ?? this.keys, Array.filterMap(key => {
77
+ return Function.pipe(keys ?? this.keys, Array.filterMap(key => {
77
78
  const maybeKey = readKeyOptionString(key);
78
79
  const maybeValue = readValueOption(key);
79
80
  const product = Option.product(maybeKey, maybeValue);
@@ -84,7 +85,10 @@ export class Dictionary extends Il2Cpp.Object {
84
85
  static get class() {
85
86
  return Il2Cpp.corlib.class("System.Collections.Generic.Dictionary`2");
86
87
  }
87
- /** Lifts an Il2Cpp.Object to a Dictionary. */
88
+ /**
89
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.Dictionary
90
+ * instance to a Dictionary.
91
+ */
88
92
  static lift(object) {
89
93
  return new Dictionary(object.handle);
90
94
  }
@@ -168,7 +172,10 @@ export class List extends Il2Cpp.Object {
168
172
  static get class() {
169
173
  return Il2Cpp.corlib.class("System.Collections.Generic.List`1");
170
174
  }
171
- /** Lifts an Il2Cpp.Array to a List. */
175
+ /**
176
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.List instance
177
+ * to a List.
178
+ */
172
179
  static lift(object) {
173
180
  return new List(object.handle);
174
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Extensions.js","names":[],"sources":["../src/Extensions.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Extensions.js","names":[],"sources":["../src/Extensions.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA,OAAO,qBAAqB;AAE5B,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe;AAEvC;;;;AAIA,OAAM,MAAO,UAIT,SAAQ,MAAM,CAAC,MAAM;EAErB;EACA,IAAW,MAAM;IACb,OAAO,IAAI,CAAC,MAAM,CAAS,WAAW,CAAC,CAAC,MAAM,EAAE;EACpD;EAEA;EACA,IAAW,IAAI;IACX,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACjE,IAAI,CAAC,MAAM,CAAgB,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAChF,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;EACnC;EAEA;EACA,IAAW,MAAM;IACb,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACnE,IAAI,CAAC,MAAM,CAAgB,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;EACrC;EAEA;EACA,IAAW,OAAO;IACd,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;EAC5C;EAEA;EACO,GAAG,CAAC,GAAM;IACb,OAAO,IAAI,CAAC,MAAM,CAAI,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;EACjD;EAEA;EACO,GAAG,CAAC,GAAM,EAAE,KAAQ;IACvB,IAAI,CAAC,MAAM,CAAO,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;EACpD;EAEA;EACO,GAAG,CAAC,GAAM,EAAE,KAAQ;IACvB,IAAI,CAAC,MAAM,CAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;EAC/C;EAEA;EACO,KAAK;IACR,IAAI,CAAC,MAAM,CAAO,OAAO,CAAC,CAAC,MAAM,EAAE;EACvC;EAEA;EACO,WAAW,CAAC,GAAM;IACrB,OAAO,IAAI,CAAC,MAAM,CAAU,aAAa,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;EAC1D;EAEA;EACO,aAAa,CAAC,KAAQ;IACzB,OAAO,IAAI,CAAC,MAAM,CAAU,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;EAC9D;EAEA;EACO,IAAI,CAAC,GAAM;IACd,OAAO,IAAI,CAAC,MAAM,CAAS,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;EACvD;EAEA;EACO,MAAM,CAAC,GAAM;IAChB,OAAO,IAAI,CAAC,MAAM,CAAU,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;EACrD;EAEO,EAAE,MAAM,CAAC,QAAQ,IAAC;IACrB,OAAO,IAAI,CAAC,OAAO;EACvB;EAEgB,QAAQ;IACpB,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;EAChG;EAEO,QAAQ,CAAC,IAAmC;IAC/C,MAAM,mBAAmB,GAAI,GAAM,IAC/B,GAAG,YAAY,MAAM,CAAC,MAAM,GACtB,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GACpD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAErC,MAAM,eAAe,GAAI,GAAM,IAC3B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE;IAEtE,OAAO,QAAQ,CAAC,IAAI,CAChB,IAAI,IAAI,IAAI,CAAC,IAAI,EACjB,KAAK,CAAC,SAAS,CAAE,GAAG,IAAI;MACpB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC;MACzC,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC;MACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC;MACpD,OAAO,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,EACF,MAAM,CAAC,WAAW,CACrB;EACL;EAEA;EACO,WAAW,KAAK;IACnB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC;EACzE;EAEA;;;;EAIO,OAAO,IAAI,CAGhB,MAAqB;IACnB,OAAO,IAAI,UAAU,CAAO,MAAM,CAAC,MAAM,CAAC;EAC9C;EAEA;EACO,OAAO,EAAE,CACZ,QAAsB,EACtB,UAAwB,EACxB,QAAgC;IAEhC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAO,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/F,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,IAAI,EAAE,EAAE;MACvC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;IAC9B;IAEA,OAAO,UAAU;EACrB;;AAGJ;;;;AAIA,OAAM,MAAO,IAAsD,SAAQ,MAAM,CAAC,MAAM;EACpF,IAAW,QAAQ;IACf,OAAO,IAAI,CAAC,MAAM,CAAS,cAAc,CAAC,CAAC,MAAM,EAAE;EACvD;EAEA,IAAW,QAAQ,CAAC,KAAa;IAC7B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;EAC7C;EAEA;EACA,IAAW,MAAM;IACb,OAAO,IAAI,CAAC,MAAM,CAAS,WAAW,CAAC,CAAC,MAAM,EAAE;EACpD;EAEA;EACO,GAAG,CAAC,KAAa;IACpB,OAAO,IAAI,CAAC,MAAM,CAAI,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;EACnD;EAEA;EACO,GAAG,CAAC,KAAa,EAAE,KAAQ;IAC9B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;EAChD;EAEA;EACO,GAAG,CAAC,IAAO;IACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;EACnC;EAEA;EACO,KAAK;IACR,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;EACjC;EAEA;EACO,QAAQ,CAAC,IAAO;IACnB,OAAO,IAAI,CAAC,MAAM,CAAU,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;EACxD;EAEA;EACO,OAAO,CAAC,IAAO;IAClB,OAAO,IAAI,CAAC,MAAM,CAAS,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;EACtD;EAEA;EACO,MAAM,CAAC,KAAa,EAAE,IAAO;IAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;EAC7C;EAEA;EACO,MAAM,CAAC,IAAO;IACjB,OAAO,IAAI,CAAC,MAAM,CAAU,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;EACtD;EAEA;EACO,OAAO;IACV,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE;EACnC;EAEA;EACO,IAAI;IACP,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE;EAChC;EAEA;EACA,IAAW,OAAO;IACd,OAAO,IAAI,CAAC,MAAM,CAAkB,SAAS,CAAC,CAAC,MAAM,EAAE;EAC3D;EAEO,EAAE,MAAM,CAAC,QAAQ,IAAC;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;MAClC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB;EACJ;EAEgB,QAAQ;IACpB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;EAClC;EAEA;EACO,WAAW,KAAK;IACnB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC;EACnE;EAEA;;;;EAIO,OAAO,IAAI,CAAkD,MAAqB;IACrF,OAAO,IAAI,IAAI,CAAI,MAAM,CAAC,MAAM,CAAC;EACrC;EAEA;EACO,OAAO,EAAE,CACZ,KAAmB,EACnB,QAAQ,GAAiC,EAAE;IAE3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;IAC3D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;MAC5B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IACrB;IAEA,OAAO,IAAI;EACf","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@efffrida/il2cpp-bridge",
3
- "version": "0.0.55",
3
+ "version": "0.0.56",
4
4
  "description": "effect-ts frida-il2cpp-bridge",
5
5
  "keywords": [
6
6
  "effect-ts",
package/src/Assembly.ts CHANGED
@@ -11,6 +11,7 @@ import * as Cache from "effect/Cache";
11
11
  import * as Cause from "effect/Cause";
12
12
  import * as Context from "effect/Context";
13
13
  import * as Effect from "effect/Effect";
14
+ import * as Option from "effect/Option";
14
15
 
15
16
  /**
16
17
  * @since 1.0.0
@@ -33,10 +34,9 @@ export const assembly = (name: string): Effect.Effect<Il2Cpp.Assembly, never, ne
33
34
  * @category Assembly
34
35
  */
35
36
  export const tryAssembly = (name: string): Effect.Effect<Il2Cpp.Assembly, Cause.NoSuchElementError, never> =>
36
- Effect.try({
37
- try: () => Il2Cpp.domain.tryAssembly(name),
38
- catch: () => new Cause.NoSuchElementError(`No assembly with name ${name}`),
39
- }).pipe(Effect.flatMap(Effect.fromNullishOr));
37
+ Effect.sync(() => Option.fromNullishOr(Il2Cpp.domain.tryAssembly(name))).pipe(
38
+ Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No assembly with name ${name}`)))
39
+ );
40
40
 
41
41
  /**
42
42
  * @since 1.0.0
package/src/Class.ts CHANGED
@@ -7,11 +7,11 @@ import "frida-il2cpp-bridge";
7
7
 
8
8
  import * as Cache from "effect/Cache";
9
9
  import * as Cause from "effect/Cause";
10
- import * as Data from "effect/Data";
11
10
  import * as Effect from "effect/Effect";
12
11
  import * as Equal from "effect/Equal";
13
12
  import * as Function from "effect/Function";
14
13
  import * as Hash from "effect/Hash";
14
+ import * as Option from "effect/Option";
15
15
 
16
16
  import { CacheCapacity } from "./Assembly.ts";
17
17
 
@@ -23,14 +23,20 @@ export {
23
23
  CacheCapacity,
24
24
  } from "./Assembly.ts";
25
25
 
26
- /** @internal */
27
- class ImageNameKey
28
- extends Data.Class<{
29
- readonly image: Il2Cpp.Image;
30
- readonly name: string;
31
- }>
32
- implements Equal.Equal, Hash.Hash
33
- {
26
+ /**
27
+ * Cache keys identify il2cpp objects by their native handle rather than by
28
+ * reference, since frida-il2cpp-bridge can hand out distinct wrapper instances
29
+ * for the same underlying image/class.
30
+ *
31
+ * @internal
32
+ */
33
+ class ImageNameKey implements Equal.Equal {
34
+ readonly image: Il2Cpp.Image;
35
+ readonly name: string;
36
+ constructor({ image, name }: { image: Il2Cpp.Image; name: string }) {
37
+ this.image = image;
38
+ this.name = name;
39
+ }
34
40
  [Hash.symbol](): number {
35
41
  return Hash.string(`${this.image.handle}:${this.name}`);
36
42
  }
@@ -40,13 +46,13 @@ class ImageNameKey
40
46
  }
41
47
 
42
48
  /** @internal */
43
- class ClassNameKey
44
- extends Data.Class<{
45
- readonly klass: Il2Cpp.Class;
46
- readonly name: string;
47
- }>
48
- implements Equal.Equal, Hash.Hash
49
- {
49
+ class ClassNameKey implements Equal.Equal {
50
+ readonly klass: Il2Cpp.Class;
51
+ readonly name: string;
52
+ constructor({ klass, name }: { klass: Il2Cpp.Class; name: string }) {
53
+ this.klass = klass;
54
+ this.name = name;
55
+ }
50
56
  [Hash.symbol](): number {
51
57
  return Hash.string(`${this.klass.handle}:${this.name}`);
52
58
  }
@@ -56,14 +62,23 @@ class ClassNameKey
56
62
  }
57
63
 
58
64
  /** @internal */
59
- class MethodKey
60
- extends Data.Class<{
61
- readonly klass: Il2Cpp.Class;
62
- readonly name: string;
63
- readonly parameterCount: number | undefined;
64
- }>
65
- implements Equal.Equal, Hash.Hash
66
- {
65
+ class MethodKey implements Equal.Equal {
66
+ readonly klass: Il2Cpp.Class;
67
+ readonly name: string;
68
+ readonly parameterCount: number | undefined;
69
+ constructor({
70
+ klass,
71
+ name,
72
+ parameterCount,
73
+ }: {
74
+ klass: Il2Cpp.Class;
75
+ name: string;
76
+ parameterCount: number | undefined;
77
+ }) {
78
+ this.klass = klass;
79
+ this.name = name;
80
+ this.parameterCount = parameterCount;
81
+ }
67
82
  [Hash.symbol](): number {
68
83
  return Hash.string(`${this.klass.handle}:${this.name}:${this.parameterCount}`);
69
84
  }
@@ -102,10 +117,9 @@ export const tryClass = Function.dual<
102
117
  (name: string) => (image: Il2Cpp.Image) => Effect.Effect<Il2Cpp.Class, Cause.NoSuchElementError, never>,
103
118
  (image: Il2Cpp.Image, name: string) => Effect.Effect<Il2Cpp.Class, Cause.NoSuchElementError, never>
104
119
  >(2, (image: Il2Cpp.Image, name: string) =>
105
- Effect.try({
106
- try: () => image.tryClass(name),
107
- catch: () => new Cause.NoSuchElementError(`No class with name ${name}`),
108
- }).pipe(Effect.flatMap(Effect.fromNullishOr))
120
+ Effect.sync(() => Option.fromNullishOr(image.tryClass(name))).pipe(
121
+ Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No class with name ${name}`)))
122
+ )
109
123
  );
110
124
 
111
125
  /**
@@ -197,10 +211,9 @@ export const tryField = Function.dual<
197
211
  klass: Il2Cpp.Class,
198
212
  name: string
199
213
  ): Effect.Effect<Il2Cpp.Field<T>, Cause.NoSuchElementError, never> =>
200
- Effect.try({
201
- try: () => klass.field<T>(name),
202
- catch: () => new Cause.NoSuchElementError(`No field with name ${name}`),
203
- }).pipe(Effect.flatMap(Effect.fromNullishOr))
214
+ Effect.sync(() => Option.fromNullishOr(klass.tryField<T>(name))).pipe(
215
+ Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No field with name ${name}`)))
216
+ )
204
217
  );
205
218
 
206
219
  /**
@@ -326,10 +339,18 @@ export const tryMethod = Function.dual<
326
339
  name: string,
327
340
  parameterCount?: number | undefined
328
341
  ): Effect.Effect<Il2Cpp.Method<T>, Cause.NoSuchElementError, never> =>
329
- Effect.try({
330
- try: () => klass.tryMethod<T>(name, parameterCount),
331
- catch: () => new Cause.NoSuchElementError(`No method with name ${name}`),
332
- }).pipe(Effect.flatMap(Effect.fromNullishOr))
342
+ Effect.sync(() => Option.fromNullishOr(klass.tryMethod<T>(name, parameterCount))).pipe(
343
+ Effect.flatMap(
344
+ Effect.fromOption(
345
+ () =>
346
+ new Cause.NoSuchElementError(
347
+ parameterCount === undefined
348
+ ? `No method with name ${name}`
349
+ : `No method with name ${name} and ${parameterCount} parameters`
350
+ )
351
+ )
352
+ )
353
+ )
333
354
  );
334
355
 
335
356
  /**
@@ -413,10 +434,9 @@ export const tryNested = Function.dual<
413
434
  (name: string) => (klass: Il2Cpp.Class) => Effect.Effect<Il2Cpp.Class, Cause.NoSuchElementError, never>,
414
435
  (klass: Il2Cpp.Class, name: string) => Effect.Effect<Il2Cpp.Class, Cause.NoSuchElementError, never>
415
436
  >(2, (klass: Il2Cpp.Class, name: string) =>
416
- Effect.try({
417
- try: () => klass.tryNested(name),
418
- catch: () => new Cause.NoSuchElementError(`No nested class with name ${name}`),
419
- }).pipe(Effect.flatMap(Effect.fromNullishOr))
437
+ Effect.sync(() => Option.fromNullishOr(klass.tryNested(name))).pipe(
438
+ Effect.flatMap(Effect.fromOption(() => new Cause.NoSuchElementError(`No nested class with name ${name}`)))
439
+ )
420
440
  );
421
441
 
422
442
  /**
package/src/Extensions.ts CHANGED
@@ -5,7 +5,11 @@
5
5
 
6
6
  import "frida-il2cpp-bridge";
7
7
 
8
- import { Array, Option, Record, pipe, Result } from "effect";
8
+ import * as Array from "effect/Array";
9
+ import * as Function from "effect/Function";
10
+ import * as Option from "effect/Option";
11
+ import * as Record from "effect/Record";
12
+ import * as Result from "effect/Result";
9
13
 
10
14
  /**
11
15
  * @since 1.0.0
@@ -82,17 +86,14 @@ export class Dictionary<
82
86
  }
83
87
 
84
88
  public *[Symbol.iterator](): IterableIterator<[K, V]> {
85
- const entries = this.entries;
86
- for (let i = 0; i < this.length; i++) {
87
- yield entries[i];
88
- }
89
+ yield* this.entries;
89
90
  }
90
91
 
91
92
  public override toString(): string {
92
- return this.isNull() ? "null" : `{${[...this.entries].map(([k, v]) => `${k}: ${v}`).join(", ")}}`;
93
+ return this.isNull() ? "null" : `{${this.entries.map(([k, v]) => `${k}: ${v}`).join(", ")}}`;
93
94
  }
94
95
 
95
- public toRecord(keys?: Array<K> | undefined): Record<string, V> {
96
+ public toRecord(keys?: ReadonlyArray<K> | undefined): Record<string, V> {
96
97
  const readKeyOptionString = (key: K): Option.Option<string> =>
97
98
  key instanceof Il2Cpp.String
98
99
  ? Option.fromNullOr(key.isNull() ? null : key.content)
@@ -101,7 +102,7 @@ export class Dictionary<
101
102
  const readValueOption = (key: K): Option.Option<V> =>
102
103
  this.containsKey(key) ? Option.some(this.get(key)) : Option.none();
103
104
 
104
- return pipe(
105
+ return Function.pipe(
105
106
  keys ?? this.keys,
106
107
  Array.filterMap((key) => {
107
108
  const maybeKey = readKeyOptionString(key);
@@ -118,7 +119,10 @@ export class Dictionary<
118
119
  return Il2Cpp.corlib.class("System.Collections.Generic.Dictionary`2");
119
120
  }
120
121
 
121
- /** Lifts an Il2Cpp.Object to a Dictionary. */
122
+ /**
123
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.Dictionary
124
+ * instance to a Dictionary.
125
+ */
122
126
  public static lift<
123
127
  K extends Il2Cpp.Field.Type = Il2Cpp.Field.Type,
124
128
  V extends Il2Cpp.Field.Type = Il2Cpp.Field.Type,
@@ -229,7 +233,10 @@ export class List<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type> extends Il2Cp
229
233
  return Il2Cpp.corlib.class("System.Collections.Generic.List`1");
230
234
  }
231
235
 
232
- /** Lifts an Il2Cpp.Array to a List. */
236
+ /**
237
+ * Lifts an Il2Cpp.Object holding a System.Collections.Generic.List instance
238
+ * to a List.
239
+ */
233
240
  public static lift<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(object: Il2Cpp.Object): List<T> {
234
241
  return new List<T>(object.handle);
235
242
  }
@@ -237,7 +244,7 @@ export class List<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type> extends Il2Cp
237
244
  /** Creates a new list with the given elements. */
238
245
  public static of<T extends Il2Cpp.Field.Type = Il2Cpp.Field.Type>(
239
246
  klass: Il2Cpp.Class,
240
- elements: Array<T> | undefined = []
247
+ elements: ReadonlyArray<T> | undefined = []
241
248
  ): List<T> {
242
249
  const list = new List<T>(List.class.inflate(klass).alloc());
243
250
  for (const element of elements) {