fun matches()

in core/src/main/java/com/github/shadowsocks/net/Subnet.kt [61:69]


        fun matches(b: ByteArray): Boolean {
            if (a.size != b.size) return false
            var i = 0
            while (i * 8 < prefixSize && i * 8 + 8 <= prefixSize) {
                if (a[i] != b[i]) return false
                ++i
            }
            return i * 8 == prefixSize || a[i] == (b[i].toInt() and -(1 shl i * 8 + 8 - prefixSize)).toByte()
        }