#[cfg(feature = "serde")]
use serde::{Deserialize, Serialize};
#[derive(Clone, PartialEq, ::prost::Message)]
#[cfg_attr(
feature = "serde",
derive(Serialize, Deserialize),
serde(rename_all = "camelCase")
)]
pub struct Extension {
#[prost(string, tag = "1")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub value: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
#[cfg_attr(
feature = "serde",
derive(Serialize, Deserialize),
serde(rename_all = "camelCase")
)]
pub struct Expression {
#[prost(string, tag = "1")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub syntax: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub value: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub version: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
#[cfg_attr(
feature = "serde",
derive(Serialize, Deserialize),
serde(rename_all = "camelCase")
)]
pub struct VcfRecord {
#[prost(string, tag = "1")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub genome_assembly: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub chrom: ::prost::alloc::string::String,
#[prost(uint64, tag = "3")]
pub pos: u64,
#[prost(string, tag = "4")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub r#ref: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub alt: ::prost::alloc::string::String,
#[prost(string, tag = "7")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub qual: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub info: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
#[cfg_attr(
feature = "serde",
derive(Serialize, Deserialize),
serde(rename_all = "camelCase")
)]
pub struct VariationDescriptor {
#[prost(string, tag = "1")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Option::is_none", default)
)]
pub variation: ::core::option::Option<crate::ga4gh::vrs::v1::Variation>,
#[prost(string, tag = "3")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub label: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub description: ::prost::alloc::string::String,
#[prost(message, optional, tag = "5")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Option::is_none", default)
)]
pub gene_context: ::core::option::Option<GeneDescriptor>,
#[prost(message, repeated, tag = "6")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub expressions: ::prost::alloc::vec::Vec<Expression>,
#[prost(message, optional, tag = "7")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Option::is_none", default)
)]
pub vcf_record: ::core::option::Option<VcfRecord>,
#[prost(string, repeated, tag = "8")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub xrefs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag = "9")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub alternate_labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "10")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub extensions: ::prost::alloc::vec::Vec<Extension>,
#[prost(enumeration = "MoleculeContext", tag = "11")]
#[cfg_attr(
feature = "serde",
serde(
serialize_with = "crate::serde::helpers::serialize_molecule_context",
deserialize_with = "crate::serde::helpers::deserialize_molecule_context",
default,
)
)]
pub molecule_context: i32,
#[prost(message, optional, tag = "12")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Option::is_none", default)
)]
pub structural_type: ::core::option::Option<crate::schema::v2::core::OntologyClass>,
#[prost(string, tag = "13")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub vrs_ref_allele_seq: ::prost::alloc::string::String,
#[prost(message, optional, tag = "14")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Option::is_none", default)
)]
pub allelic_state: ::core::option::Option<crate::schema::v2::core::OntologyClass>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
#[cfg_attr(
feature = "serde",
derive(Serialize, Deserialize),
serde(rename_all = "camelCase")
)]
pub struct GeneDescriptor {
#[prost(string, tag = "1")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub value_id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub symbol: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "String::is_empty", default)
)]
pub description: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "4")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub alternate_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag = "5")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub alternate_symbols: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag = "6")]
#[cfg_attr(
feature = "serde",
serde(skip_serializing_if = "Vec::is_empty", default)
)]
pub xrefs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MoleculeContext {
UnspecifiedMoleculeContext = 0,
Genomic = 1,
Transcript = 2,
Protein = 3,
}
impl MoleculeContext {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::UnspecifiedMoleculeContext => "unspecified_molecule_context",
Self::Genomic => "genomic",
Self::Transcript => "transcript",
Self::Protein => "protein",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"unspecified_molecule_context" => Some(Self::UnspecifiedMoleculeContext),
"genomic" => Some(Self::Genomic),
"transcript" => Some(Self::Transcript),
"protein" => Some(Self::Protein),
_ => None,
}
}
}