diff options
| author | mat <github@matdoes.dev> | 2022-04-28 19:51:31 -0500 |
|---|---|---|
| committer | mat <github@matdoes.dev> | 2022-04-28 19:51:31 -0500 |
| commit | b6fb96429c4530530f46e5deb5998f2249e5124e (patch) | |
| tree | 0fe8a5b2b5823f978d85438c633cbf80fa7ad82d /azalea-protocol/src/mc_buf/mod.rs | |
| parent | 1ca9caee36fb84e4a34be4d6b11399fcea8e8389 (diff) | |
| download | azalea-drasl-b6fb96429c4530530f46e5deb5998f2249e5124e.tar.xz | |
chunk packets work
Diffstat (limited to 'azalea-protocol/src/mc_buf/mod.rs')
| -rwxr-xr-x | azalea-protocol/src/mc_buf/mod.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/azalea-protocol/src/mc_buf/mod.rs b/azalea-protocol/src/mc_buf/mod.rs index b69e94c4..4048bae7 100755 --- a/azalea-protocol/src/mc_buf/mod.rs +++ b/azalea-protocol/src/mc_buf/mod.rs @@ -3,6 +3,7 @@ mod read; mod write; +use packet_macros::{McBufReadable, McBufWritable}; pub use read::{McBufReadable, McBufVarintReadable, Readable}; use std::ops::{Deref, Index}; pub use write::{McBufVarintWritable, McBufWritable, Writable}; @@ -31,17 +32,16 @@ impl From<Vec<u8>> for UnsizedByteArray { } } -/** Represents Java's BitSet, a list of bits. */ +/// Represents Java's BitSet, a list of bits. +#[derive(Debug, Clone, PartialEq, Eq, Hash, McBufReadable, McBufWritable)] pub struct BitSet { data: Vec<u64>, } -impl Index<usize> for BitSet { - type Output = bool; - - fn index(&self, index: usize) -> &Self::Output { - let result = (self.data[index / 64] & (1u64 << (index % 64))) != 0; - &result +// the Index trait requires us to return a reference, but we can't do that +impl BitSet { + pub fn index(&self, index: usize) -> bool { + (self.data[index / 64] & (1u64 << (index % 64))) != 0 } } |
