slack_hook/
lib.rs

1// TODO(cosmic): switch from deny to warn (except for `unsafe_code`) and prune some of these
2#![deny(
3    missing_docs,
4    missing_debug_implementations,
5    trivial_casts,
6    trivial_numeric_casts,
7    unsafe_code,
8    unstable_features,
9    unused_import_braces,
10    unused_qualifications,
11    unused_results,
12    rust_2018_idioms
13)]
14#![cfg_attr(docsrs, feature(doc_cfg))]
15
16//! Library to send messages to slack rooms
17//! supports entire messaging API, including attachments and fields
18//! also support for built-in colors as well as any hex colors
19
20// Run doctests on the README
21#[cfg_attr(feature = "blocking", doc = include_str!("../README.md"))]
22#[cfg(doctest)]
23pub struct ReadmeDoctests;
24
25// TODO(cosmic): We probably want _some_ level of nesting instead of having everything in the root
26pub use crate::attachment::{Action, Attachment, AttachmentBuilder, Field, Section};
27pub use crate::error::{Error, Result};
28pub use crate::hex::{HexColor, SlackColor};
29pub use crate::payload::{Parse, Payload, PayloadBuilder};
30pub use crate::slack::{Slack, SlackLink, SlackText, SlackTextContent, SlackTime, SlackUserLink};
31
32#[macro_use]
33mod macros;
34
35mod attachment;
36/// A blocking slack client
37#[cfg(feature = "blocking")]
38#[cfg_attr(docsrs, doc(cfg(feature = "blocking")))]
39pub mod blocking;
40mod error;
41mod hex;
42mod payload;
43mod slack;