Lines Matching refs:state
77 aeApiState *state = zmalloc(sizeof(aeApiState)); in aeApiCreate() local
78 if (!state) return -1; in aeApiCreate()
80 state->portfd = port_create(); in aeApiCreate()
81 if (state->portfd == -1) { in aeApiCreate()
82 zfree(state); in aeApiCreate()
86 state->npending = 0; in aeApiCreate()
89 state->pending_fds[i] = -1; in aeApiCreate()
90 state->pending_masks[i] = AE_NONE; in aeApiCreate()
93 eventLoop->apidata = state; in aeApiCreate()
103 aeApiState *state = eventLoop->apidata; in aeApiFree() local
105 close(state->portfd); in aeApiFree()
106 zfree(state); in aeApiFree()
109 static int aeApiLookupPending(aeApiState *state, int fd) { in aeApiLookupPending() argument
112 for (i = 0; i < state->npending; i++) { in aeApiLookupPending()
113 if (state->pending_fds[i] == fd) in aeApiLookupPending()
153 aeApiState *state = eventLoop->apidata; in aeApiAddEvent() local
165 pfd = aeApiLookupPending(state, fd); in aeApiAddEvent()
176 state->pending_masks[pfd] |= fullmask; in aeApiAddEvent()
180 return (aeApiAssociate("aeApiAddEvent", state->portfd, fd, fullmask)); in aeApiAddEvent()
184 aeApiState *state = eventLoop->apidata; in aeApiDelEvent() local
190 pfd = aeApiLookupPending(state, fd); in aeApiDelEvent()
201 state->pending_masks[pfd] &= ~mask; in aeApiDelEvent()
203 if (state->pending_masks[pfd] == AE_NONE) in aeApiDelEvent()
204 state->pending_fds[pfd] = -1; in aeApiDelEvent()
226 if (port_dissociate(state->portfd, PORT_SOURCE_FD, fd) != 0) { in aeApiDelEvent()
230 } else if (aeApiAssociate("aeApiDelEvent", state->portfd, fd, in aeApiDelEvent()
244 aeApiState *state = eventLoop->apidata; in aeApiPoll() local
255 for (i = 0; i < state->npending; i++) { in aeApiPoll()
256 if (state->pending_fds[i] == -1) in aeApiPoll()
260 if (aeApiAssociate("aeApiPoll", state->portfd, in aeApiPoll()
261 state->pending_fds[i], state->pending_masks[i]) != 0) { in aeApiPoll()
266 state->pending_masks[i] = AE_NONE; in aeApiPoll()
267 state->pending_fds[i] = -1; in aeApiPoll()
270 state->npending = 0; in aeApiPoll()
285 if (port_getn(state->portfd, event, MAX_EVENT_BATCHSZ, &nevents, in aeApiPoll()
295 state->npending = nevents; in aeApiPoll()
311 state->pending_fds[i] = event[i].portev_object; in aeApiPoll()
312 state->pending_masks[i] = (uintptr_t)event[i].portev_user; in aeApiPoll()