diff options
| author | Akshay Nair <phenax5@gmail.com> | 2023-01-09 20:13:33 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2023-01-09 20:13:33 +0530 |
| commit | 5aad91f273f39ba1a11143585835e757a57de234 (patch) | |
| tree | 28379cc54ccb1bdd3de2a4c639d24ea5dac82dd5 /examples | |
| parent | 2af211f1bd6a5c81ee7acd2ded2bfacf4dcfb2a4 (diff) | |
| download | ts-types-lang-5aad91f273f39ba1a11143585835e757a57de234.tar.gz ts-types-lang-5aad91f273f39ba1a11143585835e757a57de234.zip | |
refactor: moves stuff around
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/custom-effect.ts | 3 | ||||
| -rw-r--r-- | examples/ffi.ts | 4 | ||||
| -rw-r--r-- | examples/file.ts | 4 | ||||
| -rw-r--r-- | examples/greeting.ts | 3 | ||||
| -rw-r--r-- | examples/guess-number.ts | 15 | ||||
| -rw-r--r-- | examples/test-runner.ts | 8 |
6 files changed, 20 insertions, 17 deletions
diff --git a/examples/custom-effect.ts b/examples/custom-effect.ts index 3dbe395..f87f242 100644 --- a/examples/custom-effect.ts +++ b/examples/custom-effect.ts @@ -1,4 +1,5 @@ -import { Bind, DefineEffect, Effect, Kind1, Print } from '../stdlib' +import { Bind, DefineEffect, Effect, Kind1 } from '../stdlib/effect' +import { Print } from '../stdlib/stdio' interface Mathemagic<_A, _B> extends Effect {} diff --git a/examples/ffi.ts b/examples/ffi.ts index 0840ff6..f118085 100644 --- a/examples/ffi.ts +++ b/examples/ffi.ts @@ -1,4 +1,6 @@ -import { Bind, Debug, DefineEffect, Effect, JsExpr, Kind1 } from '../stdlib' +import { Bind, Effect, Kind1 } from '../stdlib/effect' +import { DefineEffect, JsExpr } from '../stdlib/sys' +import { Debug } from '../stdlib/stdio' interface PrintK<Label extends string = ''> extends Kind1 { return: Debug<Label, this['input']> diff --git a/examples/file.ts b/examples/file.ts index 287f108..d91b68a 100644 --- a/examples/file.ts +++ b/examples/file.ts @@ -1,4 +1,6 @@ -import { Bind, Kind1, ReadFile, PutStringLn } from '../stdlib' +import { Bind, Kind1 } from '../stdlib/effect' +import { PutStringLn } from '../stdlib/stdio' +import { ReadFile } from '../stdlib/fs' interface PrintK extends Kind1<string> { return: PutStringLn<this['input']> diff --git a/examples/greeting.ts b/examples/greeting.ts index 20ed4fe..e4c2161 100644 --- a/examples/greeting.ts +++ b/examples/greeting.ts @@ -1,4 +1,5 @@ -import { PutString, Bind, Kind1, ReadLine, Seq, PutStringLn } from '../stdlib' +import { Bind, Kind1, Seq } from '../stdlib/effect' +import { PutString, ReadLine, PutStringLn } from '../stdlib/stdio' interface GreetK extends Kind1<string> { return: Seq<[PutString<'Hello, '>, PutString<`${this['input']}\n`>]> diff --git a/examples/guess-number.ts b/examples/guess-number.ts index f03ee10..169805f 100644 --- a/examples/guess-number.ts +++ b/examples/guess-number.ts @@ -1,20 +1,13 @@ -import { - PutString, - Bind, - Kind1, - JsExpr, - ReadLine, - Do, - PutStringLn, -} from '../stdlib' +import { Bind, Kind1, Do } from '../stdlib/effect' +import { PutString, ReadLine, PutStringLn } from '../stdlib/stdio' +import { JsExpr } from '../stdlib/sys' export type main = [ PutStringLn<'Guess a number between 0 & 9. You have 5 guesses'>, Bind<JsExpr<'Math.floor(Math.random() * 10)'>, StartGuessing> ] -interface AskForGuess<N extends number, Attempts extends 0[]> - extends Kind1<string> { +interface AskForGuess<N extends number, Attempts extends 0[]> extends Kind1<string> { return: `${this['input']}` extends `${N}` ? PutStringLn<'Yay! You got it right!'> : Do< diff --git a/examples/test-runner.ts b/examples/test-runner.ts index c0eb4c4..b06b010 100644 --- a/examples/test-runner.ts +++ b/examples/test-runner.ts @@ -1,4 +1,6 @@ -import { DefineEffect, Do, Effect, Print, PutString, PutStringLn } from '../stdlib' +import { Do, Effect } from '../stdlib/effect' +import { Print, PutString, PutStringLn } from '../stdlib/stdio' +import { DefineEffect } from '../stdlib/sys' type Testi<m extends string, effs extends Effect[]> = [ PutStringLn<m>, @@ -8,7 +10,9 @@ type Testi<m extends string, effs extends Effect[]> = [ type Equals<Left, Right> = [Left] extends [Right] ? ([Right] extends [Left] ? true : false) : false -interface Assert<_B extends true> extends Effect { } + +type CompileTimeErrors = false +interface Assert<_B extends (CompileTimeErrors extends true ? true : boolean)> extends Effect { } type testCases = [ ...Testi<"should do some stuff", [ |
