use crate::staking::Validator;
use crate::{proto, ErrorReport, Result};
#[derive(Clone, Debug, PartialEq)]
pub struct QueryValidatorResponse {
pub validator: Option<Validator>,
}
impl TryFrom<proto::cosmos::staking::v1beta1::QueryValidatorResponse> for QueryValidatorResponse {
type Error = ErrorReport;
fn try_from(
proto: cosmos_sdk_proto::cosmos::staking::v1beta1::QueryValidatorResponse,
) -> Result<Self> {
Ok(QueryValidatorResponse {
validator: proto.validator.map(TryInto::try_into).transpose()?,
})
}
}
impl From<QueryValidatorResponse> for proto::cosmos::staking::v1beta1::QueryValidatorResponse {
fn from(query_validator_response: QueryValidatorResponse) -> Self {
proto::cosmos::staking::v1beta1::QueryValidatorResponse {
validator: query_validator_response.validator.map(Into::into),
}
}
}