simon-stahlberg / mimir

GNU General Public License v3.0
13 stars 7 forks source link

Break up binding code into individual compilation units #20

Open maichmueller opened 3 weeks ago

maichmueller commented 3 weeks ago

Hi,

the current one-source binding solution is cumbersome to work with. Tiny changes in a single part of the bindings require lengthy recompilation, followed by even longer LTO times.

I would like to break up the binding code into individual compilation units init_action, init_state_space etc. to prevent this. This procedure is also pybind11's recommended practice IIRC.

Before doing this, would you agree with such a PR or are you generally against it?

drexlerd commented 3 weeks ago

It's a good idea.

I am not sure how well this works with the automatic generation of the python stubs since the ordering of declarations matters. Please make sure that generating the stubs still works. I suggest starting by moving just a tiny bit and see what stubs you get.