ruby-vpi 14.0.0 → 15.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. data/bin/generate_test_tpl/proto.rb +8 -6
  2. data/doc/common.css +1 -0
  3. data/doc/history.html +357 -281
  4. data/doc/history.yml +35 -1
  5. data/doc/intro.inc +1 -1
  6. data/doc/manual.doc +38 -29
  7. data/doc/manual.html +109 -63
  8. data/doc/readme.html +6 -6
  9. data/doc/rss.xml +69 -1
  10. data/ext/Rakefile +1 -5
  11. data/ext/extconf.rb +0 -5
  12. data/ext/relay.c +1 -1
  13. data/ext/vlog.c +1 -1
  14. data/lib/ruby-vpi/vpi.rb +50 -4
  15. data/lib/ruby-vpi.rb +7 -7
  16. data/ref/c/annotated.html +6 -1
  17. data/ref/c/common_8h.html +1 -1
  18. data/ref/c/files.html +2 -1
  19. data/ref/c/functions.html +40 -20
  20. data/ref/c/functions_vars.html +40 -20
  21. data/ref/c/globals.html +212 -5
  22. data/ref/c/globals_0x62.html +62 -0
  23. data/ref/c/globals_0x63.html +19 -3
  24. data/ref/c/globals_0x65.html +8 -2
  25. data/ref/c/globals_0x66.html +19 -3
  26. data/ref/c/globals_0x67.html +64 -0
  27. data/ref/c/globals_0x69.html +62 -0
  28. data/ref/c/globals_0x6c.html +64 -0
  29. data/ref/c/globals_0x6d.html +10 -3
  30. data/ref/c/globals_0x6e.html +63 -0
  31. data/ref/c/globals_0x70.html +8 -2
  32. data/ref/c/globals_0x72.html +14 -4
  33. data/ref/c/globals_0x73.html +189 -3
  34. data/ref/c/globals_0x74.html +8 -2
  35. data/ref/c/globals_0x75.html +63 -0
  36. data/ref/c/globals_0x76.html +14 -4
  37. data/ref/c/globals_0x78.html +8 -2
  38. data/ref/c/globals_defs.html +6 -1
  39. data/ref/c/globals_defs_0x65.html +6 -1
  40. data/ref/c/globals_defs_0x6c.html +57 -0
  41. data/ref/c/globals_defs_0x6e.html +56 -0
  42. data/ref/c/globals_defs_0x70.html +6 -1
  43. data/ref/c/globals_defs_0x72.html +57 -0
  44. data/ref/c/globals_defs_0x73.html +165 -0
  45. data/ref/c/globals_defs_0x75.html +56 -0
  46. data/ref/c/globals_defs_0x76.html +10 -3
  47. data/ref/c/globals_defs_0x78.html +6 -1
  48. data/ref/c/globals_enum.html +1 -1
  49. data/ref/c/globals_eval.html +1 -1
  50. data/ref/c/globals_func.html +174 -14
  51. data/ref/c/globals_func_0x66.html +63 -0
  52. data/ref/c/globals_func_0x67.html +56 -0
  53. data/ref/c/globals_func_0x69.html +54 -0
  54. data/ref/c/globals_func_0x6d.html +56 -0
  55. data/ref/c/globals_func_0x70.html +54 -0
  56. data/ref/c/globals_func_0x72.html +57 -0
  57. data/ref/c/globals_func_0x73.html +113 -0
  58. data/ref/c/globals_func_0x76.html +58 -0
  59. data/ref/c/globals_type.html +6 -3
  60. data/ref/c/globals_vars.html +89 -3
  61. data/ref/c/index.html +1 -1
  62. data/ref/c/main_8c.html +2 -2
  63. data/ref/c/main_8h.html +1 -1
  64. data/ref/c/relay_8c.html +1 -1
  65. data/ref/c/relay_8h.html +1 -1
  66. data/ref/c/structswig__cast__info.html +98 -0
  67. data/ref/c/structswig__class.html +115 -0
  68. data/ref/c/structswig__module__info.html +132 -0
  69. data/ref/c/structswig__type__info.html +132 -0
  70. data/ref/c/structt__cb__data.html +1 -1
  71. data/ref/c/structt__vpi__delay.html +1 -1
  72. data/ref/c/structt__vpi__error__info.html +1 -1
  73. data/ref/c/structt__vpi__strengthval.html +1 -1
  74. data/ref/c/structt__vpi__systf__data.html +1 -1
  75. data/ref/c/structt__vpi__time.html +1 -1
  76. data/ref/c/structt__vpi__value.html +1 -1
  77. data/ref/c/structt__vpi__vecval.html +1 -1
  78. data/ref/c/structt__vpi__vlog__info.html +1 -1
  79. data/ref/c/swig__wrap_8cin.html +11610 -0
  80. data/ref/c/unions__vpi__value__value.html +166 -0
  81. data/ref/c/verilog_8h.html +1 -1
  82. data/ref/c/vlog_8c.html +3 -3
  83. data/ref/c/vlog_8h.html +1 -1
  84. data/ref/c/vpi__user_8h.html +1 -1
  85. data/ref/ruby/classes/RDoc.html +5 -5
  86. data/ref/ruby/classes/RDoc.src/{M000045.html → M000053.html} +0 -0
  87. data/ref/ruby/classes/RubyVpi.src/M000029.html +27 -27
  88. data/ref/ruby/classes/Vpi/Handle.html +93 -57
  89. data/ref/ruby/classes/Vpi/Handle.src/M000037.html +5 -5
  90. data/ref/ruby/classes/Vpi/Handle.src/M000038.html +5 -9
  91. data/ref/ruby/classes/Vpi/Handle.src/M000039.html +5 -31
  92. data/ref/ruby/classes/Vpi/Handle.src/M000040.html +5 -74
  93. data/ref/ruby/classes/Vpi/Handle.src/M000041.html +8 -17
  94. data/ref/ruby/classes/Vpi/Handle.src/M000042.html +8 -11
  95. data/ref/ruby/classes/Vpi/Handle.src/M000043.html +22 -0
  96. data/ref/ruby/classes/Vpi/Handle.src/M000044.html +31 -55
  97. data/ref/ruby/classes/Vpi/Handle.src/M000045.html +87 -0
  98. data/ref/ruby/classes/Vpi/Handle.src/M000046.html +30 -0
  99. data/ref/ruby/classes/Vpi/Handle.src/M000047.html +24 -0
  100. data/ref/ruby/classes/Vpi/Handle.src/M000049.html +68 -0
  101. data/ref/ruby/classes/Vpi/S_vpi_time.html +186 -0
  102. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000050.html +18 -0
  103. data/ref/ruby/classes/Vpi/S_vpi_time.src/M000051.html +19 -0
  104. data/ref/ruby/classes/Vpi/S_vpi_value.html +167 -0
  105. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000034.html +18 -0
  106. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000035.html +18 -0
  107. data/ref/ruby/classes/Vpi/S_vpi_value.src/M000036.html +18 -0
  108. data/ref/ruby/classes/Vpi.html +3 -1
  109. data/ref/ruby/classes/Vpi.src/M000030.html +14 -14
  110. data/ref/ruby/classes/Vpi.src/M000031.html +4 -4
  111. data/ref/ruby/classes/Vpi.src/M000032.html +24 -25
  112. data/ref/ruby/classes/Vpi.src/M000033.html +8 -8
  113. data/ref/ruby/created.rid +1 -1
  114. data/ref/ruby/files/lib/ruby-vpi/vpi_rb.html +1 -1
  115. data/ref/ruby/files/lib/ruby-vpi_rb.html +1 -1
  116. data/ref/ruby/fr_class_index.html +2 -0
  117. data/ref/ruby/fr_method_index.html +22 -14
  118. data/samp/counter/counter_rspec_proto.rb +8 -6
  119. data/samp/counter/counter_xunit_proto.rb +8 -6
  120. data/samp/pipelined_alu/hw5_unit_test_proto.rb +2 -2
  121. metadata +42 -6
  122. data/ref/ruby/classes/Vpi/Handle.src/M000034.html +0 -18
  123. data/ref/ruby/classes/Vpi/Handle.src/M000035.html +0 -18
  124. data/ref/ruby/classes/Vpi/Handle.src/M000036.html +0 -18
@@ -0,0 +1,166 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
+ <title>Ruby-VPI: s_vpi_value_value Union Reference</title>
4
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
5
+ <link href="tabs.css" rel="stylesheet" type="text/css">
6
+ </head><body>
7
+ <!-- Generated by Doxygen 1.4.7 -->
8
+ <div class="tabs">
9
+ <ul>
10
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11
+ <li id="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
12
+ <li><a href="files.html"><span>Files</span></a></li>
13
+ </ul></div>
14
+ <div class="tabs">
15
+ <ul>
16
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
17
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
18
+ </ul></div>
19
+ <h1>s_vpi_value_value Union Reference</h1><!-- doxytag: class="s_vpi_value_value" --><table border="0" cellpadding="0" cellspacing="0">
20
+ <tr><td></td></tr>
21
+ <tr><td colspan="2"><br><h2>Data Fields</h2></td></tr>
22
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vpi__user_8h.html#c32f73779a5a02871976ab2d1b2fbedb">PLI_BYTE8</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#fa9c2707008632f4483435de8479bf09">str</a></td></tr>
23
+
24
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vpi__user_8h.html#4a478dfb1ea580b36c39dcec9fc8d53c">PLI_INT32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#ddde1b42b67cc33b24f848b6136452a6">scalar</a></td></tr>
25
+
26
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vpi__user_8h.html#4a478dfb1ea580b36c39dcec9fc8d53c">PLI_INT32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#5b7b4294baa69af942467e56985acde7">integer</a></td></tr>
27
+
28
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#65be6f4dfb83ecda12243906b02e779c">real</a></td></tr>
29
+
30
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structt__vpi__time.html">t_vpi_time</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#3c2ca8f361f470a20e44e7f9fdb41672">time</a></td></tr>
31
+
32
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structt__vpi__vecval.html">t_vpi_vecval</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#83be7b9659a7336f2c89c03398f8f36f">vector</a></td></tr>
33
+
34
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structt__vpi__strengthval.html">t_vpi_strengthval</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#575232f92b4e2190577a3c14294a324d">strength</a></td></tr>
35
+
36
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vpi__user_8h.html#c32f73779a5a02871976ab2d1b2fbedb">PLI_BYTE8</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unions__vpi__value__value.html#28cffae0783d0a647c228b110f74e585">misc</a></td></tr>
37
+
38
+ </table>
39
+ <hr><h2>Field Documentation</h2>
40
+ <a class="anchor" name="5b7b4294baa69af942467e56985acde7"></a><!-- doxytag: member="s_vpi_value_value::integer" ref="5b7b4294baa69af942467e56985acde7" args="" -->
41
+ <div class="memitem">
42
+ <div class="memproto">
43
+ <table class="memname">
44
+ <tr>
45
+ <td class="memname"><a class="el" href="vpi__user_8h.html#4a478dfb1ea580b36c39dcec9fc8d53c">PLI_INT32</a> <a class="el" href="unions__vpi__value__value.html#5b7b4294baa69af942467e56985acde7">s_vpi_value_value::integer</a> </td>
46
+ </tr>
47
+ </table>
48
+ </div>
49
+ <div class="memdoc">
50
+
51
+ <p>
52
+
53
+ </div>
54
+ </div><p>
55
+ <a class="anchor" name="28cffae0783d0a647c228b110f74e585"></a><!-- doxytag: member="s_vpi_value_value::misc" ref="28cffae0783d0a647c228b110f74e585" args="" -->
56
+ <div class="memitem">
57
+ <div class="memproto">
58
+ <table class="memname">
59
+ <tr>
60
+ <td class="memname"><a class="el" href="vpi__user_8h.html#c32f73779a5a02871976ab2d1b2fbedb">PLI_BYTE8</a>* <a class="el" href="unions__vpi__value__value.html#28cffae0783d0a647c228b110f74e585">s_vpi_value_value::misc</a> </td>
61
+ </tr>
62
+ </table>
63
+ </div>
64
+ <div class="memdoc">
65
+
66
+ <p>
67
+
68
+ </div>
69
+ </div><p>
70
+ <a class="anchor" name="65be6f4dfb83ecda12243906b02e779c"></a><!-- doxytag: member="s_vpi_value_value::real" ref="65be6f4dfb83ecda12243906b02e779c" args="" -->
71
+ <div class="memitem">
72
+ <div class="memproto">
73
+ <table class="memname">
74
+ <tr>
75
+ <td class="memname">double <a class="el" href="unions__vpi__value__value.html#65be6f4dfb83ecda12243906b02e779c">s_vpi_value_value::real</a> </td>
76
+ </tr>
77
+ </table>
78
+ </div>
79
+ <div class="memdoc">
80
+
81
+ <p>
82
+
83
+ </div>
84
+ </div><p>
85
+ <a class="anchor" name="ddde1b42b67cc33b24f848b6136452a6"></a><!-- doxytag: member="s_vpi_value_value::scalar" ref="ddde1b42b67cc33b24f848b6136452a6" args="" -->
86
+ <div class="memitem">
87
+ <div class="memproto">
88
+ <table class="memname">
89
+ <tr>
90
+ <td class="memname"><a class="el" href="vpi__user_8h.html#4a478dfb1ea580b36c39dcec9fc8d53c">PLI_INT32</a> <a class="el" href="unions__vpi__value__value.html#ddde1b42b67cc33b24f848b6136452a6">s_vpi_value_value::scalar</a> </td>
91
+ </tr>
92
+ </table>
93
+ </div>
94
+ <div class="memdoc">
95
+
96
+ <p>
97
+
98
+ </div>
99
+ </div><p>
100
+ <a class="anchor" name="fa9c2707008632f4483435de8479bf09"></a><!-- doxytag: member="s_vpi_value_value::str" ref="fa9c2707008632f4483435de8479bf09" args="" -->
101
+ <div class="memitem">
102
+ <div class="memproto">
103
+ <table class="memname">
104
+ <tr>
105
+ <td class="memname"><a class="el" href="vpi__user_8h.html#c32f73779a5a02871976ab2d1b2fbedb">PLI_BYTE8</a>* <a class="el" href="unions__vpi__value__value.html#fa9c2707008632f4483435de8479bf09">s_vpi_value_value::str</a> </td>
106
+ </tr>
107
+ </table>
108
+ </div>
109
+ <div class="memdoc">
110
+
111
+ <p>
112
+
113
+ </div>
114
+ </div><p>
115
+ <a class="anchor" name="575232f92b4e2190577a3c14294a324d"></a><!-- doxytag: member="s_vpi_value_value::strength" ref="575232f92b4e2190577a3c14294a324d" args="" -->
116
+ <div class="memitem">
117
+ <div class="memproto">
118
+ <table class="memname">
119
+ <tr>
120
+ <td class="memname">struct <a class="el" href="structt__vpi__strengthval.html">t_vpi_strengthval</a>* <a class="el" href="unions__vpi__value__value.html#575232f92b4e2190577a3c14294a324d">s_vpi_value_value::strength</a> </td>
121
+ </tr>
122
+ </table>
123
+ </div>
124
+ <div class="memdoc">
125
+
126
+ <p>
127
+
128
+ </div>
129
+ </div><p>
130
+ <a class="anchor" name="3c2ca8f361f470a20e44e7f9fdb41672"></a><!-- doxytag: member="s_vpi_value_value::time" ref="3c2ca8f361f470a20e44e7f9fdb41672" args="" -->
131
+ <div class="memitem">
132
+ <div class="memproto">
133
+ <table class="memname">
134
+ <tr>
135
+ <td class="memname">struct <a class="el" href="structt__vpi__time.html">t_vpi_time</a>* <a class="el" href="unions__vpi__value__value.html#3c2ca8f361f470a20e44e7f9fdb41672">s_vpi_value_value::time</a> </td>
136
+ </tr>
137
+ </table>
138
+ </div>
139
+ <div class="memdoc">
140
+
141
+ <p>
142
+
143
+ </div>
144
+ </div><p>
145
+ <a class="anchor" name="83be7b9659a7336f2c89c03398f8f36f"></a><!-- doxytag: member="s_vpi_value_value::vector" ref="83be7b9659a7336f2c89c03398f8f36f" args="" -->
146
+ <div class="memitem">
147
+ <div class="memproto">
148
+ <table class="memname">
149
+ <tr>
150
+ <td class="memname">struct <a class="el" href="structt__vpi__vecval.html">t_vpi_vecval</a>* <a class="el" href="unions__vpi__value__value.html#83be7b9659a7336f2c89c03398f8f36f">s_vpi_value_value::vector</a> </td>
151
+ </tr>
152
+ </table>
153
+ </div>
154
+ <div class="memdoc">
155
+
156
+ <p>
157
+
158
+ </div>
159
+ </div><p>
160
+ <hr>The documentation for this union was generated from the following file:<ul>
161
+ <li><a class="el" href="swig__wrap_8cin.html">swig_wrap.cin</a></ul>
162
+ <hr size="1"><address style="align: right;"><small>Generated on Sat Jan 13 16:42:16 2007 for Ruby-VPI by&nbsp;
163
+ <a href="http://www.doxygen.org/index.html">
164
+ <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
165
+ </body>
166
+ </html>
@@ -176,7 +176,7 @@ A proxy for all Verilog headers of interest to us.
176
176
 
177
177
  </div>
178
178
  </div><p>
179
- <hr size="1"><address style="align: right;"><small>Generated on Sat Dec 30 19:26:26 2006 for Ruby-VPI by&nbsp;
179
+ <hr size="1"><address style="align: right;"><small>Generated on Sat Jan 13 16:42:16 2007 for Ruby-VPI by&nbsp;
180
180
  <a href="http://www.doxygen.org/index.html">
181
181
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
182
182
  </body>
data/ref/c/vlog_8c.html CHANGED
@@ -35,7 +35,7 @@
35
35
  <tr><td colspan="2"><br><h2>Variables</h2></td></tr>
36
36
  <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structt__cb__data.html">s_cb_data</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vlog_8c.html#18eaa93bf30b318a70eb68473d7597b1">vlog__relayReason</a> = NULL</td></tr>
37
37
 
38
- <tr><td class="memItemLeft" nowrap align="right" valign="top">void(*[])&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vlog_8c.html#c1228ec9528d9c9be4de1c8e42cd3835">vlog_startup_routines</a> () = { vlog_startup, 0 }</td></tr>
38
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">void(*[])&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vlog_8c.html#c1228ec9528d9c9be4de1c8e42cd3835">vlog_startup_routines</a> () = { vlog_startup, NULL }</td></tr>
39
39
 
40
40
  </table>
41
41
  <hr><h2>Function Documentation</h2>
@@ -144,7 +144,7 @@ Registers a callback at start of simulation to vlog_relay_main();.
144
144
  <div class="memproto">
145
145
  <table class="memname">
146
146
  <tr>
147
- <td class="memname">void(*[]) <a class="el" href="vpi__user_8h.html#c633eb05d7e314a57629aa32ca3a9076">vlog_startup_routines</a>() = { vlog_startup, 0 } </td>
147
+ <td class="memname">void(*[]) <a class="el" href="vpi__user_8h.html#c633eb05d7e314a57629aa32ca3a9076">vlog_startup_routines</a>() = { vlog_startup, NULL } </td>
148
148
  </tr>
149
149
  </table>
150
150
  </div>
@@ -154,7 +154,7 @@ Registers a callback at start of simulation to vlog_relay_main();.
154
154
 
155
155
  </div>
156
156
  </div><p>
157
- <hr size="1"><address style="align: right;"><small>Generated on Sat Dec 30 19:26:26 2006 for Ruby-VPI by&nbsp;
157
+ <hr size="1"><address style="align: right;"><small>Generated on Sat Jan 13 16:42:16 2007 for Ruby-VPI by&nbsp;
158
158
  <a href="http://www.doxygen.org/index.html">
159
159
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
160
160
  </body>
data/ref/c/vlog_8h.html CHANGED
@@ -77,7 +77,7 @@ Returns the data corresponding to the callback that caused the relay from Verilo
77
77
 
78
78
  </div>
79
79
  </div><p>
80
- <hr size="1"><address style="align: right;"><small>Generated on Sat Dec 30 19:26:26 2006 for Ruby-VPI by&nbsp;
80
+ <hr size="1"><address style="align: right;"><small>Generated on Sat Jan 13 16:42:16 2007 for Ruby-VPI by&nbsp;
81
81
  <a href="http://www.doxygen.org/index.html">
82
82
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
83
83
  </body>
@@ -8732,7 +8732,7 @@ alias 1364-1995 system function subtypes to 1364-2001 function subtypes
8732
8732
 
8733
8733
  </div>
8734
8734
  </div><p>
8735
- <hr size="1"><address style="align: right;"><small>Generated on Sat Dec 30 19:26:26 2006 for Ruby-VPI by&nbsp;
8735
+ <hr size="1"><address style="align: right;"><small>Generated on Sat Jan 13 16:42:16 2007 for Ruby-VPI by&nbsp;
8736
8736
  <a href="http://www.doxygen.org/index.html">
8737
8737
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
8738
8738
  </body>
@@ -80,7 +80,7 @@
80
80
  <h3 class="section-bar">Methods</h3>
81
81
 
82
82
  <div class="name-list">
83
- <a href="#M000045">usage_from_file</a>&nbsp;&nbsp;
83
+ <a href="#M000053">usage_from_file</a>&nbsp;&nbsp;
84
84
  </div>
85
85
  </div>
86
86
 
@@ -102,12 +102,12 @@
102
102
  <div id="methods">
103
103
  <h3 class="section-bar">Public Class methods</h3>
104
104
 
105
- <div id="method-M000045" class="method-detail">
106
- <a name="M000045"></a>
105
+ <div id="method-M000053" class="method-detail">
106
+ <a name="M000053"></a>
107
107
 
108
108
  <div class="method-heading">
109
- <a href="RDoc.src/M000045.html" target="Code" class="method-signature"
110
- onclick="popupCode('RDoc.src/M000045.html');return false;">
109
+ <a href="RDoc.src/M000053.html" target="Code" class="method-signature"
110
+ onclick="popupCode('RDoc.src/M000053.html');return false;">
111
111
  <span class="method-name">usage_from_file</span><span class="method-args">(input_file, *args)</span>
112
112
  </a>
113
113
  </div>
@@ -79,35 +79,35 @@
79
79
  96: <span class="ruby-identifier">include</span> <span class="ruby-constant">Vpi</span>
80
80
  97: <span class="ruby-keyword kw">end</span>
81
81
  98:
82
- 99: <span class="ruby-comment cmt"># load the design under test</span>
83
- 100: <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
- 101: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Verilog bench for test #{testName.inspect} is inaccessible.&quot;</span>
85
- 102: <span class="ruby-keyword kw">end</span>
86
- 103:
87
- 104: <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
- 105: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_design.rb&quot;</span>
89
- 106:
90
- 107: <span class="ruby-comment cmt"># load the design's prototype</span>
91
- 108: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">usePrototype</span>
92
- 109: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_proto.rb&quot;</span>
82
+ 99: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">module_eval</span> <span class="ruby-keyword kw">do</span>
83
+ 100: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:simulate</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">aSimulationCycle</span>
84
+ 101: <span class="ruby-keyword kw">end</span>
85
+ 102:
86
+ 103: <span class="ruby-comment cmt"># load the design under test</span>
87
+ 104: <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>)
88
+ 105: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Verilog bench for test #{testName.inspect} is inaccessible.&quot;</span>
89
+ 106: <span class="ruby-keyword kw">end</span>
90
+ 107:
91
+ 108: <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>)
92
+ 109: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_design.rb&quot;</span>
93
93
  110:
94
- 111: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">module_eval</span> <span class="ruby-keyword kw">do</span>
95
- 112: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:simulate</span> <span class="ruby-keyword kw">do</span>
96
- 113: <span class="ruby-identifier">design</span>.<span class="ruby-identifier">simulate!</span>
97
- 114: <span class="ruby-keyword kw">end</span>
98
- 115:
99
- 116: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:vpi_register_cb</span> <span class="ruby-keyword kw">do</span>
100
- 117: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;vpi_register_cb: callbacks not allowed when prototyping&quot;</span>
94
+ 111: <span class="ruby-comment cmt"># load the design's prototype</span>
95
+ 112: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">usePrototype</span>
96
+ 113: <span class="ruby-identifier">require</span> <span class="ruby-node">&quot;#{testName}_proto.rb&quot;</span>
97
+ 114:
98
+ 115: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">module_eval</span> <span class="ruby-keyword kw">do</span>
99
+ 116: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:advance_time</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span>
100
+ 117: <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">args</span>.<span class="ruby-identifier">first</span> <span class="ruby-operator">||</span> <span class="ruby-value">1</span>).<span class="ruby-identifier">times</span> { <span class="ruby-identifier">design</span>.<span class="ruby-identifier">simulate!</span> }
101
101
  118: <span class="ruby-keyword kw">end</span>
102
- 119: <span class="ruby-keyword kw">end</span>
103
- 120:
104
- 121: <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>
105
- 122:
106
- 123: <span class="ruby-keyword kw">else</span>
107
- 124: <span class="ruby-constant">Vpi</span>.<span class="ruby-identifier">module_eval</span> <span class="ruby-keyword kw">do</span>
108
- 125: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:simulate</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">aSimulationCycle</span>
109
- 126: <span class="ruby-keyword kw">end</span>
110
- 127:
102
+ 119:
103
+ 120: <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">:vpi_register_cb</span> <span class="ruby-keyword kw">do</span>
104
+ 121: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;vpi_register_cb: callbacks are ignored when prototype is enabled&quot;</span>
105
+ 122: <span class="ruby-keyword kw">end</span>
106
+ 123: <span class="ruby-keyword kw">end</span>
107
+ 124:
108
+ 125: <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>
109
+ 126:
110
+ 127: <span class="ruby-keyword kw">else</span>
111
111
  128: <span class="ruby-comment cmt"># XXX: this completes the handshake, by calling relay_verilog, with pthread_mutex_lock() in relay_main() in the C extension</span>
112
112
  129: <span class="ruby-identifier">advance_time</span>
113
113
  130: <span class="ruby-keyword kw">end</span>
@@ -138,17 +138,19 @@ 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="#M000041">[]</a>&nbsp;&nbsp;
142
- <a href="#M000039">get_value</a>&nbsp;&nbsp;
143
- <a href="#M000038">get_value_wrapper</a>&nbsp;&nbsp;
144
- <a href="#M000042">inspect</a>&nbsp;&nbsp;
145
- <a href="#M000044">method_missing</a>&nbsp;&nbsp;
146
- <a href="#M000040">put_value</a>&nbsp;&nbsp;
147
- <a href="#M000043">to_s</a>&nbsp;&nbsp;
148
- <a href="#M000035">x!</a>&nbsp;&nbsp;
149
- <a href="#M000034">x?</a>&nbsp;&nbsp;
150
- <a href="#M000037">z!</a>&nbsp;&nbsp;
151
- <a href="#M000036">z?</a>&nbsp;&nbsp;
141
+ <a href="#M000046">[]</a>&nbsp;&nbsp;
142
+ <a href="#M000044">get_value</a>&nbsp;&nbsp;
143
+ <a href="#M000043">get_value_wrapper</a>&nbsp;&nbsp;
144
+ <a href="#M000047">inspect</a>&nbsp;&nbsp;
145
+ <a href="#M000049">method_missing</a>&nbsp;&nbsp;
146
+ <a href="#M000042">negedge?</a>&nbsp;&nbsp;
147
+ <a href="#M000041">posedge?</a>&nbsp;&nbsp;
148
+ <a href="#M000045">put_value</a>&nbsp;&nbsp;
149
+ <a href="#M000048">to_s</a>&nbsp;&nbsp;
150
+ <a href="#M000038">x!</a>&nbsp;&nbsp;
151
+ <a href="#M000037">x?</a>&nbsp;&nbsp;
152
+ <a href="#M000040">z!</a>&nbsp;&nbsp;
153
+ <a href="#M000039">z?</a>&nbsp;&nbsp;
152
154
  </div>
153
155
  </div>
154
156
 
@@ -190,12 +192,12 @@ names (strings or symbols) or integer constants.
190
192
  <div id="methods">
191
193
  <h3 class="section-bar">Public Instance methods</h3>
192
194
 
193
- <div id="method-M000041" class="method-detail">
194
- <a name="M000041"></a>
195
+ <div id="method-M000046" class="method-detail">
196
+ <a name="M000046"></a>
195
197
 
196
198
  <div class="method-heading">
197
- <a href="Handle.src/M000041.html" target="Code" class="method-signature"
198
- onclick="popupCode('Handle.src/M000041.html');return false;">
199
+ <a href="Handle.src/M000046.html" target="Code" class="method-signature"
200
+ onclick="popupCode('Handle.src/M000046.html');return false;">
199
201
  <span class="method-name">[]</span><span class="method-args">(*aTypes)</span>
200
202
  </a>
201
203
  </div>
@@ -208,12 +210,12 @@ constant).
208
210
  </div>
209
211
  </div>
210
212
 
211
- <div id="method-M000039" class="method-detail">
212
- <a name="M000039"></a>
213
+ <div id="method-M000044" class="method-detail">
214
+ <a name="M000044"></a>
213
215
 
214
216
  <div class="method-heading">
215
- <a href="Handle.src/M000039.html" target="Code" class="method-signature"
216
- onclick="popupCode('Handle.src/M000039.html');return false;">
217
+ <a href="Handle.src/M000044.html" target="Code" class="method-signature"
218
+ onclick="popupCode('Handle.src/M000044.html');return false;">
217
219
  <span class="method-name">get_value</span><span class="method-args">(aFormat = VpiObjTypeVal)</span>
218
220
  </a>
219
221
  </div>
@@ -227,12 +229,12 @@ attempt to determine the correct format.
227
229
  </div>
228
230
  </div>
229
231
 
230
- <div id="method-M000038" class="method-detail">
231
- <a name="M000038"></a>
232
+ <div id="method-M000043" class="method-detail">
233
+ <a name="M000043"></a>
232
234
 
233
235
  <div class="method-heading">
234
- <a href="Handle.src/M000038.html" target="Code" class="method-signature"
235
- onclick="popupCode('Handle.src/M000038.html');return false;">
236
+ <a href="Handle.src/M000043.html" target="Code" class="method-signature"
237
+ onclick="popupCode('Handle.src/M000043.html');return false;">
236
238
  <span class="method-name">get_value_wrapper</span><span class="method-args">(aFormat)</span>
237
239
  </a>
238
240
  </div>
@@ -240,17 +242,17 @@ attempt to determine the correct format.
240
242
  <div class="method-description">
241
243
  <p>
242
244
  Reads the value using the given format (integer constant) and returns a
243
- <tt>S_vpi_value</tt> object.
245
+ <tt><a href="S_vpi_value.html">S_vpi_value</a></tt> object.
244
246
  </p>
245
247
  </div>
246
248
  </div>
247
249
 
248
- <div id="method-M000042" class="method-detail">
249
- <a name="M000042"></a>
250
+ <div id="method-M000047" class="method-detail">
251
+ <a name="M000047"></a>
250
252
 
251
253
  <div class="method-heading">
252
- <a href="Handle.src/M000042.html" target="Code" class="method-signature"
253
- onclick="popupCode('Handle.src/M000042.html');return false;">
254
+ <a href="Handle.src/M000047.html" target="Code" class="method-signature"
255
+ onclick="popupCode('Handle.src/M000047.html');return false;">
254
256
  <span class="method-name">inspect</span><span class="method-args">(*aPropNames)</span>
255
257
  </a>
256
258
  </div>
@@ -263,12 +265,12 @@ handles.
263
265
  </div>
264
266
  </div>
265
267
 
266
- <div id="method-M000044" class="method-detail">
267
- <a name="M000044"></a>
268
+ <div id="method-M000049" class="method-detail">
269
+ <a name="M000049"></a>
268
270
 
269
271
  <div class="method-heading">
270
- <a href="Handle.src/M000044.html" target="Code" class="method-signature"
271
- onclick="popupCode('Handle.src/M000044.html');return false;">
272
+ <a href="Handle.src/M000049.html" target="Code" class="method-signature"
273
+ onclick="popupCode('Handle.src/M000049.html');return false;">
272
274
  <span class="method-name">method_missing</span><span class="method-args">(aMeth, *aArgs, &amp;aBlockArg)</span>
273
275
  </a>
274
276
  </div>
@@ -289,18 +291,52 @@ Provides access to this handle&#8217;s
289
291
  through method calls. In the case that a child handle has the same name as
290
292
  a VPI property, the child handle will be accessed instead of the VPI
291
293
  property. However, you can still access the VPI property via <a
292
- href="Handle.html#M000039">get_value</a> and <a
293
- href="Handle.html#M000040">put_value</a>.
294
+ href="Handle.html#M000044">get_value</a> and <a
295
+ href="Handle.html#M000045">put_value</a>.
294
296
  </p>
295
297
  </div>
296
298
  </div>
297
299
 
298
- <div id="method-M000040" class="method-detail">
299
- <a name="M000040"></a>
300
+ <div id="method-M000042" class="method-detail">
301
+ <a name="M000042"></a>
300
302
 
301
303
  <div class="method-heading">
302
- <a href="Handle.src/M000040.html" target="Code" class="method-signature"
303
- onclick="popupCode('Handle.src/M000040.html');return false;">
304
+ <a href="Handle.src/M000042.html" target="Code" class="method-signature"
305
+ onclick="popupCode('Handle.src/M000042.html');return false;">
306
+ <span class="method-name">negedge?</span><span class="method-args">()</span>
307
+ </a>
308
+ </div>
309
+
310
+ <div class="method-description">
311
+ <p>
312
+ Tests if the logic value of this handle is currently at a negative edge.
313
+ </p>
314
+ </div>
315
+ </div>
316
+
317
+ <div id="method-M000041" class="method-detail">
318
+ <a name="M000041"></a>
319
+
320
+ <div class="method-heading">
321
+ <a href="Handle.src/M000041.html" target="Code" class="method-signature"
322
+ onclick="popupCode('Handle.src/M000041.html');return false;">
323
+ <span class="method-name">posedge?</span><span class="method-args">()</span>
324
+ </a>
325
+ </div>
326
+
327
+ <div class="method-description">
328
+ <p>
329
+ Tests if the logic value of this handle is currently at a positive edge.
330
+ </p>
331
+ </div>
332
+ </div>
333
+
334
+ <div id="method-M000045" class="method-detail">
335
+ <a name="M000045"></a>
336
+
337
+ <div class="method-heading">
338
+ <a href="Handle.src/M000045.html" target="Code" class="method-signature"
339
+ onclick="popupCode('Handle.src/M000045.html');return false;">
304
340
  <span class="method-name">put_value</span><span class="method-args">(aValue, aFormat = nil, aTime = nil, aDelay = VpiNoDelay)</span>
305
341
  </a>
306
342
  </div>
@@ -315,8 +351,8 @@ format.
315
351
  </div>
316
352
  </div>
317
353
 
318
- <div id="method-M000043" class="method-detail">
319
- <a name="M000043"></a>
354
+ <div id="method-M000048" class="method-detail">
355
+ <a name="M000048"></a>
320
356
 
321
357
  <div class="method-heading">
322
358
  <span class="method-name">to_s</span><span class="method-args">(*aPropNames)</span>
@@ -324,17 +360,17 @@ format.
324
360
 
325
361
  <div class="method-description">
326
362
  <p>
327
- Alias for <a href="Handle.html#M000042">inspect</a>
363
+ Alias for <a href="Handle.html#M000047">inspect</a>
328
364
  </p>
329
365
  </div>
330
366
  </div>
331
367
 
332
- <div id="method-M000035" class="method-detail">
333
- <a name="M000035"></a>
368
+ <div id="method-M000038" class="method-detail">
369
+ <a name="M000038"></a>
334
370
 
335
371
  <div class="method-heading">
336
- <a href="Handle.src/M000035.html" target="Code" class="method-signature"
337
- onclick="popupCode('Handle.src/M000035.html');return false;">
372
+ <a href="Handle.src/M000038.html" target="Code" class="method-signature"
373
+ onclick="popupCode('Handle.src/M000038.html');return false;">
338
374
  <span class="method-name">x!</span><span class="method-args">()</span>
339
375
  </a>
340
376
  </div>
@@ -346,12 +382,12 @@ Sets the logic value of this handle to unknown (x).
346
382
  </div>
347
383
  </div>
348
384
 
349
- <div id="method-M000034" class="method-detail">
350
- <a name="M000034"></a>
385
+ <div id="method-M000037" class="method-detail">
386
+ <a name="M000037"></a>
351
387
 
352
388
  <div class="method-heading">
353
- <a href="Handle.src/M000034.html" target="Code" class="method-signature"
354
- onclick="popupCode('Handle.src/M000034.html');return false;">
389
+ <a href="Handle.src/M000037.html" target="Code" class="method-signature"
390
+ onclick="popupCode('Handle.src/M000037.html');return false;">
355
391
  <span class="method-name">x?</span><span class="method-args">()</span>
356
392
  </a>
357
393
  </div>
@@ -363,12 +399,12 @@ Tests if the logic value of this handle is unknown (x).
363
399
  </div>
364
400
  </div>
365
401
 
366
- <div id="method-M000037" class="method-detail">
367
- <a name="M000037"></a>
402
+ <div id="method-M000040" class="method-detail">
403
+ <a name="M000040"></a>
368
404
 
369
405
  <div class="method-heading">
370
- <a href="Handle.src/M000037.html" target="Code" class="method-signature"
371
- onclick="popupCode('Handle.src/M000037.html');return false;">
406
+ <a href="Handle.src/M000040.html" target="Code" class="method-signature"
407
+ onclick="popupCode('Handle.src/M000040.html');return false;">
372
408
  <span class="method-name">z!</span><span class="method-args">()</span>
373
409
  </a>
374
410
  </div>
@@ -380,12 +416,12 @@ Sets the logic value of this handle to high impedance (z).
380
416
  </div>
381
417
  </div>
382
418
 
383
- <div id="method-M000036" class="method-detail">
384
- <a name="M000036"></a>
419
+ <div id="method-M000039" class="method-detail">
420
+ <a name="M000039"></a>
385
421
 
386
422
  <div class="method-heading">
387
- <a href="Handle.src/M000036.html" target="Code" class="method-signature"
388
- onclick="popupCode('Handle.src/M000036.html');return false;">
423
+ <a href="Handle.src/M000039.html" target="Code" class="method-signature"
424
+ onclick="popupCode('Handle.src/M000039.html');return false;">
389
425
  <span class="method-name">z?</span><span class="method-args">()</span>
390
426
  </a>
391
427
  </div>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>z! (Vpi::Handle)</title>
8
+ <title>x? (Vpi::Handle)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
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/ruby-vpi/vpi.rb, line 80</span>
14
- 80: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">z!</span>
15
- 81: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">hexStrVal</span> = <span class="ruby-value str">'z'</span>
16
- 82: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/ruby-vpi/vpi.rb, line 65</span>
14
+ 65: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">x?</span>
15
+ 66: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">hexStrVal</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/x/i</span>
16
+ 67: <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>