Dnsruby 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. data/EVENTMACHINE +64 -0
  2. data/README +2 -2
  3. data/doc/classes/Dnsruby/Classes.html +10 -10
  4. data/doc/classes/Dnsruby/Classes.src/M000158.html +9 -5
  5. data/doc/classes/Dnsruby/Classes.src/M000159.html +19 -0
  6. data/doc/classes/Dnsruby/Classes.src/M000185.html +23 -0
  7. data/doc/classes/Dnsruby/Classes.src/M000186.html +19 -0
  8. data/doc/classes/Dnsruby/CodeMapper.html +55 -55
  9. data/doc/classes/Dnsruby/CodeMapper.src/M000131.html +4 -19
  10. data/doc/classes/Dnsruby/CodeMapper.src/M000132.html +19 -7
  11. data/doc/classes/Dnsruby/CodeMapper.src/M000133.html +7 -5
  12. data/doc/classes/Dnsruby/CodeMapper.src/M000134.html +5 -5
  13. data/doc/classes/Dnsruby/CodeMapper.src/M000135.html +5 -4
  14. data/doc/classes/Dnsruby/CodeMapper.src/M000136.html +4 -8
  15. data/doc/classes/Dnsruby/CodeMapper.src/M000137.html +5 -5
  16. data/doc/classes/Dnsruby/CodeMapper.src/M000138.html +6 -6
  17. data/doc/classes/Dnsruby/CodeMapper.src/M000139.html +7 -16
  18. data/doc/classes/Dnsruby/CodeMapper.src/M000140.html +17 -5
  19. data/doc/classes/Dnsruby/CodeMapper.src/M000141.html +19 -0
  20. data/doc/classes/Dnsruby/CodeMapper.src/M000158.html +18 -0
  21. data/doc/classes/Dnsruby/CodeMapper.src/M000159.html +33 -0
  22. data/doc/classes/Dnsruby/CodeMapper.src/M000160.html +21 -0
  23. data/doc/classes/Dnsruby/CodeMapper.src/M000161.html +19 -0
  24. data/doc/classes/Dnsruby/CodeMapper.src/M000162.html +19 -0
  25. data/doc/classes/Dnsruby/CodeMapper.src/M000163.html +18 -0
  26. data/doc/classes/Dnsruby/CodeMapper.src/M000164.html +22 -0
  27. data/doc/classes/Dnsruby/CodeMapper.src/M000165.html +22 -0
  28. data/doc/classes/Dnsruby/CodeMapper.src/M000166.html +22 -0
  29. data/doc/classes/Dnsruby/CodeMapper.src/M000167.html +31 -0
  30. data/doc/classes/Dnsruby/CodeMapper.src/M000168.html +19 -0
  31. data/doc/classes/Dnsruby/Config.src/M000106.html +5 -1
  32. data/doc/classes/Dnsruby/Config.src/M000107.html +1 -1
  33. data/doc/classes/Dnsruby/Config.src/M000108.html +4 -1
  34. data/doc/classes/Dnsruby/Config.src/M000125.html +18 -0
  35. data/doc/classes/Dnsruby/Config.src/M000126.html +19 -0
  36. data/doc/classes/Dnsruby/Config.src/M000127.html +19 -0
  37. data/doc/classes/Dnsruby/Config.src/M000128.html +21 -0
  38. data/doc/classes/Dnsruby/Config.src/M000129.html +21 -0
  39. data/doc/classes/Dnsruby/Config.src/M000130.html +38 -0
  40. data/doc/classes/Dnsruby/Config.src/M000131.html +26 -0
  41. data/doc/classes/Dnsruby/Config.src/M000132.html +22 -0
  42. data/doc/classes/Dnsruby/Config.src/M000133.html +27 -0
  43. data/doc/classes/Dnsruby/Config.src/M000134.html +22 -0
  44. data/doc/classes/Dnsruby/Config.src/M000135.html +21 -0
  45. data/doc/classes/Dnsruby/DNS.html +85 -85
  46. data/doc/classes/Dnsruby/DNS.src/M000197.html +10 -4
  47. data/doc/classes/Dnsruby/DNS.src/M000198.html +4 -4
  48. data/doc/classes/Dnsruby/DNS.src/M000199.html +4 -6
  49. data/doc/classes/Dnsruby/DNS.src/M000200.html +6 -5
  50. data/doc/classes/Dnsruby/DNS.src/M000201.html +5 -6
  51. data/doc/classes/Dnsruby/DNS.src/M000202.html +6 -4
  52. data/doc/classes/Dnsruby/DNS.src/M000203.html +4 -5
  53. data/doc/classes/Dnsruby/DNS.src/M000204.html +5 -6
  54. data/doc/classes/Dnsruby/DNS.src/M000205.html +6 -14
  55. data/doc/classes/Dnsruby/DNS.src/M000206.html +14 -5
  56. data/doc/classes/Dnsruby/DNS.src/M000207.html +5 -6
  57. data/doc/classes/Dnsruby/DNS.src/M000208.html +6 -27
  58. data/doc/classes/Dnsruby/DNS.src/M000209.html +26 -17
  59. data/doc/classes/Dnsruby/DNS.src/M000210.html +17 -35
  60. data/doc/classes/Dnsruby/DNS.src/M000211.html +50 -0
  61. data/doc/classes/Dnsruby/DNS.src/M000224.html +24 -0
  62. data/doc/classes/Dnsruby/DNS.src/M000225.html +18 -0
  63. data/doc/classes/Dnsruby/DNS.src/M000226.html +18 -0
  64. data/doc/classes/Dnsruby/DNS.src/M000227.html +20 -0
  65. data/doc/classes/Dnsruby/DNS.src/M000228.html +19 -0
  66. data/doc/classes/Dnsruby/DNS.src/M000229.html +20 -0
  67. data/doc/classes/Dnsruby/DNS.src/M000230.html +18 -0
  68. data/doc/classes/Dnsruby/DNS.src/M000231.html +19 -0
  69. data/doc/classes/Dnsruby/DNS.src/M000232.html +20 -0
  70. data/doc/classes/Dnsruby/DNS.src/M000233.html +28 -0
  71. data/doc/classes/Dnsruby/DNS.src/M000234.html +19 -0
  72. data/doc/classes/Dnsruby/DNS.src/M000235.html +20 -0
  73. data/doc/classes/Dnsruby/DNS.src/M000236.html +41 -0
  74. data/doc/classes/Dnsruby/DNS.src/M000237.html +32 -0
  75. data/doc/classes/Dnsruby/DNS.src/M000238.html +50 -0
  76. data/doc/classes/Dnsruby/EventMachineInterface/EmTcpHandler.html +154 -0
  77. data/doc/classes/Dnsruby/EventMachineInterface/EmTcpHandler.src/M000123.html +20 -0
  78. data/doc/classes/Dnsruby/EventMachineInterface/EmTcpHandler.src/M000124.html +32 -0
  79. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.html +237 -0
  80. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000117.html +18 -0
  81. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000118.html +19 -0
  82. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000119.html +35 -0
  83. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000120.html +30 -0
  84. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000121.html +19 -0
  85. data/doc/classes/Dnsruby/EventMachineInterface/EmUdpHandler.src/M000122.html +23 -0
  86. data/doc/classes/Dnsruby/EventMachineInterface.html +327 -0
  87. data/doc/classes/Dnsruby/EventMachineInterface.src/M000105.html +32 -0
  88. data/doc/classes/Dnsruby/EventMachineInterface.src/M000106.html +25 -0
  89. data/doc/classes/Dnsruby/EventMachineInterface.src/M000107.html +29 -0
  90. data/doc/classes/Dnsruby/EventMachineInterface.src/M000108.html +21 -0
  91. data/doc/classes/Dnsruby/EventMachineInterface.src/M000109.html +35 -0
  92. data/doc/classes/Dnsruby/EventMachineInterface.src/M000110.html +19 -0
  93. data/doc/classes/Dnsruby/EventMachineInterface.src/M000111.html +23 -0
  94. data/doc/classes/Dnsruby/EventMachineInterface.src/M000112.html +18 -0
  95. data/doc/classes/Dnsruby/EventMachineInterface.src/M000113.html +28 -0
  96. data/doc/classes/Dnsruby/EventMachineInterface.src/M000114.html +41 -0
  97. data/doc/classes/Dnsruby/EventMachineInterface.src/M000115.html +28 -0
  98. data/doc/classes/Dnsruby/EventMachineInterface.src/M000116.html +24 -0
  99. data/doc/classes/Dnsruby/Header.html +62 -62
  100. data/doc/classes/Dnsruby/Header.src/M000169.html +21 -4
  101. data/doc/classes/Dnsruby/Header.src/M000170.html +4 -4
  102. data/doc/classes/Dnsruby/Header.src/M000171.html +4 -7
  103. data/doc/classes/Dnsruby/Header.src/M000172.html +7 -6
  104. data/doc/classes/Dnsruby/Header.src/M000173.html +6 -18
  105. data/doc/classes/Dnsruby/Header.src/M000174.html +18 -12
  106. data/doc/classes/Dnsruby/Header.src/M000175.html +12 -33
  107. data/doc/classes/Dnsruby/Header.src/M000176.html +33 -14
  108. data/doc/classes/Dnsruby/Header.src/M000177.html +14 -4
  109. data/doc/classes/Dnsruby/Header.src/M000178.html +4 -4
  110. data/doc/classes/Dnsruby/Header.src/M000179.html +4 -16
  111. data/doc/classes/Dnsruby/Header.src/M000180.html +30 -0
  112. data/doc/classes/Dnsruby/Header.src/M000196.html +35 -0
  113. data/doc/classes/Dnsruby/Header.src/M000197.html +18 -0
  114. data/doc/classes/Dnsruby/Header.src/M000198.html +18 -0
  115. data/doc/classes/Dnsruby/Header.src/M000199.html +21 -0
  116. data/doc/classes/Dnsruby/Header.src/M000200.html +20 -0
  117. data/doc/classes/Dnsruby/Header.src/M000201.html +32 -0
  118. data/doc/classes/Dnsruby/Header.src/M000202.html +26 -0
  119. data/doc/classes/Dnsruby/Header.src/M000203.html +47 -0
  120. data/doc/classes/Dnsruby/Header.src/M000204.html +28 -0
  121. data/doc/classes/Dnsruby/Header.src/M000205.html +18 -0
  122. data/doc/classes/Dnsruby/Header.src/M000206.html +18 -0
  123. data/doc/classes/Dnsruby/Header.src/M000207.html +30 -0
  124. data/doc/classes/Dnsruby/Hosts.html +47 -47
  125. data/doc/classes/Dnsruby/Hosts.src/M000142.html +6 -35
  126. data/doc/classes/Dnsruby/Hosts.src/M000143.html +35 -5
  127. data/doc/classes/Dnsruby/Hosts.src/M000144.html +5 -6
  128. data/doc/classes/Dnsruby/Hosts.src/M000145.html +6 -7
  129. data/doc/classes/Dnsruby/Hosts.src/M000146.html +7 -5
  130. data/doc/classes/Dnsruby/Hosts.src/M000147.html +5 -6
  131. data/doc/classes/Dnsruby/Hosts.src/M000148.html +6 -7
  132. data/doc/classes/Dnsruby/Hosts.src/M000149.html +21 -0
  133. data/doc/classes/Dnsruby/Hosts.src/M000169.html +20 -0
  134. data/doc/classes/Dnsruby/Hosts.src/M000170.html +49 -0
  135. data/doc/classes/Dnsruby/Hosts.src/M000171.html +19 -0
  136. data/doc/classes/Dnsruby/Hosts.src/M000172.html +20 -0
  137. data/doc/classes/Dnsruby/Hosts.src/M000173.html +21 -0
  138. data/doc/classes/Dnsruby/Hosts.src/M000174.html +19 -0
  139. data/doc/classes/Dnsruby/Hosts.src/M000175.html +20 -0
  140. data/doc/classes/Dnsruby/Hosts.src/M000176.html +21 -0
  141. data/doc/classes/Dnsruby/IPv4.html +43 -43
  142. data/doc/classes/Dnsruby/IPv4.src/M000150.html +17 -6
  143. data/doc/classes/Dnsruby/IPv4.src/M000151.html +7 -4
  144. data/doc/classes/Dnsruby/IPv4.src/M000152.html +4 -4
  145. data/doc/classes/Dnsruby/IPv4.src/M000153.html +4 -5
  146. data/doc/classes/Dnsruby/IPv4.src/M000154.html +5 -4
  147. data/doc/classes/Dnsruby/IPv4.src/M000155.html +4 -4
  148. data/doc/classes/Dnsruby/IPv4.src/M000156.html +4 -4
  149. data/doc/classes/Dnsruby/IPv4.src/M000157.html +18 -0
  150. data/doc/classes/Dnsruby/IPv4.src/M000177.html +32 -0
  151. data/doc/classes/Dnsruby/IPv4.src/M000178.html +21 -0
  152. data/doc/classes/Dnsruby/IPv4.src/M000179.html +18 -0
  153. data/doc/classes/Dnsruby/IPv4.src/M000180.html +18 -0
  154. data/doc/classes/Dnsruby/IPv4.src/M000181.html +19 -0
  155. data/doc/classes/Dnsruby/IPv4.src/M000182.html +18 -0
  156. data/doc/classes/Dnsruby/IPv4.src/M000183.html +18 -0
  157. data/doc/classes/Dnsruby/IPv4.src/M000184.html +18 -0
  158. data/doc/classes/Dnsruby/IPv6.html +43 -43
  159. data/doc/classes/Dnsruby/IPv6.src/M000181.html +45 -6
  160. data/doc/classes/Dnsruby/IPv6.src/M000182.html +6 -7
  161. data/doc/classes/Dnsruby/IPv6.src/M000183.html +8 -4
  162. data/doc/classes/Dnsruby/IPv6.src/M000184.html +4 -7
  163. data/doc/classes/Dnsruby/IPv6.src/M000185.html +7 -4
  164. data/doc/classes/Dnsruby/IPv6.src/M000186.html +4 -4
  165. data/doc/classes/Dnsruby/IPv6.src/M000187.html +4 -4
  166. data/doc/classes/Dnsruby/IPv6.src/M000188.html +18 -0
  167. data/doc/classes/Dnsruby/IPv6.src/M000208.html +60 -0
  168. data/doc/classes/Dnsruby/IPv6.src/M000209.html +21 -0
  169. data/doc/classes/Dnsruby/IPv6.src/M000210.html +22 -0
  170. data/doc/classes/Dnsruby/IPv6.src/M000211.html +18 -0
  171. data/doc/classes/Dnsruby/IPv6.src/M000212.html +21 -0
  172. data/doc/classes/Dnsruby/IPv6.src/M000213.html +18 -0
  173. data/doc/classes/Dnsruby/IPv6.src/M000214.html +18 -0
  174. data/doc/classes/Dnsruby/IPv6.src/M000215.html +18 -0
  175. data/doc/classes/Dnsruby/Message.html +1 -1
  176. data/doc/classes/Dnsruby/Message.src/M000090.html +20 -0
  177. data/doc/classes/Dnsruby/Message.src/M000091.html +21 -0
  178. data/doc/classes/Dnsruby/Message.src/M000092.html +20 -0
  179. data/doc/classes/Dnsruby/Message.src/M000093.html +18 -0
  180. data/doc/classes/Dnsruby/Message.src/M000094.html +54 -0
  181. data/doc/classes/Dnsruby/Message.src/M000095.html +42 -0
  182. data/doc/classes/Dnsruby/Message.src/M000096.html +45 -0
  183. data/doc/classes/Dnsruby/Name/Label.src/M000076.html +22 -0
  184. data/doc/classes/Dnsruby/Name/Label.src/M000077.html +18 -0
  185. data/doc/classes/Dnsruby/Name/Label.src/M000078.html +18 -0
  186. data/doc/classes/Dnsruby/Name/Label.src/M000079.html +18 -0
  187. data/doc/classes/Dnsruby/Name/Label.src/M000080.html +18 -0
  188. data/doc/classes/Dnsruby/Name/Label.src/M000081.html +18 -0
  189. data/doc/classes/Dnsruby/Name/Label.src/M000082.html +18 -0
  190. data/doc/classes/Dnsruby/Name.src/M000067.html +18 -0
  191. data/doc/classes/Dnsruby/Name.src/M000068.html +21 -0
  192. data/doc/classes/Dnsruby/Name.src/M000069.html +19 -0
  193. data/doc/classes/Dnsruby/Name.src/M000071.html +22 -0
  194. data/doc/classes/Dnsruby/Name.src/M000072.html +18 -0
  195. data/doc/classes/Dnsruby/Name.src/M000073.html +20 -0
  196. data/doc/classes/Dnsruby/Question.html +10 -10
  197. data/doc/classes/Dnsruby/Question.src/M000167.html +33 -4
  198. data/doc/classes/Dnsruby/Question.src/M000168.html +18 -0
  199. data/doc/classes/Dnsruby/Question.src/M000194.html +47 -0
  200. data/doc/classes/Dnsruby/Question.src/M000195.html +18 -0
  201. data/doc/classes/Dnsruby/RR/DomainName.src/M000058.html +22 -0
  202. data/doc/classes/Dnsruby/RR/Generic.src/M000048.html +25 -0
  203. data/doc/classes/Dnsruby/RR/IN/A.src/M000025.html +18 -0
  204. data/doc/classes/Dnsruby/RR/IN/A.src/M000026.html +18 -0
  205. data/doc/classes/Dnsruby/RR/IN/A.src/M000027.html +18 -0
  206. data/doc/classes/Dnsruby/RR/IN/SRV.src/M000022.html +29 -0
  207. data/doc/classes/Dnsruby/RR/IN/SRV.src/M000023.html +26 -0
  208. data/doc/classes/Dnsruby/RR/IN/SRV.src/M000024.html +22 -0
  209. data/doc/classes/Dnsruby/RR/IN/WKS.src/M000028.html +20 -0
  210. data/doc/classes/Dnsruby/RR/LOC.src/M000032.html +32 -0
  211. data/doc/classes/Dnsruby/RR/LOC.src/M000033.html +23 -0
  212. data/doc/classes/Dnsruby/RR/LOC.src/M000034.html +25 -0
  213. data/doc/classes/Dnsruby/RR/LOC.src/M000035.html +21 -0
  214. data/doc/classes/Dnsruby/RR/LOC.src/M000036.html +20 -0
  215. data/doc/classes/Dnsruby/RR/LOC.src/M000037.html +23 -0
  216. data/doc/classes/Dnsruby/RR/NSAP.src/M000060.html +19 -0
  217. data/doc/classes/Dnsruby/RR/NSAP.src/M000061.html +19 -0
  218. data/doc/classes/Dnsruby/RR/NSAP.src/M000062.html +22 -0
  219. data/doc/classes/Dnsruby/RR/NSAP.src/M000063.html +31 -0
  220. data/doc/classes/Dnsruby/RR/RP.src/M000057.html +19 -0
  221. data/doc/classes/Dnsruby/RR/SOA.src/M000046.html +24 -0
  222. data/doc/classes/Dnsruby/RR/SOA.src/M000047.html +27 -0
  223. data/doc/classes/Dnsruby/RR/TKEY.src/M000029.html +19 -0
  224. data/doc/classes/Dnsruby/RR/TKEY.src/M000030.html +29 -0
  225. data/doc/classes/Dnsruby/RR/TKEY.src/M000031.html +30 -0
  226. data/doc/classes/Dnsruby/RR/TSIG.src/M000050.html +71 -0
  227. data/doc/classes/Dnsruby/RR/TSIG.src/M000051.html +34 -0
  228. data/doc/classes/Dnsruby/RR/TSIG.src/M000052.html +37 -0
  229. data/doc/classes/Dnsruby/RR/TSIG.src/M000053.html +31 -0
  230. data/doc/classes/Dnsruby/RR/TSIG.src/M000054.html +34 -0
  231. data/doc/classes/Dnsruby/RR/TSIG.src/M000055.html +22 -0
  232. data/doc/classes/Dnsruby/RR/TSIG.src/M000056.html +29 -0
  233. data/doc/classes/Dnsruby/RR/TXT.src/M000041.html +18 -0
  234. data/doc/classes/Dnsruby/RR/TXT.src/M000042.html +18 -0
  235. data/doc/classes/Dnsruby/RR/TXT.src/M000043.html +20 -0
  236. data/doc/classes/Dnsruby/RR/TXT.src/M000044.html +27 -0
  237. data/doc/classes/Dnsruby/RR/TXT.src/M000045.html +25 -0
  238. data/doc/classes/Dnsruby/RR/X25.src/M000038.html +18 -0
  239. data/doc/classes/Dnsruby/RR/X25.src/M000039.html +18 -0
  240. data/doc/classes/Dnsruby/RR/X25.src/M000040.html +22 -0
  241. data/doc/classes/Dnsruby/RR.src/M000015.html +18 -0
  242. data/doc/classes/Dnsruby/RR.src/M000016.html +18 -0
  243. data/doc/classes/Dnsruby/RR.src/M000017.html +22 -0
  244. data/doc/classes/Dnsruby/RR.src/M000018.html +22 -0
  245. data/doc/classes/Dnsruby/RR.src/M000019.html +18 -0
  246. data/doc/classes/Dnsruby/RR.src/M000020.html +22 -0
  247. data/doc/classes/Dnsruby/RR.src/M000021.html +24 -0
  248. data/doc/classes/Dnsruby/RRSet.html +39 -39
  249. data/doc/classes/Dnsruby/RRSet.src/M000160.html +4 -30
  250. data/doc/classes/Dnsruby/RRSet.src/M000161.html +30 -4
  251. data/doc/classes/Dnsruby/RRSet.src/M000162.html +4 -6
  252. data/doc/classes/Dnsruby/RRSet.src/M000163.html +6 -4
  253. data/doc/classes/Dnsruby/RRSet.src/M000164.html +4 -4
  254. data/doc/classes/Dnsruby/RRSet.src/M000165.html +4 -4
  255. data/doc/classes/Dnsruby/RRSet.src/M000166.html +18 -0
  256. data/doc/classes/Dnsruby/RRSet.src/M000187.html +18 -0
  257. data/doc/classes/Dnsruby/RRSet.src/M000188.html +44 -0
  258. data/doc/classes/Dnsruby/RRSet.src/M000189.html +18 -0
  259. data/doc/classes/Dnsruby/RRSet.src/M000190.html +20 -0
  260. data/doc/classes/Dnsruby/RRSet.src/M000191.html +18 -0
  261. data/doc/classes/Dnsruby/RRSet.src/M000192.html +18 -0
  262. data/doc/classes/Dnsruby/RRSet.src/M000193.html +18 -0
  263. data/doc/classes/Dnsruby/Resolv.src/M000109.html +1 -1
  264. data/doc/classes/Dnsruby/Resolv.src/M000110.html +1 -1
  265. data/doc/classes/Dnsruby/Resolv.src/M000111.html +1 -1
  266. data/doc/classes/Dnsruby/Resolv.src/M000112.html +1 -1
  267. data/doc/classes/Dnsruby/Resolv.src/M000113.html +1 -1
  268. data/doc/classes/Dnsruby/Resolv.src/M000114.html +1 -1
  269. data/doc/classes/Dnsruby/Resolv.src/M000115.html +1 -1
  270. data/doc/classes/Dnsruby/Resolv.src/M000116.html +1 -1
  271. data/doc/classes/Dnsruby/Resolv.src/M000117.html +1 -1
  272. data/doc/classes/Dnsruby/Resolv.src/M000118.html +1 -1
  273. data/doc/classes/Dnsruby/Resolv.src/M000119.html +1 -1
  274. data/doc/classes/Dnsruby/Resolv.src/M000120.html +1 -1
  275. data/doc/classes/Dnsruby/Resolv.src/M000121.html +1 -1
  276. data/doc/classes/Dnsruby/Resolv.src/M000136.html +18 -0
  277. data/doc/classes/Dnsruby/Resolv.src/M000137.html +18 -0
  278. data/doc/classes/Dnsruby/Resolv.src/M000138.html +18 -0
  279. data/doc/classes/Dnsruby/Resolv.src/M000139.html +18 -0
  280. data/doc/classes/Dnsruby/Resolv.src/M000140.html +18 -0
  281. data/doc/classes/Dnsruby/Resolv.src/M000141.html +18 -0
  282. data/doc/classes/Dnsruby/Resolv.src/M000142.html +18 -0
  283. data/doc/classes/Dnsruby/Resolv.src/M000143.html +19 -0
  284. data/doc/classes/Dnsruby/Resolv.src/M000144.html +20 -0
  285. data/doc/classes/Dnsruby/Resolv.src/M000145.html +29 -0
  286. data/doc/classes/Dnsruby/Resolv.src/M000146.html +19 -0
  287. data/doc/classes/Dnsruby/Resolv.src/M000147.html +20 -0
  288. data/doc/classes/Dnsruby/Resolv.src/M000148.html +25 -0
  289. data/doc/classes/Dnsruby/Resolver.html +238 -123
  290. data/doc/classes/Dnsruby/Resolver.src/M000212.html +7 -23
  291. data/doc/classes/Dnsruby/Resolver.src/M000213.html +11 -48
  292. data/doc/classes/Dnsruby/Resolver.src/M000214.html +13 -8
  293. data/doc/classes/Dnsruby/Resolver.src/M000215.html +4 -32
  294. data/doc/classes/Dnsruby/Resolver.src/M000216.html +33 -6
  295. data/doc/classes/Dnsruby/Resolver.src/M000217.html +6 -7
  296. data/doc/classes/Dnsruby/Resolver.src/M000218.html +8 -4
  297. data/doc/classes/Dnsruby/Resolver.src/M000219.html +4 -6
  298. data/doc/classes/Dnsruby/Resolver.src/M000220.html +6 -5
  299. data/doc/classes/Dnsruby/Resolver.src/M000221.html +4 -4
  300. data/doc/classes/Dnsruby/Resolver.src/M000222.html +4 -4
  301. data/doc/classes/Dnsruby/Resolver.src/M000223.html +4 -4
  302. data/doc/classes/Dnsruby/Resolver.src/M000224.html +4 -4
  303. data/doc/classes/Dnsruby/Resolver.src/M000225.html +4 -4
  304. data/doc/classes/Dnsruby/Resolver.src/M000226.html +4 -4
  305. data/doc/classes/Dnsruby/Resolver.src/M000227.html +4 -4
  306. data/doc/classes/Dnsruby/Resolver.src/M000228.html +4 -4
  307. data/doc/classes/Dnsruby/Resolver.src/M000229.html +4 -4
  308. data/doc/classes/Dnsruby/Resolver.src/M000230.html +4 -4
  309. data/doc/classes/Dnsruby/Resolver.src/M000231.html +19 -0
  310. data/doc/classes/Dnsruby/Resolver.src/M000232.html +26 -0
  311. data/doc/classes/Dnsruby/Resolver.src/M000233.html +18 -0
  312. data/doc/classes/Dnsruby/Resolver.src/M000234.html +23 -0
  313. data/doc/classes/Dnsruby/Resolver.src/M000235.html +18 -0
  314. data/doc/classes/Dnsruby/Resolver.src/M000236.html +42 -0
  315. data/doc/classes/Dnsruby/Resolver.src/M000239.html +21 -0
  316. data/doc/classes/Dnsruby/Resolver.src/M000240.html +27 -0
  317. data/doc/classes/Dnsruby/Resolver.src/M000241.html +28 -0
  318. data/doc/classes/Dnsruby/Resolver.src/M000242.html +18 -0
  319. data/doc/classes/Dnsruby/Resolver.src/M000243.html +48 -0
  320. data/doc/classes/Dnsruby/Resolver.src/M000244.html +21 -0
  321. data/doc/classes/Dnsruby/Resolver.src/M000245.html +22 -0
  322. data/doc/classes/Dnsruby/Resolver.src/M000246.html +18 -0
  323. data/doc/classes/Dnsruby/Resolver.src/M000247.html +20 -0
  324. data/doc/classes/Dnsruby/Resolver.src/M000248.html +19 -0
  325. data/doc/classes/Dnsruby/Resolver.src/M000249.html +19 -0
  326. data/doc/classes/Dnsruby/Resolver.src/M000250.html +19 -0
  327. data/doc/classes/Dnsruby/Resolver.src/M000251.html +19 -0
  328. data/doc/classes/Dnsruby/Resolver.src/M000252.html +19 -0
  329. data/doc/classes/Dnsruby/Resolver.src/M000253.html +19 -0
  330. data/doc/classes/Dnsruby/Resolver.src/M000254.html +19 -0
  331. data/doc/classes/Dnsruby/Resolver.src/M000255.html +19 -0
  332. data/doc/classes/Dnsruby/Resolver.src/M000256.html +19 -0
  333. data/doc/classes/Dnsruby/Resolver.src/M000257.html +19 -0
  334. data/doc/classes/Dnsruby/Resolver.src/M000258.html +19 -0
  335. data/doc/classes/Dnsruby/Resolver.src/M000259.html +26 -0
  336. data/doc/classes/Dnsruby/Resolver.src/M000260.html +18 -0
  337. data/doc/classes/Dnsruby/Resolver.src/M000261.html +23 -0
  338. data/doc/classes/Dnsruby/Resolver.src/M000262.html +18 -0
  339. data/doc/classes/Dnsruby/Resolver.src/M000263.html +42 -0
  340. data/doc/classes/Dnsruby/SelectInterface.html +236 -0
  341. data/doc/classes/Dnsruby/SelectInterface.src/M000001.html +19 -0
  342. data/doc/classes/Dnsruby/SelectInterface.src/M000002.html +18 -0
  343. data/doc/classes/Dnsruby/SelectInterface.src/M000003.html +18 -0
  344. data/doc/classes/Dnsruby/SelectInterface.src/M000004.html +18 -0
  345. data/doc/classes/Dnsruby/SelectInterface.src/M000005.html +21 -0
  346. data/doc/classes/Dnsruby/SelectInterface.src/M000006.html +19 -0
  347. data/doc/classes/Dnsruby/SelectInterface.src/M000007.html +18 -0
  348. data/doc/classes/Dnsruby/SingleResolver.html +55 -33
  349. data/doc/classes/Dnsruby/SingleResolver.src/M000128.html +24 -51
  350. data/doc/classes/Dnsruby/SingleResolver.src/M000129.html +11 -6
  351. data/doc/classes/Dnsruby/SingleResolver.src/M000130.html +21 -0
  352. data/doc/classes/Dnsruby/SingleResolver.src/M000149.html +18 -0
  353. data/doc/classes/Dnsruby/SingleResolver.src/M000150.html +19 -0
  354. data/doc/classes/Dnsruby/SingleResolver.src/M000151.html +49 -0
  355. data/doc/classes/Dnsruby/SingleResolver.src/M000152.html +18 -0
  356. data/doc/classes/Dnsruby/SingleResolver.src/M000153.html +21 -0
  357. data/doc/classes/Dnsruby/SingleResolver.src/M000154.html +25 -0
  358. data/doc/classes/Dnsruby/SingleResolver.src/M000155.html +51 -0
  359. data/doc/classes/Dnsruby/SingleResolver.src/M000156.html +26 -0
  360. data/doc/classes/Dnsruby/SingleResolver.src/M000157.html +21 -0
  361. data/doc/classes/Dnsruby/TheLog.html +17 -17
  362. data/doc/classes/Dnsruby/TheLog.src/M000189.html +4 -4
  363. data/doc/classes/Dnsruby/TheLog.src/M000190.html +4 -4
  364. data/doc/classes/Dnsruby/TheLog.src/M000191.html +20 -0
  365. data/doc/classes/Dnsruby/TheLog.src/M000216.html +20 -0
  366. data/doc/classes/Dnsruby/TheLog.src/M000217.html +20 -0
  367. data/doc/classes/Dnsruby/TheLog.src/M000218.html +20 -0
  368. data/doc/classes/Dnsruby/Update.html +31 -31
  369. data/doc/classes/Dnsruby/Update.src/M000192.html +17 -22
  370. data/doc/classes/Dnsruby/Update.src/M000193.html +11 -6
  371. data/doc/classes/Dnsruby/Update.src/M000194.html +15 -24
  372. data/doc/classes/Dnsruby/Update.src/M000195.html +26 -19
  373. data/doc/classes/Dnsruby/Update.src/M000196.html +34 -0
  374. data/doc/classes/Dnsruby/Update.src/M000219.html +32 -0
  375. data/doc/classes/Dnsruby/Update.src/M000220.html +37 -0
  376. data/doc/classes/Dnsruby/Update.src/M000221.html +32 -0
  377. data/doc/classes/Dnsruby/Update.src/M000222.html +41 -0
  378. data/doc/classes/Dnsruby/Update.src/M000223.html +34 -0
  379. data/doc/classes/Dnsruby/ZoneTransfer/Delta.src/M000104.html +19 -0
  380. data/doc/classes/Dnsruby/ZoneTransfer.src/M000102.html +22 -0
  381. data/doc/classes/Dnsruby/ZoneTransfer.src/M000103.html +35 -0
  382. data/doc/classes/Dnsruby.html +12 -0
  383. data/doc/created.rid +1 -1
  384. data/doc/files/lib/Dnsruby/Config_rb.html +1 -1
  385. data/doc/files/lib/Dnsruby/Resolver_rb.html +2 -1
  386. data/doc/files/lib/Dnsruby/SelectInterface_rb.html +108 -0
  387. data/doc/files/lib/Dnsruby/SingleResolver_rb.html +1 -1
  388. data/doc/files/lib/Dnsruby/event_machine_interface_rb.html +108 -0
  389. data/doc/files/lib/Dnsruby/message_rb.html +1 -1
  390. data/doc/files/lib/Dnsruby/select_thread_rb.html +1 -1
  391. data/doc/files/lib/Dnsruby/zone_transfer_rb.html +1 -1
  392. data/doc/files/lib/dnsruby_rb.html +1 -1
  393. data/doc/fr_file_index.html +1 -0
  394. data/doc/fr_method_index.html +130 -125
  395. data/lib/Dnsruby/Config.rb +8 -1
  396. data/lib/Dnsruby/Resolver.rb +496 -217
  397. data/lib/Dnsruby/SingleResolver.rb +105 -10
  398. data/lib/Dnsruby/event_machine_interface.rb +265 -0
  399. data/lib/Dnsruby/message.rb +1 -1
  400. data/lib/Dnsruby/select_thread.rb +26 -60
  401. data/lib/Dnsruby/zone_transfer.rb +3 -1
  402. data/lib/dnsruby.rb +8 -0
  403. data/test/tc_em_deferrable.rb +47 -0
  404. data/test/tc_event_machine_deferrable.rb +85 -0
  405. data/test/tc_event_machine_res.rb +174 -0
  406. data/test/tc_event_machine_single_res.rb +101 -0
  407. data/test/tc_event_machine_soak.rb +98 -0
  408. data/test/tc_inet6.rb +170 -0
  409. data/test/tc_resolver.rb +71 -63
  410. data/test/tc_single_resolver.rb +71 -53
  411. data/test/tc_soak.rb +12 -113
  412. data/test/tc_soak_base.rb +136 -0
  413. data/test/ts_online.rb +14 -6
  414. metadata +277 -2
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>eql? (Dnsruby::IPv4)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv4.rb, line 75</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">self</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>hash (Dnsruby::IPv4)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv4.rb, line 79</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hash</span>
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@address</span>.<span class="ruby-identifier">hash</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -82,16 +82,16 @@
82
82
  <h2><a href="IPv6.html">Dnsruby::IPv6</a> class</h2>
83
83
  <h3>class methods</h3>
84
84
  <ul>
85
- <li><a href="IPv6.html#M000180">Dnsruby::IPv6.create(address)</a>
85
+ <li><a href="IPv6.html#M000181">Dnsruby::IPv6.create(address)</a>
86
86
 
87
87
  </li>
88
88
  </ul>
89
89
  <h3>methods</h3>
90
90
  <ul>
91
- <li><a href="IPv6.html#M000182">Dnsruby::IPv6#to_s</a>
91
+ <li><a href="IPv6.html#M000183">Dnsruby::IPv6#to_s</a>
92
92
 
93
93
  </li>
94
- <li><a href="IPv6.html#M000184">Dnsruby::IPv6#to_name</a>
94
+ <li><a href="IPv6.html#M000185">Dnsruby::IPv6#to_name</a>
95
95
 
96
96
  </li>
97
97
  </ul>
@@ -114,14 +114,14 @@
114
114
  <h3 class="section-bar">Methods</h3>
115
115
 
116
116
  <div class="name-list">
117
- <a href="#M000185">==</a>&nbsp;&nbsp;
118
- <a href="#M000180">create</a>&nbsp;&nbsp;
119
- <a href="#M000186">eql?</a>&nbsp;&nbsp;
120
- <a href="#M000187">hash</a>&nbsp;&nbsp;
121
- <a href="#M000183">inspect</a>&nbsp;&nbsp;
122
- <a href="#M000181">new</a>&nbsp;&nbsp;
123
- <a href="#M000184">to_name</a>&nbsp;&nbsp;
124
- <a href="#M000182">to_s</a>&nbsp;&nbsp;
117
+ <a href="#M000186">==</a>&nbsp;&nbsp;
118
+ <a href="#M000181">create</a>&nbsp;&nbsp;
119
+ <a href="#M000187">eql?</a>&nbsp;&nbsp;
120
+ <a href="#M000188">hash</a>&nbsp;&nbsp;
121
+ <a href="#M000184">inspect</a>&nbsp;&nbsp;
122
+ <a href="#M000182">new</a>&nbsp;&nbsp;
123
+ <a href="#M000185">to_name</a>&nbsp;&nbsp;
124
+ <a href="#M000183">to_s</a>&nbsp;&nbsp;
125
125
  </div>
126
126
  </div>
127
127
 
@@ -189,12 +189,12 @@
189
189
  <div id="methods">
190
190
  <h3 class="section-bar">Public Class methods</h3>
191
191
 
192
- <div id="method-M000180" class="method-detail">
193
- <a name="M000180"></a>
192
+ <div id="method-M000181" class="method-detail">
193
+ <a name="M000181"></a>
194
194
 
195
195
  <div class="method-heading">
196
- <a href="IPv6.src/M000180.html" target="Code" class="method-signature"
197
- onclick="popupCode('IPv6.src/M000180.html');return false;">
196
+ <a href="IPv6.src/M000181.html" target="Code" class="method-signature"
197
+ onclick="popupCode('IPv6.src/M000181.html');return false;">
198
198
  <span class="method-name">create</span><span class="method-args">(arg)</span>
199
199
  </a>
200
200
  </div>
@@ -203,12 +203,12 @@
203
203
  </div>
204
204
  </div>
205
205
 
206
- <div id="method-M000181" class="method-detail">
207
- <a name="M000181"></a>
206
+ <div id="method-M000182" class="method-detail">
207
+ <a name="M000182"></a>
208
208
 
209
209
  <div class="method-heading">
210
- <a href="IPv6.src/M000181.html" target="Code" class="method-signature"
211
- onclick="popupCode('IPv6.src/M000181.html');return false;">
210
+ <a href="IPv6.src/M000182.html" target="Code" class="method-signature"
211
+ onclick="popupCode('IPv6.src/M000182.html');return false;">
212
212
  <span class="method-name">new</span><span class="method-args">(address)</span>
213
213
  </a>
214
214
  </div>
@@ -219,12 +219,12 @@
219
219
 
220
220
  <h3 class="section-bar">Public Instance methods</h3>
221
221
 
222
- <div id="method-M000185" class="method-detail">
223
- <a name="M000185"></a>
222
+ <div id="method-M000186" class="method-detail">
223
+ <a name="M000186"></a>
224
224
 
225
225
  <div class="method-heading">
226
- <a href="IPv6.src/M000185.html" target="Code" class="method-signature"
227
- onclick="popupCode('IPv6.src/M000185.html');return false;">
226
+ <a href="IPv6.src/M000186.html" target="Code" class="method-signature"
227
+ onclick="popupCode('IPv6.src/M000186.html');return false;">
228
228
  <span class="method-name">==</span><span class="method-args">(other)</span>
229
229
  </a>
230
230
  </div>
@@ -233,12 +233,12 @@
233
233
  </div>
234
234
  </div>
235
235
 
236
- <div id="method-M000186" class="method-detail">
237
- <a name="M000186"></a>
236
+ <div id="method-M000187" class="method-detail">
237
+ <a name="M000187"></a>
238
238
 
239
239
  <div class="method-heading">
240
- <a href="IPv6.src/M000186.html" target="Code" class="method-signature"
241
- onclick="popupCode('IPv6.src/M000186.html');return false;">
240
+ <a href="IPv6.src/M000187.html" target="Code" class="method-signature"
241
+ onclick="popupCode('IPv6.src/M000187.html');return false;">
242
242
  <span class="method-name">eql?</span><span class="method-args">(other)</span>
243
243
  </a>
244
244
  </div>
@@ -247,12 +247,12 @@
247
247
  </div>
248
248
  </div>
249
249
 
250
- <div id="method-M000187" class="method-detail">
251
- <a name="M000187"></a>
250
+ <div id="method-M000188" class="method-detail">
251
+ <a name="M000188"></a>
252
252
 
253
253
  <div class="method-heading">
254
- <a href="IPv6.src/M000187.html" target="Code" class="method-signature"
255
- onclick="popupCode('IPv6.src/M000187.html');return false;">
254
+ <a href="IPv6.src/M000188.html" target="Code" class="method-signature"
255
+ onclick="popupCode('IPv6.src/M000188.html');return false;">
256
256
  <span class="method-name">hash</span><span class="method-args">()</span>
257
257
  </a>
258
258
  </div>
@@ -261,12 +261,12 @@
261
261
  </div>
262
262
  </div>
263
263
 
264
- <div id="method-M000183" class="method-detail">
265
- <a name="M000183"></a>
264
+ <div id="method-M000184" class="method-detail">
265
+ <a name="M000184"></a>
266
266
 
267
267
  <div class="method-heading">
268
- <a href="IPv6.src/M000183.html" target="Code" class="method-signature"
269
- onclick="popupCode('IPv6.src/M000183.html');return false;">
268
+ <a href="IPv6.src/M000184.html" target="Code" class="method-signature"
269
+ onclick="popupCode('IPv6.src/M000184.html');return false;">
270
270
  <span class="method-name">inspect</span><span class="method-args">()</span>
271
271
  </a>
272
272
  </div>
@@ -275,12 +275,12 @@
275
275
  </div>
276
276
  </div>
277
277
 
278
- <div id="method-M000184" class="method-detail">
279
- <a name="M000184"></a>
278
+ <div id="method-M000185" class="method-detail">
279
+ <a name="M000185"></a>
280
280
 
281
281
  <div class="method-heading">
282
- <a href="IPv6.src/M000184.html" target="Code" class="method-signature"
283
- onclick="popupCode('IPv6.src/M000184.html');return false;">
282
+ <a href="IPv6.src/M000185.html" target="Code" class="method-signature"
283
+ onclick="popupCode('IPv6.src/M000185.html');return false;">
284
284
  <span class="method-name">to_name</span><span class="method-args">()</span>
285
285
  </a>
286
286
  </div>
@@ -289,12 +289,12 @@
289
289
  </div>
290
290
  </div>
291
291
 
292
- <div id="method-M000182" class="method-detail">
293
- <a name="M000182"></a>
292
+ <div id="method-M000183" class="method-detail">
293
+ <a name="M000183"></a>
294
294
 
295
295
  <div class="method-heading">
296
- <a href="IPv6.src/M000182.html" target="Code" class="method-signature"
297
- onclick="popupCode('IPv6.src/M000182.html');return false;">
296
+ <a href="IPv6.src/M000183.html" target="Code" class="method-signature"
297
+ onclick="popupCode('IPv6.src/M000183.html');return false;">
298
298
  <span class="method-name">to_s</span><span class="method-args">()</span>
299
299
  </a>
300
300
  </div>
@@ -5,17 +5,56 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>new (Dnsruby::IPv6)</title>
8
+ <title>create (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 103</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">address</span>)
15
- <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">String</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">16</span>
16
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'IPv6 address must be 16 bytes'</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 57</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">arg</span>)
15
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">arg</span>
16
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">IPv6</span>
17
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">arg</span>
18
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
19
+ <span class="ruby-identifier">address</span> = <span class="ruby-value str">''</span>
20
+ <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Regex_8Hex</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
21
+ <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
22
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_CompressedHex</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
23
+ <span class="ruby-identifier">prefix</span> = <span class="ruby-identifier">$1</span>
24
+ <span class="ruby-identifier">suffix</span> = <span class="ruby-identifier">$2</span>
25
+ <span class="ruby-identifier">a1</span> = <span class="ruby-value str">''</span>
26
+ <span class="ruby-identifier">a2</span> = <span class="ruby-value str">''</span>
27
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
28
+ <span class="ruby-identifier">suffix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
29
+ <span class="ruby-identifier">omitlen</span> = <span class="ruby-value">16</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a1</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a2</span>.<span class="ruby-identifier">length</span>
30
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\0&quot;</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">omitlen</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a2</span>
31
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_6Hex4Dec</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
32
+ <span class="ruby-identifier">prefix</span>, <span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span> = <span class="ruby-identifier">$1</span>, <span class="ruby-identifier">$2</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$3</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$4</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$5</span>.<span class="ruby-identifier">to_i</span>
33
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">b</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">d</span>
34
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
35
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'CCCC'</span>)
36
+ <span class="ruby-keyword kw">else</span>
37
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
38
+ <span class="ruby-keyword kw">end</span>
39
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_CompressedHex4Dec</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
40
+ <span class="ruby-identifier">prefix</span>, <span class="ruby-identifier">suffix</span>, <span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span> = <span class="ruby-identifier">$1</span>, <span class="ruby-identifier">$2</span>, <span class="ruby-identifier">$3</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$4</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$5</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$6</span>.<span class="ruby-identifier">to_i</span>
41
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">b</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">d</span>
42
+ <span class="ruby-identifier">a1</span> = <span class="ruby-value str">''</span>
43
+ <span class="ruby-identifier">a2</span> = <span class="ruby-value str">''</span>
44
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
45
+ <span class="ruby-identifier">suffix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
46
+ <span class="ruby-identifier">omitlen</span> = <span class="ruby-value">12</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a1</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a2</span>.<span class="ruby-identifier">length</span>
47
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\0&quot;</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">omitlen</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'CCCC'</span>)
48
+ <span class="ruby-keyword kw">else</span>
49
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
50
+ <span class="ruby-keyword kw">end</span>
51
+ <span class="ruby-keyword kw">else</span>
52
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
53
+ <span class="ruby-keyword kw">end</span>
54
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">IPv6</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>)
55
+ <span class="ruby-keyword kw">else</span>
56
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;cannot interpret as IPv6 address: #{arg.inspect}&quot;</span>)
17
57
  <span class="ruby-keyword kw">end</span>
18
- <span class="ruby-ivar">@address</span> = <span class="ruby-identifier">address</span>
19
58
  <span class="ruby-keyword kw">end</span></pre>
20
59
  </body>
21
60
  </html>
@@ -5,18 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>to_s (Dnsruby::IPv6)</title>
8
+ <title>new (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 111</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
15
- <span class="ruby-identifier">address</span> = <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%X:%X:%X:%X:%X:%X:%X:%X&quot;</span>, <span class="ruby-operator">*</span><span class="ruby-ivar">@address</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;nnnnnnnn&quot;</span>))
16
- <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/(^|:)0(:0)+(:|$)/</span>, <span class="ruby-value str">'::'</span>)
17
- <span class="ruby-identifier">address</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/(^|:)0(:|$)/</span>, <span class="ruby-value str">'::'</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 103</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">address</span>)
15
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">String</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">16</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'IPv6 address must be 16 bytes'</span>)
18
17
  <span class="ruby-keyword kw">end</span>
19
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">address</span>
18
+ <span class="ruby-ivar">@address</span> = <span class="ruby-identifier">address</span>
20
19
  <span class="ruby-keyword kw">end</span></pre>
21
20
  </body>
22
21
  </html>
@@ -5,14 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>inspect (Dnsruby::IPv6)</title>
8
+ <title>to_s (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 119</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inspect</span>
15
- <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;#&lt;#{self.class} #{self.to_s}&gt;&quot;</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 111</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
15
+ <span class="ruby-identifier">address</span> = <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%X:%X:%X:%X:%X:%X:%X:%X&quot;</span>, <span class="ruby-operator">*</span><span class="ruby-ivar">@address</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;nnnnnnnn&quot;</span>))
16
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/(^|:)0(:0)+(:|$)/</span>, <span class="ruby-value str">'::'</span>)
17
+ <span class="ruby-identifier">address</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/(^|:)0(:|$)/</span>, <span class="ruby-value str">'::'</span>)
18
+ <span class="ruby-keyword kw">end</span>
19
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">address</span>
16
20
  <span class="ruby-keyword kw">end</span></pre>
17
21
  </body>
18
22
  </html>
@@ -5,17 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>to_name (Dnsruby::IPv6)</title>
8
+ <title>inspect (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 123</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_name</span>
15
- <span class="ruby-comment cmt"># ip6.arpa should be searched too. [RFC3152]</span>
16
- <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Name</span>.<span class="ruby-identifier">create</span>(
17
- <span class="ruby-comment cmt"># @address.unpack(&quot;H32&quot;)[0].split(//).reverse + ['ip6', 'arpa'])</span>
18
- <span class="ruby-ivar">@address</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;H32&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">//</span>).<span class="ruby-identifier">reverse</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;.&quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;.ip6.arpa&quot;</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 119</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inspect</span>
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;#&lt;#{self.class} #{self.to_s}&gt;&quot;</span>
19
16
  <span class="ruby-keyword kw">end</span></pre>
20
17
  </body>
21
18
  </html>
@@ -5,14 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>== (Dnsruby::IPv6)</title>
8
+ <title>to_name (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 130</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@address</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">address</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 123</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_name</span>
15
+ <span class="ruby-comment cmt"># ip6.arpa should be searched too. [RFC3152]</span>
16
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Name</span>.<span class="ruby-identifier">create</span>(
17
+ <span class="ruby-comment cmt"># @address.unpack(&quot;H32&quot;)[0].split(//).reverse + ['ip6', 'arpa'])</span>
18
+ <span class="ruby-ivar">@address</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;H32&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">//</span>).<span class="ruby-identifier">reverse</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;.&quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;.ip6.arpa&quot;</span>)
16
19
  <span class="ruby-keyword kw">end</span></pre>
17
20
  </body>
18
21
  </html>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>eql? (Dnsruby::IPv6)</title>
8
+ <title>== (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 134</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">self</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 130</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@address</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">address</span>
16
16
  <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>hash (Dnsruby::IPv6)</title>
8
+ <title>eql? (Dnsruby::IPv6)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 138</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hash</span>
15
- <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@address</span>.<span class="ruby-identifier">hash</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 134</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">self</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>
16
16
  <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>hash (Dnsruby::IPv6)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 138</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hash</span>
15
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@address</span>.<span class="ruby-identifier">hash</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,60 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>create (Dnsruby::IPv6)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 57</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">arg</span>)
15
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">arg</span>
16
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">IPv6</span>
17
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">arg</span>
18
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
19
+ <span class="ruby-identifier">address</span> = <span class="ruby-value str">''</span>
20
+ <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Regex_8Hex</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
21
+ <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
22
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_CompressedHex</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
23
+ <span class="ruby-identifier">prefix</span> = <span class="ruby-identifier">$1</span>
24
+ <span class="ruby-identifier">suffix</span> = <span class="ruby-identifier">$2</span>
25
+ <span class="ruby-identifier">a1</span> = <span class="ruby-value str">''</span>
26
+ <span class="ruby-identifier">a2</span> = <span class="ruby-value str">''</span>
27
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
28
+ <span class="ruby-identifier">suffix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
29
+ <span class="ruby-identifier">omitlen</span> = <span class="ruby-value">16</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a1</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a2</span>.<span class="ruby-identifier">length</span>
30
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\0&quot;</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">omitlen</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a2</span>
31
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_6Hex4Dec</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
32
+ <span class="ruby-identifier">prefix</span>, <span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span> = <span class="ruby-identifier">$1</span>, <span class="ruby-identifier">$2</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$3</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$4</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$5</span>.<span class="ruby-identifier">to_i</span>
33
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">b</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">d</span>
34
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
35
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'CCCC'</span>)
36
+ <span class="ruby-keyword kw">else</span>
37
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
38
+ <span class="ruby-keyword kw">end</span>
39
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-constant">Regex_CompressedHex4Dec</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
40
+ <span class="ruby-identifier">prefix</span>, <span class="ruby-identifier">suffix</span>, <span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span> = <span class="ruby-identifier">$1</span>, <span class="ruby-identifier">$2</span>, <span class="ruby-identifier">$3</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$4</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$5</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">$6</span>.<span class="ruby-identifier">to_i</span>
41
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">b</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>) <span class="ruby-operator">===</span> <span class="ruby-identifier">d</span>
42
+ <span class="ruby-identifier">a1</span> = <span class="ruby-value str">''</span>
43
+ <span class="ruby-identifier">a2</span> = <span class="ruby-value str">''</span>
44
+ <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
45
+ <span class="ruby-identifier">suffix</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/[0-9A-Fa-f]+/</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">hex</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">hex</span>.<span class="ruby-identifier">hex</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'n'</span>)}
46
+ <span class="ruby-identifier">omitlen</span> = <span class="ruby-value">12</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a1</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">a2</span>.<span class="ruby-identifier">length</span>
47
+ <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\0&quot;</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">omitlen</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">a2</span> <span class="ruby-operator">&lt;&lt;</span> [<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>, <span class="ruby-identifier">c</span>, <span class="ruby-identifier">d</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">'CCCC'</span>)
48
+ <span class="ruby-keyword kw">else</span>
49
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
50
+ <span class="ruby-keyword kw">end</span>
51
+ <span class="ruby-keyword kw">else</span>
52
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;not numeric IPv6 address: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>)
53
+ <span class="ruby-keyword kw">end</span>
54
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">IPv6</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>)
55
+ <span class="ruby-keyword kw">else</span>
56
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;cannot interpret as IPv6 address: #{arg.inspect}&quot;</span>)
57
+ <span class="ruby-keyword kw">end</span>
58
+ <span class="ruby-keyword kw">end</span></pre>
59
+ </body>
60
+ </html>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (Dnsruby::IPv6)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/Dnsruby/ipv6.rb, line 103</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">address</span>)
15
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">String</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">address</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">16</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'IPv6 address must be 16 bytes'</span>)
17
+ <span class="ruby-keyword kw">end</span>
18
+ <span class="ruby-ivar">@address</span> = <span class="ruby-identifier">address</span>
19
+ <span class="ruby-keyword kw">end</span></pre>
20
+ </body>
21
+ </html>