#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileState {
#[prost(int64, tag = "1")]
pub mtime_millis_since_epoch: i64,
#[prost(uint64, tag = "2")]
pub size: u64,
#[prost(enumeration = "FileType", tag = "3")]
pub file_type: i32,
#[deprecated]
#[prost(bytes = "vec", tag = "4")]
pub conflict_id: ::prost::alloc::vec::Vec<u8>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SparsePatterns {
#[prost(string, repeated, tag = "1")]
pub prefixes: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TreeState {
#[prost(bytes = "vec", tag = "1")]
pub legacy_tree_id: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", repeated, tag = "5")]
pub tree_ids: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
#[prost(map = "string, message", tag = "2")]
pub file_states: ::std::collections::HashMap<
::prost::alloc::string::String,
FileState,
>,
#[prost(message, optional, tag = "3")]
pub sparse_patterns: ::core::option::Option<SparsePatterns>,
#[prost(message, optional, tag = "4")]
pub watchman_clock: ::core::option::Option<WatchmanClock>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WatchmanClock {
#[prost(oneof = "watchman_clock::WatchmanClock", tags = "1, 2")]
pub watchman_clock: ::core::option::Option<watchman_clock::WatchmanClock>,
}
pub mod watchman_clock {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum WatchmanClock {
#[prost(string, tag = "1")]
StringClock(::prost::alloc::string::String),
#[prost(int64, tag = "2")]
UnixTimestamp(i64),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Checkout {
#[prost(bytes = "vec", tag = "2")]
pub operation_id: ::prost::alloc::vec::Vec<u8>,
#[prost(string, tag = "3")]
pub workspace_id: ::prost::alloc::string::String,
#[prost(bytes = "vec", tag = "1")]
pub commit_id: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum FileType {
Normal = 0,
Symlink = 1,
Executable = 2,
Conflict = 3,
GitSubmodule = 4,
}
impl FileType {
pub fn as_str_name(&self) -> &'static str {
match self {
FileType::Normal => "Normal",
FileType::Symlink => "Symlink",
FileType::Executable => "Executable",
FileType::Conflict => "Conflict",
FileType::GitSubmodule => "GitSubmodule",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"Normal" => Some(Self::Normal),
"Symlink" => Some(Self::Symlink),
"Executable" => Some(Self::Executable),
"Conflict" => Some(Self::Conflict),
"GitSubmodule" => Some(Self::GitSubmodule),
_ => None,
}
}
}