// Code generated by `gen.exe`. DO NOT EDIT. package lz4 // DescriptorFlags is defined as follow: // field bits // ----- ---- // _ 4 // BlockSizeIndex 3 // _ 1 // _ 2 // ContentChecksum 1 // Size 1 // BlockChecksum 1 // BlockIndependence 1 // Version 2 type DescriptorFlags uint16 // Getters. func (x DescriptorFlags) BlockSizeIndex() BlockSizeIndex { return BlockSizeIndex(x>>4&0x7) } func (x DescriptorFlags) ContentChecksum() bool { return x>>10&1 != 0 } func (x DescriptorFlags) Size() bool { return x>>11&1 != 0 } func (x DescriptorFlags) BlockChecksum() bool { return x>>12&1 != 0 } func (x DescriptorFlags) BlockIndependence() bool { return x>>13&1 != 0 } func (x DescriptorFlags) Version() uint16 { return uint16(x>>14&0x3) } // Setters. func (x *DescriptorFlags) BlockSizeIndexSet(v BlockSizeIndex) *DescriptorFlags { *x = *x&^(0x7<<4) | (DescriptorFlags(v)&0x7<<4); return x } func (x *DescriptorFlags) ContentChecksumSet(v bool) *DescriptorFlags { const b = 1<<10; if v { *x = *x&^b | b } else { *x &^= b }; return x } func (x *DescriptorFlags) SizeSet(v bool) *DescriptorFlags { const b = 1<<11; if v { *x = *x&^b | b } else { *x &^= b }; return x } func (x *DescriptorFlags) BlockChecksumSet(v bool) *DescriptorFlags { const b = 1<<12; if v { *x = *x&^b | b } else { *x &^= b }; return x } func (x *DescriptorFlags) BlockIndependenceSet(v bool) *DescriptorFlags { const b = 1<<13; if v { *x = *x&^b | b } else { *x &^= b }; return x } func (x *DescriptorFlags) VersionSet(v uint16) *DescriptorFlags { *x = *x&^(0x3<<14) | (DescriptorFlags(v)&0x3<<14); return x } // Code generated by `gen.exe`. DO NOT EDIT. // DataBlockSize is defined as follow: // field bits // ----- ---- // size 31 // compressed 1 type DataBlockSize uint32 // Getters. func (x DataBlockSize) size() int { return int(x&0x7FFFFFFF) } func (x DataBlockSize) compressed() bool { return x>>31&1 != 0 } // Setters. func (x *DataBlockSize) sizeSet(v int) *DataBlockSize { *x = *x&^0x7FFFFFFF | DataBlockSize(v)&0x7FFFFFFF; return x } func (x *DataBlockSize) compressedSet(v bool) *DataBlockSize { const b = 1<<31; if v { *x = *x&^b | b } else { *x &^= b }; return x }