aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/event/time.h
blob: e84488fdd6275925378ee637631395264d19f629 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef NVIM_EVENT_TIME_H
#define NVIM_EVENT_TIME_H

#include <stdbool.h>
#include <uv.h>

#include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h"

struct time_watcher;

typedef struct time_watcher TimeWatcher;
typedef void (*time_cb)(TimeWatcher *watcher, void *data);

struct time_watcher {
  uv_timer_t uv;
  void *data;
  time_cb cb, close_cb;
  MultiQueue *events;
  bool blockable;
};

#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/time.h.generated.h"
#endif
#endif  // NVIM_EVENT_TIME_H