mapi_abi: Override 'hidden' and 'handcode' attributes using polymorphism.
authorPaul Berry <stereotype441@gmail.com>
Wed, 10 Oct 2012 22:19:21 +0000 (15:19 -0700)
committerPaul Berry <stereotype441@gmail.com>
Tue, 16 Oct 2012 19:03:56 +0000 (12:03 -0700)
commit137f8ef2258cda926074d1c4708b4925f7da71a8
tree859942999fde111e63f8e64a1b34175768fe45a0
parent4f6fc905c68fc1f7deab27d0b931f58e0558630e
mapi_abi: Override 'hidden' and 'handcode' attributes using polymorphism.

Previously, the ES1, ES2, and shared GLAPI printers passed a list of
function names to the base class constructor, which was used by the
_override_for_api() function to loop over all the API functions and
adjust their 'hidden' and 'handcode' attributes as appropriate for the
API flavour being code-generated.

This patch lifts the loop from _override_for_api() into its caller,
and makes it into a polymorphic function, so that the derived classes
can customize its behaviour directly.  In a future patch, this will
allow us to override the 'hidden' and 'handcode' attributes based on
information from the XML rather than a list of functions.

Tested-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mapi/mapi/mapi_abi.py