We have unsafe pointers, and we have zero-variant enums. This seems a good alternative for opaque pointers:
enum foreign_object {}
fn do_foreign_things(o: *foreign_object) { ... }
For non-opaque things, just using *u8 or *record_type is also clearer than using a native type.
Please weigh in if you think they have some merits and should be kept.
We have unsafe pointers, and we have zero-variant enums. This seems a good alternative for opaque pointers:
For non-opaque things, just using
*u8or*record_typeis also clearer than using a native type.Please weigh in if you think they have some merits and should be kept.