This PR adds boilerplate code required for the implementation of https://github.com/rust-marker/marker/issues/141. I've also changed all semantic type construction, to use the TypedBuilder instead of the old new() function.
This PR also includes some changes, visible to API consumers, probably best summarized by the changelog entires:
sem::TyKind now implements From<*> for all semantic types.
This PR adds boilerplate code required for the implementation of https://github.com/rust-marker/marker/issues/141. I've also changed all semantic type construction, to use the
TypedBuilder
instead of the oldnew()
function.This PR also includes some changes, visible to API consumers, probably best summarized by the changelog entires:
sem::TyKind
now implementsFrom<*>
for all semantic types.sem::TyKind::FnTy
->sem::TyKind::Fn
sem::TyKind::ClosureTy
->sem::TyKind::Closure
That's basically it. Some boring repetitive code changes, which will hopefully make it easier to expand semantic types in the future :D