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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//! # Asynchronous wrapper for DNS-SD C libraries
//!
//! Interesting entry points:
//!
//! * [Browses for available services](method.browse.html)
//! * [Create Connection to register records with](method.connect.html)
//! * [Enumerates domains that are recommended for registration or browsing](method.enumerate_domains.html)
//! * [Query for an arbitrary DNS record](method.query_record.html)
//! * [Registers a service](method.register.html)
//! * [Find hostname and port (and more) for a service](method.resolve.html)
//!
//! Also the following things might be interesting:
//!
//! * [Purge record from cache](method.reconfirm_record.html)
//! * [Construct full name](struct.FullName#method.construct)
//! * [Stream timeouts](struct.TimeoutStream)

#![warn(missing_docs)]

extern crate futures;
#[cfg(windows)] // only the windows event loop has debug logging for now
#[macro_use]
extern crate log;
extern crate mio;
extern crate tokio_core;

#[cfg(windows)]
extern crate libc;
#[cfg(windows)]
extern crate ws2_32;
#[cfg(windows)]
extern crate winapi;

pub use self::error::*;
pub use self::ffi::MAX_DOMAIN_NAME;
pub use self::interface::*;
pub use self::remote::*;
pub use self::service::*;
pub use self::timeout_stream::*;

mod flags_macro;

mod cstr;
mod error;
mod evented;
mod ffi;
mod future;
mod interface;
mod raw;
mod raw_box;
mod remote;
mod service;
mod stream;
mod timeout_stream;