ansible_inventory_cloud/http/
hostname.rs1use serde::{de::DeserializeOwned, Deserialize, Serialize};
2
3#[derive(Debug, Clone)]
7pub enum Hostname<HAP, HQ>
8where
9 HAP: HostnameAxumPath,
10 HQ: HostnameQuery,
11{
12 AxumPath(HAP),
13 Query(HQ),
14}
15
16#[derive(Debug, Clone, Copy)]
17pub enum HostnameType {
18 AxumPath,
19 Query,
20}
21
22pub trait HostnameAxumPath: DeserializeOwned {}
26impl<T> HostnameAxumPath for T where T: DeserializeOwned {}
27
28pub trait HostnameQuery: DeserializeOwned {}
32impl<T> HostnameQuery for T where T: DeserializeOwned {}
33
34#[derive(Deserialize, Serialize, Debug, Clone)]
35pub struct GenericHostnameQuery {
36 pub name: String,
37}