def contains

bend-kit-netip@0.1.0.0 · netip.bend:415

import bend-kit-netip@0.1.0.0/netip.bend as Netip
import Base

415# Address and prefix families must match. The supplied prefix address keeps its host bits.
416def contains(p: Prefix, addr: Addr) -> Bool:
417  match p addr:
418    case Prefix{V4{a}, +bits} V4{b}:
419      Bool.and(U32.is_le(bits, 32), word.contains(a, b, bits))
420    case Prefix{V6{a, b, c, d}, +bits} V6{e, f, g, h}:
421      Bool.and(U32.is_le(bits, 128), Bool.and(word.contains(a, e, leading(bits, 0)),
422        Bool.and(word.contains(b, f, leading(bits, 32)),
423          Bool.and(word.contains(c, g, leading(bits, 64)), word.contains(d, h, leading(bits, 96))))))
424    case _ _:
425      False{}

Uses (7)

Used by (0)

No other definition uses this definition.