Node.js Addon Development

readdirSync

#define SYNC_DEST_CALL(func, path, dest, ...)             \
  fs_req_wrap req_wrap;                                   \
  int err = uv_fs_ ## func(env->event_loop(),             \
                         &req_wrap.req,                   \
                         __VA_ARGS__,                     \
                         NULL);                           \
  if (err < 0) {                                          \
    if (dest != NULL &&                                   \
        (err == UV_EEXIST ||                              \
         err == UV_ENOTEMPTY ||                           \
         err == UV_EPERM)) {                              \
      return env->ThrowUVException(err, #func, "", dest); \
    } else {                                              \
      return env->ThrowUVException(err, #func, "", path); \
    }                                                     \
  }