/**********************************************************/ /* apimagic: cparser-based API normalization utility */ /* Copyright (C) 2015--2016 Z. Gilboa */ /* Released under GPLv2 and GPLv3; see COPYING.APIMAGIC. */ /**********************************************************/ #include #include #include #include #include "apimagic_driver_impl.h" static int output_typedefs( const struct amgc_unit_ctx * uctx, int subset, const struct amgc_layout * layout, FILE * fout) { struct amgc_entity * aentity; for (aentity=uctx->entities->typedefs; aentity->entity; aentity++) if (aentity->reftype->kind == subset) if (amgc_output_typedef(uctx,aentity,layout,fout) < 0) return -1; return 0; } int amgc_output_unit_entities( const struct amgc_unit_ctx * uctx, int kind, int subset, const struct amgc_layout * layout, FILE * fout) { switch (kind) { case ENTITY_ENUM: return amgc_output_unit_enums(uctx,layout,fout); case ENTITY_TYPEDEF: return output_typedefs(uctx,subset,layout,fout); case ENTITY_STRUCT: return amgc_output_unit_structs(uctx,layout,fout); case ENTITY_UNION: return amgc_output_unit_unions(uctx,layout,fout); } return -1; }