Ejemplo n.º 1
0
void
PolyHLReader_close(PolyHighlightReader *self) {
    if (self->readers) {
        for (uint32_t i = 0, max = VA_Get_Size(self->readers); i < max; i++) {
            HighlightReader *sub_reader
                = (HighlightReader*)VA_Fetch(self->readers, i);
            if (sub_reader) { HLReader_Close(sub_reader); }
        }
        DECREF(self->readers);
        DECREF(self->offsets);
        self->readers = NULL;
        self->offsets = NULL;
    }
}
Ejemplo n.º 2
0
void
PolyHLReader_Close_IMP(PolyHighlightReader *self) {
    PolyHighlightReaderIVARS *const ivars = PolyHLReader_IVARS(self);
    if (ivars->readers) {
        for (size_t i = 0, max = Vec_Get_Size(ivars->readers); i < max; i++) {
            HighlightReader *sub_reader
                = (HighlightReader*)Vec_Fetch(ivars->readers, i);
            if (sub_reader) { HLReader_Close(sub_reader); }
        }
        DECREF(ivars->readers);
        DECREF(ivars->offsets);
        ivars->readers = NULL;
        ivars->offsets = NULL;
    }
}