本文整理汇总了Golang中github.com/jainvipin/bitset.BitSet.Clear方法的典型用法代码示例。如果您正苦于以下问题:Golang BitSet.Clear方法的具体用法?Golang BitSet.Clear怎么用?Golang BitSet.Clear使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/jainvipin/bitset.BitSet
的用法示例。
在下文中一共展示了BitSet.Clear方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: ClearBitsOutsideRange
// ClearBitsOutsideRange sets all IPs outside range as used
func ClearBitsOutsideRange(ipAllocMap *bitset.BitSet, ipRange string, subnetLen uint) {
var i uint32
rangeMin, _ := ipv4ToUint32(getFirstAddrInRange(ipRange))
rangeMax, _ := ipv4ToUint32(getLastAddrInRange(ipRange, subnetLen))
firstAddr, _ := ipv4ToUint32(GetSubnetAddr(ipRange, subnetLen))
lastAddr, _ := ipv4ToUint32(getLastAddrInSubnet(ipRange, subnetLen))
// Set bits lower than rangeMin as used
for i = 0; i < (rangeMin - firstAddr); i++ {
ipAllocMap.Clear(uint(i))
}
// Set bits greater than the rangeMax as used
for i = ((rangeMin - firstAddr) + ((rangeMax - rangeMin) + 1)); i < (lastAddr - firstAddr); i++ {
ipAllocMap.Clear(uint(i))
}
}
示例2: clearReservedVLANs
func clearReservedVLANs(vlanBitset *bitset.BitSet) {
vlanBitset.Clear(0)
vlanBitset.Clear(4095)
}
示例3: ClearReservedEntries
// ClearReservedEntries clears reserved bits
func ClearReservedEntries(b *bitset.BitSet, subnetLen uint) {
maxSize := (1 << (32 - subnetLen)) - 1
b.Clear(uint(maxSize))
b.Clear(uint(0))
}