OpenGL_accelerate.latebind

General pattern which does late-bound calls

Classes

class Curry( object ):
Provides a simple Curry which can bind (only) the first element
__call__
returns self.wrapperFunction( self.baseFunction, *args, **named )
__init__
Stores self.wrapperFunction and self.baseFunction
Provides a __call__ which dispatches to self._finalCall
When called without self._finalCall() makes a call to self.finalise() and then calls self._finalCall()
__call__
Call self._finalCall, calling finalise() first if not already called
There's actually *no* reason to unpack and repack the arguments, but unfortunately I don't know of a Cython syntax to specify that.
finalise
Finalise our target to our final callable object
getFinalCall
Retrieve and/or bind and retrieve final call
setFinalCall
Set our finalCall to the callable object given