Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Commit

Permalink
convert SignedAvailabilityBitfields from newtype to typedef
Browse files Browse the repository at this point in the history
Closes #1339. Includes #1320.
  • Loading branch information
coriolinus committed Jul 2, 2020
1 parent c78dd28 commit 37546e0
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 19 deletions.
4 changes: 2 additions & 2 deletions node/subsystem/src/messages.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ use sc_network::{ObservedRole, ReputationChange, PeerId};
use polkadot_primitives::{BlockNumber, Hash, Signature};
use polkadot_primitives::parachain::{
AbridgedCandidateReceipt, PoVBlock, ErasureChunk, BackedCandidate, Id as ParaId,
SignedAvailabilityBitfield, SignedAvailabilityBitfields, SigningContext, ValidatorId, ValidationCode, ValidatorIndex,
SignedAvailabilityBitfield, SigningContext, ValidatorId, ValidationCode, ValidatorIndex,
};
use polkadot_node_primitives::{
MisbehaviorReport, SignedFullStatement, View, ProtocolId,
Expand Down Expand Up @@ -193,7 +193,7 @@ pub enum ProvisionableData {
/// This data needs to make its way from the provisioner into the InherentData.
///
/// There, it is used to construct the InclusionInherent.
pub type ProvisionerInherentData = (SignedAvailabilityBitfields, Vec<BackedCandidate>);
pub type ProvisionerInherentData = (Vec<SignedAvailabilityBitfield>, Vec<BackedCandidate>);

/// Message to the Provisioner.
///
Expand Down
9 changes: 1 addition & 8 deletions primitives/src/parachain.rs
Original file line number Diff line number Diff line change
Expand Up @@ -724,14 +724,7 @@ impl From<BitVec<bitvec::order::Lsb0, u8>> for AvailabilityBitfield {
pub type SignedAvailabilityBitfield = Signed<AvailabilityBitfield>;

/// A set of signed availability bitfields. Should be sorted by validator index, ascending.
#[derive(Encode, Decode, Clone, PartialEq, Eq, RuntimeDebug)]
pub struct SignedAvailabilityBitfields(pub Vec<SignedAvailabilityBitfield>);

impl From<Vec<SignedAvailabilityBitfield>> for SignedAvailabilityBitfields {
fn from(fields: Vec<SignedAvailabilityBitfield>) -> SignedAvailabilityBitfields {
SignedAvailabilityBitfields(fields)
}
}
pub type SignedAvailabilityBitfields = Vec<SignedAvailabilityBitfield>;

/// A backed (or backable, depending on context) candidate.
// TODO: yes, this is roughly the same as AttestedCandidate.
Expand Down
18 changes: 9 additions & 9 deletions runtime/parachains/src/inclusion.rs
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ impl<T: Trait> Module<T> {
session_index,
};

for signed_bitfield in &signed_bitfields.0 {
for signed_bitfield in &signed_bitfields {
ensure!(
signed_bitfield.payload().0.len() == n_bits,
Error::<T>::WrongBitfieldSize,
Expand Down Expand Up @@ -220,7 +220,7 @@ impl<T: Trait> Module<T> {
}

let now = <system::Module<T>>::block_number();
for signed_bitfield in signed_bitfields.0 {
for signed_bitfield in signed_bitfields {
for (bit_idx, _)
in signed_bitfield.payload().0.iter().enumerate().filter(|(_, is_av)| **is_av)
{
Expand Down Expand Up @@ -755,7 +755,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed]),
vec![signed],
&core_lookup,
).is_err());
}
Expand All @@ -771,7 +771,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed.clone(), signed]),
vec![signed.clone(), signed],
&core_lookup,
).is_err());
}
Expand All @@ -794,7 +794,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed_1, signed_0]),
vec![signed_1, signed_0],
&core_lookup,
).is_err());
}
Expand All @@ -811,7 +811,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed]),
vec![signed],
&core_lookup,
).is_err());
}
Expand All @@ -827,7 +827,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed]),
vec![signed],
&core_lookup,
).is_ok());
}
Expand Down Expand Up @@ -855,7 +855,7 @@ mod tests {
);

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(vec![signed]),
vec![signed],
&core_lookup,
).is_ok());
}
Expand Down Expand Up @@ -959,7 +959,7 @@ mod tests {
}).collect();

assert!(Inclusion::process_bitfields(
SignedAvailabilityBitfields(signed_bitfields),
signed_bitfields,
&core_lookup,
).is_ok());

Expand Down

0 comments on commit 37546e0

Please sign in to comment.