There is a class in jextract called CDeclarationPrinter, whose job is that to print the C equivalent of a declaration. Libclang has a similar feature, as it supports customizable pretty printing of cursors. We should investigate whether it's possible to use pretty printing instead of ad-hoc complex visitors.