Comments (2)
This shouldn't be an issue here. The Hash
trait is working on the direct bytes, just as the Ord
/etc is, so the invariant specified in that link (k1 == k2 ⇒ hash(k1) == hash(k2)
) to avoid issues (I imagine hashmap keys) still holds. I'm not sure exactly why it was originally written (this is pulled from old Jormungandr code right?) they didn't use the default Hash
derivation, but it was probably to do with how without const generics (still unstable I think?, and definitely wasn't a thing back then) you couldn't auto-derive traits using const generics (e.g. N
for number constants in [T; N]
) so they had to manually specify a bunch of traits on [T, 1]
, [T, 2]
... [T, 32]
and anything above lacks most or all traits. Maybe Ord
and such were so core to the language they had a special exception and Hash
didn't.
@SebastienGllmt should we keep this open or just close it? Or if it's a problem for clippy we could put an ignore in the code, although after the refactor I guess.
from cardano-multiplatform-lib.
Fixed by #250
from cardano-multiplatform-lib.
Related Issues (20)
- Missing WASM address exports
- Missing WASM TransactionUnspentOutputs export? HOT 4
- Missing WASM PlutusScriptWitness constructor HOT 5
- Rename `BigInt` to something else
- Replace `as_` functions in Rust with `From` / `TryFrom`
- Missing `NetworkInfo` in WASM
- Cannot verify signature HOT 1
- TransactionHash Mistmatch HOT 4
- Byron block hash wrong
- ByronBlock / MultiEraBlock explicit era tag HOT 1
- Need help HOT 2
- Error: null pointer passed to rust HOT 1
- Add token information to transaction balance errors
- Conway Proposing/Voting RedeemerTag builder update
- Crash on duplicate key in mint on preprod
- cml_chain::NonemptySetPlutusData.json: RangeError: Maximum call stack size exceeded
- RuntimeError: memory access out of bounds HOT 9
- nodejs: AssetName class missing `to_hex()` method
- Getting minUtxo error for ada deducted by wallet HOT 1
- Missing methods TransactionUnspentOutput HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cardano-multiplatform-lib.