def answers.scan

bend-kit-dns@0.7.0.0 · dns.bend:235

import bend-kit-dns@0.7.0.0/dns.bend as Dns
import Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes

235# fuel = records left. The first A record wins; CNAMEs before it are skipped.
236def answers.scan(fuel: Nat, r: Bytes.Cursor & RR) -> Maybe<&2, String>:
237  match fuel:
238    case 0n:
239      None{}
240    case 1n+f:
241      (c, x) = r
242      match x:
243        case RRBad{}:
244          None{}
245        case RRA{ip}:
246          Some{ip}
247        case RRSkip{}:
248          answers.scan(f, rr(c))

Uses (8)

Used by (1)