Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Change types to work w/o explicit type parameter
Previously, the type parameter of the kind of node that was checked for needed to be passed. This node kind had to be matched by the given runtime `test`. At that point, it was known that node would be of that kind. Now, the given runtime test is used in the type system to narrow the given `node` value down. This means that the types can become much simpler. Instead of `AssertAnything` and `AssertPredicate`, use the new `Check`. Instead of `TestFunctionAnything` and `TestFunctionPredicate`, use `TestFunction`. Instead of `PredicateTest`, use `Test`.
- Loading branch information