LGTM. It's definitely much cleaner and faster to use something like this than the combination of a transparent box and delayed evaluation that previously was the only solution to get similar results.
Standing upon trifles:
Almost all of the stencil functions return void and modify an existing stencil. One returns a new stencil (in_color), and for one functionality there are two functions ('void translate(...)' and 'Stencil translated(...)'). It would be more consistent to either only define a void function or to provide both, a 'void outlined_with(...)' and a 'Stencil with_outline(...)'.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Frankly: yes. I didn't have the energy to do yet another code reorganization/cleanup. Stencil's are Simple_smob's, conceptually values rather than objects. As such, any functions (member or not) modifying them are problematic. Granted: member functions returning a fresh Stencil make little sense either.
Beating this into consistency would be some amount of work I did not want to invest in the course of this issue.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Diff:
Passes make, make check and a full make doc.
LGTM. It's definitely much cleaner and faster to use something like this than the combination of a transparent box and delayed evaluation that previously was the only solution to get similar results.
Standing upon trifles:
Almost all of the stencil functions return void and modify an existing stencil. One returns a new stencil (in_color), and for one functionality there are two functions ('void translate(...)' and 'Stencil translated(...)'). It would be more consistent to either only define a void function or to provide both, a 'void outlined_with(...)' and a 'Stencil with_outline(...)'.
Frankly: yes. I didn't have the energy to do yet another code reorganization/cleanup. Stencil's are Simple_smob's, conceptually values rather than objects. As such, any functions (member or not) modifying them are problematic. Granted: member functions returning a fresh Stencil make little sense either.
Beating this into consistency would be some amount of work I did not want to invest in the course of this issue.
Ok.
Patch on countdown for Jan 30th.
Patch counted down - please push.
Pushed to staging as
commit e357ddf4ac442cd6fcd976516cf9f775d559094b
Author: David Kastrup dak@gnu.org
Date: Tue Jan 24 21:45:49 2017 +0100
commit bbaca2ed893d929170bca4db03ec90ba26a094e0
Author: David Kastrup dak@gnu.org
Date: Tue Jan 24 21:39:15 2017 +0100
commit cfbda61ff9743a8c32b2057ede4bc8407172c936
Author: David Kastrup dak@gnu.org
Date: Tue Jan 24 21:17:43 2017 +0100
But frankly: this would warrant at least some regtests. Sigh.