static void heightmap_del_positionable(ilG_heightmap *self, il_positionable pos) { for (unsigned i = 0; i < self->positionables.length-1; i++) { if (pos_eq(self->positionables.data[i], pos)) { self->positionables.data[i] = self->positionables.data[--self->positionables.length]; return; } } if (self->positionables.length > 0 && pos_eq(self->positionables.data[self->positionables.length-1], pos)) { --self->positionables.length; return; } il_error("Heightmap %p does not own positionable %i[%p]", self, pos.id, pos.world); }
/* PUBLIC */ void fwrite_demod_clist(FILE *fp, Clist lst, int format) { Clist_pos p; if (lst->name == NULL || str_ident(lst->name, "")) fprintf(fp, "\nformulas(anonymous).\n"); else fprintf(fp, "\nformulas(%s).\n", lst->name); for (p = lst->first; p != NULL; p = p->next) { Topform c = p->c; fwrite_clause(fp, c, format); if (unit_clause(c->literals)&& pos_eq(c->literals) && !oriented_eq(c->literals->atom)) { fprintf(fp, " %% (lex-dep)\n"); } } fprintf(fp, "end_of_list.\n"); fflush(fp); } /* fwrite_demod_clist */