The implementation of the Rascal meta-programming language (including interpreter, type checker, parser generator, compiler and JVM based run-time system)
There are arbX functions for all kinds of types but not for all. This is inconsistent and hard to document. Below the hood there is the generic functionality to generate values for types in IValueFactory, so let's just expose that in util::Arb with:
java &T arb(type[&T] \type);
We can later extend that module with generating random syntax trees as well (with code from DrAmbiguity).
Describe the bug
Logging this for the future.
There are
arbX
functions for all kinds of types but not for all. This is inconsistent and hard to document. Below the hood there is the generic functionality to generate values for types in IValueFactory, so let's just expose that inutil::Arb
with:We can later extend that module with generating random syntax trees as well (with code from DrAmbiguity).