ruby-vpi 12.0.2 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. data/README +1 -0
  2. data/Rakefile +3 -1
  3. data/doc/history.html +246 -185
  4. data/doc/history.yml +27 -0
  5. data/doc/manual.doc +65 -3
  6. data/doc/manual.html +127 -11
  7. data/doc/readme.html +1 -1
  8. data/doc/rss.xml +7 -0
  9. data/index.html +1 -0
  10. data/lib/ruby-vpi.rb +36 -11
  11. data/lib/ruby-vpi/rcov.rb +2 -2
  12. data/lib/ruby-vpi/rdoc.rb +1 -1
  13. data/ref/c/annotated.html +1 -1
  14. data/ref/c/common_8h.html +1 -1
  15. data/ref/c/files.html +1 -1
  16. data/ref/c/functions.html +1 -1
  17. data/ref/c/functions_vars.html +1 -1
  18. data/ref/c/globals.html +1 -1
  19. data/ref/c/globals_0x62.html +1 -1
  20. data/ref/c/globals_0x63.html +1 -1
  21. data/ref/c/globals_0x65.html +1 -1
  22. data/ref/c/globals_0x66.html +1 -1
  23. data/ref/c/globals_0x67.html +1 -1
  24. data/ref/c/globals_0x69.html +1 -1
  25. data/ref/c/globals_0x6c.html +1 -1
  26. data/ref/c/globals_0x6d.html +1 -1
  27. data/ref/c/globals_0x6e.html +1 -1
  28. data/ref/c/globals_0x70.html +1 -1
  29. data/ref/c/globals_0x72.html +1 -1
  30. data/ref/c/globals_0x73.html +1 -1
  31. data/ref/c/globals_0x74.html +1 -1
  32. data/ref/c/globals_0x75.html +1 -1
  33. data/ref/c/globals_0x76.html +1 -1
  34. data/ref/c/globals_0x78.html +1 -1
  35. data/ref/c/globals_defs.html +1 -1
  36. data/ref/c/globals_defs_0x65.html +1 -1
  37. data/ref/c/globals_defs_0x6c.html +1 -1
  38. data/ref/c/globals_defs_0x6e.html +1 -1
  39. data/ref/c/globals_defs_0x70.html +1 -1
  40. data/ref/c/globals_defs_0x72.html +1 -1
  41. data/ref/c/globals_defs_0x73.html +1 -1
  42. data/ref/c/globals_defs_0x75.html +1 -1
  43. data/ref/c/globals_defs_0x76.html +1 -1
  44. data/ref/c/globals_defs_0x78.html +1 -1
  45. data/ref/c/globals_enum.html +1 -1
  46. data/ref/c/globals_eval.html +1 -1
  47. data/ref/c/globals_func.html +1 -1
  48. data/ref/c/globals_func_0x66.html +1 -1
  49. data/ref/c/globals_func_0x67.html +1 -1
  50. data/ref/c/globals_func_0x69.html +1 -1
  51. data/ref/c/globals_func_0x70.html +1 -1
  52. data/ref/c/globals_func_0x72.html +1 -1
  53. data/ref/c/globals_func_0x73.html +1 -1
  54. data/ref/c/globals_func_0x76.html +1 -1
  55. data/ref/c/globals_type.html +1 -1
  56. data/ref/c/globals_vars.html +1 -1
  57. data/ref/c/index.html +1 -1
  58. data/ref/c/relay_8c.html +1 -1
  59. data/ref/c/relay_8h.html +1 -1
  60. data/ref/c/structrelay____RubyOptions____def.html +1 -1
  61. data/ref/c/structswig__cast__info.html +1 -1
  62. data/ref/c/structswig__class.html +1 -1
  63. data/ref/c/structswig__module__info.html +1 -1
  64. data/ref/c/structswig__type__info.html +1 -1
  65. data/ref/c/structt__cb__data.html +1 -1
  66. data/ref/c/structt__vpi__delay.html +1 -1
  67. data/ref/c/structt__vpi__error__info.html +1 -1
  68. data/ref/c/structt__vpi__strengthval.html +1 -1
  69. data/ref/c/structt__vpi__systf__data.html +1 -1
  70. data/ref/c/structt__vpi__time.html +1 -1
  71. data/ref/c/structt__vpi__value.html +1 -1
  72. data/ref/c/structt__vpi__vecval.html +1 -1
  73. data/ref/c/structt__vpi__vlog__info.html +1 -1
  74. data/ref/c/swig_8c.html +1 -1
  75. data/ref/c/swig_8h.html +1 -1
  76. data/ref/c/swig__vpi_8h.html +1 -1
  77. data/ref/c/swig__wrap_8cin.html +1 -1
  78. data/ref/c/unions__vpi__value__value.html +1 -1
  79. data/ref/c/verilog_8h.html +1 -1
  80. data/ref/c/vlog_8c.html +1 -1
  81. data/ref/c/vlog_8h.html +1 -1
  82. data/ref/c/vpi__user_8h.html +1 -1
  83. data/ref/ruby/classes/ERB.html +5 -5
  84. data/ref/ruby/classes/ERB.src/{M000036.html → M000032.html} +0 -0
  85. data/ref/ruby/classes/FileUtils.html +10 -10
  86. data/ref/ruby/classes/FileUtils.src/{M000083.html → M000034.html} +0 -0
  87. data/ref/ruby/classes/FileUtils.src/{M000084.html → M000035.html} +0 -0
  88. data/ref/ruby/classes/Float.html +5 -5
  89. data/ref/ruby/classes/Float.src/{M000031.html → M000027.html} +0 -0
  90. data/ref/ruby/classes/OutputInfo.html +5 -5
  91. data/ref/ruby/classes/OutputInfo.src/{M000030.html → M000026.html} +0 -0
  92. data/ref/ruby/classes/RDoc.html +5 -5
  93. data/ref/ruby/classes/RDoc.src/{M000099.html → M000050.html} +0 -0
  94. data/ref/ruby/classes/RubyVpi.html +10 -10
  95. data/ref/ruby/classes/RubyVpi.src/M000036.html +107 -0
  96. data/ref/ruby/classes/RubyVpi.src/{M000086.html → M000037.html} +0 -0
  97. data/ref/ruby/classes/String.html +15 -15
  98. data/ref/ruby/classes/String.src/{M000033.html → M000029.html} +0 -0
  99. data/ref/ruby/classes/String.src/{M000034.html → M000030.html} +0 -0
  100. data/ref/ruby/classes/String.src/{M000035.html → M000031.html} +0 -0
  101. data/ref/ruby/classes/Template.html +5 -5
  102. data/ref/ruby/classes/Template.src/{M000032.html → M000028.html} +0 -0
  103. data/ref/ruby/classes/Vpi/Handle.html +56 -56
  104. data/ref/ruby/classes/Vpi/Handle.src/{M000087.html → M000038.html} +0 -0
  105. data/ref/ruby/classes/Vpi/Handle.src/{M000088.html → M000039.html} +0 -0
  106. data/ref/ruby/classes/Vpi/Handle.src/{M000089.html → M000040.html} +0 -0
  107. data/ref/ruby/classes/Vpi/Handle.src/{M000090.html → M000041.html} +0 -0
  108. data/ref/ruby/classes/Vpi/Handle.src/{M000091.html → M000042.html} +0 -0
  109. data/ref/ruby/classes/Vpi/Handle.src/{M000092.html → M000043.html} +0 -0
  110. data/ref/ruby/classes/Vpi/Handle.src/{M000093.html → M000044.html} +0 -0
  111. data/ref/ruby/classes/Vpi/Handle.src/{M000094.html → M000045.html} +0 -0
  112. data/ref/ruby/classes/Vpi/Handle.src/{M000095.html → M000046.html} +0 -0
  113. data/ref/ruby/classes/Vpi/Handle.src/{M000097.html → M000048.html} +0 -0
  114. data/ref/ruby/classes/Vpi/Handle/Property.html +5 -5
  115. data/ref/ruby/classes/Vpi/Handle/Property.src/{M000098.html → M000049.html} +0 -0
  116. data/ref/ruby/classes/XX.html +1 -28
  117. data/ref/ruby/classes/XX/XMLish.html +6 -6
  118. data/ref/ruby/classes/XX/XMLish.src/{M000044.html → M000033.html} +0 -0
  119. data/ref/ruby/created.rid +1 -1
  120. data/ref/ruby/files/lib/ruby-vpi/rcov_rb.html +2 -2
  121. data/ref/ruby/files/lib/ruby-vpi/rdoc_rb.html +1 -1
  122. data/ref/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +1 -1
  123. data/ref/ruby/files/lib/ruby-vpi/runner_rb.html +1 -1
  124. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
  125. data/ref/ruby/files/lib/ruby-vpi_rb.html +4 -3
  126. data/ref/ruby/fr_class_index.html +0 -13
  127. data/ref/ruby/fr_file_index.html +0 -2
  128. data/ref/ruby/fr_method_index.html +27 -76
  129. data/samp/pipelined_alu/hw5_unit_test_design.rb +0 -10
  130. metadata +50 -112
  131. data/lib/ruby-vpi/rspec.rb +0 -37
  132. data/lib/ruby-vpi/xx.rb +0 -761
  133. data/ref/ruby/classes/RubyVpi.src/M000085.html +0 -82
  134. data/ref/ruby/classes/Table.html +0 -191
  135. data/ref/ruby/classes/Table.src/M000026.html +0 -38
  136. data/ref/ruby/classes/Table.src/M000027.html +0 -18
  137. data/ref/ruby/classes/Table.src/M000028.html +0 -18
  138. data/ref/ruby/classes/Table.src/M000029.html +0 -18
  139. data/ref/ruby/classes/XX/Document.html +0 -295
  140. data/ref/ruby/classes/XX/Document.src/M000074.html +0 -22
  141. data/ref/ruby/classes/XX/Document.src/M000075.html +0 -20
  142. data/ref/ruby/classes/XX/Document.src/M000076.html +0 -20
  143. data/ref/ruby/classes/XX/Document.src/M000077.html +0 -20
  144. data/ref/ruby/classes/XX/Document.src/M000078.html +0 -22
  145. data/ref/ruby/classes/XX/Document.src/M000079.html +0 -21
  146. data/ref/ruby/classes/XX/Document.src/M000080.html +0 -21
  147. data/ref/ruby/classes/XX/Document.src/M000081.html +0 -34
  148. data/ref/ruby/classes/XX/Document.src/M000082.html +0 -98
  149. data/ref/ruby/classes/XX/HTML4.html +0 -145
  150. data/ref/ruby/classes/XX/HTML4.src/M000038.html +0 -20
  151. data/ref/ruby/classes/XX/HTML4/Strict.html +0 -138
  152. data/ref/ruby/classes/XX/HTML4/Strict.src/M000040.html +0 -20
  153. data/ref/ruby/classes/XX/HTML4/Transitional.html +0 -138
  154. data/ref/ruby/classes/XX/HTML4/Transitional.src/M000039.html +0 -20
  155. data/ref/ruby/classes/XX/Markup.html +0 -160
  156. data/ref/ruby/classes/XX/Markup.src/M000045.html +0 -28
  157. data/ref/ruby/classes/XX/Markup/ClassMethods.html +0 -236
  158. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000046.html +0 -22
  159. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000047.html +0 -20
  160. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000048.html +0 -25
  161. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000049.html +0 -20
  162. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000050.html +0 -27
  163. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000051.html +0 -20
  164. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000052.html +0 -27
  165. data/ref/ruby/classes/XX/Markup/ClassMethods.src/M000053.html +0 -22
  166. data/ref/ruby/classes/XX/Markup/Error.html +0 -111
  167. data/ref/ruby/classes/XX/Markup/InstanceMethods.html +0 -474
  168. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000054.html +0 -56
  169. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000055.html +0 -33
  170. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000056.html +0 -31
  171. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000057.html +0 -48
  172. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000058.html +0 -20
  173. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000059.html +0 -31
  174. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000060.html +0 -32
  175. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000061.html +0 -32
  176. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000062.html +0 -28
  177. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000063.html +0 -23
  178. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000064.html +0 -26
  179. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000065.html +0 -20
  180. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000066.html +0 -20
  181. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000067.html +0 -20
  182. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000068.html +0 -20
  183. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000069.html +0 -20
  184. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000070.html +0 -21
  185. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000071.html +0 -20
  186. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000072.html +0 -20
  187. data/ref/ruby/classes/XX/Markup/InstanceMethods.src/M000073.html +0 -20
  188. data/ref/ruby/classes/XX/XHTML.html +0 -145
  189. data/ref/ruby/classes/XX/XHTML.src/M000041.html +0 -36
  190. data/ref/ruby/classes/XX/XHTML/Strict.html +0 -138
  191. data/ref/ruby/classes/XX/XHTML/Strict.src/M000043.html +0 -20
  192. data/ref/ruby/classes/XX/XHTML/Transitional.html +0 -138
  193. data/ref/ruby/classes/XX/XHTML/Transitional.src/M000042.html +0 -20
  194. data/ref/ruby/classes/XX/XML.html +0 -138
  195. data/ref/ruby/classes/XX/XML.src/M000037.html +0 -20
  196. data/ref/ruby/files/lib/ruby-vpi/rspec_rb.html +0 -115
  197. data/ref/ruby/files/lib/ruby-vpi/xx_rb.html +0 -148
@@ -0,0 +1,107 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
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>init_bench (RubyVpi)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
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/ruby-vpi.rb, line 29</span>
14
+ 29: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">init_bench</span> <span class="ruby-identifier">aDesignId</span>, <span class="ruby-identifier">aSpecFormat</span>
15
+ 30: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">caller</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^(.*?)_bench.rb:/</span>}
16
+ 31: <span class="ruby-identifier">testName</span> = <span class="ruby-identifier">$1</span>
17
+ 32: <span class="ruby-keyword kw">else</span>
18
+ 33: <span class="ruby-identifier">raise</span> <span class="ruby-value str">'Unable to determine name of test.'</span>
19
+ 34: <span class="ruby-keyword kw">end</span>
20
+ 35:
21
+ 36: <span class="ruby-identifier">useDebugger</span> = <span class="ruby-operator">!</span>(<span class="ruby-constant">ENV</span>[<span class="ruby-value str">'DEBUG'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>).<span class="ruby-identifier">empty?</span>
22
+ 37: <span class="ruby-identifier">useCoverage</span> = <span class="ruby-operator">!</span>(<span class="ruby-constant">ENV</span>[<span class="ruby-value str">'COVERAGE'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>).<span class="ruby-identifier">empty?</span>
23
+ 38: <span class="ruby-identifier">usePrototype</span> = <span class="ruby-operator">!</span>(<span class="ruby-constant">ENV</span>[<span class="ruby-value str">'PROTOTYPE'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>).<span class="ruby-identifier">empty?</span>
24
+ 39:
25
+ 40: <span class="ruby-comment cmt"># service the $ruby_init() task</span>
26
+ 41: <span class="ruby-constant">Vpi</span><span class="ruby-operator">::</span><span class="ruby-identifier">relay_verilog</span>
27
+ 42:
28
+ 43: <span class="ruby-comment cmt"># set up code coverage analysis</span>
29
+ 44: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">useCoverage</span>
30
+ 45: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-vpi/rcov'</span>
31
+ 46:
32
+ 47: <span class="ruby-constant">RubyVpi</span>.<span class="ruby-identifier">with_coverage_analysis</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
33
+ 48: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">dump_coverage_info</span> [
34
+ 49: <span class="ruby-constant">Rcov</span><span class="ruby-operator">::</span><span class="ruby-constant">TextReport</span>.<span class="ruby-identifier">new</span>,
35
+ 50: <span class="ruby-constant">Rcov</span><span class="ruby-operator">::</span><span class="ruby-constant">HTMLCoverage</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:destdir</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;#{testName}_coverage&quot;</span>)
36
+ 51: ]
37
+ 52: <span class="ruby-keyword kw">end</span>
38
+ 53:
39
+ 54: <span class="ruby-constant">Vpi</span><span class="ruby-operator">::</span><span class="ruby-identifier">vpi_printf</span> <span class="ruby-node">&quot;#{Config::PROJECT_NAME}: coverage analysis is enabled for test #{testName.inspect}\n&quot;</span>
40
+ 55: <span class="ruby-keyword kw">end</span>
41
+ 56:
42
+ 57: <span class="ruby-comment cmt"># set up the specification library</span>
43
+ 58: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">aSpecFormat</span>
44
+ 59: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:xUnit</span>
45
+ 60: <span class="ruby-identifier">require</span> <span class="ruby-value str">'test/unit'</span>
46
+ 61:
47
+ 62: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:rSpec</span>
48
+ 63: <span class="ruby-constant">ARGV</span>.<span class="ruby-identifier">concat</span> <span class="ruby-node">%w[-f s]</span>
49
+ 64: <span class="ruby-identifier">require</span> <span class="ruby-value str">'spec'</span>
50
+ 65:
51
+ 66: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:tSpec</span>
52
+ 67: <span class="ruby-constant">ARGV</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'-rs'</span>
53
+ 68: <span class="ruby-identifier">require</span> <span class="ruby-value str">'test/spec'</span>
54
+ 69: <span class="ruby-keyword kw">end</span>
55
+ 70:
56
+ 71: <span class="ruby-comment cmt"># set up the interactive debugger</span>
57
+ 72: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">useDebugger</span>
58
+ 73: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-debug'</span>
59
+ 74:
60
+ 75: <span class="ruby-constant">Debugger</span>.<span class="ruby-identifier">start</span>
61
+ 76: <span class="ruby-constant">Debugger</span>.<span class="ruby-identifier">post_mortem</span>
62
+ 77:
63
+ 78: <span class="ruby-constant">Vpi</span><span class="ruby-operator">::</span><span class="ruby-identifier">vpi_printf</span> <span class="ruby-node">&quot;#{Config::PROJECT_NAME}: debugger is enabled for test #{testName.inspect}\n&quot;</span>
64
+ 79: <span class="ruby-keyword kw">end</span>
65
+ 80:
66
+ 81: <span class="ruby-comment cmt"># suppress undefined method errors when debugger is not enabled</span>
67
+ 82: <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-identifier">:debugger</span>
68
+ 83: <span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword kw">do</span>
69
+ 84: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:debugger</span> <span class="ruby-keyword kw">do</span>
70
+ 85: <span class="ruby-comment cmt"># this is a dummy method!</span>
71
+ 86: <span class="ruby-keyword kw">end</span>
72
+ 87: <span class="ruby-keyword kw">end</span>
73
+ 88: <span class="ruby-keyword kw">end</span>
74
+ 89:
75
+ 90: <span class="ruby-comment cmt"># set up the VPI utility layer</span>
76
+ 91: <span class="ruby-identifier">require</span> <span class="ruby-value str">'ruby-vpi/vpi'</span>
77
+ 92:
78
+ 93: <span class="ruby-constant">Object</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword kw">do</span>
79
+ 94: <span class="ruby-identifier">include</span> <span class="ruby-constant">Vpi</span>
80
+ 95: <span class="ruby-keyword kw">end</span>
81
+ 96:
82
+ 97: <span class="ruby-comment cmt"># load the design under test</span>
83
+ 98: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">design</span> = <span class="ruby-identifier">vpi_handle_by_name</span>(<span class="ruby-node">&quot;#{testName}_bench&quot;</span>, <span class="ruby-keyword kw">nil</span>)
84
+ 99: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Verilog bench for test #{testName.inspect} is inaccessible.&quot;</span>
85
+ 100: <span class="ruby-keyword kw">end</span>
86
+ 101:
87
+ 102: <span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">const_set</span>(<span class="ruby-identifier">aDesignId</span>, <span class="ruby-identifier">design</span>)
88
+ 103: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_design.rb&quot;</span>
89
+ 104:
90
+ 105: <span class="ruby-comment cmt"># load the design's prototype</span>
91
+ 106: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">usePrototype</span>
92
+ 107: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_proto.rb&quot;</span>
93
+ 108:
94
+ 109: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword kw">do</span>
95
+ 110: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:relay_verilog</span> <span class="ruby-keyword kw">do</span>
96
+ 111: <span class="ruby-identifier">design</span>.<span class="ruby-identifier">simulate!</span>
97
+ 112: <span class="ruby-keyword kw">end</span>
98
+ 113: <span class="ruby-keyword kw">end</span>
99
+ 114:
100
+ 115: <span class="ruby-constant">Vpi</span><span class="ruby-operator">::</span><span class="ruby-identifier">vpi_printf</span> <span class="ruby-node">&quot;#{Config::PROJECT_NAME}: prototype is enabled for test #{testName.inspect}\n&quot;</span>
101
+ 116: <span class="ruby-keyword kw">end</span>
102
+ 117:
103
+ 118: <span class="ruby-comment cmt"># load the design's specification</span>
104
+ 119: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_spec.rb&quot;</span>
105
+ 120: <span class="ruby-keyword kw">end</span></pre>
106
+ </body>
107
+ </html>
@@ -90,9 +90,9 @@
90
90
  <h3 class="section-bar">Methods</h3>
91
91
 
92
92
  <div class="name-list">
93
- <a href="#M000033">to_f</a>&nbsp;&nbsp;
94
- <a href="#M000035">to_ruby_const_name</a>&nbsp;&nbsp;
95
- <a href="#M000034">verilog_to_ruby</a>&nbsp;&nbsp;
93
+ <a href="#M000029">to_f</a>&nbsp;&nbsp;
94
+ <a href="#M000031">to_ruby_const_name</a>&nbsp;&nbsp;
95
+ <a href="#M000030">verilog_to_ruby</a>&nbsp;&nbsp;
96
96
  </div>
97
97
  </div>
98
98
 
@@ -114,12 +114,12 @@
114
114
  <div id="methods">
115
115
  <h3 class="section-bar">Public Instance methods</h3>
116
116
 
117
- <div id="method-M000033" class="method-detail">
118
- <a name="M000033"></a>
117
+ <div id="method-M000029" class="method-detail">
118
+ <a name="M000029"></a>
119
119
 
120
120
  <div class="method-heading">
121
- <a href="String.src/M000033.html" target="Code" class="method-signature"
122
- onclick="popupCode('String.src/M000033.html');return false;">
121
+ <a href="String.src/M000029.html" target="Code" class="method-signature"
122
+ onclick="popupCode('String.src/M000029.html');return false;">
123
123
  <span class="method-name">to_f</span><span class="method-args">(aRadix = 10)</span>
124
124
  </a>
125
125
  </div>
@@ -132,12 +132,12 @@ The default radix is 10.
132
132
  </div>
133
133
  </div>
134
134
 
135
- <div id="method-M000035" class="method-detail">
136
- <a name="M000035"></a>
135
+ <div id="method-M000031" class="method-detail">
136
+ <a name="M000031"></a>
137
137
 
138
138
  <div class="method-heading">
139
- <a href="String.src/M000035.html" target="Code" class="method-signature"
140
- onclick="popupCode('String.src/M000035.html');return false;">
139
+ <a href="String.src/M000031.html" target="Code" class="method-signature"
140
+ onclick="popupCode('String.src/M000031.html');return false;">
141
141
  <span class="method-name">to_ruby_const_name</span><span class="method-args">()</span>
142
142
  </a>
143
143
  </div>
@@ -149,12 +149,12 @@ Converts this string into a valid Ruby constant name.
149
149
  </div>
150
150
  </div>
151
151
 
152
- <div id="method-M000034" class="method-detail">
153
- <a name="M000034"></a>
152
+ <div id="method-M000030" class="method-detail">
153
+ <a name="M000030"></a>
154
154
 
155
155
  <div class="method-heading">
156
- <a href="String.src/M000034.html" target="Code" class="method-signature"
157
- onclick="popupCode('String.src/M000034.html');return false;">
156
+ <a href="String.src/M000030.html" target="Code" class="method-signature"
157
+ onclick="popupCode('String.src/M000030.html');return false;">
158
158
  <span class="method-name">verilog_to_ruby</span><span class="method-args">()</span>
159
159
  </a>
160
160
  </div>
@@ -94,7 +94,7 @@
94
94
  <h3 class="section-bar">Methods</h3>
95
95
 
96
96
  <div class="name-list">
97
- <a href="#M000032">new</a>&nbsp;&nbsp;
97
+ <a href="#M000028">new</a>&nbsp;&nbsp;
98
98
  </div>
99
99
  </div>
100
100
 
@@ -129,12 +129,12 @@
129
129
  <div id="methods">
130
130
  <h3 class="section-bar">Public Class methods</h3>
131
131
 
132
- <div id="method-M000032" class="method-detail">
133
- <a name="M000032"></a>
132
+ <div id="method-M000028" class="method-detail">
133
+ <a name="M000028"></a>
134
134
 
135
135
  <div class="method-heading">
136
- <a href="Template.src/M000032.html" target="Code" class="method-signature"
137
- onclick="popupCode('Template.src/M000032.html');return false;">
136
+ <a href="Template.src/M000028.html" target="Code" class="method-signature"
137
+ onclick="popupCode('Template.src/M000028.html');return false;">
138
138
  <span class="method-name">new</span><span class="method-args">(aName)</span>
139
139
  </a>
140
140
  </div>
@@ -138,17 +138,17 @@ names (strings or symbols) or integer constants.
138
138
  <h3 class="section-bar">Methods</h3>
139
139
 
140
140
  <div class="name-list">
141
- <a href="#M000094">[]</a>&nbsp;&nbsp;
142
- <a href="#M000092">get_value</a>&nbsp;&nbsp;
143
- <a href="#M000091">get_value_wrapper</a>&nbsp;&nbsp;
144
- <a href="#M000095">inspect</a>&nbsp;&nbsp;
145
- <a href="#M000097">method_missing</a>&nbsp;&nbsp;
146
- <a href="#M000093">put_value</a>&nbsp;&nbsp;
147
- <a href="#M000096">to_s</a>&nbsp;&nbsp;
148
- <a href="#M000088">x!</a>&nbsp;&nbsp;
149
- <a href="#M000087">x?</a>&nbsp;&nbsp;
150
- <a href="#M000090">z!</a>&nbsp;&nbsp;
151
- <a href="#M000089">z?</a>&nbsp;&nbsp;
141
+ <a href="#M000045">[]</a>&nbsp;&nbsp;
142
+ <a href="#M000043">get_value</a>&nbsp;&nbsp;
143
+ <a href="#M000042">get_value_wrapper</a>&nbsp;&nbsp;
144
+ <a href="#M000046">inspect</a>&nbsp;&nbsp;
145
+ <a href="#M000048">method_missing</a>&nbsp;&nbsp;
146
+ <a href="#M000044">put_value</a>&nbsp;&nbsp;
147
+ <a href="#M000047">to_s</a>&nbsp;&nbsp;
148
+ <a href="#M000039">x!</a>&nbsp;&nbsp;
149
+ <a href="#M000038">x?</a>&nbsp;&nbsp;
150
+ <a href="#M000041">z!</a>&nbsp;&nbsp;
151
+ <a href="#M000040">z?</a>&nbsp;&nbsp;
152
152
  </div>
153
153
  </div>
154
154
 
@@ -196,12 +196,12 @@ names (strings or symbols) or integer constants.
196
196
  <div id="methods">
197
197
  <h3 class="section-bar">Public Instance methods</h3>
198
198
 
199
- <div id="method-M000094" class="method-detail">
200
- <a name="M000094"></a>
199
+ <div id="method-M000045" class="method-detail">
200
+ <a name="M000045"></a>
201
201
 
202
202
  <div class="method-heading">
203
- <a href="Handle.src/M000094.html" target="Code" class="method-signature"
204
- onclick="popupCode('Handle.src/M000094.html');return false;">
203
+ <a href="Handle.src/M000045.html" target="Code" class="method-signature"
204
+ onclick="popupCode('Handle.src/M000045.html');return false;">
205
205
  <span class="method-name">[]</span><span class="method-args">(*aTypes)</span>
206
206
  </a>
207
207
  </div>
@@ -214,12 +214,12 @@ constant).
214
214
  </div>
215
215
  </div>
216
216
 
217
- <div id="method-M000092" class="method-detail">
218
- <a name="M000092"></a>
217
+ <div id="method-M000043" class="method-detail">
218
+ <a name="M000043"></a>
219
219
 
220
220
  <div class="method-heading">
221
- <a href="Handle.src/M000092.html" target="Code" class="method-signature"
222
- onclick="popupCode('Handle.src/M000092.html');return false;">
221
+ <a href="Handle.src/M000043.html" target="Code" class="method-signature"
222
+ onclick="popupCode('Handle.src/M000043.html');return false;">
223
223
  <span class="method-name">get_value</span><span class="method-args">(aFormat = VpiObjTypeVal)</span>
224
224
  </a>
225
225
  </div>
@@ -233,12 +233,12 @@ attempt to determine the correct format.
233
233
  </div>
234
234
  </div>
235
235
 
236
- <div id="method-M000091" class="method-detail">
237
- <a name="M000091"></a>
236
+ <div id="method-M000042" class="method-detail">
237
+ <a name="M000042"></a>
238
238
 
239
239
  <div class="method-heading">
240
- <a href="Handle.src/M000091.html" target="Code" class="method-signature"
241
- onclick="popupCode('Handle.src/M000091.html');return false;">
240
+ <a href="Handle.src/M000042.html" target="Code" class="method-signature"
241
+ onclick="popupCode('Handle.src/M000042.html');return false;">
242
242
  <span class="method-name">get_value_wrapper</span><span class="method-args">(aFormat)</span>
243
243
  </a>
244
244
  </div>
@@ -251,12 +251,12 @@ Reads the value using the given format (integer constant) and returns a
251
251
  </div>
252
252
  </div>
253
253
 
254
- <div id="method-M000095" class="method-detail">
255
- <a name="M000095"></a>
254
+ <div id="method-M000046" class="method-detail">
255
+ <a name="M000046"></a>
256
256
 
257
257
  <div class="method-heading">
258
- <a href="Handle.src/M000095.html" target="Code" class="method-signature"
259
- onclick="popupCode('Handle.src/M000095.html');return false;">
258
+ <a href="Handle.src/M000046.html" target="Code" class="method-signature"
259
+ onclick="popupCode('Handle.src/M000046.html');return false;">
260
260
  <span class="method-name">inspect</span><span class="method-args">(*aPropNames)</span>
261
261
  </a>
262
262
  </div>
@@ -269,12 +269,12 @@ handles.
269
269
  </div>
270
270
  </div>
271
271
 
272
- <div id="method-M000097" class="method-detail">
273
- <a name="M000097"></a>
272
+ <div id="method-M000048" class="method-detail">
273
+ <a name="M000048"></a>
274
274
 
275
275
  <div class="method-heading">
276
- <a href="Handle.src/M000097.html" target="Code" class="method-signature"
277
- onclick="popupCode('Handle.src/M000097.html');return false;">
276
+ <a href="Handle.src/M000048.html" target="Code" class="method-signature"
277
+ onclick="popupCode('Handle.src/M000048.html');return false;">
278
278
  <span class="method-name">method_missing</span><span class="method-args">(aMeth, *aArgs, &amp;aBlockArg)</span>
279
279
  </a>
280
280
  </div>
@@ -295,18 +295,18 @@ Provides access to this handle&#8217;s
295
295
  through method calls. In the case that a child handle has the same name as
296
296
  a VPI property, the child handle will be accessed instead of the VPI
297
297
  property. However, you can still access the VPI property via <a
298
- href="Handle.html#M000092">get_value</a> and <a
299
- href="Handle.html#M000093">put_value</a>.
298
+ href="Handle.html#M000043">get_value</a> and <a
299
+ href="Handle.html#M000044">put_value</a>.
300
300
  </p>
301
301
  </div>
302
302
  </div>
303
303
 
304
- <div id="method-M000093" class="method-detail">
305
- <a name="M000093"></a>
304
+ <div id="method-M000044" class="method-detail">
305
+ <a name="M000044"></a>
306
306
 
307
307
  <div class="method-heading">
308
- <a href="Handle.src/M000093.html" target="Code" class="method-signature"
309
- onclick="popupCode('Handle.src/M000093.html');return false;">
308
+ <a href="Handle.src/M000044.html" target="Code" class="method-signature"
309
+ onclick="popupCode('Handle.src/M000044.html');return false;">
310
310
  <span class="method-name">put_value</span><span class="method-args">(aValue, aFormat = nil, aTime = nil, aDelay = VpiNoDelay)</span>
311
311
  </a>
312
312
  </div>
@@ -321,8 +321,8 @@ format.
321
321
  </div>
322
322
  </div>
323
323
 
324
- <div id="method-M000096" class="method-detail">
325
- <a name="M000096"></a>
324
+ <div id="method-M000047" class="method-detail">
325
+ <a name="M000047"></a>
326
326
 
327
327
  <div class="method-heading">
328
328
  <span class="method-name">to_s</span><span class="method-args">(*aPropNames)</span>
@@ -330,17 +330,17 @@ format.
330
330
 
331
331
  <div class="method-description">
332
332
  <p>
333
- Alias for <a href="Handle.html#M000095">inspect</a>
333
+ Alias for <a href="Handle.html#M000046">inspect</a>
334
334
  </p>
335
335
  </div>
336
336
  </div>
337
337
 
338
- <div id="method-M000088" class="method-detail">
339
- <a name="M000088"></a>
338
+ <div id="method-M000039" class="method-detail">
339
+ <a name="M000039"></a>
340
340
 
341
341
  <div class="method-heading">
342
- <a href="Handle.src/M000088.html" target="Code" class="method-signature"
343
- onclick="popupCode('Handle.src/M000088.html');return false;">
342
+ <a href="Handle.src/M000039.html" target="Code" class="method-signature"
343
+ onclick="popupCode('Handle.src/M000039.html');return false;">
344
344
  <span class="method-name">x!</span><span class="method-args">()</span>
345
345
  </a>
346
346
  </div>
@@ -352,12 +352,12 @@ Sets the logic value of this handle to unknown (x).
352
352
  </div>
353
353
  </div>
354
354
 
355
- <div id="method-M000087" class="method-detail">
356
- <a name="M000087"></a>
355
+ <div id="method-M000038" class="method-detail">
356
+ <a name="M000038"></a>
357
357
 
358
358
  <div class="method-heading">
359
- <a href="Handle.src/M000087.html" target="Code" class="method-signature"
360
- onclick="popupCode('Handle.src/M000087.html');return false;">
359
+ <a href="Handle.src/M000038.html" target="Code" class="method-signature"
360
+ onclick="popupCode('Handle.src/M000038.html');return false;">
361
361
  <span class="method-name">x?</span><span class="method-args">()</span>
362
362
  </a>
363
363
  </div>
@@ -369,12 +369,12 @@ Tests if the logic value of this handle is unknown (x).
369
369
  </div>
370
370
  </div>
371
371
 
372
- <div id="method-M000090" class="method-detail">
373
- <a name="M000090"></a>
372
+ <div id="method-M000041" class="method-detail">
373
+ <a name="M000041"></a>
374
374
 
375
375
  <div class="method-heading">
376
- <a href="Handle.src/M000090.html" target="Code" class="method-signature"
377
- onclick="popupCode('Handle.src/M000090.html');return false;">
376
+ <a href="Handle.src/M000041.html" target="Code" class="method-signature"
377
+ onclick="popupCode('Handle.src/M000041.html');return false;">
378
378
  <span class="method-name">z!</span><span class="method-args">()</span>
379
379
  </a>
380
380
  </div>
@@ -386,12 +386,12 @@ Sets the logic value of this handle to high impedance (z).
386
386
  </div>
387
387
  </div>
388
388
 
389
- <div id="method-M000089" class="method-detail">
390
- <a name="M000089"></a>
389
+ <div id="method-M000040" class="method-detail">
390
+ <a name="M000040"></a>
391
391
 
392
392
  <div class="method-heading">
393
- <a href="Handle.src/M000089.html" target="Code" class="method-signature"
394
- onclick="popupCode('Handle.src/M000089.html');return false;">
393
+ <a href="Handle.src/M000040.html" target="Code" class="method-signature"
394
+ onclick="popupCode('Handle.src/M000040.html');return false;">
395
395
  <span class="method-name">z?</span><span class="method-args">()</span>
396
396
  </a>
397
397
  </div>
@@ -76,7 +76,7 @@
76
76
  <h3 class="section-bar">Methods</h3>
77
77
 
78
78
  <div class="name-list">
79
- <a href="#M000098">resolve</a>&nbsp;&nbsp;
79
+ <a href="#M000049">resolve</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-M000098" class="method-detail">
102
- <a name="M000098"></a>
101
+ <div id="method-M000049" class="method-detail">
102
+ <a name="M000049"></a>
103
103
 
104
104
  <div class="method-heading">
105
- <a href="Property.src/M000098.html" target="Code" class="method-signature"
106
- onclick="popupCode('Property.src/M000098.html');return false;">
105
+ <a href="Property.src/M000049.html" target="Code" class="method-signature"
106
+ onclick="popupCode('Property.src/M000049.html');return false;">
107
107
  <span class="method-name">resolve</span><span class="method-args">(aName)</span>
108
108
  </a>
109
109
  </div>