CInterface

A interface: a named set of function signatures that can be implemented for other types.