google_cloud_bigquery_v2/lib.rs
1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17//! Google Cloud Client Libraries for Rust - BigQuery API
18//!
19//! **FEEDBACK WANTED:** We believe the APIs in this crate are stable, and
20//! do not anticipate any breaking changes are needed. We are looking for
21//! feedback before labeling the APIs "1.0". Changes (even breaking changes)
22//! are still possible, but not expected.
23//!
24//! We also believe the implementation is ready for production, bugs are
25//! still possible, but not expected.
26//!
27//! This crate contains traits, types, and functions to interact with BigQuery API
28//! Most applications will use the structs defined in the [client] module.
29//!
30//! # Available Clients
31//!
32//! * [DatasetService](client/struct.DatasetService.html)
33//! * [JobService](client/struct.JobService.html)
34//! * [ModelService](client/struct.ModelService.html)
35//! * [ProjectService](client/struct.ProjectService.html)
36//! * [RoutineService](client/struct.RoutineService.html)
37//! * [RowAccessPolicyService](client/struct.RowAccessPolicyService.html)
38//! * [TableService](client/struct.TableService.html)
39//!
40//! # Features
41//!
42//! - `default-rustls-provider`: enabled by default. Use the default rustls
43//! crypto provider ([aws-lc-rs]) for TLS and authentication. Applications
44//! with specific requirements for cryptography (such as exclusively using the
45//! [ring] crate) should disable this default and call
46//! `rustls::crypto::CryptoProvider::install_default()`.
47//!
48//! [aws-lc-rs]: https://crates.io/crates/aws-lc-rs
49//! [ring]: https://crates.io/crates/ring
50
51#![allow(deprecated)]
52
53/// The messages and enums that are part of this client library.
54#[allow(clippy::module_inception)]
55pub mod model;
56
57pub use google_cloud_gax::Result;
58pub use google_cloud_gax::error::Error;
59
60#[allow(rustdoc::invalid_html_tags)]
61#[allow(rustdoc::redundant_explicit_links)]
62pub mod stub;
63
64///
65/// # Example
66/// ```
67/// # use google_cloud_bigquery_v2::client::DatasetService;
68/// async fn sample(
69/// ) -> anyhow::Result<()> {
70/// let client = DatasetService::builder().build().await?;
71/// let response = client.get_dataset()
72/// /* set fields */
73/// .send().await?;
74/// println!("response {:?}", response);
75/// Ok(())
76/// }
77/// ```
78/// Concrete implementations of this client library traits.
79pub mod client;
80
81/// Request builders.
82pub mod builder;
83
84#[doc(hidden)]
85pub(crate) mod tracing;
86
87#[doc(hidden)]
88pub(crate) mod transport;
89
90/// The default host used by the service.
91const DEFAULT_HOST: &str = "https://bigquery.googleapis.com/";
92
93pub(crate) mod info {
94 const NAME: &str = env!("CARGO_PKG_NAME");
95 const VERSION: &str = env!("CARGO_PKG_VERSION");
96 pub(crate) static X_GOOG_API_CLIENT_HEADER: std::sync::LazyLock<String> =
97 std::sync::LazyLock::new(|| {
98 let ac = gaxi::api_header::XGoogApiClient {
99 name: NAME,
100 version: VERSION,
101 library_type: gaxi::api_header::GAPIC,
102 };
103 ac.rest_header_value()
104 });
105}
106
107// Define some shortcuts for imported crates.
108pub(crate) use google_cloud_gax::client_builder::ClientBuilder;
109pub(crate) use google_cloud_gax::client_builder::Result as ClientBuilderResult;
110pub(crate) use google_cloud_gax::client_builder::internal::ClientFactory;
111pub(crate) use google_cloud_gax::client_builder::internal::new_builder as new_client_builder;
112pub(crate) use google_cloud_gax::options::RequestOptions;
113pub(crate) use google_cloud_gax::options::internal::RequestBuilder;
114pub(crate) use google_cloud_gax::response::Response;
115
116#[allow(missing_docs)]
117pub mod operation;