google_cloud_compute_v1/
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 - Google Compute Engine API
18//!
19//!
20//!
21//! This crate contains traits, types, and functions to interact with Google Compute Engine API
22//! Most applications will use the structs defined in the [client] module.
23//!
24//!
25//! The client library types and functions are stable and not expected to change.
26//! Please note that Google Cloud services do change from time to time. The client
27//! libraries are designed to preserve backwards compatibility when the service
28//! changes in compatible ways. For example, adding RPCs, or fields to messages
29//! should not introduce breaking changes to the client libraries.
30//!
31//!
32//! # Available Clients
33//!
34//! * [Images](client/struct.Images.html)
35//! * [InstanceGroupManagerResizeRequests](client/struct.InstanceGroupManagerResizeRequests.html)
36//! * [InstanceGroupManagers](client/struct.InstanceGroupManagers.html)
37//! * [InstanceGroups](client/struct.InstanceGroups.html)
38//! * [Instances](client/struct.Instances.html)
39//! * [MachineTypes](client/struct.MachineTypes.html)
40//! * [RegionInstanceGroupManagers](client/struct.RegionInstanceGroupManagers.html)
41//! * [RegionInstanceGroups](client/struct.RegionInstanceGroups.html)
42//! * [RegionInstanceTemplates](client/struct.RegionInstanceTemplates.html)
43//! * [RegionInstances](client/struct.RegionInstances.html)
44//! * [RegionOperations](client/struct.RegionOperations.html)
45//! * [ZoneOperations](client/struct.ZoneOperations.html)
46//! * [Zones](client/struct.Zones.html)
47
48#![cfg_attr(docsrs, feature(doc_cfg))]
49#![allow(deprecated)]
50
51/// The messages and enums that are part of this client library.
52#[allow(clippy::module_inception)]
53pub mod model;
54
55pub use gax::Result;
56pub use gax::error::Error;
57
58#[allow(rustdoc::invalid_html_tags)]
59#[allow(rustdoc::redundant_explicit_links)]
60pub mod stub;
61
62/// Concrete implementations of this client library traits.
63pub mod client;
64
65/// Request builders.
66pub mod builder;
67
68#[doc(hidden)]
69pub(crate) mod tracing;
70
71#[doc(hidden)]
72pub(crate) mod transport;
73
74/// The default host used by the service.
75#[cfg(any(
76    feature = "images",
77    feature = "instance-group-manager-resize-requests",
78    feature = "instance-group-managers",
79    feature = "instance-groups",
80    feature = "instances",
81    feature = "machine-types",
82    feature = "region-instance-group-managers",
83    feature = "region-instance-groups",
84    feature = "region-instance-templates",
85    feature = "region-instances",
86    feature = "region-operations",
87    feature = "zone-operations",
88    feature = "zones",
89))]
90const DEFAULT_HOST: &str = "https://compute.googleapis.com/";
91
92#[cfg(any(
93    feature = "images",
94    feature = "instance-group-manager-resize-requests",
95    feature = "instance-group-managers",
96    feature = "instance-groups",
97    feature = "instances",
98    feature = "machine-types",
99    feature = "region-instance-group-managers",
100    feature = "region-instance-groups",
101    feature = "region-instance-templates",
102    feature = "region-instances",
103    feature = "region-operations",
104    feature = "zone-operations",
105    feature = "zones",
106))]
107pub(crate) mod info {
108    const NAME: &str = env!("CARGO_PKG_NAME");
109    const VERSION: &str = env!("CARGO_PKG_VERSION");
110    lazy_static::lazy_static! {
111        pub(crate) static ref X_GOOG_API_CLIENT_HEADER: String = {
112            let ac = gaxi::api_header::XGoogApiClient{
113                name:          NAME,
114                version:       VERSION,
115                library_type:  gaxi::api_header::GAPIC,
116            };
117            ac.rest_header_value()
118        };
119    }
120}