// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated

// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]

#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]

#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]

//! Generated file from `steammessages_lobbymatchmaking.steamclient.proto`
// Generated for lite runtime

/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;

// @@protoc_insertion_point(message:LobbyMatchmakingLegacy_GetLobbyStatus_Request)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    // message fields
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.app_id)
    pub app_id: ::std::option::Option<u32>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.steamid_lobby)
    pub steamid_lobby: ::std::option::Option<u64>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.claim_ownership)
    pub claim_ownership: ::std::option::Option<bool>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.claim_membership)
    pub claim_membership: ::std::option::Option<bool>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.version_num)
    pub version_num: ::std::option::Option<u32>,
    // special fields
    // @@protoc_insertion_point(special_field:LobbyMatchmakingLegacy_GetLobbyStatus_Request.special_fields)
    pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}

impl<'a> ::std::default::Default for &'a LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    fn default() -> &'a LobbyMatchmakingLegacy_GetLobbyStatus_Request {
        <LobbyMatchmakingLegacy_GetLobbyStatus_Request as ::steam_vent_proto_common::protobuf::Message>::default_instance()
    }
}

impl LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    pub fn new() -> LobbyMatchmakingLegacy_GetLobbyStatus_Request {
        ::std::default::Default::default()
    }

    // optional uint32 app_id = 1;

    pub fn app_id(&self) -> u32 {
        self.app_id.unwrap_or(0)
    }

    pub fn clear_app_id(&mut self) {
        self.app_id = ::std::option::Option::None;
    }

    pub fn has_app_id(&self) -> bool {
        self.app_id.is_some()
    }

    // Param is passed by value, moved
    pub fn set_app_id(&mut self, v: u32) {
        self.app_id = ::std::option::Option::Some(v);
    }

    // optional fixed64 steamid_lobby = 2;

    pub fn steamid_lobby(&self) -> u64 {
        self.steamid_lobby.unwrap_or(0)
    }

    pub fn clear_steamid_lobby(&mut self) {
        self.steamid_lobby = ::std::option::Option::None;
    }

    pub fn has_steamid_lobby(&self) -> bool {
        self.steamid_lobby.is_some()
    }

    // Param is passed by value, moved
    pub fn set_steamid_lobby(&mut self, v: u64) {
        self.steamid_lobby = ::std::option::Option::Some(v);
    }

    // optional bool claim_ownership = 3;

    pub fn claim_ownership(&self) -> bool {
        self.claim_ownership.unwrap_or(false)
    }

    pub fn clear_claim_ownership(&mut self) {
        self.claim_ownership = ::std::option::Option::None;
    }

    pub fn has_claim_ownership(&self) -> bool {
        self.claim_ownership.is_some()
    }

    // Param is passed by value, moved
    pub fn set_claim_ownership(&mut self, v: bool) {
        self.claim_ownership = ::std::option::Option::Some(v);
    }

    // optional bool claim_membership = 4;

    pub fn claim_membership(&self) -> bool {
        self.claim_membership.unwrap_or(false)
    }

    pub fn clear_claim_membership(&mut self) {
        self.claim_membership = ::std::option::Option::None;
    }

    pub fn has_claim_membership(&self) -> bool {
        self.claim_membership.is_some()
    }

    // Param is passed by value, moved
    pub fn set_claim_membership(&mut self, v: bool) {
        self.claim_membership = ::std::option::Option::Some(v);
    }

    // optional uint32 version_num = 5;

    pub fn version_num(&self) -> u32 {
        self.version_num.unwrap_or(0)
    }

    pub fn clear_version_num(&mut self) {
        self.version_num = ::std::option::Option::None;
    }

    pub fn has_version_num(&self) -> bool {
        self.version_num.is_some()
    }

    // Param is passed by value, moved
    pub fn set_version_num(&mut self, v: u32) {
        self.version_num = ::std::option::Option::Some(v);
    }
}

impl ::steam_vent_proto_common::protobuf::Message for LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    const NAME: &'static str = "LobbyMatchmakingLegacy_GetLobbyStatus_Request";

    fn is_initialized(&self) -> bool {
        true
    }

    fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
        while let Some(tag) = is.read_raw_tag_or_eof()? {
            match tag {
                8 => {
                    self.app_id = ::std::option::Option::Some(is.read_uint32()?);
                },
                17 => {
                    self.steamid_lobby = ::std::option::Option::Some(is.read_fixed64()?);
                },
                24 => {
                    self.claim_ownership = ::std::option::Option::Some(is.read_bool()?);
                },
                32 => {
                    self.claim_membership = ::std::option::Option::Some(is.read_bool()?);
                },
                40 => {
                    self.version_num = ::std::option::Option::Some(is.read_uint32()?);
                },
                tag => {
                    ::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
                },
            };
        }
        ::std::result::Result::Ok(())
    }

    // Compute sizes of nested messages
    #[allow(unused_variables)]
    fn compute_size(&self) -> u64 {
        let mut my_size = 0;
        if let Some(v) = self.app_id {
            my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
        }
        if let Some(v) = self.steamid_lobby {
            my_size += 1 + 8;
        }
        if let Some(v) = self.claim_ownership {
            my_size += 1 + 1;
        }
        if let Some(v) = self.claim_membership {
            my_size += 1 + 1;
        }
        if let Some(v) = self.version_num {
            my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(5, v);
        }
        my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
        self.special_fields.cached_size().set(my_size as u32);
        my_size
    }

    fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
        if let Some(v) = self.app_id {
            os.write_uint32(1, v)?;
        }
        if let Some(v) = self.steamid_lobby {
            os.write_fixed64(2, v)?;
        }
        if let Some(v) = self.claim_ownership {
            os.write_bool(3, v)?;
        }
        if let Some(v) = self.claim_membership {
            os.write_bool(4, v)?;
        }
        if let Some(v) = self.version_num {
            os.write_uint32(5, v)?;
        }
        os.write_unknown_fields(self.special_fields.unknown_fields())?;
        ::std::result::Result::Ok(())
    }

    fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
        &self.special_fields
    }

    fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
        &mut self.special_fields
    }

    fn new() -> LobbyMatchmakingLegacy_GetLobbyStatus_Request {
        LobbyMatchmakingLegacy_GetLobbyStatus_Request::new()
    }

    fn clear(&mut self) {
        self.app_id = ::std::option::Option::None;
        self.steamid_lobby = ::std::option::Option::None;
        self.claim_ownership = ::std::option::Option::None;
        self.claim_membership = ::std::option::Option::None;
        self.version_num = ::std::option::Option::None;
        self.special_fields.clear();
    }

    fn default_instance() -> &'static LobbyMatchmakingLegacy_GetLobbyStatus_Request {
        static instance: LobbyMatchmakingLegacy_GetLobbyStatus_Request = LobbyMatchmakingLegacy_GetLobbyStatus_Request {
            app_id: ::std::option::Option::None,
            steamid_lobby: ::std::option::Option::None,
            claim_ownership: ::std::option::Option::None,
            claim_membership: ::std::option::Option::None,
            version_num: ::std::option::Option::None,
            special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
        };
        &instance
    }
}

// @@protoc_insertion_point(message:LobbyMatchmakingLegacy_GetLobbyStatus_Response)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct LobbyMatchmakingLegacy_GetLobbyStatus_Response {
    // message fields
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Response.app_id)
    pub app_id: ::std::option::Option<u32>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Response.steamid_lobby)
    pub steamid_lobby: ::std::option::Option<u64>,
    // @@protoc_insertion_point(field:LobbyMatchmakingLegacy_GetLobbyStatus_Response.lobby_status)
    pub lobby_status: ::std::option::Option<::steam_vent_proto_common::protobuf::EnumOrUnknown<ELobbyStatus>>,
    // special fields
    // @@protoc_insertion_point(special_field:LobbyMatchmakingLegacy_GetLobbyStatus_Response.special_fields)
    pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}

impl<'a> ::std::default::Default for &'a LobbyMatchmakingLegacy_GetLobbyStatus_Response {
    fn default() -> &'a LobbyMatchmakingLegacy_GetLobbyStatus_Response {
        <LobbyMatchmakingLegacy_GetLobbyStatus_Response as ::steam_vent_proto_common::protobuf::Message>::default_instance()
    }
}

impl LobbyMatchmakingLegacy_GetLobbyStatus_Response {
    pub fn new() -> LobbyMatchmakingLegacy_GetLobbyStatus_Response {
        ::std::default::Default::default()
    }

    // optional uint32 app_id = 1;

    pub fn app_id(&self) -> u32 {
        self.app_id.unwrap_or(0)
    }

    pub fn clear_app_id(&mut self) {
        self.app_id = ::std::option::Option::None;
    }

    pub fn has_app_id(&self) -> bool {
        self.app_id.is_some()
    }

    // Param is passed by value, moved
    pub fn set_app_id(&mut self, v: u32) {
        self.app_id = ::std::option::Option::Some(v);
    }

    // optional fixed64 steamid_lobby = 2;

    pub fn steamid_lobby(&self) -> u64 {
        self.steamid_lobby.unwrap_or(0)
    }

    pub fn clear_steamid_lobby(&mut self) {
        self.steamid_lobby = ::std::option::Option::None;
    }

    pub fn has_steamid_lobby(&self) -> bool {
        self.steamid_lobby.is_some()
    }

    // Param is passed by value, moved
    pub fn set_steamid_lobby(&mut self, v: u64) {
        self.steamid_lobby = ::std::option::Option::Some(v);
    }

    // optional .ELobbyStatus lobby_status = 3;

    pub fn lobby_status(&self) -> ELobbyStatus {
        match self.lobby_status {
            Some(e) => e.enum_value_or(ELobbyStatus::k_ELobbyStatusInvalid),
            None => ELobbyStatus::k_ELobbyStatusInvalid,
        }
    }

    pub fn clear_lobby_status(&mut self) {
        self.lobby_status = ::std::option::Option::None;
    }

    pub fn has_lobby_status(&self) -> bool {
        self.lobby_status.is_some()
    }

    // Param is passed by value, moved
    pub fn set_lobby_status(&mut self, v: ELobbyStatus) {
        self.lobby_status = ::std::option::Option::Some(::steam_vent_proto_common::protobuf::EnumOrUnknown::new(v));
    }
}

impl ::steam_vent_proto_common::protobuf::Message for LobbyMatchmakingLegacy_GetLobbyStatus_Response {
    const NAME: &'static str = "LobbyMatchmakingLegacy_GetLobbyStatus_Response";

    fn is_initialized(&self) -> bool {
        true
    }

    fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
        while let Some(tag) = is.read_raw_tag_or_eof()? {
            match tag {
                8 => {
                    self.app_id = ::std::option::Option::Some(is.read_uint32()?);
                },
                17 => {
                    self.steamid_lobby = ::std::option::Option::Some(is.read_fixed64()?);
                },
                24 => {
                    self.lobby_status = ::std::option::Option::Some(is.read_enum_or_unknown()?);
                },
                tag => {
                    ::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
                },
            };
        }
        ::std::result::Result::Ok(())
    }

    // Compute sizes of nested messages
    #[allow(unused_variables)]
    fn compute_size(&self) -> u64 {
        let mut my_size = 0;
        if let Some(v) = self.app_id {
            my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
        }
        if let Some(v) = self.steamid_lobby {
            my_size += 1 + 8;
        }
        if let Some(v) = self.lobby_status {
            my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(3, v.value());
        }
        my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
        self.special_fields.cached_size().set(my_size as u32);
        my_size
    }

    fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
        if let Some(v) = self.app_id {
            os.write_uint32(1, v)?;
        }
        if let Some(v) = self.steamid_lobby {
            os.write_fixed64(2, v)?;
        }
        if let Some(v) = self.lobby_status {
            os.write_enum(3, ::steam_vent_proto_common::protobuf::EnumOrUnknown::value(&v))?;
        }
        os.write_unknown_fields(self.special_fields.unknown_fields())?;
        ::std::result::Result::Ok(())
    }

    fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
        &self.special_fields
    }

    fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
        &mut self.special_fields
    }

    fn new() -> LobbyMatchmakingLegacy_GetLobbyStatus_Response {
        LobbyMatchmakingLegacy_GetLobbyStatus_Response::new()
    }

    fn clear(&mut self) {
        self.app_id = ::std::option::Option::None;
        self.steamid_lobby = ::std::option::Option::None;
        self.lobby_status = ::std::option::Option::None;
        self.special_fields.clear();
    }

    fn default_instance() -> &'static LobbyMatchmakingLegacy_GetLobbyStatus_Response {
        static instance: LobbyMatchmakingLegacy_GetLobbyStatus_Response = LobbyMatchmakingLegacy_GetLobbyStatus_Response {
            app_id: ::std::option::Option::None,
            steamid_lobby: ::std::option::Option::None,
            lobby_status: ::std::option::Option::None,
            special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
        };
        &instance
    }
}

#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
// @@protoc_insertion_point(enum:ELobbyStatus)
pub enum ELobbyStatus {
    // @@protoc_insertion_point(enum_value:ELobbyStatus.k_ELobbyStatusInvalid)
    k_ELobbyStatusInvalid = 0,
    // @@protoc_insertion_point(enum_value:ELobbyStatus.k_ELobbyStatusExists)
    k_ELobbyStatusExists = 1,
    // @@protoc_insertion_point(enum_value:ELobbyStatus.k_ELobbyStatusDoesNotExist)
    k_ELobbyStatusDoesNotExist = 2,
    // @@protoc_insertion_point(enum_value:ELobbyStatus.k_ELobbyStatusNotAMember)
    k_ELobbyStatusNotAMember = 3,
}

impl ::steam_vent_proto_common::protobuf::Enum for ELobbyStatus {
    const NAME: &'static str = "ELobbyStatus";

    fn value(&self) -> i32 {
        *self as i32
    }

    fn from_i32(value: i32) -> ::std::option::Option<ELobbyStatus> {
        match value {
            0 => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusInvalid),
            1 => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusExists),
            2 => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusDoesNotExist),
            3 => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusNotAMember),
            _ => ::std::option::Option::None
        }
    }

    fn from_str(str: &str) -> ::std::option::Option<ELobbyStatus> {
        match str {
            "k_ELobbyStatusInvalid" => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusInvalid),
            "k_ELobbyStatusExists" => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusExists),
            "k_ELobbyStatusDoesNotExist" => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusDoesNotExist),
            "k_ELobbyStatusNotAMember" => ::std::option::Option::Some(ELobbyStatus::k_ELobbyStatusNotAMember),
            _ => ::std::option::Option::None
        }
    }

    const VALUES: &'static [ELobbyStatus] = &[
        ELobbyStatus::k_ELobbyStatusInvalid,
        ELobbyStatus::k_ELobbyStatusExists,
        ELobbyStatus::k_ELobbyStatusDoesNotExist,
        ELobbyStatus::k_ELobbyStatusNotAMember,
    ];
}

impl ::std::default::Default for ELobbyStatus {
    fn default() -> Self {
        ELobbyStatus::k_ELobbyStatusInvalid
    }
}



const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;

#[allow(unused_imports)]
use crate::steammessages_base::*;
#[allow(unused_imports)]
use crate::steammessages_unified_base_steamclient::*;
impl ::steam_vent_proto_common::RpcMessage
for LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
        <Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
    }
    fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
        use ::steam_vent_proto_common::protobuf::Message;
        self.write_to_writer(writer)
    }
    fn encode_size(&self) -> usize {
        use ::steam_vent_proto_common::protobuf::Message;
        self.compute_size() as usize
    }
}
impl ::steam_vent_proto_common::RpcMessage
for LobbyMatchmakingLegacy_GetLobbyStatus_Response {
    fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
        <Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
    }
    fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
        use ::steam_vent_proto_common::protobuf::Message;
        self.write_to_writer(writer)
    }
    fn encode_size(&self) -> usize {
        use ::steam_vent_proto_common::protobuf::Message;
        self.compute_size() as usize
    }
}
///
struct LobbyMatchmakingLegacy {}
impl ::steam_vent_proto_common::RpcService for LobbyMatchmakingLegacy {
    const SERVICE_NAME: &'static str = "LobbyMatchmakingLegacy";
}
impl ::steam_vent_proto_common::RpcMethod
for LobbyMatchmakingLegacy_GetLobbyStatus_Request {
    const METHOD_NAME: &'static str = "LobbyMatchmakingLegacy.GetLobbyStatus#1";
    type Response = LobbyMatchmakingLegacy_GetLobbyStatus_Response;
}
