Skip to content

feat(abg)!: allow to wire typed outputs to matching typed inputs - #1624

Open
Vampire wants to merge 1 commit into
vampire/binding-version-v2from
vampire/type-safe-inputs-and-outputs-wiring
Open

feat(abg)!: allow to wire typed outputs to matching typed inputs#1624
Vampire wants to merge 1 commit into
vampire/binding-version-v2from
vampire/type-safe-inputs-and-outputs-wiring

Conversation

@Vampire

@VampireVampire commented Aug 23, 2024

Copy link
Copy Markdown
Collaborator

Fixes#73

If types of input and output match, you can do

lookupOnlyExpression = cache.outputs.cacheHit

If types do not match for whatever reason, you can still do

lookupOnlyExpression = cache.outputs.cacheHit_Untyped

or

lookupOnlyExpression =Expression(cache.outputs.cacheHit.expression)

or (but deprecated)

lookupOnly_Untyped = cache.outputs.cacheHit.expressionString

If no type is declared for the output, you can still stuff the _Untyped one into any expression input like

lookupOnlyExpression = cache.outputs.cacheHit_Untyped

Ad-hoc outputs behave like untyped outputs in that you can stuff it into everywhere

lookupOnlyExpression = cache.outputs["cache-hit"]

@VampireGraphite App

Vampire commented Aug 23, 2024

Copy link
Copy Markdown
CollaboratorAuthor

@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 3 times, most recently from ff26830 to 46ca5adCompareAugust 23, 2024 20:34
@Vampire

Vampire commented Aug 23, 2024

Copy link
Copy Markdown
CollaboratorAuthor

So far it indeed seems to work just great.
I played a bit with the current state, merged with my other stack.

@Vampire

Copy link
Copy Markdown
CollaboratorAuthor

@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 46ca5ad to 14d4f80CompareAugust 23, 2024 20:44
@Vampire

Copy link
Copy Markdown
CollaboratorAuthor

Of course the typing catalog should be polished to have proper output types which it currently does not have.
That's anyway a bit bad, as the typing catalog is supposed to be independent of consumers, so just using string everywhere just because this lib does not yet read it, ..., well, ... ;-)

@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 14d4f80 to f4b6351CompareAugust 23, 2024 21:13
@Vampire
Vampire marked this pull request as ready for review August 23, 2024 21:23
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 2 times, most recently from 3a53468 to f0429b9CompareAugust 25, 2024 02:19
@VampireGraphite App

Copy link
Copy Markdown
CollaboratorAuthor

Forgot the job outputs, now they are also typed :-)

@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 9 times, most recently from adbea5b to 59626c0CompareAugust 31, 2024 18:28
@VampireGraphite App

Copy link
Copy Markdown
CollaboratorAuthor

And now AbstractResult also has a toExpression() function :-)

@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 4 times, most recently from 90360a0 to 09d160eCompareSeptember 5, 2024 18:48
@VampireVampire changed the title feat(abg)!: Allow to wire typed outputs to matching typed inputsfeat(abg)!: allow to wire typed outputs to matching typed inputsSep 5, 2024
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 2 times, most recently from d7c1b5d to f3b7790CompareSeptember 6, 2024 18:43
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from f24be3b to b7312edCompareOctober 27, 2024 04:07
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 3bf0f10 to 7a302adCompareOctober 27, 2024 20:37
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from b7312ed to 82626b6CompareOctober 27, 2024 20:37
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 7a302ad to c660603CompareOctober 27, 2024 21:27
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 82626b6 to 5cf2155CompareOctober 27, 2024 21:28
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from c660603 to 79fa813CompareOctober 28, 2024 10:51
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 5cf2155 to 4b5d840CompareOctober 28, 2024 10:52
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 79fa813 to d2f3975CompareOctober 28, 2024 14:07
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch 2 times, most recently from 7cf7158 to e3fb0e7CompareOctober 28, 2024 21:16
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from d2f3975 to d20434cCompareOctober 30, 2024 09:39
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from e3fb0e7 to 2167254CompareOctober 30, 2024 09:39
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from d20434c to d42909aCompareOctober 30, 2024 11:03
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 2167254 to 71c6dd8CompareOctober 30, 2024 11:03
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from d42909a to 9d293a1CompareOctober 30, 2024 14:13
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 71c6dd8 to af313d2CompareOctober 30, 2024 14:13
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 9d293a1 to 30dd897CompareDecember 8, 2024 23:08
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from af313d2 to ed8762bCompareDecember 8, 2024 23:08
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 30dd897 to 9d65dc9CompareDecember 9, 2024 11:56
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from ed8762b to 06a5920CompareDecember 9, 2024 11:56
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 9d65dc9 to cd64a8eCompareJanuary 4, 2025 13:33
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 06a5920 to 1cc527eCompareJanuary 4, 2025 13:33
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from cd64a8e to 62d0334CompareJanuary 22, 2025 17:45
@Vampire
Vampireforce-pushed the vampire/type-safe-inputs-and-outputs-wiring branch from 1cc527e to eab1aa8CompareJanuary 22, 2025 17:45
@Vampire
Vampireforce-pushed the vampire/binding-version-v2 branch from 62d0334 to 1692740CompareJanuary 23, 2025 00:35
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Core feature request] Allow passing non-string outputs to inputs

1 participant

@Vampire