pub struct IpInfo {
pub create_ip: Option<String>,
pub create_ip_detail: Option<IpDetail>,
pub update_ip: Option<String>,
pub update_ip_detail: Option<IpDetail>,
}Expand description
用户 IP 信息
Fields§
§create_ip: Option<String>注册时的 IP
create_ip_detail: Option<IpDetail>注册时的 IP 详情
update_ip: Option<String>最新登录的 IP
update_ip_detail: Option<IpDetail>最新登录的 IP 详情
Implementations§
Source§impl IpInfo
impl IpInfo
Sourcepub fn refresh_ip(&mut self, ip: Option<String>)
pub fn refresh_ip(&mut self, ip: Option<String>)
刷新 IP
如果 IP 为空,则不更新 如果 create_ip 为空,则同时设置 create_ip 和 update_ip 否则只更新 update_ip
Sourcepub fn need_refresh_ip(&self) -> Option<&String>
pub fn need_refresh_ip(&self) -> Option<&String>
需要刷新的 IP
判断更新 IP 是否需要刷新详情 如果 update_ip_detail 存在且其 IP 与 update_ip 相同,则不需要刷新 返回需要刷新的 IP,如果不需要刷新则返回 None
Sourcepub fn refresh_ip_detail(&mut self, ip_detail: IpDetail)
pub fn refresh_ip_detail(&mut self, ip_detail: IpDetail)
刷新 IP 详情
根据 IP 详情中的 IP 地址,更新对应的 create_ip_detail 或 update_ip_detail
Trait Implementations§
Source§impl<'de> Deserialize<'de> for IpInfo
impl<'de> Deserialize<'de> for IpInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for IpInfo
impl StructuralPartialEq for IpInfo
Auto Trait Implementations§
impl Freeze for IpInfo
impl RefUnwindSafe for IpInfo
impl Send for IpInfo
impl Sync for IpInfo
impl Unpin for IpInfo
impl UnsafeUnpin for IpInfo
impl UnwindSafe for IpInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more