Rust bindings

Yeah, point 5 is a doozy. It’s important to manage expectations.

Regarding generics, the Python wrappers are able to parse the templates (to a certain degree) and wrap specializations of those templates, given a list of parameters to use for instantiation. This is done by some very ugly C code that you probably don’t want to see. What I’m thinking is this: I could add an option to vtkWrapXML to make it do what the Python wrappers do, that is, instantiate the templates over a range of parameters.

One thing I didn’t see in your list was a way to manage overloaded method calls. That is, when a method is overloaded in C++, how to figure out which overload to call from rust based on the rust argument types? This was particularly tricky for the Python wrappers because Python doesn’t even have the concept of overloads.