update `TyDesc` and `TyVisitor`