]> gitweb.factorcode.org Git - factor.git/commitdiff
dns: Factor out filtering a and aaaa.
authorDoug Coleman <doug.coleman@gmail.com>
Wed, 10 Oct 2012 21:59:22 +0000 (14:59 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Mon, 22 Oct 2012 16:47:35 +0000 (09:47 -0700)
extra/dns/dns.factor

index 637c0ebbd129557f727c0756133e00c4f9d427c6..23203a5934fdc9f5506678cc743ebf700b6468d5 100644 (file)
@@ -372,9 +372,14 @@ M: TXT rdata>byte-array
 : message>names ( message -- names )
     answer-section>> [ rdata>> name>> ] map ;
 
+: filter-message-rdata>names ( message quot -- names )
+    [ answer-section>> [ rdata>> ] map ] dip filter [ name>> ] map ; inline
+
 : message>a-names ( message -- names )
-    answer-section>>
-    [ rdata>> ] map [ a? ] filter [ name>> ] map ;
+    [ a? ] filter-message-rdata>names ;
+
+: message>aaaa-names ( message -- names )
+    [ aaaa? ] filter-message-rdata>names ;
 
 : message>mxs ( message -- assoc )
     answer-section>> [ rdata>> [ preference>> ] [ exchange>> ] bi 2array ] map ;