rumai 2.0.0 → 2.0.1

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 (304) hide show
  1. data/LICENSE +13 -23
  2. data/Rakefile +8 -58
  3. data/bin/rumai +21 -22
  4. data/doc/api/IO.html +53 -0
  5. data/doc/api/Integer.html +102 -0
  6. data/doc/api/Object.html +23 -0
  7. data/doc/api/Rumai.html +1218 -0
  8. data/doc/api/Rumai/Area.html +1088 -0
  9. data/doc/api/Rumai/Chain.html +230 -0
  10. data/doc/api/Rumai/Client.html +1264 -0
  11. data/doc/api/Rumai/ClientContainer.html +227 -0
  12. data/doc/api/Rumai/ExportInstMethods.html +115 -0
  13. data/doc/api/Rumai/IXP.html +23 -0
  14. data/doc/api/Rumai/IXP/Agent.html +1222 -0
  15. data/doc/api/Rumai/IXP/Agent/FidStream.html +602 -0
  16. data/doc/api/Rumai/IXP/Agent/RangedPool.html +263 -0
  17. data/doc/api/Rumai/IXP/Error.html +32 -0
  18. data/doc/api/Rumai/IXP/Fcall.html +398 -0
  19. data/doc/api/Rumai/IXP/Qid.html +99 -0
  20. data/doc/api/Rumai/IXP/Rattach.html +71 -0
  21. data/doc/api/Rumai/IXP/Rauth.html +71 -0
  22. data/doc/api/Rumai/IXP/Rclunk.html +71 -0
  23. data/doc/api/Rumai/IXP/Rcreate.html +71 -0
  24. data/doc/api/Rumai/IXP/Rerror.html +71 -0
  25. data/doc/api/Rumai/IXP/Rflush.html +71 -0
  26. data/doc/api/Rumai/IXP/Ropen.html +71 -0
  27. data/doc/api/Rumai/IXP/Rread.html +71 -0
  28. data/doc/api/Rumai/IXP/Rremove.html +71 -0
  29. data/doc/api/Rumai/IXP/Rstat.html +71 -0
  30. data/doc/api/Rumai/IXP/Rversion.html +71 -0
  31. data/doc/api/Rumai/IXP/Rwalk.html +71 -0
  32. data/doc/api/Rumai/IXP/Rwrite.html +71 -0
  33. data/doc/api/Rumai/IXP/Rwstat.html +71 -0
  34. data/doc/api/Rumai/IXP/Stat.html +188 -0
  35. data/doc/api/Rumai/IXP/Stream.html +112 -0
  36. data/doc/api/Rumai/IXP/Struct.html +348 -0
  37. data/doc/api/Rumai/IXP/Struct/ClassField.html +177 -0
  38. data/doc/api/Rumai/IXP/Struct/Field.html +549 -0
  39. data/doc/api/Rumai/IXP/Struct/Field/CounteeField.html +175 -0
  40. data/doc/api/Rumai/IXP/Struct/Field/CounterField.html +95 -0
  41. data/doc/api/Rumai/IXP/Struct/Integer8Field.html +181 -0
  42. data/doc/api/Rumai/IXP/Struct/StringField.html +128 -0
  43. data/doc/api/Rumai/IXP/Tattach.html +71 -0
  44. data/doc/api/Rumai/IXP/Tauth.html +71 -0
  45. data/doc/api/Rumai/IXP/Tclunk.html +71 -0
  46. data/doc/api/Rumai/IXP/Tcreate.html +71 -0
  47. data/doc/api/Rumai/IXP/Terror.html +156 -0
  48. data/doc/api/Rumai/IXP/Tflush.html +71 -0
  49. data/doc/api/Rumai/IXP/Topen.html +113 -0
  50. data/doc/api/Rumai/IXP/Tread.html +71 -0
  51. data/doc/api/Rumai/IXP/Tremove.html +71 -0
  52. data/doc/api/Rumai/IXP/Tstat.html +71 -0
  53. data/doc/api/Rumai/IXP/Tversion.html +83 -0
  54. data/doc/api/Rumai/IXP/Twalk.html +71 -0
  55. data/doc/api/Rumai/IXP/Twrite.html +71 -0
  56. data/doc/api/Rumai/IXP/Twstat.html +71 -0
  57. data/doc/api/Rumai/Node.html +1139 -0
  58. data/doc/api/Rumai/View.html +1280 -0
  59. data/doc/api/Rumai/WidgetImpl.html +196 -0
  60. data/doc/api/Rumai/WidgetNode.html +184 -0
  61. data/doc/api/String.html +180 -0
  62. data/doc/api/StringIO.html +53 -0
  63. data/doc/api/Time.html +175 -0
  64. data/doc/api/all-methods.html +1436 -0
  65. data/doc/api/all-namespaces.html +140 -0
  66. data/doc/api/app.js +18 -0
  67. data/doc/api/index.html +16 -22
  68. data/doc/api/jquery.js +11 -0
  69. data/doc/api/readme.html +35 -0
  70. data/doc/api/style.css +68 -0
  71. data/doc/api/syntax_highlight.css +21 -0
  72. data/doc/history.erb +17 -0
  73. data/doc/index.erb +13 -0
  74. data/doc/index.xhtml +1235 -0
  75. data/doc/intro.erb +86 -0
  76. data/doc/setup.erb +55 -0
  77. data/doc/theory.erb +3 -0
  78. data/doc/usage.erb +285 -0
  79. data/lib/rumai.rb +10 -7
  80. data/lib/rumai/fs.rb +13 -15
  81. data/lib/rumai/ixp.rb +2 -7
  82. data/lib/rumai/ixp/message.rb +0 -3
  83. data/lib/rumai/ixp/transport.rb +1 -4
  84. data/lib/rumai/wm.rb +6 -6
  85. data/test/rumai/ixp/message.rb +249 -0
  86. metadata +104 -263
  87. data/README +0 -1
  88. data/doc/api/classes/IO.html +0 -120
  89. data/doc/api/classes/Integer.html +0 -142
  90. data/doc/api/classes/Integer.src/M000002.html +0 -18
  91. data/doc/api/classes/Object.html +0 -113
  92. data/doc/api/classes/Rumai.html +0 -530
  93. data/doc/api/classes/Rumai.src/M000007.html +0 -18
  94. data/doc/api/classes/Rumai.src/M000008.html +0 -18
  95. data/doc/api/classes/Rumai.src/M000009.html +0 -18
  96. data/doc/api/classes/Rumai.src/M000010.html +0 -18
  97. data/doc/api/classes/Rumai.src/M000011.html +0 -18
  98. data/doc/api/classes/Rumai.src/M000012.html +0 -18
  99. data/doc/api/classes/Rumai.src/M000013.html +0 -18
  100. data/doc/api/classes/Rumai.src/M000014.html +0 -20
  101. data/doc/api/classes/Rumai.src/M000015.html +0 -18
  102. data/doc/api/classes/Rumai.src/M000016.html +0 -18
  103. data/doc/api/classes/Rumai.src/M000017.html +0 -18
  104. data/doc/api/classes/Rumai.src/M000018.html +0 -18
  105. data/doc/api/classes/Rumai.src/M000019.html +0 -18
  106. data/doc/api/classes/Rumai.src/M000020.html +0 -18
  107. data/doc/api/classes/Rumai.src/M000021.html +0 -18
  108. data/doc/api/classes/Rumai.src/M000022.html +0 -18
  109. data/doc/api/classes/Rumai.src/M000023.html +0 -18
  110. data/doc/api/classes/Rumai.src/M000024.html +0 -18
  111. data/doc/api/classes/Rumai.src/M000025.html +0 -18
  112. data/doc/api/classes/Rumai.src/M000026.html +0 -18
  113. data/doc/api/classes/Rumai/Area.html +0 -461
  114. data/doc/api/classes/Rumai/Area.src/M000079.html +0 -19
  115. data/doc/api/classes/Rumai/Area.src/M000080.html +0 -18
  116. data/doc/api/classes/Rumai/Area.src/M000081.html +0 -18
  117. data/doc/api/classes/Rumai/Area.src/M000082.html +0 -18
  118. data/doc/api/classes/Rumai/Area.src/M000083.html +0 -18
  119. data/doc/api/classes/Rumai/Area.src/M000084.html +0 -18
  120. data/doc/api/classes/Rumai/Area.src/M000085.html +0 -18
  121. data/doc/api/classes/Rumai/Area.src/M000086.html +0 -18
  122. data/doc/api/classes/Rumai/Area.src/M000087.html +0 -18
  123. data/doc/api/classes/Rumai/Area.src/M000088.html +0 -18
  124. data/doc/api/classes/Rumai/Area.src/M000089.html +0 -18
  125. data/doc/api/classes/Rumai/Area.src/M000090.html +0 -22
  126. data/doc/api/classes/Rumai/Area.src/M000092.html +0 -23
  127. data/doc/api/classes/Rumai/Area.src/M000093.html +0 -28
  128. data/doc/api/classes/Rumai/Area.src/M000094.html +0 -18
  129. data/doc/api/classes/Rumai/Area.src/M000095.html +0 -31
  130. data/doc/api/classes/Rumai/Chain.html +0 -179
  131. data/doc/api/classes/Rumai/Chain.src/M000076.html +0 -18
  132. data/doc/api/classes/Rumai/Chain.src/M000077.html +0 -18
  133. data/doc/api/classes/Rumai/Chain.src/M000078.html +0 -18
  134. data/doc/api/classes/Rumai/Client.html +0 -481
  135. data/doc/api/classes/Rumai/Client.src/M000113.html +0 -18
  136. data/doc/api/classes/Rumai/Client.src/M000114.html +0 -18
  137. data/doc/api/classes/Rumai/Client.src/M000115.html +0 -18
  138. data/doc/api/classes/Rumai/Client.src/M000116.html +0 -39
  139. data/doc/api/classes/Rumai/Client.src/M000117.html +0 -19
  140. data/doc/api/classes/Rumai/Client.src/M000118.html +0 -19
  141. data/doc/api/classes/Rumai/Client.src/M000119.html +0 -18
  142. data/doc/api/classes/Rumai/Client.src/M000120.html +0 -18
  143. data/doc/api/classes/Rumai/Client.src/M000121.html +0 -18
  144. data/doc/api/classes/Rumai/Client.src/M000122.html +0 -18
  145. data/doc/api/classes/Rumai/Client.src/M000123.html +0 -19
  146. data/doc/api/classes/Rumai/Client.src/M000124.html +0 -20
  147. data/doc/api/classes/Rumai/Client.src/M000125.html +0 -20
  148. data/doc/api/classes/Rumai/Client.src/M000126.html +0 -22
  149. data/doc/api/classes/Rumai/Client.src/M000127.html +0 -18
  150. data/doc/api/classes/Rumai/Client.src/M000128.html +0 -20
  151. data/doc/api/classes/Rumai/Client.src/M000129.html +0 -18
  152. data/doc/api/classes/Rumai/Client.src/M000130.html +0 -22
  153. data/doc/api/classes/Rumai/ClientContainer.html +0 -180
  154. data/doc/api/classes/Rumai/ClientContainer.src/M000027.html +0 -18
  155. data/doc/api/classes/Rumai/ClientContainer.src/M000028.html +0 -18
  156. data/doc/api/classes/Rumai/ClientContainer.src/M000029.html +0 -18
  157. data/doc/api/classes/Rumai/ExportInstMethods.html +0 -119
  158. data/doc/api/classes/Rumai/IXP.html +0 -149
  159. data/doc/api/classes/Rumai/IXP/Agent.html +0 -447
  160. data/doc/api/classes/Rumai/IXP/Agent.src/M000044.html +0 -53
  161. data/doc/api/classes/Rumai/IXP/Agent.src/M000045.html +0 -36
  162. data/doc/api/classes/Rumai/IXP/Agent.src/M000046.html +0 -39
  163. data/doc/api/classes/Rumai/IXP/Agent.src/M000047.html +0 -20
  164. data/doc/api/classes/Rumai/IXP/Agent.src/M000048.html +0 -22
  165. data/doc/api/classes/Rumai/IXP/Agent.src/M000049.html +0 -20
  166. data/doc/api/classes/Rumai/IXP/Agent.src/M000050.html +0 -33
  167. data/doc/api/classes/Rumai/IXP/Agent.src/M000051.html +0 -19
  168. data/doc/api/classes/Rumai/IXP/Agent.src/M000052.html +0 -18
  169. data/doc/api/classes/Rumai/IXP/Agent.src/M000053.html +0 -21
  170. data/doc/api/classes/Rumai/IXP/Agent.src/M000054.html +0 -20
  171. data/doc/api/classes/Rumai/IXP/Agent.src/M000055.html +0 -20
  172. data/doc/api/classes/Rumai/IXP/Agent.src/M000056.html +0 -22
  173. data/doc/api/classes/Rumai/IXP/Agent.src/M000057.html +0 -23
  174. data/doc/api/classes/Rumai/IXP/Agent.src/M000058.html +0 -19
  175. data/doc/api/classes/Rumai/IXP/Agent/FidStream.html +0 -312
  176. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000060.html +0 -23
  177. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000061.html +0 -19
  178. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000062.html +0 -22
  179. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000063.html +0 -18
  180. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000064.html +0 -45
  181. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000065.html +0 -36
  182. data/doc/api/classes/Rumai/IXP/Agent/MODES.html +0 -130
  183. data/doc/api/classes/Rumai/IXP/Agent/MODES.src/M000059.html +0 -22
  184. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.html +0 -203
  185. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000067.html +0 -22
  186. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000068.html +0 -36
  187. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000069.html +0 -18
  188. data/doc/api/classes/Rumai/IXP/Error.html +0 -117
  189. data/doc/api/classes/Rumai/IXP/Fcall.html +0 -261
  190. data/doc/api/classes/Rumai/IXP/Fcall.src/M000070.html +0 -20
  191. data/doc/api/classes/Rumai/IXP/Fcall.src/M000071.html +0 -25
  192. data/doc/api/classes/Rumai/IXP/Fcall.src/M000072.html +0 -18
  193. data/doc/api/classes/Rumai/IXP/Fcall.src/M000073.html +0 -18
  194. data/doc/api/classes/Rumai/IXP/Qid.html +0 -184
  195. data/doc/api/classes/Rumai/IXP/Rattach.html +0 -119
  196. data/doc/api/classes/Rumai/IXP/Rauth.html +0 -119
  197. data/doc/api/classes/Rumai/IXP/Rclunk.html +0 -119
  198. data/doc/api/classes/Rumai/IXP/Rcreate.html +0 -119
  199. data/doc/api/classes/Rumai/IXP/Rerror.html +0 -119
  200. data/doc/api/classes/Rumai/IXP/Rflush.html +0 -119
  201. data/doc/api/classes/Rumai/IXP/Ropen.html +0 -119
  202. data/doc/api/classes/Rumai/IXP/Rread.html +0 -119
  203. data/doc/api/classes/Rumai/IXP/Rremove.html +0 -119
  204. data/doc/api/classes/Rumai/IXP/Rstat.html +0 -119
  205. data/doc/api/classes/Rumai/IXP/Rversion.html +0 -119
  206. data/doc/api/classes/Rumai/IXP/Rwalk.html +0 -119
  207. data/doc/api/classes/Rumai/IXP/Rwrite.html +0 -119
  208. data/doc/api/classes/Rumai/IXP/Rwstat.html +0 -119
  209. data/doc/api/classes/Rumai/IXP/Stat.html +0 -248
  210. data/doc/api/classes/Rumai/IXP/Stat.src/M000075.html +0 -18
  211. data/doc/api/classes/Rumai/IXP/Stream.html +0 -158
  212. data/doc/api/classes/Rumai/IXP/Stream.src/M000043.html +0 -18
  213. data/doc/api/classes/Rumai/IXP/Struct.html +0 -221
  214. data/doc/api/classes/Rumai/IXP/Struct.src/M000030.html +0 -19
  215. data/doc/api/classes/Rumai/IXP/Struct.src/M000031.html +0 -18
  216. data/doc/api/classes/Rumai/IXP/Struct.src/M000032.html +0 -20
  217. data/doc/api/classes/Rumai/IXP/Struct.src/M000033.html +0 -57
  218. data/doc/api/classes/Rumai/IXP/Struct/Field.html +0 -296
  219. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000034.html +0 -21
  220. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000035.html +0 -21
  221. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000036.html +0 -20
  222. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000037.html +0 -29
  223. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000038.html +0 -18
  224. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000039.html +0 -18
  225. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.html +0 -152
  226. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000041.html +0 -24
  227. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000042.html +0 -25
  228. data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.html +0 -137
  229. data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.src/M000040.html +0 -18
  230. data/doc/api/classes/Rumai/IXP/Tattach.html +0 -120
  231. data/doc/api/classes/Rumai/IXP/Tauth.html +0 -119
  232. data/doc/api/classes/Rumai/IXP/Tclunk.html +0 -119
  233. data/doc/api/classes/Rumai/IXP/Tcreate.html +0 -120
  234. data/doc/api/classes/Rumai/IXP/Terror.html +0 -145
  235. data/doc/api/classes/Rumai/IXP/Terror.src/M000074.html +0 -18
  236. data/doc/api/classes/Rumai/IXP/Tflush.html +0 -119
  237. data/doc/api/classes/Rumai/IXP/Topen.html +0 -193
  238. data/doc/api/classes/Rumai/IXP/Tread.html +0 -119
  239. data/doc/api/classes/Rumai/IXP/Tremove.html +0 -119
  240. data/doc/api/classes/Rumai/IXP/Tstat.html +0 -119
  241. data/doc/api/classes/Rumai/IXP/Tversion.html +0 -137
  242. data/doc/api/classes/Rumai/IXP/Twalk.html +0 -120
  243. data/doc/api/classes/Rumai/IXP/Twrite.html +0 -120
  244. data/doc/api/classes/Rumai/IXP/Twstat.html +0 -119
  245. data/doc/api/classes/Rumai/Node.html +0 -461
  246. data/doc/api/classes/Rumai/Node.src/M000096.html +0 -18
  247. data/doc/api/classes/Rumai/Node.src/M000097.html +0 -18
  248. data/doc/api/classes/Rumai/Node.src/M000098.html +0 -22
  249. data/doc/api/classes/Rumai/Node.src/M000099.html +0 -18
  250. data/doc/api/classes/Rumai/Node.src/M000100.html +0 -18
  251. data/doc/api/classes/Rumai/Node.src/M000101.html +0 -18
  252. data/doc/api/classes/Rumai/Node.src/M000102.html +0 -18
  253. data/doc/api/classes/Rumai/Node.src/M000103.html +0 -22
  254. data/doc/api/classes/Rumai/Node.src/M000104.html +0 -18
  255. data/doc/api/classes/Rumai/Node.src/M000105.html +0 -18
  256. data/doc/api/classes/Rumai/Node.src/M000106.html +0 -18
  257. data/doc/api/classes/Rumai/Node.src/M000107.html +0 -18
  258. data/doc/api/classes/Rumai/Node.src/M000108.html +0 -18
  259. data/doc/api/classes/Rumai/Node.src/M000109.html +0 -18
  260. data/doc/api/classes/Rumai/Node.src/M000110.html +0 -18
  261. data/doc/api/classes/Rumai/Node.src/M000111.html +0 -20
  262. data/doc/api/classes/Rumai/Node.src/M000112.html +0 -27
  263. data/doc/api/classes/Rumai/View.html +0 -436
  264. data/doc/api/classes/Rumai/View.src/M000131.html +0 -18
  265. data/doc/api/classes/Rumai/View.src/M000132.html +0 -18
  266. data/doc/api/classes/Rumai/View.src/M000133.html +0 -18
  267. data/doc/api/classes/Rumai/View.src/M000134.html +0 -18
  268. data/doc/api/classes/Rumai/View.src/M000135.html +0 -18
  269. data/doc/api/classes/Rumai/View.src/M000136.html +0 -18
  270. data/doc/api/classes/Rumai/View.src/M000137.html +0 -18
  271. data/doc/api/classes/Rumai/View.src/M000138.html +0 -28
  272. data/doc/api/classes/Rumai/View.src/M000139.html +0 -18
  273. data/doc/api/classes/Rumai/View.src/M000140.html +0 -18
  274. data/doc/api/classes/Rumai/View.src/M000141.html +0 -18
  275. data/doc/api/classes/Rumai/View.src/M000142.html +0 -18
  276. data/doc/api/classes/Rumai/View.src/M000143.html +0 -29
  277. data/doc/api/classes/Rumai/View.src/M000144.html +0 -20
  278. data/doc/api/classes/Rumai/View.src/M000145.html +0 -33
  279. data/doc/api/classes/Rumai/View.src/M000146.html +0 -50
  280. data/doc/api/classes/String.html +0 -169
  281. data/doc/api/classes/String.src/M000005.html +0 -18
  282. data/doc/api/classes/String.src/M000006.html +0 -18
  283. data/doc/api/classes/StringIO.html +0 -120
  284. data/doc/api/classes/Time.html +0 -163
  285. data/doc/api/classes/Time.src/M000003.html +0 -18
  286. data/doc/api/classes/Time.src/M000004.html +0 -18
  287. data/doc/api/created.rid +0 -1
  288. data/doc/api/files/lib/rumai/fs_rb.html +0 -115
  289. data/doc/api/files/lib/rumai/ixp/message_rb.html +0 -120
  290. data/doc/api/files/lib/rumai/ixp/message_spec_rb.html +0 -175
  291. data/doc/api/files/lib/rumai/ixp/message_spec_rb.src/M000001.html +0 -37
  292. data/doc/api/files/lib/rumai/ixp/transport_rb.html +0 -115
  293. data/doc/api/files/lib/rumai/ixp_rb.html +0 -116
  294. data/doc/api/files/lib/rumai/nfo_rb.html +0 -107
  295. data/doc/api/files/lib/rumai/wm_rb.html +0 -115
  296. data/doc/api/files/lib/rumai_rb.html +0 -115
  297. data/doc/api/fr_class_index.html +0 -82
  298. data/doc/api/fr_file_index.html +0 -34
  299. data/doc/api/fr_method_index.html +0 -172
  300. data/doc/api/rdoc-style.css +0 -208
  301. data/doc/guide.erb +0 -390
  302. data/doc/guide.html +0 -2043
  303. data/lib/rumai/ixp/message_spec.rb +0 -247
  304. data/lib/rumai/nfo.rb +0 -24
data/lib/rumai/fs.rb CHANGED
@@ -1,18 +1,16 @@
1
1
  # File system abstractions over the 9P2000 protocol.
2
- #--
3
- # Copyright 2006 Suraj N. Kurapati
4
- # See the file named LICENSE for details.
5
2
 
6
- require 'ixp'
3
+ require 'rumai/ixp'
7
4
  require 'socket'
8
5
 
9
6
  module Rumai
10
- begin
11
- addr = ENV['WMII_ADDRESS'].to_s.sub(/.*!/, '')
12
- sock = UNIXSocket.new(addr)
7
+ # address of the IXP server socket on this machine
8
+ IXP_SOCK_ADDR = ENV['WMII_ADDRESS'].sub(/.*!/, '') rescue
9
+ "/tmp/ns.#{ENV['USER']}.#{ENV['DISPLAY'] || ':0'}/wmii"
13
10
 
11
+ begin
14
12
  # We use a single, global connection to wmii's IXP server.
15
- AGENT = IXP::Agent.new(sock)
13
+ IXP_AGENT = IXP::Agent.new UNIXSocket.new(IXP_SOCK_ADDR)
16
14
 
17
15
  rescue
18
16
  $!.message << %{
@@ -37,7 +35,7 @@ module Rumai
37
35
  # Returns file statistics about this node.
38
36
  # See Rumai::IXP::Client#stat for details.
39
37
  def stat
40
- AGENT.stat @path
38
+ IXP_AGENT.stat @path
41
39
  end
42
40
 
43
41
  # Tests if this node exists on the IXP server.
@@ -56,19 +54,19 @@ module Rumai
56
54
 
57
55
  # Returns the names of all files in this directory.
58
56
  def entries
59
- AGENT.entries @path rescue []
57
+ IXP_AGENT.entries @path rescue []
60
58
  end
61
59
 
62
60
  # Opens this node for I/O access.
63
61
  # See Rumai::IXP::Client#open for details.
64
62
  def open aMode = 'r', &aBlock
65
- AGENT.open @path, aMode, &aBlock
63
+ IXP_AGENT.open @path, aMode, &aBlock
66
64
  end
67
65
 
68
66
  # Returns the entire content of this node.
69
67
  # See Rumai::IXP::Client#read for details.
70
68
  def read *aArgs
71
- AGENT.read @path, *aArgs
69
+ IXP_AGENT.read @path, *aArgs
72
70
  end
73
71
 
74
72
  # Invokes the given block for every line in the content of this node.
@@ -82,18 +80,18 @@ module Rumai
82
80
 
83
81
  # Writes the given content to this node.
84
82
  def write aContent
85
- AGENT.write @path, aContent
83
+ IXP_AGENT.write @path, aContent
86
84
  end
87
85
 
88
86
  # Creates a file corresponding to this node on the IXP server.
89
87
  # See Rumai::IXP::Client#create for details.
90
88
  def create *aArgs
91
- AGENT.create @path, *aArgs
89
+ IXP_AGENT.create @path, *aArgs
92
90
  end
93
91
 
94
92
  # Deletes the file corresponding to this node on the IXP server.
95
93
  def remove
96
- AGENT.remove @path
94
+ IXP_AGENT.remove @path
97
95
  end
98
96
 
99
97
  # Returns the given sub-path as a Node object.
data/lib/rumai/ixp.rb CHANGED
@@ -1,9 +1,4 @@
1
1
  # An interface to wmii's IXP library for Rumai.
2
- #--
3
- # Copyright 2007 Suraj N. Kurapati
4
- # See the file named LICENSE for details.
5
2
 
6
- $:.unshift __FILE__.sub(/.rb$/, '')
7
-
8
- require 'message'
9
- require 'transport'
3
+ require 'rumai/ixp/message'
4
+ require 'rumai/ixp/transport'
@@ -3,9 +3,6 @@
3
3
  # See http://cm.bell-labs.com/sys/man/5/INDEX.html
4
4
  # See http://swtch.com/plan9port/man/man9/
5
5
  #
6
- #--
7
- # Copyright 2007 Suraj N. Kurapati
8
- # See the file named LICENSE for details.
9
6
 
10
7
  module Rumai
11
8
  module IXP
@@ -1,9 +1,6 @@
1
1
  # Transport layer for 9P2000 protocol.
2
- #--
3
- # Copyright 2007 Suraj N. Kurapati
4
- # See the file named LICENSE for details.
5
2
 
6
- require 'message'
3
+ require 'rumai/ixp/message'
7
4
  require 'thread' # for Mutex
8
5
 
9
6
  module Rumai
data/lib/rumai/wm.rb CHANGED
@@ -1,14 +1,12 @@
1
1
  # Abstractions for the window manager.
2
- #--
3
- # Copyright 2006 Suraj N. Kurapati
4
- # See the file named LICENSE for details.
5
2
 
6
- require 'fs'
3
+ require 'rumai/fs'
7
4
  require 'enumerator'
8
5
 
9
6
  class Object
10
7
  # prevent these deprecated properties from clashing with our usage below
11
- undef id, type
8
+ undef id if respond_to? :id
9
+ undef type if respond_to? :type
12
10
  end
13
11
 
14
12
  module Rumai
@@ -575,7 +573,9 @@ module Rumai
575
573
 
576
574
  # Returns the IDs of all areas in this view.
577
575
  def area_ids
578
- manifest.scan(/^# (\S+)/).flatten
576
+ ids = manifest.scan(/^# (\d+)/).flatten
577
+ ids.unshift '~' # always exists in output
578
+ ids
579
579
  end
580
580
 
581
581
  # Returns all areas in this view.
@@ -0,0 +1,249 @@
1
+ require 'pp' if $DEBUG
2
+
3
+ ##
4
+ # XXX: using an explicit class instead of Kernel#describe()
5
+ # because, in Ruby 1.8, constants referenced in the blocks
6
+ # are resolved in the scope where the block was defined, not
7
+ # inside the class in which the block is being class_eval()ed.
8
+ #
9
+ # Thankfully, this bug is fixed in Ruby 1.9! :-)
10
+ # See this article for examples and proof:
11
+ # http://www.pgrs.net/2007/9/12/ruby-constants-have-weird-behavior-in-class_eval/
12
+ #
13
+ #
14
+ # NOTE: this affects us because miniunit's Kernel#describe()
15
+ # method evaluates its block using class_eval()
16
+ #
17
+ class The_IXP_library < MiniTest::Spec
18
+ include Rumai::IXP
19
+
20
+ before do
21
+ unless defined? @conn
22
+ # connect to the wmii IXP server
23
+ require 'socket'
24
+ @conn = UNIXSocket.new(Rumai::IXP_SOCK_ADDR)
25
+ end
26
+
27
+ # at_exit do
28
+ # puts "just making sure there is no more data in the pipe"
29
+ # while c = @conn.getc
30
+ # puts c
31
+ # end
32
+ # end
33
+
34
+ transaction 'establish a new session', Tversion.new(
35
+ :tag => Fcall::NOTAG,
36
+ :msize => Tversion::MSIZE,
37
+ :version => Tversion::VERSION
38
+ ) do |req, rsp|
39
+ rsp.type.must_equal Rversion.type
40
+ rsp.version.must_equal req.version
41
+ end
42
+ end
43
+
44
+ it 'can read a directory' do
45
+ transaction 'attach to FS root', Tattach.new(
46
+ :tag => 0,
47
+ :fid => 0,
48
+ :afid => Fcall::NOFID,
49
+ :uname => ENV['USER'],
50
+ :aname => ''
51
+ ) do |req, rsp|
52
+ rsp.type.must_equal Rattach.type
53
+ end
54
+
55
+ transaction 'stat FS root', Tstat.new(
56
+ :tag => 0,
57
+ :fid => 0
58
+ ) do |req, rsp|
59
+ rsp.type.must_equal Rstat.type
60
+ end
61
+
62
+ transaction 'open the FS root for reading', Topen.new(
63
+ :tag => 0,
64
+ :fid => 0,
65
+ :mode => Topen::OREAD
66
+ ) do |req, rsp|
67
+ rsp.type.must_equal Ropen.type
68
+ end
69
+
70
+ transaction 'fetch a Stat for every file in FS root', Tread.new(
71
+ :tag => 0,
72
+ :fid => 0,
73
+ :offset => 0,
74
+ :count => Tversion::MSIZE
75
+ ) do |req, rsp|
76
+ rsp.type.must_equal Rread.type
77
+
78
+ if $DEBUG
79
+ s = StringIO.new(rsp.data, 'r')
80
+ a = []
81
+ until s.eof?
82
+ t = Stat.from_9p(s)
83
+ a << t
84
+ end
85
+ pp a
86
+ end
87
+ end
88
+
89
+ transaction 'close the fid for FS root', Tclunk.new(
90
+ :tag => 0,
91
+ :fid => 0
92
+ ) do |req, rsp|
93
+ rsp.type.must_equal Rclunk.type
94
+ end
95
+
96
+ transaction 'closed fid should not be readable', Tread.new(
97
+ :tag => 0,
98
+ :fid => 0,
99
+ :offset => 0,
100
+ :count => Tversion::MSIZE
101
+ ) do |req, rsp|
102
+ rsp.type.must_equal Rerror.type
103
+ end
104
+ end
105
+
106
+ it 'can read & write a file' do
107
+ transaction 'attach to /', Tattach.new(
108
+ :tag => 0,
109
+ :fid => 0,
110
+ :afid => Fcall::NOFID,
111
+ :uname => ENV['USER'],
112
+ :aname => ''
113
+ ) do |req, rsp|
114
+ rsp.type.must_equal Rattach.type
115
+ end
116
+
117
+ file = %W[rbar temp#{$$}]
118
+ root = file[0..-2]
119
+ leaf = file.last
120
+
121
+ transaction "walk to #{root.inspect}", Twalk.new(
122
+ :tag => 0,
123
+ :fid => 0,
124
+ :newfid => 1,
125
+ :wname => root
126
+ ) do |req, rsp|
127
+ rsp.type.must_equal Rwalk.type
128
+ end
129
+
130
+ transaction "create #{leaf.inspect}", Tcreate.new(
131
+ :tag => 0,
132
+ :fid => 1,
133
+ :name => leaf,
134
+ :perm => 0644,
135
+ :mode => Topen::ORDWR
136
+ ) do |req, rsp|
137
+ rsp.type.must_equal Rcreate.type
138
+ end
139
+
140
+ transaction "close the fid for #{root.inspect}", Tclunk.new(
141
+ :tag => 0,
142
+ :fid => 1
143
+ ) do |req, rsp|
144
+ rsp.type.must_equal Rclunk.type
145
+ end
146
+
147
+ transaction "walk to #{file.inspect} from /", Twalk.new(
148
+ :tag => 0,
149
+ :fid => 0,
150
+ :newfid => 1,
151
+ :wname => file
152
+ ) do |req, rsp|
153
+ rsp.type.must_equal Rwalk.type
154
+ end
155
+
156
+ transaction 'close the fid for /', Tclunk.new(
157
+ :tag => 0,
158
+ :fid => 0
159
+ ) do |req, rsp|
160
+ rsp.type.must_equal Rclunk.type
161
+ end
162
+
163
+ transaction "open #{file.inspect} for writing", Topen.new(
164
+ :tag => 0,
165
+ :fid => 1,
166
+ :mode => Topen::ORDWR
167
+ ) do |req, rsp|
168
+ rsp.type.must_equal Ropen.type
169
+ end
170
+
171
+ write_req, write_rsp = transaction "write to #{file.inspect}", Twrite.new(
172
+ :tag => 0,
173
+ :fid => 1,
174
+ :offset => 0,
175
+ :data => "hello world!!!"
176
+ ) do |req, rsp|
177
+ rsp.type.must_equal Rwrite.type
178
+ rsp.count.must_equal req.data.length, 'count man?'
179
+ end
180
+
181
+ transaction "verify stuff was written to #{file.inspect}", Tread.new(
182
+ :tag => 0,
183
+ :fid => 1,
184
+ :offset => 0,
185
+ :count => write_rsp.count
186
+ ) do |req, rsp|
187
+ rsp.type.must_equal Rread.type
188
+ rsp.data.must_equal write_req.data
189
+ end
190
+
191
+ transaction "remove #{file.inspect}", Tremove.new(
192
+ :tag => 0,
193
+ :fid => 1
194
+ ) do |req, rsp|
195
+ rsp.type.must_equal Rremove.type
196
+ end
197
+
198
+ transaction "fid for #{file.inspect} should have been closed by Tremove", Tclunk.new(
199
+ :tag => 0,
200
+ :fid => 1
201
+ ) do |req, rsp|
202
+ rsp.type.must_equal Rerror.type
203
+ end
204
+ end
205
+
206
+ private
207
+
208
+ # Transmits the given request and returns the received response.
209
+ def send_and_recv request
210
+ # send the request
211
+ if $DEBUG
212
+ puts
213
+ pp request
214
+ pp request.to_9p
215
+ end
216
+
217
+ @conn << request.to_9p
218
+
219
+ # receive the response
220
+ response = Fcall.from_9p(@conn)
221
+
222
+ if $DEBUG
223
+ puts
224
+ pp response
225
+ pp response.to_9p
226
+ end
227
+
228
+ if response.type == Rerror.type
229
+ response.must_be_kind_of Rerror
230
+ else
231
+ response.type.must_equal request.type + 1
232
+ end
233
+
234
+ response.tag.must_equal request.tag
235
+
236
+ response
237
+ end
238
+
239
+ def transaction description, request
240
+ begin
241
+ response = send_and_recv(request)
242
+ yield request, response if block_given?
243
+ [request, response]
244
+ rescue MiniTest::Assertion => e
245
+ e.message << "\n\n\t task: #{description}\n\n\t with: #{request.class}"
246
+ raise e
247
+ end
248
+ end
249
+ end
metadata CHANGED
@@ -1,20 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rumai
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
- authors: []
7
-
6
+ authors:
7
+ - Suraj N. Kurapati
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-02-04 00:00:00 -08:00
12
+ date: 2009-01-25 00:00:00 -08:00
13
13
  default_executable:
14
- dependencies: []
15
-
16
- description: Ruby interface to the wmii window manager.
17
- email:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: inochi
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description: Ruby interface to the wmii window manager
26
+ email: sunaku@gmail.com
18
27
  executables:
19
28
  - rumai
20
29
  extensions: []
@@ -22,6 +31,10 @@ extensions: []
22
31
  extra_rdoc_files: []
23
32
 
24
33
  files:
34
+ - test
35
+ - test/rumai
36
+ - test/rumai/ixp
37
+ - test/rumai/ixp/message.rb
25
38
  - lib
26
39
  - lib/rumai.rb
27
40
  - lib/rumai
@@ -31,266 +44,94 @@ files:
31
44
  - lib/rumai/ixp
32
45
  - lib/rumai/ixp/transport.rb
33
46
  - lib/rumai/ixp/message.rb
34
- - lib/rumai/ixp/message_spec.rb
35
- - lib/rumai/nfo.rb
36
47
  - Rakefile
37
48
  - bin
38
49
  - bin/rumai
39
50
  - LICENSE
40
- - README
41
51
  - doc
42
- - doc/guide.html
43
- - doc/guide.erb
52
+ - doc/intro.erb
53
+ - doc/setup.erb
54
+ - doc/theory.erb
55
+ - doc/index.xhtml
44
56
  - doc/api
45
- - doc/api/classes
46
- - doc/api/classes/Time.html
47
- - doc/api/classes/Integer.src
48
- - doc/api/classes/Integer.src/M000002.html
49
- - doc/api/classes/Integer.html
50
- - doc/api/classes/Rumai
51
- - doc/api/classes/Rumai/View.src
52
- - doc/api/classes/Rumai/View.src/M000136.html
53
- - doc/api/classes/Rumai/View.src/M000137.html
54
- - doc/api/classes/Rumai/View.src/M000141.html
55
- - doc/api/classes/Rumai/View.src/M000143.html
56
- - doc/api/classes/Rumai/View.src/M000139.html
57
- - doc/api/classes/Rumai/View.src/M000132.html
58
- - doc/api/classes/Rumai/View.src/M000142.html
59
- - doc/api/classes/Rumai/View.src/M000133.html
60
- - doc/api/classes/Rumai/View.src/M000144.html
61
- - doc/api/classes/Rumai/View.src/M000131.html
62
- - doc/api/classes/Rumai/View.src/M000145.html
63
- - doc/api/classes/Rumai/View.src/M000135.html
64
- - doc/api/classes/Rumai/View.src/M000140.html
65
- - doc/api/classes/Rumai/View.src/M000138.html
66
- - doc/api/classes/Rumai/View.src/M000134.html
67
- - doc/api/classes/Rumai/View.src/M000146.html
68
- - doc/api/classes/Rumai/Area.src
69
- - doc/api/classes/Rumai/Area.src/M000094.html
70
- - doc/api/classes/Rumai/Area.src/M000080.html
71
- - doc/api/classes/Rumai/Area.src/M000086.html
72
- - doc/api/classes/Rumai/Area.src/M000095.html
73
- - doc/api/classes/Rumai/Area.src/M000093.html
74
- - doc/api/classes/Rumai/Area.src/M000089.html
75
- - doc/api/classes/Rumai/Area.src/M000085.html
76
- - doc/api/classes/Rumai/Area.src/M000084.html
77
- - doc/api/classes/Rumai/Area.src/M000083.html
78
- - doc/api/classes/Rumai/Area.src/M000087.html
79
- - doc/api/classes/Rumai/Area.src/M000081.html
80
- - doc/api/classes/Rumai/Area.src/M000079.html
81
- - doc/api/classes/Rumai/Area.src/M000092.html
82
- - doc/api/classes/Rumai/Area.src/M000088.html
83
- - doc/api/classes/Rumai/Area.src/M000082.html
84
- - doc/api/classes/Rumai/Area.src/M000090.html
85
- - doc/api/classes/Rumai/Client.src
86
- - doc/api/classes/Rumai/Client.src/M000129.html
87
- - doc/api/classes/Rumai/Client.src/M000126.html
88
- - doc/api/classes/Rumai/Client.src/M000117.html
89
- - doc/api/classes/Rumai/Client.src/M000121.html
90
- - doc/api/classes/Rumai/Client.src/M000124.html
91
- - doc/api/classes/Rumai/Client.src/M000114.html
92
- - doc/api/classes/Rumai/Client.src/M000113.html
93
- - doc/api/classes/Rumai/Client.src/M000115.html
94
- - doc/api/classes/Rumai/Client.src/M000119.html
95
- - doc/api/classes/Rumai/Client.src/M000127.html
96
- - doc/api/classes/Rumai/Client.src/M000123.html
97
- - doc/api/classes/Rumai/Client.src/M000118.html
98
- - doc/api/classes/Rumai/Client.src/M000120.html
99
- - doc/api/classes/Rumai/Client.src/M000116.html
100
- - doc/api/classes/Rumai/Client.src/M000130.html
101
- - doc/api/classes/Rumai/Client.src/M000128.html
102
- - doc/api/classes/Rumai/Client.src/M000122.html
103
- - doc/api/classes/Rumai/Client.src/M000125.html
104
- - doc/api/classes/Rumai/IXP.html
105
- - doc/api/classes/Rumai/Client.html
106
- - doc/api/classes/Rumai/ExportInstMethods.html
107
- - doc/api/classes/Rumai/ClientContainer.html
108
- - doc/api/classes/Rumai/Chain.html
109
- - doc/api/classes/Rumai/Area.html
110
- - doc/api/classes/Rumai/IXP
111
- - doc/api/classes/Rumai/IXP/Rclunk.html
112
- - doc/api/classes/Rumai/IXP/Struct.src
113
- - doc/api/classes/Rumai/IXP/Struct.src/M000032.html
114
- - doc/api/classes/Rumai/IXP/Struct.src/M000033.html
115
- - doc/api/classes/Rumai/IXP/Struct.src/M000031.html
116
- - doc/api/classes/Rumai/IXP/Struct.src/M000030.html
117
- - doc/api/classes/Rumai/IXP/Rflush.html
118
- - doc/api/classes/Rumai/IXP/Tauth.html
119
- - doc/api/classes/Rumai/IXP/Fcall.html
120
- - doc/api/classes/Rumai/IXP/Tcreate.html
121
- - doc/api/classes/Rumai/IXP/Fcall.src
122
- - doc/api/classes/Rumai/IXP/Fcall.src/M000070.html
123
- - doc/api/classes/Rumai/IXP/Fcall.src/M000073.html
124
- - doc/api/classes/Rumai/IXP/Fcall.src/M000071.html
125
- - doc/api/classes/Rumai/IXP/Fcall.src/M000072.html
126
- - doc/api/classes/Rumai/IXP/Rauth.html
127
- - doc/api/classes/Rumai/IXP/Qid.html
128
- - doc/api/classes/Rumai/IXP/Tread.html
129
- - doc/api/classes/Rumai/IXP/Rcreate.html
130
- - doc/api/classes/Rumai/IXP/Tattach.html
131
- - doc/api/classes/Rumai/IXP/Rremove.html
132
- - doc/api/classes/Rumai/IXP/Stat.src
133
- - doc/api/classes/Rumai/IXP/Stat.src/M000075.html
134
- - doc/api/classes/Rumai/IXP/Rerror.html
135
- - doc/api/classes/Rumai/IXP/Stream.src
136
- - doc/api/classes/Rumai/IXP/Stream.src/M000043.html
137
- - doc/api/classes/Rumai/IXP/Struct.html
138
- - doc/api/classes/Rumai/IXP/Struct
139
- - doc/api/classes/Rumai/IXP/Struct/Field
140
- - doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.html
141
- - doc/api/classes/Rumai/IXP/Struct/Field/CounterField.html
142
- - doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src
143
- - doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000041.html
144
- - doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000042.html
145
- - doc/api/classes/Rumai/IXP/Struct/Field/CounterField.src
146
- - doc/api/classes/Rumai/IXP/Struct/Field/CounterField.src/M000040.html
147
- - doc/api/classes/Rumai/IXP/Struct/Field.src
148
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000038.html
149
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000036.html
150
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000037.html
151
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000035.html
152
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000039.html
153
- - doc/api/classes/Rumai/IXP/Struct/Field.src/M000034.html
154
- - doc/api/classes/Rumai/IXP/Struct/Field.html
155
- - doc/api/classes/Rumai/IXP/Tstat.html
156
- - doc/api/classes/Rumai/IXP/Rstat.html
157
- - doc/api/classes/Rumai/IXP/Stream.html
158
- - doc/api/classes/Rumai/IXP/Stat.html
159
- - doc/api/classes/Rumai/IXP/Rwstat.html
160
- - doc/api/classes/Rumai/IXP/Terror.html
161
- - doc/api/classes/Rumai/IXP/Rwrite.html
162
- - doc/api/classes/Rumai/IXP/Twstat.html
163
- - doc/api/classes/Rumai/IXP/Twrite.html
164
- - doc/api/classes/Rumai/IXP/Topen.html
165
- - doc/api/classes/Rumai/IXP/Twalk.html
166
- - doc/api/classes/Rumai/IXP/Tversion.html
167
- - doc/api/classes/Rumai/IXP/Tflush.html
168
- - doc/api/classes/Rumai/IXP/Rread.html
169
- - doc/api/classes/Rumai/IXP/Tremove.html
170
- - doc/api/classes/Rumai/IXP/Agent
171
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src
172
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000060.html
173
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000063.html
174
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000065.html
175
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000061.html
176
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000064.html
177
- - doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000062.html
178
- - doc/api/classes/Rumai/IXP/Agent/FidStream.html
179
- - doc/api/classes/Rumai/IXP/Agent/MODES.src
180
- - doc/api/classes/Rumai/IXP/Agent/MODES.src/M000059.html
181
- - doc/api/classes/Rumai/IXP/Agent/RangedPool.src
182
- - doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000067.html
183
- - doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000068.html
184
- - doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000069.html
185
- - doc/api/classes/Rumai/IXP/Agent/MODES.html
186
- - doc/api/classes/Rumai/IXP/Agent/RangedPool.html
187
- - doc/api/classes/Rumai/IXP/Rwalk.html
188
- - doc/api/classes/Rumai/IXP/Agent.html
189
- - doc/api/classes/Rumai/IXP/Terror.src
190
- - doc/api/classes/Rumai/IXP/Terror.src/M000074.html
191
- - doc/api/classes/Rumai/IXP/Error.html
192
- - doc/api/classes/Rumai/IXP/Tclunk.html
193
- - doc/api/classes/Rumai/IXP/Ropen.html
194
- - doc/api/classes/Rumai/IXP/Agent.src
195
- - doc/api/classes/Rumai/IXP/Agent.src/M000055.html
196
- - doc/api/classes/Rumai/IXP/Agent.src/M000056.html
197
- - doc/api/classes/Rumai/IXP/Agent.src/M000051.html
198
- - doc/api/classes/Rumai/IXP/Agent.src/M000058.html
199
- - doc/api/classes/Rumai/IXP/Agent.src/M000048.html
200
- - doc/api/classes/Rumai/IXP/Agent.src/M000050.html
201
- - doc/api/classes/Rumai/IXP/Agent.src/M000054.html
202
- - doc/api/classes/Rumai/IXP/Agent.src/M000049.html
203
- - doc/api/classes/Rumai/IXP/Agent.src/M000047.html
204
- - doc/api/classes/Rumai/IXP/Agent.src/M000044.html
205
- - doc/api/classes/Rumai/IXP/Agent.src/M000045.html
206
- - doc/api/classes/Rumai/IXP/Agent.src/M000052.html
207
- - doc/api/classes/Rumai/IXP/Agent.src/M000046.html
208
- - doc/api/classes/Rumai/IXP/Agent.src/M000053.html
209
- - doc/api/classes/Rumai/IXP/Agent.src/M000057.html
210
- - doc/api/classes/Rumai/IXP/Rversion.html
211
- - doc/api/classes/Rumai/IXP/Rattach.html
212
- - doc/api/classes/Rumai/Chain.src
213
- - doc/api/classes/Rumai/Chain.src/M000076.html
214
- - doc/api/classes/Rumai/Chain.src/M000078.html
215
- - doc/api/classes/Rumai/Chain.src/M000077.html
216
- - doc/api/classes/Rumai/Node.src
217
- - doc/api/classes/Rumai/Node.src/M000101.html
218
- - doc/api/classes/Rumai/Node.src/M000111.html
219
- - doc/api/classes/Rumai/Node.src/M000096.html
220
- - doc/api/classes/Rumai/Node.src/M000106.html
221
- - doc/api/classes/Rumai/Node.src/M000110.html
222
- - doc/api/classes/Rumai/Node.src/M000103.html
223
- - doc/api/classes/Rumai/Node.src/M000097.html
224
- - doc/api/classes/Rumai/Node.src/M000100.html
225
- - doc/api/classes/Rumai/Node.src/M000098.html
226
- - doc/api/classes/Rumai/Node.src/M000109.html
227
- - doc/api/classes/Rumai/Node.src/M000105.html
228
- - doc/api/classes/Rumai/Node.src/M000099.html
229
- - doc/api/classes/Rumai/Node.src/M000112.html
230
- - doc/api/classes/Rumai/Node.src/M000104.html
231
- - doc/api/classes/Rumai/Node.src/M000108.html
232
- - doc/api/classes/Rumai/Node.src/M000102.html
233
- - doc/api/classes/Rumai/Node.src/M000107.html
234
- - doc/api/classes/Rumai/ClientContainer.src
235
- - doc/api/classes/Rumai/ClientContainer.src/M000027.html
236
- - doc/api/classes/Rumai/ClientContainer.src/M000029.html
237
- - doc/api/classes/Rumai/ClientContainer.src/M000028.html
238
- - doc/api/classes/Rumai/Node.html
239
- - doc/api/classes/Rumai/View.html
240
- - doc/api/classes/String.src
241
- - doc/api/classes/String.src/M000005.html
242
- - doc/api/classes/String.src/M000006.html
243
- - doc/api/classes/Object.html
244
- - doc/api/classes/String.html
245
- - doc/api/classes/StringIO.html
246
- - doc/api/classes/Time.src
247
- - doc/api/classes/Time.src/M000004.html
248
- - doc/api/classes/Time.src/M000003.html
249
- - doc/api/classes/Rumai.src
250
- - doc/api/classes/Rumai.src/M000022.html
251
- - doc/api/classes/Rumai.src/M000017.html
252
- - doc/api/classes/Rumai.src/M000020.html
253
- - doc/api/classes/Rumai.src/M000026.html
254
- - doc/api/classes/Rumai.src/M000018.html
255
- - doc/api/classes/Rumai.src/M000013.html
256
- - doc/api/classes/Rumai.src/M000021.html
257
- - doc/api/classes/Rumai.src/M000010.html
258
- - doc/api/classes/Rumai.src/M000011.html
259
- - doc/api/classes/Rumai.src/M000023.html
260
- - doc/api/classes/Rumai.src/M000008.html
261
- - doc/api/classes/Rumai.src/M000025.html
262
- - doc/api/classes/Rumai.src/M000007.html
263
- - doc/api/classes/Rumai.src/M000014.html
264
- - doc/api/classes/Rumai.src/M000015.html
265
- - doc/api/classes/Rumai.src/M000012.html
266
- - doc/api/classes/Rumai.src/M000009.html
267
- - doc/api/classes/Rumai.src/M000019.html
268
- - doc/api/classes/Rumai.src/M000024.html
269
- - doc/api/classes/Rumai.src/M000016.html
270
- - doc/api/classes/Rumai.html
271
- - doc/api/classes/IO.html
272
- - doc/api/fr_method_index.html
273
- - doc/api/rdoc-style.css
274
- - doc/api/files
275
- - doc/api/files/lib
276
- - doc/api/files/lib/rumai
277
- - doc/api/files/lib/rumai/ixp_rb.html
278
- - doc/api/files/lib/rumai/nfo_rb.html
279
- - doc/api/files/lib/rumai/ixp
280
- - doc/api/files/lib/rumai/ixp/message_spec_rb.html
281
- - doc/api/files/lib/rumai/ixp/message_rb.html
282
- - doc/api/files/lib/rumai/ixp/transport_rb.html
283
- - doc/api/files/lib/rumai/ixp/message_spec_rb.src
284
- - doc/api/files/lib/rumai/ixp/message_spec_rb.src/M000001.html
285
- - doc/api/files/lib/rumai/fs_rb.html
286
- - doc/api/files/lib/rumai/wm_rb.html
287
- - doc/api/files/lib/rumai_rb.html
288
- - doc/api/created.rid
57
+ - doc/api/Time.html
58
+ - doc/api/syntax_highlight.css
59
+ - doc/api/Integer.html
60
+ - doc/api/Rumai
61
+ - doc/api/Rumai/IXP.html
62
+ - doc/api/Rumai/Client.html
63
+ - doc/api/Rumai/ExportInstMethods.html
64
+ - doc/api/Rumai/ClientContainer.html
65
+ - doc/api/Rumai/WidgetNode.html
66
+ - doc/api/Rumai/Chain.html
67
+ - doc/api/Rumai/Area.html
68
+ - doc/api/Rumai/IXP
69
+ - doc/api/Rumai/IXP/Rclunk.html
70
+ - doc/api/Rumai/IXP/Rflush.html
71
+ - doc/api/Rumai/IXP/Tauth.html
72
+ - doc/api/Rumai/IXP/Fcall.html
73
+ - doc/api/Rumai/IXP/Tcreate.html
74
+ - doc/api/Rumai/IXP/Rauth.html
75
+ - doc/api/Rumai/IXP/Qid.html
76
+ - doc/api/Rumai/IXP/Tread.html
77
+ - doc/api/Rumai/IXP/Rcreate.html
78
+ - doc/api/Rumai/IXP/Tattach.html
79
+ - doc/api/Rumai/IXP/Rremove.html
80
+ - doc/api/Rumai/IXP/Rerror.html
81
+ - doc/api/Rumai/IXP/Struct.html
82
+ - doc/api/Rumai/IXP/Struct
83
+ - doc/api/Rumai/IXP/Struct/Integer8Field.html
84
+ - doc/api/Rumai/IXP/Struct/Field
85
+ - doc/api/Rumai/IXP/Struct/Field/CounteeField.html
86
+ - doc/api/Rumai/IXP/Struct/Field/CounterField.html
87
+ - doc/api/Rumai/IXP/Struct/ClassField.html
88
+ - doc/api/Rumai/IXP/Struct/Field.html
89
+ - doc/api/Rumai/IXP/Struct/StringField.html
90
+ - doc/api/Rumai/IXP/Tstat.html
91
+ - doc/api/Rumai/IXP/Rstat.html
92
+ - doc/api/Rumai/IXP/Stream.html
93
+ - doc/api/Rumai/IXP/Stat.html
94
+ - doc/api/Rumai/IXP/Rwstat.html
95
+ - doc/api/Rumai/IXP/Terror.html
96
+ - doc/api/Rumai/IXP/Rwrite.html
97
+ - doc/api/Rumai/IXP/Twstat.html
98
+ - doc/api/Rumai/IXP/Twrite.html
99
+ - doc/api/Rumai/IXP/Topen.html
100
+ - doc/api/Rumai/IXP/Twalk.html
101
+ - doc/api/Rumai/IXP/Tversion.html
102
+ - doc/api/Rumai/IXP/Tflush.html
103
+ - doc/api/Rumai/IXP/Rread.html
104
+ - doc/api/Rumai/IXP/Tremove.html
105
+ - doc/api/Rumai/IXP/Agent
106
+ - doc/api/Rumai/IXP/Agent/FidStream.html
107
+ - doc/api/Rumai/IXP/Agent/RangedPool.html
108
+ - doc/api/Rumai/IXP/Rwalk.html
109
+ - doc/api/Rumai/IXP/Agent.html
110
+ - doc/api/Rumai/IXP/Error.html
111
+ - doc/api/Rumai/IXP/Tclunk.html
112
+ - doc/api/Rumai/IXP/Ropen.html
113
+ - doc/api/Rumai/IXP/Rversion.html
114
+ - doc/api/Rumai/IXP/Rattach.html
115
+ - doc/api/Rumai/Node.html
116
+ - doc/api/Rumai/WidgetImpl.html
117
+ - doc/api/Rumai/View.html
118
+ - doc/api/style.css
119
+ - doc/api/jquery.js
120
+ - doc/api/all-methods.html
121
+ - doc/api/Object.html
122
+ - doc/api/app.js
123
+ - doc/api/String.html
124
+ - doc/api/readme.html
125
+ - doc/api/StringIO.html
126
+ - doc/api/all-namespaces.html
289
127
  - doc/api/index.html
290
- - doc/api/fr_file_index.html
291
- - doc/api/fr_class_index.html
128
+ - doc/api/Rumai.html
129
+ - doc/api/IO.html
130
+ - doc/usage.erb
131
+ - doc/history.erb
132
+ - doc/index.erb
292
133
  has_rdoc: true
293
- homepage: http://rumai.rubyforge.org
134
+ homepage: http://snk.tuxfamily.org/lib/rumai
294
135
  post_install_message:
295
136
  rdoc_options: []
296
137
 
@@ -310,10 +151,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
310
151
  version:
311
152
  requirements: []
312
153
 
313
- rubyforge_project: rumai
314
- rubygems_version: 1.0.1
154
+ rubyforge_project: sunaku
155
+ rubygems_version: 1.3.1
315
156
  signing_key:
316
157
  specification_version: 2
317
- summary: Ruby interface to the wmii window manager.
158
+ summary: Ruby interface to the wmii window manager
318
159
  test_files: []
319
160