Compare commits

..

1 commit

Author SHA1 Message Date
Ajay
9d5d1954a6
Merge 918231a1ad into 62af051e7a 2025-03-01 16:48:23 -05:00
3 changed files with 4022 additions and 14 deletions

30
jecs.d.ts vendored
View file

@ -31,27 +31,31 @@ export type Id<TData = unknown> = Entity<TData> | Pair<TData, unknown> | Pair<un
export type InferComponent<E> = E extends Entity<infer D> export type InferComponent<E> = E extends Entity<infer D>
? D ? D
: E extends Pair<infer P, infer O> : E extends Pair<infer P, infer O>
? P extends undefined ? P extends undefined
? O ? O
: P : P
: never; : never;
type FlattenTuple<T extends unknown[]> = T extends [infer U] ? U : LuaTuple<T>; type FlattenTuple<T extends unknown[]> = T extends [infer U] ? U : LuaTuple<T>;
type Nullable<T extends unknown[]> = { [K in keyof T]: T[K] | undefined }; type Nullable<T extends unknown[]> = { [K in keyof T]: T[K] | undefined };
type InferComponents<A extends Id[]> = { [K in keyof A]: InferComponent<A[K]> }; type InferComponents<A extends Id[]> = { [K in keyof A]: InferComponent<A[K]> };
type ArchetypeId = number; type ArchetypeId = number
type Column = unknown[]; type Column = unknown[];
type ArchetypeRecord = {
count: number;
column: number;
}
export type Archetype = { export type Archetype = {
id: number; id: number;
types: number[]; types: number[];
type: string; type: string;
entities: number[]; entities: number[];
columns: Column[]; columns: Column[];
records: number[]; records: ArchetypeRecord[];
counts: number[]; }
};
type Iter<T extends unknown[]> = IterableFunction<LuaTuple<[Entity, ...T]>>; type Iter<T extends unknown[]> = IterableFunction<LuaTuple<[Entity, ...T]>>;

4004
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
{ {
"name": "@rbxts/jecs", "name": "@rbxts/jecs",
"version": "0.5.5", "version": "0.5.4",
"description": "Stupidly fast Entity Component System", "description": "Stupidly fast Entity Component System",
"main": "jecs.luau", "main": "jecs.luau",
"repository": { "repository": {