Ctrl-F fastrand (0 results)
I had to stop reading very early. Sorry, but if you're going to do this topic, at least acknowledge the other very popular randomness crate, and argue why it wasn't good enough for what you wanted.
Ctrl-F fastrand (0 results)
I had to stop reading very early. Sorry, but if you're going to do this topic, at least acknowledge the other very popular randomness crate, and argue why it wasn't good enough for what you wanted.
The test suite passes, so it's 100% memory safe according to zig guidelines and standards.
This is the way.
I think the other user meant that ls output is not supposed to be treated as parsable, because the tool doesn't offer any guarantees in that regards.
Shells have built-in support for globbing files anyway. xargs is also not needed. If someone is allergic to using a shell for loop, find always had -exec with ; instead + which wouldn't trip on too many arguments.
Later versions than C99 have no real added value proposition for the real use-cases where C is actually desired as an implementation language.
Later versions than C99 continue to introduce C++isms among other shit, from committee members some of whom probably never coded anything serious in C. This actually sometimes trickles down to compiler implementations even when you're sticking with an older version. So they manage to anger you even when you're keeping a distance.
Despite street myths and stereotypes, most people who choose C for some projects are not grey-hairs stuck in the past and incapable of learning new tools. Many of them in fact do use newer languages like Rust where they see fit. So there is no pressure to pick the one or two features from newer C versions that are maybe possibly can be useful.
Still, for some big projects that are kind of half-stuck with millions of lines of C, while at the same time having immense pressure to deliver maximum reliability AND security, these newer versions could proof useful at times. But the only project that comes to mind that fits this mold is the Linux kernel really. And there, non-standard language extensions are getting used anyway, so it's kind of an exceptional situation, that is also not very portable, but that's not a concern by the very nature of where a kernel sets in the stack.
Actually, I didn't notice your use of clone() which is even worse.
Here is what I had in mind. One can put the T: Default bound on the wrappers themselves to simplify, or add potentially expensive transformations for non-Default types.
Using cells in your solution is smelly, when you can simply use two transparent wrappers with Ref or RefMut access, so you have actual compile-time checking instead of janky checking at runtime (which is also not zero-cost).
The allow/deny variants could themselves hold & or &mut references too if we are going with that route. But it all depends on the precise problem OP is having and what is the best workable solution for it looks like.
Can you clarify/expand on what you mean.
Are the other objects of the same type (so are indeed Self)?
Are they in the same Vec or a different Vec or from different Vecs?
Are all the T's in your post the same?
...etc
Thank you for spamming info about a 6 month old model just because it was posted in another instance you don't want people to use.
I replied on-topic there.
Try out CrispASR.
There should be a rule against low quality posts.
That's not relevant when it's a question of interface.
fastrandhas a singleRngstruct that drives everything else. Was the option to replace the implementation details of this struct explored? No idea.