ripxplore 0.14.0 → 0.14.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 (251) hide show
  1. data/doc/classes/A2DskDosOrder.html +5 -5
  2. data/doc/classes/A2DskDosOrder.src/M000535.html +18 -0
  3. data/doc/classes/AppleCPM.html +40 -40
  4. data/doc/classes/AppleCPM.src/M000413.html +4 -4
  5. data/doc/classes/AppleCPM.src/M000414.html +5 -8
  6. data/doc/classes/AppleCPM.src/M000415.html +7 -9
  7. data/doc/classes/AppleCPM.src/M000416.html +10 -27
  8. data/doc/classes/AppleCPM.src/M000417.html +16 -11
  9. data/doc/classes/AppleCPM.src/M000418.html +21 -43
  10. data/doc/classes/AppleCPM.src/M000419.html +37 -10
  11. data/doc/classes/AppleCPM.src/M000420.html +30 -0
  12. data/doc/classes/AppleHiResPic.html +40 -40
  13. data/doc/classes/AppleHiResPic.src/M000473.html +5 -5
  14. data/doc/classes/AppleHiResPic.src/M000474.html +4 -4
  15. data/doc/classes/AppleHiResPic.src/M000475.html +4 -38
  16. data/doc/classes/AppleHiResPic.src/M000476.html +38 -4
  17. data/doc/classes/AppleHiResPic.src/M000477.html +4 -4
  18. data/doc/classes/AppleHiResPic.src/M000478.html +4 -4
  19. data/doc/classes/AppleHiResPic.src/M000479.html +4 -4
  20. data/doc/classes/AppleHiResPic.src/M000480.html +18 -0
  21. data/doc/classes/ApplePrintShopMiniPix.html +20 -20
  22. data/doc/classes/ApplePrintShopMiniPix.src/M000570.html +24 -4
  23. data/doc/classes/ApplePrintShopMiniPix.src/M000571.html +4 -4
  24. data/doc/classes/ApplePrintShopMiniPix.src/M000572.html +4 -4
  25. data/doc/classes/ApplePrintShopMiniPix.src/M000573.html +18 -0
  26. data/doc/classes/AppleWorksWP.html +10 -10
  27. data/doc/classes/AppleWorksWP.src/M000536.html +6 -31
  28. data/doc/classes/AppleWorksWP.src/M000537.html +45 -0
  29. data/doc/classes/Applesoft.html +10 -10
  30. data/doc/classes/Applesoft.src/M000436.html +8 -62
  31. data/doc/classes/Applesoft.src/M000437.html +75 -0
  32. data/doc/classes/AtariDos.html +10 -10
  33. data/doc/classes/AtariDos.src/M000425.html +4 -29
  34. data/doc/classes/AtariDos.src/M000426.html +43 -0
  35. data/doc/classes/C64.html +105 -105
  36. data/doc/classes/C64.src/M000549.html +4 -4
  37. data/doc/classes/C64.src/M000550.html +4 -17
  38. data/doc/classes/C64.src/M000551.html +17 -6
  39. data/doc/classes/C64.src/M000552.html +6 -8
  40. data/doc/classes/C64.src/M000553.html +4 -4
  41. data/doc/classes/C64.src/M000554.html +8 -5
  42. data/doc/classes/C64.src/M000555.html +5 -5
  43. data/doc/classes/C64.src/M000556.html +5 -4
  44. data/doc/classes/C64.src/M000557.html +4 -4
  45. data/doc/classes/C64.src/M000558.html +4 -4
  46. data/doc/classes/C64.src/M000559.html +4 -4
  47. data/doc/classes/C64.src/M000560.html +3 -3
  48. data/doc/classes/C64.src/M000561.html +4 -4
  49. data/doc/classes/C64.src/M000562.html +3 -3
  50. data/doc/classes/C64.src/M000563.html +4 -5
  51. data/doc/classes/C64.src/M000564.html +5 -5
  52. data/doc/classes/C64.src/M000565.html +5 -4
  53. data/doc/classes/C64.src/M000566.html +3 -3
  54. data/doc/classes/C64.src/M000567.html +4 -55
  55. data/doc/classes/C64.src/M000568.html +22 -66
  56. data/doc/classes/C64.src/M000569.html +113 -0
  57. data/doc/classes/C64GeoPaintPic.html +30 -30
  58. data/doc/classes/C64GeoPaintPic.src/M000430.html +4 -4
  59. data/doc/classes/C64GeoPaintPic.src/M000431.html +4 -4
  60. data/doc/classes/C64GeoPaintPic.src/M000432.html +4 -57
  61. data/doc/classes/C64GeoPaintPic.src/M000433.html +55 -27
  62. data/doc/classes/C64GeoPaintPic.src/M000434.html +29 -6
  63. data/doc/classes/C64GeoPaintPic.src/M000435.html +20 -0
  64. data/doc/classes/C64GeosBASICFile.src/M000305.html +1 -1
  65. data/doc/classes/C64PhotoScrap.html +70 -70
  66. data/doc/classes/C64PhotoScrap.src/M000458.html +4 -4
  67. data/doc/classes/C64PhotoScrap.src/M000459.html +4 -4
  68. data/doc/classes/C64PhotoScrap.src/M000460.html +4 -4
  69. data/doc/classes/C64PhotoScrap.src/M000461.html +4 -4
  70. data/doc/classes/C64PhotoScrap.src/M000462.html +4 -4
  71. data/doc/classes/C64PhotoScrap.src/M000463.html +4 -4
  72. data/doc/classes/C64PhotoScrap.src/M000464.html +4 -7
  73. data/doc/classes/C64PhotoScrap.src/M000465.html +7 -4
  74. data/doc/classes/C64PhotoScrap.src/M000466.html +4 -4
  75. data/doc/classes/C64PhotoScrap.src/M000467.html +4 -4
  76. data/doc/classes/C64PhotoScrap.src/M000468.html +5 -40
  77. data/doc/classes/C64PhotoScrap.src/M000469.html +36 -28
  78. data/doc/classes/C64PhotoScrap.src/M000470.html +30 -9
  79. data/doc/classes/C64PhotoScrap.src/M000471.html +24 -0
  80. data/doc/classes/C64Seq.html +15 -15
  81. data/doc/classes/C64Seq.src/M000410.html +6 -4
  82. data/doc/classes/C64Seq.src/M000411.html +4 -4
  83. data/doc/classes/C64Seq.src/M000412.html +18 -0
  84. data/doc/classes/CVT.html +10 -10
  85. data/doc/classes/CVT.src/M000514.html +4 -4
  86. data/doc/classes/CVT.src/M000515.html +18 -0
  87. data/doc/classes/CVTArchive.html +12 -12
  88. data/doc/classes/CVTArchive.src/M000399.html +4 -56
  89. data/doc/classes/CVTArchive.src/M000400.html +70 -0
  90. data/doc/classes/CbmDos.src/M000099.html +4 -0
  91. data/doc/classes/CbmDos.src/M000100.html +1 -1
  92. data/doc/classes/CbmDos.src/M000101.html +1 -1
  93. data/doc/classes/CbmDos.src/M000102.html +1 -1
  94. data/doc/classes/CbmDos.src/M000103.html +1 -1
  95. data/doc/classes/CbmDos.src/M000104.html +1 -1
  96. data/doc/classes/CbmDos.src/M000105.html +1 -1
  97. data/doc/classes/CbmDos.src/M000106.html +1 -1
  98. data/doc/classes/CbmDos.src/M000107.html +1 -1
  99. data/doc/classes/Coco.html +65 -65
  100. data/doc/classes/Coco.src/M000483.html +4 -4
  101. data/doc/classes/Coco.src/M000484.html +4 -4
  102. data/doc/classes/Coco.src/M000485.html +4 -4
  103. data/doc/classes/Coco.src/M000486.html +4 -4
  104. data/doc/classes/Coco.src/M000487.html +4 -4
  105. data/doc/classes/Coco.src/M000488.html +3 -3
  106. data/doc/classes/Coco.src/M000489.html +4 -4
  107. data/doc/classes/Coco.src/M000490.html +4 -4
  108. data/doc/classes/Coco.src/M000491.html +4 -4
  109. data/doc/classes/Coco.src/M000492.html +4 -4
  110. data/doc/classes/Coco.src/M000493.html +4 -4
  111. data/doc/classes/Coco.src/M000494.html +4 -41
  112. data/doc/classes/Coco.src/M000495.html +55 -0
  113. data/doc/classes/CocoBasic.html +10 -10
  114. data/doc/classes/CocoBasic.src/M000428.html +6 -58
  115. data/doc/classes/CocoBasic.src/M000429.html +72 -0
  116. data/doc/classes/D81.html +45 -45
  117. data/doc/classes/D81.src/M000438.html +4 -4
  118. data/doc/classes/D81.src/M000439.html +4 -4
  119. data/doc/classes/D81.src/M000440.html +4 -4
  120. data/doc/classes/D81.src/M000441.html +4 -4
  121. data/doc/classes/D81.src/M000442.html +4 -4
  122. data/doc/classes/D81.src/M000443.html +4 -4
  123. data/doc/classes/D81.src/M000444.html +4 -9
  124. data/doc/classes/D81.src/M000445.html +7 -8
  125. data/doc/classes/D81.src/M000446.html +24 -0
  126. data/doc/classes/FileCache.html +15 -0
  127. data/doc/classes/FileCache.src/M000398.html +20 -0
  128. data/doc/classes/FileContainer.html +5 -5
  129. data/doc/classes/FileContainer.src/M000472.html +26 -0
  130. data/doc/classes/FileSystem.html +41 -41
  131. data/doc/classes/FileSystem.src/M000447.html +4 -4
  132. data/doc/classes/FileSystem.src/M000448.html +4 -4
  133. data/doc/classes/FileSystem.src/M000449.html +4 -4
  134. data/doc/classes/FileSystem.src/M000450.html +4 -4
  135. data/doc/classes/FileSystem.src/M000451.html +5 -5
  136. data/doc/classes/FileSystem.src/M000452.html +4 -6
  137. data/doc/classes/FileSystem.src/M000453.html +6 -11
  138. data/doc/classes/FileSystem.src/M000454.html +25 -0
  139. data/doc/classes/GenericGIF.html +25 -25
  140. data/doc/classes/GenericGIF.src/M000578.html +4 -4
  141. data/doc/classes/GenericGIF.src/M000579.html +4 -4
  142. data/doc/classes/GenericGIF.src/M000580.html +4 -4
  143. data/doc/classes/GenericGIF.src/M000581.html +4 -4
  144. data/doc/classes/GenericGIF.src/M000582.html +18 -0
  145. data/doc/classes/HostSystem.html +91 -91
  146. data/doc/classes/HostSystem.src/M000496.html +4 -8
  147. data/doc/classes/HostSystem.src/M000497.html +8 -4
  148. data/doc/classes/HostSystem.src/M000498.html +5 -5
  149. data/doc/classes/HostSystem.src/M000499.html +4 -8
  150. data/doc/classes/HostSystem.src/M000500.html +8 -19
  151. data/doc/classes/HostSystem.src/M000501.html +19 -4
  152. data/doc/classes/HostSystem.src/M000502.html +4 -5
  153. data/doc/classes/HostSystem.src/M000503.html +5 -4
  154. data/doc/classes/HostSystem.src/M000504.html +4 -4
  155. data/doc/classes/HostSystem.src/M000505.html +4 -4
  156. data/doc/classes/HostSystem.src/M000506.html +4 -4
  157. data/doc/classes/HostSystem.src/M000507.html +3 -3
  158. data/doc/classes/HostSystem.src/M000508.html +4 -4
  159. data/doc/classes/HostSystem.src/M000509.html +4 -4
  160. data/doc/classes/HostSystem.src/M000510.html +4 -4
  161. data/doc/classes/HostSystem.src/M000511.html +4 -15
  162. data/doc/classes/HostSystem.src/M000512.html +15 -4
  163. data/doc/classes/HostSystem.src/M000513.html +18 -0
  164. data/doc/classes/ImageSniffing.html +36 -36
  165. data/doc/classes/ImageSniffing.src/M000526.html +103 -19
  166. data/doc/classes/ImageSniffing.src/M000527.html +22 -141
  167. data/doc/classes/ImageSniffing.src/M000528.html +152 -34
  168. data/doc/classes/ImageSniffing.src/M000529.html +31 -30
  169. data/doc/classes/ImageSniffing.src/M000530.html +25 -38
  170. data/doc/classes/ImageSniffing.src/M000531.html +38 -53
  171. data/doc/classes/ImageSniffing.src/M000532.html +53 -23
  172. data/doc/classes/ImageSniffing.src/M000533.html +44 -0
  173. data/doc/classes/PackedProDosPic.html +5 -5
  174. data/doc/classes/PackedProDosPic.src/M000427.html +40 -0
  175. data/doc/classes/PascalDos.html +15 -15
  176. data/doc/classes/PascalDos.src/M000538.html +5 -8
  177. data/doc/classes/PascalDos.src/M000539.html +8 -49
  178. data/doc/classes/PascalDos.src/M000540.html +62 -0
  179. data/doc/classes/PascalPic.html +10 -10
  180. data/doc/classes/PascalPic.src/M000520.html +6 -4
  181. data/doc/classes/PascalPic.src/M000521.html +18 -0
  182. data/doc/classes/ProDosBINFile.html +20 -20
  183. data/doc/classes/ProDosBINFile.src/M000516.html +7 -5
  184. data/doc/classes/ProDosBINFile.src/M000517.html +4 -4
  185. data/doc/classes/ProDosBINFile.src/M000518.html +4 -4
  186. data/doc/classes/ProDosBINFile.src/M000519.html +18 -0
  187. data/doc/classes/ProcSource.html +10 -10
  188. data/doc/classes/ProcSource.src/M000576.html +21 -92
  189. data/doc/classes/ProcSource.src/M000577.html +109 -0
  190. data/doc/classes/RDoc.html +5 -5
  191. data/doc/classes/RDoc.src/M000575.html +40 -0
  192. data/doc/classes/RipXplore.html +1 -1
  193. data/doc/classes/RsDos.html +20 -20
  194. data/doc/classes/RsDos.src/M000522.html +4 -4
  195. data/doc/classes/RsDos.src/M000523.html +4 -4
  196. data/doc/classes/RsDos.src/M000524.html +4 -48
  197. data/doc/classes/RsDos.src/M000525.html +62 -0
  198. data/doc/classes/ScAsm.html +5 -5
  199. data/doc/classes/ScAsm.src/M000534.html +45 -0
  200. data/doc/classes/ScreenDump.html +5 -5
  201. data/doc/classes/ScreenDump.src/M000574.html +24 -0
  202. data/doc/classes/ScreenDumps.html +15 -15
  203. data/doc/classes/ScreenDumps.src/M000403.html +8 -10
  204. data/doc/classes/ScreenDumps.src/M000404.html +10 -21
  205. data/doc/classes/ScreenDumps.src/M000405.html +35 -0
  206. data/doc/classes/SubclassTracking.html +5 -5
  207. data/doc/classes/SubclassTracking.src/M000583.html +23 -0
  208. data/doc/classes/Ti99Fms.html +10 -10
  209. data/doc/classes/Ti99Fms.src/M000481.html +4 -63
  210. data/doc/classes/Ti99Fms.src/M000482.html +77 -0
  211. data/doc/classes/Ti99TextFile.html +10 -10
  212. data/doc/classes/Ti99TextFile.src/M000547.html +19 -4
  213. data/doc/classes/Ti99TextFile.src/M000548.html +18 -0
  214. data/doc/classes/TiArtistPattern.html +20 -20
  215. data/doc/classes/TiArtistPattern.src/M000406.html +36 -4
  216. data/doc/classes/TiArtistPattern.src/M000407.html +4 -4
  217. data/doc/classes/TiArtistPattern.src/M000408.html +4 -4
  218. data/doc/classes/TiArtistPattern.src/M000409.html +18 -0
  219. data/doc/classes/TiRLE.html +20 -20
  220. data/doc/classes/TiRLE.src/M000543.html +5 -5
  221. data/doc/classes/TiRLE.src/M000544.html +8 -29
  222. data/doc/classes/TiRLE.src/M000545.html +30 -5
  223. data/doc/classes/TiRLE.src/M000546.html +18 -0
  224. data/doc/classes/Trs80PascalSource.html +10 -10
  225. data/doc/classes/Trs80PascalSource.src/M000541.html +6 -16
  226. data/doc/classes/Trs80PascalSource.src/M000542.html +30 -0
  227. data/doc/classes/Trs80Text.html +15 -15
  228. data/doc/classes/Trs80Text.src/M000455.html +6 -4
  229. data/doc/classes/Trs80Text.src/M000456.html +4 -4
  230. data/doc/classes/Trs80Text.src/M000457.html +18 -0
  231. data/doc/classes/TrsDos.html +20 -20
  232. data/doc/classes/TrsDos.src/M000421.html +4 -4
  233. data/doc/classes/TrsDos.src/M000422.html +4 -4
  234. data/doc/classes/TrsDos.src/M000423.html +4 -50
  235. data/doc/classes/TrsDos.src/M000424.html +64 -0
  236. data/doc/classes/Zx81PFile.html +10 -10
  237. data/doc/classes/Zx81PFile.src/M000401.html +4 -4
  238. data/doc/classes/Zx81PFile.src/M000402.html +18 -0
  239. data/doc/created.rid +1 -1
  240. data/doc/files/lib/FileCache_rb.html +1 -1
  241. data/doc/files/lib/LibRipXplore_rb.html +1 -1
  242. data/doc/files/lib/file_systems/CbmDos_rb.html +1 -1
  243. data/doc/files/lib/native_file_types/c64/C64GeosFile_rb.html +1 -1
  244. data/doc/files/test/tc_c64_rb.html +1 -1
  245. data/doc/fr_method_index.html +318 -317
  246. data/lib/FileCache.rb +6 -0
  247. data/lib/LibRipXplore.rb +1 -1
  248. data/lib/file_systems/CbmDos.rb +4 -0
  249. data/lib/native_file_types/c64/C64GeosFile.rb +1 -1
  250. data/test/tc_c64.rb +10 -0
  251. metadata +44 -3
@@ -0,0 +1,109 @@
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>handle (ProcSource)</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/proc_source.rb, line 37</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">proc</span>)
15
+ <span class="ruby-identifier">filename</span>, <span class="ruby-identifier">line</span> = <span class="ruby-identifier">proc</span>.<span class="ruby-identifier">source_descriptor</span>
16
+ <span class="ruby-identifier">lines</span> = <span class="ruby-identifier">get_lines</span>(<span class="ruby-identifier">filename</span>, <span class="ruby-identifier">line</span>) <span class="ruby-operator">||</span> []
17
+
18
+ <span class="ruby-identifier">lexer</span> = <span class="ruby-constant">RubyLex</span>.<span class="ruby-identifier">new</span>
19
+ <span class="ruby-identifier">lexer</span>.<span class="ruby-identifier">set_input</span>(<span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">join</span>))
20
+
21
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:before_constructor</span>
22
+ <span class="ruby-identifier">nesting_level</span> = <span class="ruby-value">1</span>
23
+ <span class="ruby-identifier">start_token</span>, <span class="ruby-identifier">end_token</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>
24
+ <span class="ruby-identifier">found</span> = <span class="ruby-keyword kw">false</span>
25
+ <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">token</span> = <span class="ruby-identifier">lexer</span>.<span class="ruby-identifier">token</span>
26
+ <span class="ruby-comment cmt"># we've not yet found any proc-constructor -- we'll try to find one.
27
+ <span class="ruby-keyword kw">if</span> [<span class="ruby-identifier">:before_constructor</span>, <span class="ruby-identifier">:check_more</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">state</span>)
28
+ <span class="ruby-comment cmt"># checking more and newline? -&gt; done
29
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkNL</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">state</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:check_more</span>
30
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:done</span>
31
+ <span class="ruby-keyword kw">break</span>
32
+ <span class="ruby-keyword kw">end</span>
33
+ <span class="ruby-comment cmt"># token is Proc?
34
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkCONSTANT</span>) <span class="ruby-keyword kw">and</span>
35
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-identifier">:@name</span>) <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;Proc&quot;</span>
36
+ <span class="ruby-comment cmt"># method call?
37
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lexer</span>.<span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkDOT</span>)
38
+ <span class="ruby-identifier">method</span> = <span class="ruby-identifier">lexer</span>.<span class="ruby-identifier">token</span>
39
+ <span class="ruby-comment cmt"># constructor?
40
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkIDENTIFIER</span>) <span class="ruby-keyword kw">and</span>
41
+ <span class="ruby-identifier">method</span>.<span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-identifier">:@name</span>) <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;new&quot;</span>
42
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">state</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:check_more</span>
43
+ <span class="ruby-comment cmt"># okay, code will follow soon.
44
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:before_code</span>
45
+ <span class="ruby-keyword kw">else</span>
46
+ <span class="ruby-comment cmt"># multiple procs on one line
47
+ <span class="ruby-keyword kw">return</span>
48
+ <span class="ruby-keyword kw">end</span>
49
+ <span class="ruby-keyword kw">end</span>
50
+ <span class="ruby-keyword kw">end</span>
51
+ <span class="ruby-comment cmt"># token is lambda or proc call?
52
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkIDENTIFIER</span>) <span class="ruby-keyword kw">and</span>
53
+ <span class="ruby-node">%w{proc lambda}</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">token</span>.<span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-identifier">:@name</span>))
54
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">state</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:check_more</span>
55
+ <span class="ruby-comment cmt"># okay, code will follow soon.
56
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:before_code</span>
57
+ <span class="ruby-keyword kw">else</span>
58
+ <span class="ruby-comment cmt"># multiple procs on one line
59
+ <span class="ruby-keyword kw">return</span>
60
+ <span class="ruby-keyword kw">end</span>
61
+ <span class="ruby-keyword kw">end</span>
62
+
63
+ <span class="ruby-comment cmt"># we're waiting for the code start to appear.
64
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">state</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:before_code</span>
65
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkfLBRACE</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkDO</span>)
66
+ <span class="ruby-comment cmt"># found the code start, update state and remember current token
67
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:in_code</span>
68
+ <span class="ruby-identifier">start_token</span> = <span class="ruby-identifier">token</span>
69
+ <span class="ruby-keyword kw">end</span>
70
+
71
+ <span class="ruby-comment cmt"># okay, we're inside code
72
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">state</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:in_code</span>
73
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkRBRACE</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkEND</span>)
74
+ <span class="ruby-identifier">nesting_level</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
75
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">nesting_level</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
76
+ <span class="ruby-comment cmt"># we're done!
77
+ <span class="ruby-identifier">end_token</span> = <span class="ruby-identifier">token</span>
78
+ <span class="ruby-comment cmt"># parse another time to check if there are multiple procs on one line
79
+ <span class="ruby-comment cmt"># we can't handle that case correctly so we return no source code at all
80
+ <span class="ruby-identifier">state</span> = <span class="ruby-identifier">:check_more</span>
81
+ <span class="ruby-keyword kw">end</span>
82
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkfLBRACE</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkDO</span>) <span class="ruby-keyword kw">or</span>
83
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkBEGIN</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkCASE</span>) <span class="ruby-keyword kw">or</span>
84
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkCLASS</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkDEF</span>) <span class="ruby-keyword kw">or</span>
85
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkFOR</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkIF</span>) <span class="ruby-keyword kw">or</span>
86
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkMODULE</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkUNLESS</span>) <span class="ruby-keyword kw">or</span>
87
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkUNTIL</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkWHILE</span>) <span class="ruby-keyword kw">or</span>
88
+ <span class="ruby-identifier">token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TklBEGIN</span>)
89
+ <span class="ruby-identifier">nesting_level</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
90
+ <span class="ruby-keyword kw">end</span>
91
+ <span class="ruby-keyword kw">end</span>
92
+ <span class="ruby-keyword kw">end</span>
93
+
94
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">start_token</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">end_token</span>
95
+ <span class="ruby-identifier">start_line</span>, <span class="ruby-identifier">end_line</span> = <span class="ruby-identifier">start_token</span>.<span class="ruby-identifier">line_no</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">end_token</span>.<span class="ruby-identifier">line_no</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
96
+ <span class="ruby-identifier">source</span> = <span class="ruby-identifier">lines</span>[<span class="ruby-identifier">start_line</span> <span class="ruby-operator">..</span> <span class="ruby-identifier">end_line</span>]
97
+ <span class="ruby-identifier">start_offset</span> = <span class="ruby-identifier">start_token</span>.<span class="ruby-identifier">char_no</span>
98
+ <span class="ruby-identifier">start_offset</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">start_token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RubyToken</span><span class="ruby-operator">::</span><span class="ruby-constant">TkDO</span>)
99
+ <span class="ruby-identifier">end_offset</span> = <span class="ruby-operator">-</span>(<span class="ruby-identifier">source</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">end_token</span>.<span class="ruby-identifier">char_no</span>)
100
+ <span class="ruby-identifier">source</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">0</span> <span class="ruby-operator">..</span> <span class="ruby-identifier">start_offset</span>)
101
+ <span class="ruby-identifier">source</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-identifier">end_offset</span> <span class="ruby-operator">..</span> <span class="ruby-value">-1</span>)
102
+
103
+ <span class="ruby-comment cmt"># Can't use .strip because newline at end of code might be important
104
+ <span class="ruby-comment cmt"># (Stuff would break when somebody does proc { ... #foo\n})
105
+ <span class="ruby-identifier">proc</span>.<span class="ruby-identifier">source</span> = <span class="ruby-identifier">source</span>.<span class="ruby-identifier">join</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^ | $/</span>, <span class="ruby-value str">&quot;&quot;</span>)
106
+ <span class="ruby-keyword kw">end</span>
107
+ <span class="ruby-keyword kw">end</span></pre>
108
+ </body>
109
+ </html>
@@ -76,7 +76,7 @@
76
76
  <h3 class="section-bar">Methods</h3>
77
77
 
78
78
  <div class="name-list">
79
- <a href="#M000574">usage_from_file</a>&nbsp;&nbsp;
79
+ <a href="#M000575">usage_from_file</a>&nbsp;&nbsp;
80
80
  </div>
81
81
  </div>
82
82
 
@@ -98,12 +98,12 @@
98
98
  <div id="methods">
99
99
  <h3 class="section-bar">Public Class methods</h3>
100
100
 
101
- <div id="method-M000574" class="method-detail">
102
- <a name="M000574"></a>
101
+ <div id="method-M000575" class="method-detail">
102
+ <a name="M000575"></a>
103
103
 
104
104
  <div class="method-heading">
105
- <a href="RDoc.src/M000574.html" target="Code" class="method-signature"
106
- onclick="popupCode('RDoc.src/M000574.html');return false;">
105
+ <a href="RDoc.src/M000575.html" target="Code" class="method-signature"
106
+ onclick="popupCode('RDoc.src/M000575.html');return false;">
107
107
  <span class="method-name">usage_from_file</span><span class="method-args">(input_file, *args)</span>
108
108
  </a>
109
109
  </div>
@@ -0,0 +1,40 @@
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>usage_from_file (RDoc)</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/rdoc_patch.rb, line 7</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RDoc</span>.<span class="ruby-identifier">usage_from_file</span>(<span class="ruby-identifier">input_file</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
15
+ <span class="ruby-identifier">comment</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">input_file</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
16
+ <span class="ruby-constant">RDoc</span>.<span class="ruby-identifier">find_comment</span>(<span class="ruby-identifier">file</span>)
17
+ <span class="ruby-keyword kw">end</span>
18
+ <span class="ruby-identifier">comment</span> = <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^\s*#/</span>, <span class="ruby-value str">''</span>)
19
+
20
+ <span class="ruby-identifier">markup</span> = <span class="ruby-constant">SM</span><span class="ruby-operator">::</span><span class="ruby-constant">SimpleMarkup</span>.<span class="ruby-identifier">new</span>
21
+ <span class="ruby-identifier">flow_convertor</span> = <span class="ruby-constant">SM</span><span class="ruby-operator">::</span><span class="ruby-constant">ToFlow</span>.<span class="ruby-identifier">new</span>
22
+
23
+ <span class="ruby-identifier">flow</span> = <span class="ruby-identifier">markup</span>.<span class="ruby-identifier">convert</span>(<span class="ruby-identifier">comment</span>, <span class="ruby-identifier">flow_convertor</span>)
24
+
25
+ <span class="ruby-identifier">format</span> = <span class="ruby-value str">&quot;plain&quot;</span>
26
+
27
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">empty?</span>
28
+ <span class="ruby-identifier">flow</span> = <span class="ruby-identifier">extract_sections</span>(<span class="ruby-identifier">flow</span>, <span class="ruby-identifier">args</span>)
29
+ <span class="ruby-keyword kw">end</span>
30
+
31
+ <span class="ruby-identifier">options</span> = <span class="ruby-constant">RI</span><span class="ruby-operator">::</span><span class="ruby-constant">Options</span>.<span class="ruby-identifier">instance</span>
32
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">args</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-value str">&quot;RI&quot;</span>]
33
+ <span class="ruby-identifier">options</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">args</span>.<span class="ruby-identifier">split</span>)
34
+ <span class="ruby-keyword kw">end</span>
35
+ <span class="ruby-identifier">formatter</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">formatter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>, <span class="ruby-value str">&quot;&quot;</span>)
36
+ <span class="ruby-identifier">formatter</span>.<span class="ruby-identifier">display_flow</span>(<span class="ruby-identifier">flow</span>)
37
+ <span class="ruby-identifier">exit</span>
38
+ <span class="ruby-keyword kw">end</span></pre>
39
+ </body>
40
+ </html>
@@ -99,7 +99,7 @@
99
99
  <tr class="top-aligned-row context-row">
100
100
  <td class="context-item-name">VERSION</td>
101
101
  <td>=</td>
102
- <td class="context-item-value">&quot;0.14.0&quot;</td>
102
+ <td class="context-item-value">&quot;0.14.1&quot;</td>
103
103
  </tr>
104
104
  </table>
105
105
  </div>
@@ -117,10 +117,10 @@ sector 2 contains File Allocation Table.
117
117
  <h3 class="section-bar">Methods</h3>
118
118
 
119
119
  <div class="name-list">
120
- <a href="#M000522">directory_track</a>&nbsp;&nbsp;
121
- <a href="#M000524">files</a>&nbsp;&nbsp;
122
- <a href="#M000521">host_system</a>&nbsp;&nbsp;
123
- <a href="#M000523">sectors_per_granule</a>&nbsp;&nbsp;
120
+ <a href="#M000523">directory_track</a>&nbsp;&nbsp;
121
+ <a href="#M000525">files</a>&nbsp;&nbsp;
122
+ <a href="#M000522">host_system</a>&nbsp;&nbsp;
123
+ <a href="#M000524">sectors_per_granule</a>&nbsp;&nbsp;
124
124
  </div>
125
125
  </div>
126
126
 
@@ -155,12 +155,12 @@ sector 2 contains File Allocation Table.
155
155
  <div id="methods">
156
156
  <h3 class="section-bar">Public Class methods</h3>
157
157
 
158
- <div id="method-M000522" class="method-detail">
159
- <a name="M000522"></a>
158
+ <div id="method-M000523" class="method-detail">
159
+ <a name="M000523"></a>
160
160
 
161
161
  <div class="method-heading">
162
- <a href="RsDos.src/M000522.html" target="Code" class="method-signature"
163
- onclick="popupCode('RsDos.src/M000522.html');return false;">
162
+ <a href="RsDos.src/M000523.html" target="Code" class="method-signature"
163
+ onclick="popupCode('RsDos.src/M000523.html');return false;">
164
164
  <span class="method-name">directory_track</span><span class="method-args">()</span>
165
165
  </a>
166
166
  </div>
@@ -172,12 +172,12 @@ standard RSDOS has directory on track 17
172
172
  </div>
173
173
  </div>
174
174
 
175
- <div id="method-M000524" class="method-detail">
176
- <a name="M000524"></a>
175
+ <div id="method-M000525" class="method-detail">
176
+ <a name="M000525"></a>
177
177
 
178
178
  <div class="method-heading">
179
- <a href="RsDos.src/M000524.html" target="Code" class="method-signature"
180
- onclick="popupCode('RsDos.src/M000524.html');return false;">
179
+ <a href="RsDos.src/M000525.html" target="Code" class="method-signature"
180
+ onclick="popupCode('RsDos.src/M000525.html');return false;">
181
181
  <span class="method-name">files</span><span class="method-args">(file_system_image)</span>
182
182
  </a>
183
183
  </div>
@@ -186,12 +186,12 @@ standard RSDOS has directory on track 17
186
186
  </div>
187
187
  </div>
188
188
 
189
- <div id="method-M000521" class="method-detail">
190
- <a name="M000521"></a>
189
+ <div id="method-M000522" class="method-detail">
190
+ <a name="M000522"></a>
191
191
 
192
192
  <div class="method-heading">
193
- <a href="RsDos.src/M000521.html" target="Code" class="method-signature"
194
- onclick="popupCode('RsDos.src/M000521.html');return false;">
193
+ <a href="RsDos.src/M000522.html" target="Code" class="method-signature"
194
+ onclick="popupCode('RsDos.src/M000522.html');return false;">
195
195
  <span class="method-name">host_system</span><span class="method-args">()</span>
196
196
  </a>
197
197
  </div>
@@ -200,12 +200,12 @@ standard RSDOS has directory on track 17
200
200
  </div>
201
201
  </div>
202
202
 
203
- <div id="method-M000523" class="method-detail">
204
- <a name="M000523"></a>
203
+ <div id="method-M000524" class="method-detail">
204
+ <a name="M000524"></a>
205
205
 
206
206
  <div class="method-heading">
207
- <a href="RsDos.src/M000523.html" target="Code" class="method-signature"
208
- onclick="popupCode('RsDos.src/M000523.html');return false;">
207
+ <a href="RsDos.src/M000524.html" target="Code" class="method-signature"
208
+ onclick="popupCode('RsDos.src/M000524.html');return false;">
209
209
  <span class="method-name">sectors_per_granule</span><span class="method-args">(file_system_image)</span>
210
210
  </a>
211
211
  </div>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>directory_track (RsDos)</title>
8
+ <title>host_system (RsDos)</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/file_systems/RsDos.rb, line 35</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">directory_track</span>
15
- <span class="ruby-value">0x11</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/file_systems/RsDos.rb, line 30</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">host_system</span>
15
+ <span class="ruby-constant">Coco</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>sectors_per_granule (RsDos)</title>
8
+ <title>directory_track (RsDos)</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/file_systems/RsDos.rb, line 39</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sectors_per_granule</span>(<span class="ruby-identifier">file_system_image</span>)
15
- <span class="ruby-value">9</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/file_systems/RsDos.rb, line 35</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">directory_track</span>
15
+ <span class="ruby-value">0x11</span>
16
16
  <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,58 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>files (RsDos)</title>
8
+ <title>sectors_per_granule (RsDos)</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/file_systems/RsDos.rb, line 73</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">files</span>(<span class="ruby-identifier">file_system_image</span>)
15
- <span class="ruby-identifier">files</span>=<span class="ruby-constant">FileContainer</span>.<span class="ruby-identifier">new</span>
16
- <span class="ruby-identifier">granule_allocation_table</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track</span>,<span class="ruby-value">2</span>)
17
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">files</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule_allocation_table</span>.<span class="ruby-identifier">nil?</span>
18
- <span class="ruby-comment cmt"># file_system_image.volume_name=&quot;RSDOS Disk&quot;</span>
19
- (<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">sectors_in_track</span>(<span class="ruby-identifier">directory_track</span>)<span class="ruby-operator">-</span>[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">12</span>,<span class="ruby-value">13</span>,<span class="ruby-value">14</span>,<span class="ruby-value">15</span>,<span class="ruby-value">16</span>,<span class="ruby-value">17</span>,<span class="ruby-value">18</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_no</span><span class="ruby-operator">|</span>
20
- <span class="ruby-identifier">fde_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track</span>,<span class="ruby-identifier">sector_no</span>)
21
- (<span class="ruby-identifier">fde_sector</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-constant">FDE_SIZE</span>).<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">fde_number</span><span class="ruby-operator">|</span>
22
- <span class="ruby-identifier">fde</span>=<span class="ruby-identifier">fde_sector</span>[<span class="ruby-identifier">fde_number</span><span class="ruby-operator">*</span><span class="ruby-constant">FDE_SIZE</span>,<span class="ruby-constant">FDE_SIZE</span>]
23
- <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">==</span><span class="ruby-value">0</span>
24
- <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">==</span><span class="ruby-value">0xff</span>
25
-
26
- <span class="ruby-identifier">filename_base</span>=<span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>,<span class="ruby-value">8</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;A8&quot;</span>)
27
- <span class="ruby-identifier">filename_extension</span>=<span class="ruby-identifier">fde</span>[<span class="ruby-value">8</span>,<span class="ruby-value">3</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;A8&quot;</span>)
28
- <span class="ruby-identifier">filename</span>=<span class="ruby-node">&quot;#{filename_base}/#{filename_extension}&quot;</span>
29
- <span class="ruby-identifier">file_type</span>, <span class="ruby-identifier">ascii_flag</span>, <span class="ruby-identifier">granule</span>, <span class="ruby-identifier">last_sector_bytes</span> = <span class="ruby-identifier">fde</span>[<span class="ruby-value">11</span>,<span class="ruby-value">5</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;CCCS&quot;</span>)
30
- <span class="ruby-identifier">contents</span>=<span class="ruby-value str">&quot;&quot;</span>
31
- <span class="ruby-identifier">granules</span> = []
32
-
33
- <span class="ruby-comment cmt"># puts &quot;#{filename}: first gran:#{granule} file type #{file_type} ascii flag #{ascii_flag}&quot;</span>
34
-
35
- <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">granule</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">67</span>
36
- <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granules</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">granule</span>)<span class="ruby-operator">==</span><span class="ruby-keyword kw">true</span>
37
- <span class="ruby-identifier">granules</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">granule</span>
38
- <span class="ruby-identifier">track_no</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">granule</span><span class="ruby-operator">/</span><span class="ruby-value">2</span>)
39
- (<span class="ruby-identifier">track_no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule</span><span class="ruby-operator">&gt;</span><span class="ruby-value">33</span>
40
- <span class="ruby-identifier">start_sector</span> = (<span class="ruby-identifier">granule</span> <span class="ruby-operator">%</span> <span class="ruby-value">2</span>) <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">10</span>
41
- <span class="ruby-comment cmt">#puts &quot;Start sector: #{start_sector}&quot;</span>
42
-
43
- <span class="ruby-identifier">granule_value</span> = <span class="ruby-identifier">granule_allocation_table</span>[ <span class="ruby-identifier">granule</span> ]
44
-
45
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule_value</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">68</span> <span class="ruby-keyword kw">then</span>
46
- <span class="ruby-value">9</span>.<span class="ruby-identifier">times</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">i</span>)}
47
- <span class="ruby-keyword kw">else</span>
48
- <span class="ruby-identifier">count</span> = (<span class="ruby-identifier">granule_value</span> <span class="ruby-operator">&amp;</span> <span class="ruby-value">0</span><span class="ruby-identifier">b00011111</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
49
- <span class="ruby-identifier">count</span>.<span class="ruby-identifier">times</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">i</span>)}
50
- <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">count</span>))[<span class="ruby-value">0</span>,<span class="ruby-identifier">last_sector_bytes</span>]
51
- <span class="ruby-keyword kw">end</span>
52
- <span class="ruby-comment cmt">#puts &quot;#{granule} = #{granule_value}&quot;</span>
53
- <span class="ruby-identifier">granule</span> = <span class="ruby-identifier">granule_value</span>
54
- <span class="ruby-keyword kw">end</span>
55
-
56
- <span class="ruby-identifier">files</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-constant">NativeFileType</span>.<span class="ruby-identifier">best_fit</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>,<span class="ruby-identifier">file_type</span>,<span class="ruby-identifier">ascii_flag</span>)
57
- <span class="ruby-keyword kw">end</span>
58
- <span class="ruby-keyword kw">end</span>
59
- <span class="ruby-identifier">files</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/file_systems/RsDos.rb, line 39</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sectors_per_granule</span>(<span class="ruby-identifier">file_system_image</span>)
15
+ <span class="ruby-value">9</span>
60
16
  <span class="ruby-keyword kw">end</span></pre>
61
17
  </body>
62
18
  </html>
@@ -0,0 +1,62 @@
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>files (RsDos)</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/file_systems/RsDos.rb, line 73</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">files</span>(<span class="ruby-identifier">file_system_image</span>)
15
+ <span class="ruby-identifier">files</span>=<span class="ruby-constant">FileContainer</span>.<span class="ruby-identifier">new</span>
16
+ <span class="ruby-identifier">granule_allocation_table</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track</span>,<span class="ruby-value">2</span>)
17
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">files</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule_allocation_table</span>.<span class="ruby-identifier">nil?</span>
18
+ <span class="ruby-comment cmt"># file_system_image.volume_name=&quot;RSDOS Disk&quot;</span>
19
+ (<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">sectors_in_track</span>(<span class="ruby-identifier">directory_track</span>)<span class="ruby-operator">-</span>[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">12</span>,<span class="ruby-value">13</span>,<span class="ruby-value">14</span>,<span class="ruby-value">15</span>,<span class="ruby-value">16</span>,<span class="ruby-value">17</span>,<span class="ruby-value">18</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_no</span><span class="ruby-operator">|</span>
20
+ <span class="ruby-identifier">fde_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track</span>,<span class="ruby-identifier">sector_no</span>)
21
+ (<span class="ruby-identifier">fde_sector</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-constant">FDE_SIZE</span>).<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">fde_number</span><span class="ruby-operator">|</span>
22
+ <span class="ruby-identifier">fde</span>=<span class="ruby-identifier">fde_sector</span>[<span class="ruby-identifier">fde_number</span><span class="ruby-operator">*</span><span class="ruby-constant">FDE_SIZE</span>,<span class="ruby-constant">FDE_SIZE</span>]
23
+ <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">==</span><span class="ruby-value">0</span>
24
+ <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">==</span><span class="ruby-value">0xff</span>
25
+
26
+ <span class="ruby-identifier">filename_base</span>=<span class="ruby-identifier">fde</span>[<span class="ruby-value">0</span>,<span class="ruby-value">8</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;A8&quot;</span>)
27
+ <span class="ruby-identifier">filename_extension</span>=<span class="ruby-identifier">fde</span>[<span class="ruby-value">8</span>,<span class="ruby-value">3</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;A8&quot;</span>)
28
+ <span class="ruby-identifier">filename</span>=<span class="ruby-node">&quot;#{filename_base}/#{filename_extension}&quot;</span>
29
+ <span class="ruby-identifier">file_type</span>, <span class="ruby-identifier">ascii_flag</span>, <span class="ruby-identifier">granule</span>, <span class="ruby-identifier">last_sector_bytes</span> = <span class="ruby-identifier">fde</span>[<span class="ruby-value">11</span>,<span class="ruby-value">5</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-value str">&quot;CCCS&quot;</span>)
30
+ <span class="ruby-identifier">contents</span>=<span class="ruby-value str">&quot;&quot;</span>
31
+ <span class="ruby-identifier">granules</span> = []
32
+
33
+ <span class="ruby-comment cmt"># puts &quot;#{filename}: first gran:#{granule} file type #{file_type} ascii flag #{ascii_flag}&quot;</span>
34
+
35
+ <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">granule</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">67</span>
36
+ <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granules</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">granule</span>)<span class="ruby-operator">==</span><span class="ruby-keyword kw">true</span>
37
+ <span class="ruby-identifier">granules</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">granule</span>
38
+ <span class="ruby-identifier">track_no</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">granule</span><span class="ruby-operator">/</span><span class="ruby-value">2</span>)
39
+ (<span class="ruby-identifier">track_no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule</span><span class="ruby-operator">&gt;</span><span class="ruby-value">33</span>
40
+ <span class="ruby-identifier">start_sector</span> = (<span class="ruby-identifier">granule</span> <span class="ruby-operator">%</span> <span class="ruby-value">2</span>) <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">10</span>
41
+ <span class="ruby-comment cmt">#puts &quot;Start sector: #{start_sector}&quot;</span>
42
+
43
+ <span class="ruby-identifier">granule_value</span> = <span class="ruby-identifier">granule_allocation_table</span>[ <span class="ruby-identifier">granule</span> ]
44
+
45
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">granule_value</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">68</span> <span class="ruby-keyword kw">then</span>
46
+ <span class="ruby-value">9</span>.<span class="ruby-identifier">times</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">i</span>)}
47
+ <span class="ruby-keyword kw">else</span>
48
+ <span class="ruby-identifier">count</span> = (<span class="ruby-identifier">granule_value</span> <span class="ruby-operator">&amp;</span> <span class="ruby-value">0</span><span class="ruby-identifier">b00011111</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
49
+ <span class="ruby-identifier">count</span>.<span class="ruby-identifier">times</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">i</span>)}
50
+ <span class="ruby-identifier">contents</span><span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">start_sector</span><span class="ruby-operator">+</span><span class="ruby-identifier">count</span>))[<span class="ruby-value">0</span>,<span class="ruby-identifier">last_sector_bytes</span>]
51
+ <span class="ruby-keyword kw">end</span>
52
+ <span class="ruby-comment cmt">#puts &quot;#{granule} = #{granule_value}&quot;</span>
53
+ <span class="ruby-identifier">granule</span> = <span class="ruby-identifier">granule_value</span>
54
+ <span class="ruby-keyword kw">end</span>
55
+
56
+ <span class="ruby-identifier">files</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-constant">NativeFileType</span>.<span class="ruby-identifier">best_fit</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>,<span class="ruby-identifier">file_type</span>,<span class="ruby-identifier">ascii_flag</span>)
57
+ <span class="ruby-keyword kw">end</span>
58
+ <span class="ruby-keyword kw">end</span>
59
+ <span class="ruby-identifier">files</span>
60
+ <span class="ruby-keyword kw">end</span></pre>
61
+ </body>
62
+ </html>
@@ -94,7 +94,7 @@ require &#8216;<a href="IntegerBASIC.html">IntegerBASIC</a>&#8216;
94
94
  <h3 class="section-bar">Methods</h3>
95
95
 
96
96
  <div class="name-list">
97
- <a href="#M000533">to_listing</a>&nbsp;&nbsp;
97
+ <a href="#M000534">to_listing</a>&nbsp;&nbsp;
98
98
  </div>
99
99
  </div>
100
100
 
@@ -116,12 +116,12 @@ require &#8216;<a href="IntegerBASIC.html">IntegerBASIC</a>&#8216;
116
116
  <div id="methods">
117
117
  <h3 class="section-bar">Public Instance methods</h3>
118
118
 
119
- <div id="method-M000533" class="method-detail">
120
- <a name="M000533"></a>
119
+ <div id="method-M000534" class="method-detail">
120
+ <a name="M000534"></a>
121
121
 
122
122
  <div class="method-heading">
123
- <a href="ScAsm.src/M000533.html" target="Code" class="method-signature"
124
- onclick="popupCode('ScAsm.src/M000533.html');return false;">
123
+ <a href="ScAsm.src/M000534.html" target="Code" class="method-signature"
124
+ onclick="popupCode('ScAsm.src/M000534.html');return false;">
125
125
  <span class="method-name">to_listing</span><span class="method-args">()</span>
126
126
  </a>
127
127
  </div>
@@ -0,0 +1,45 @@
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>to_listing (ScAsm)</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/native_file_types/apple2/ScAsm.rb, line 53</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_listing</span>
15
+ <span class="ruby-identifier">length</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">+</span><span class="ruby-identifier">contents</span>[<span class="ruby-value">1</span>]<span class="ruby-operator">*</span><span class="ruby-value">256</span>
16
+ <span class="ruby-identifier">index</span>=<span class="ruby-value">2</span>
17
+ <span class="ruby-identifier">s</span>=<span class="ruby-value str">&quot;&quot;</span>
18
+ <span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">index</span><span class="ruby-operator">&lt;</span><span class="ruby-identifier">length</span>)
19
+ <span class="ruby-identifier">line_length</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span>]
20
+ <span class="ruby-identifier">line_no</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]<span class="ruby-operator">+</span><span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>]<span class="ruby-operator">*</span><span class="ruby-value">256</span>
21
+ <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%d &quot;</span>,<span class="ruby-identifier">line_no</span>)
22
+ <span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">3</span> <span class="ruby-comment cmt">#skip over the &quot;line number&quot; field
23
+ <span class="ruby-identifier">end_of_line</span>=<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-identifier">line_length</span><span class="ruby-operator">-</span><span class="ruby-value">4</span>
24
+ <span class="ruby-keyword kw">while</span>(<span class="ruby-identifier">index</span><span class="ruby-operator">&lt;</span><span class="ruby-identifier">end_of_line</span>)
25
+ <span class="ruby-identifier">b</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span>]
26
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">b</span><span class="ruby-operator">==</span><span class="ruby-value">0x</span><span class="ruby-constant">C0</span>) <span class="ruby-keyword kw">then</span>
27
+ <span class="ruby-identifier">repeat_count</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
28
+ <span class="ruby-identifier">repeat_char</span>=(<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>]).<span class="ruby-identifier">chr</span>
29
+ <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-identifier">repeat_char</span><span class="ruby-operator">*</span><span class="ruby-identifier">repeat_count</span>
30
+ <span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">3</span>
31
+ <span class="ruby-keyword kw">elsif</span>(<span class="ruby-identifier">b</span><span class="ruby-operator">&gt;=</span><span class="ruby-value">0x80</span>) <span class="ruby-keyword kw">then</span>
32
+ <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-value str">&quot; &quot;</span><span class="ruby-operator">*</span>(<span class="ruby-identifier">b</span><span class="ruby-operator">-</span><span class="ruby-value">0x80</span>)
33
+ <span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span>
34
+ <span class="ruby-keyword kw">else</span>
35
+ <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-identifier">b</span>.<span class="ruby-identifier">chr</span>
36
+ <span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span>
37
+ <span class="ruby-keyword kw">end</span>
38
+ <span class="ruby-keyword kw">end</span>
39
+ <span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span> <span class="ruby-comment cmt">#skip over end-of-line marker
40
+ <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-value str">&quot;\n&quot;</span>
41
+ <span class="ruby-keyword kw">end</span>
42
+ <span class="ruby-identifier">s</span>
43
+ <span class="ruby-keyword kw">end</span></pre>
44
+ </body>
45
+ </html>