Mercurial > emacs
view lib-src/=wakeup.c @ 2782:683f4472f1c8
* lisp.h (Lisp_Overlay): New tag.
(OVERLAYP): New predicate.
(CHECK_OVERLAY): New type-checker.
(Qoverlayp): New extern declaration.
* buffer.c (Foverlayp): New function.
(Qoverlayp): New atom.
(overlays_at, recenter_overlay_lists): Abort if we encounter an
invalid overlay.
(syms_of_buffer): defsubr Soverlayp; initialize Qoverlayp.
(Fdelete_overlay): Set the overlay's markers to point nowhere.
Use CHECK_OVERLAY instead of signalling a special error.
(Fmove_overlay, Foverlay_put): Use CHECK_OVERLAY instead of
signalling a special error.
(Foverlay_get): Use CHECK_OVERLAY.
* fns.c (internal_equal): Define this for overlays.
* buffer.h (OVERLAY_VALID): Define in terms of OVERLAYP.
* print.c (print): Give overlays their own print syntax.
* alloc.c (mark_object): Treat overlays like conses.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Fri, 14 May 1993 14:43:00 +0000 |
parents | f756ede77561 |
children | 44df7395bed8 |
line wrap: on
line source
/* Program to produce output at regular intervals. */ #include <stdio.h> #include <time.h> struct tm *localtime (); main (argc, argv) int argc; char **argv; { int period = 60; long when; struct tm *tp; if (argc > 1) period = atoi (argv[1]); while (1) { /* Make sure wakeup stops when Emacs goes away. */ if (getppid () == 1) exit (0); printf ("Wake up!\n"); fflush (stdout); /* If using a period of 60, produce the output when the minute changes. */ if (period == 60) { time (&when); tp = localtime (&when); sleep (60 - tp->tm_sec); } else sleep (period); } }