({ value }: { value: DynoVal<T> })
| 329 | implements HasDynoOut<"float"> |
| 330 | { |
| 331 | constructor({ value }: { value: DynoVal<T> }) { |
| 332 | super({ |
| 333 | inTypes: { value: valType(value) }, |
| 334 | outTypes: { hash: "float" }, |
| 335 | inputs: { value }, |
| 336 | construct: ({ value }) => { |
| 337 | if (!value) { |
| 338 | throw new Error("value is required"); |
| 339 | } |
| 340 | const word = hash(value); |
| 341 | return { hash: mul(float(word), dynoConst("float", 1 / 2 ** 32)) }; |
| 342 | }, |
| 343 | }); |
| 344 | } |
| 345 | dynoOut(): DynoValue<"float"> { |
| 346 | return new DynoOutput(this, "hash"); |
| 347 | } |