FreeCalypso > hg > ueda-linux
view ueda/libuschem/schemobj.c @ 13:1f3283f8e482
unet-bind: instance hash implemented
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Sun, 02 Aug 2015 00:00:15 +0000 |
parents | cd92449fdb51 |
children |
line wrap: on
line source
/* * Schematic object utility functions */ #include <sys/types.h> #include <stdio.h> #include "schemstruct.h" schemobj_insert_after(oldobj, newobj) register struct schemobj *oldobj, *newobj; { newobj->obj_next = oldobj->obj_next; newobj->obj_prev = oldobj; oldobj->obj_next = newobj; newobj->obj_next->obj_prev = newobj; } schemobj_insert_before(oldobj, newobj) register struct schemobj *oldobj, *newobj; { newobj->obj_next = oldobj; newobj->obj_prev = oldobj->obj_prev; oldobj->obj_prev = newobj; newobj->obj_prev->obj_next = newobj; } schemobj_unlink(delobj) register struct schemobj *delobj; { if (!delobj->obj_type) { fprintf(stderr, "Fatal internal error: attempt to unlink sentinel object\n"); abort(); } delobj->obj_prev->obj_next = delobj->obj_next; delobj->obj_next->obj_prev = delobj->obj_prev; }