From 08d8795d175715b26281ac8db243ae0cf38b8837 Mon Sep 17 00:00:00 2001 From: Lucio Franco Date: Tue, 1 Oct 2019 17:08:32 -0400 Subject: [PATCH] more docs --- .github/assets/tonic-docs.png | Bin 0 -> 9144 bytes tonic-build/Cargo.toml | 3 +++ tonic/Cargo.toml | 4 ++++ tonic/src/lib.rs | 34 ++++++++++++++++++++------------ tonic/src/transport/endpoint.rs | 14 +++++++++++++ tonic/src/transport/server.rs | 2 ++ 6 files changed, 44 insertions(+), 13 deletions(-) create mode 100644 .github/assets/tonic-docs.png diff --git a/.github/assets/tonic-docs.png b/.github/assets/tonic-docs.png new file mode 100644 index 0000000000000000000000000000000000000000..ee2003960a14047b3baf49aabdd1609323998969 GIT binary patch literal 9144 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 #[doc(hidden)] #[cfg(feature = "codegen")] +#[cfg_attr(docsrs, doc(cfg(feature = "codegen")))] pub mod codegen; diff --git a/tonic/src/transport/endpoint.rs b/tonic/src/transport/endpoint.rs index fda3241..abd0e1e 100644 --- a/tonic/src/transport/endpoint.rs +++ b/tonic/src/transport/endpoint.rs @@ -101,6 +101,12 @@ impl Endpoint { self } + /// Enable TLS and apply the CA as the root certificate. + /// + /// Providing an optional domain to override. If `None` is passed to this + /// the TLS implementation will use the `Uri` that was used to create the + /// `Endpoint` builder. + /// /// ```no_run /// # use tonic::transport::{Certificate, Endpoint}; /// # fn dothing() -> Result<(), Box> { @@ -114,6 +120,7 @@ impl Endpoint { /// # } /// ``` #[cfg(feature = "openssl")] + #[cfg_attr(docsrs, doc(cfg(feature = "openssl")))] pub fn openssl_tls(&mut self, ca: Certificate, domain: impl Into>) -> &mut Self { let domain = domain .into() @@ -123,6 +130,12 @@ impl Endpoint { self } + /// Enable TLS and apply the CA as the root certificate. + /// + /// Providing an optional domain to override. If `None` is passed to this + /// the TLS implementation will use the `Uri` that was used to create the + /// `Endpoint` builder. + /// /// ```no_run /// # use tonic::transport::{Certificate, Endpoint}; /// # fn dothing() -> Result<(), Box> { @@ -136,6 +149,7 @@ impl Endpoint { /// # } /// ``` #[cfg(feature = "rustls")] + #[cfg_attr(docsrs, doc(cfg(feature = "rustls")))] pub fn rustls_tls(&mut self, ca: Certificate, domain: impl Into>) -> &mut Self { let domain = domain .into() diff --git a/tonic/src/transport/server.rs b/tonic/src/transport/server.rs index 41c6780..b746631 100644 --- a/tonic/src/transport/server.rs +++ b/tonic/src/transport/server.rs @@ -73,6 +73,7 @@ impl Server { /// # } /// ``` #[cfg(feature = "openssl")] + #[cfg_attr(docsrs, doc(cfg(feature = "openssl")))] pub fn openssl_tls(&mut self, identity: Identity) -> &mut Self { let acceptor = TlsAcceptor::new_with_openssl(identity).unwrap(); self.tls = Some(acceptor); @@ -95,6 +96,7 @@ impl Server { /// # } /// ``` #[cfg(feature = "rustls")] + #[cfg_attr(docsrs, doc(cfg(feature = "rustls")))] pub fn rustls_tls(&mut self, identity: Identity) -> &mut Self { let acceptor = TlsAcceptor::new_with_rustls(identity).unwrap(); self.tls = Some(acceptor);