Skip to content

Commit

Permalink
add inference helpers
Browse files Browse the repository at this point in the history
  • Loading branch information
tim-smart committed May 7, 2024
1 parent 202a407 commit 46da19b
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 10 deletions.
5 changes: 5 additions & 0 deletions .changeset/quick-rice-rhyme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@effect-rx/rx": patch
---

add inference helpers
12 changes: 6 additions & 6 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 6 additions & 3 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,17 @@
}:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
corepackEnable = pkgs.runCommand "corepack-enable" {} ''
mkdir -p $out/bin
${pkgs.nodejs-18_x}/bin/corepack enable --install-directory $out/bin
'';
in {
formatter = pkgs.alejandra;

devShells = {
default = pkgs.mkShell {
buildInputs = with pkgs; [
nodejs-18_x
nodePackages.pnpm
nodejs_22
corepackEnable
];
};
};
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"private": true,
"packageManager": "pnpm@8.10.0",
"packageManager": "pnpm@9.1.0",
"workspaces": [
"packages/*"
],
Expand Down
15 changes: 15 additions & 0 deletions packages/rx/src/Rx.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,21 @@ export declare namespace Rx {
* @since 1.0.0
*/
export type Infer<T extends Rx<any>> = T extends Rx<infer A> ? A : never

/**
* @since 1.0.0
*/
export type InferSuccess<T extends Rx<any>> = T extends Rx<Result.Result<infer A, infer _>> ? A : never

/**
* @since 1.0.0
*/
export type InferPullSuccess<T extends Rx<any>> = T extends Rx<PullResult<infer A, infer _>> ? A : never

/**
* @since 1.0.0
*/
export type InferFailure<T extends Rx<any>> = T extends Rx<Result.Result<infer _, infer E>> ? E : never
}

/**
Expand Down

0 comments on commit 46da19b

Please sign in to comment.