ruby-vpi 19.0.0 → 20.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +12 -13
- data/README +1 -1
- data/Rakefile +104 -118
- data/TODO +77 -0
- data/bin/convert.rb +1 -1
- data/bin/generate/design.rb +3 -2
- data/bin/generate/loader.rb +1 -0
- data/bin/generate/proto.rb +16 -14
- data/bin/generate/runner.rake +8 -3
- data/bin/generate/spec.rb +11 -13
- data/bin/generate.rb +23 -18
- data/bin/ruby-vpi +36 -27
- data/doc/api/c/annotated.html +36 -0
- data/{ref → doc/api}/c/common_8h.html +9 -13
- data/{ref → doc/api}/c/doxygen.css +0 -0
- data/{ref → doc/api}/c/doxygen.png +0 -0
- data/{ref → doc/api}/c/files.html +10 -8
- data/doc/api/c/functions.html +184 -0
- data/doc/api/c/functions_vars.html +184 -0
- data/{ref → doc/api}/c/globals.html +12 -11
- data/{ref → doc/api}/c/globals_0x63.html +12 -11
- data/{ref → doc/api}/c/globals_0x65.html +12 -11
- data/{ref → doc/api}/c/globals_0x66.html +12 -11
- data/{ref → doc/api}/c/globals_0x6d.html +14 -13
- data/{ref → doc/api}/c/globals_0x70.html +21 -20
- data/{ref → doc/api}/c/globals_0x72.html +14 -13
- data/{ref → doc/api}/c/globals_0x74.html +12 -11
- data/{ref → doc/api}/c/globals_0x76.html +17 -16
- data/{ref → doc/api}/c/globals_0x78.html +12 -11
- data/{ref → doc/api}/c/globals_defs.html +12 -10
- data/{ref → doc/api}/c/globals_defs_0x65.html +12 -10
- data/{ref → doc/api}/c/globals_defs_0x70.html +12 -10
- data/{ref → doc/api}/c/globals_defs_0x76.html +14 -12
- data/{ref → doc/api}/c/globals_defs_0x78.html +12 -10
- data/{ref → doc/api}/c/globals_enum.html +11 -9
- data/{ref → doc/api}/c/globals_eval.html +11 -9
- data/{ref → doc/api}/c/globals_func.html +17 -15
- data/doc/api/c/globals_type.html +72 -0
- data/{ref → doc/api}/c/globals_vars.html +13 -11
- data/{ref → doc/api}/c/index.html +7 -6
- data/{ref → doc/api}/c/main_8c.html +7 -11
- data/{ref → doc/api}/c/main_8h.html +7 -11
- data/{ref → doc/api}/c/relay_8c.html +7 -11
- data/{ref → doc/api}/c/relay_8h.html +7 -11
- data/{ref/c/structt__cb__data.html → doc/api/c/structs__cb__data.html} +32 -30
- data/{ref/c/structt__vpi__delay.html → doc/api/c/structs__vpi__delay.html} +29 -27
- data/{ref/c/structt__vpi__error__info.html → doc/api/c/structs__vpi__error__info.html} +32 -30
- data/{ref/c/structt__vpi__strengthval.html → doc/api/c/structs__vpi__strengthval.html} +20 -18
- data/{ref/c/structt__vpi__systf__data.html → doc/api/c/structs__vpi__systf__data.html} +32 -30
- data/{ref/c/structt__vpi__time.html → doc/api/c/structs__vpi__time.html} +23 -21
- data/doc/api/c/structs__vpi__value.html +207 -0
- data/{ref/c/structt__vpi__vecval.html → doc/api/c/structs__vpi__vecval.html} +17 -15
- data/{ref/c/structt__vpi__vlog__info.html → doc/api/c/structs__vpi__vlog__info.html} +23 -21
- data/{ref → doc/api}/c/tab_b.gif +0 -0
- data/{ref → doc/api}/c/tab_l.gif +0 -0
- data/{ref → doc/api}/c/tab_r.gif +0 -0
- data/{ref → doc/api}/c/tabs.css +2 -2
- data/{ref → doc/api}/c/verilog_8h.html +11 -15
- data/{ref → doc/api}/c/vlog_8c.html +14 -18
- data/{ref → doc/api}/c/vlog_8h.html +9 -13
- data/{ref → doc/api}/c/vpi__user_8h.html +120 -239
- data/{ref → doc/api}/ruby/classes/ERB.html +7 -7
- data/doc/api/ruby/classes/ERB.src/M000025.html +29 -0
- data/{ref → doc/api}/ruby/classes/FileUtils.html +6 -23
- data/doc/api/ruby/classes/FileUtils.src/M000026.html +20 -0
- data/{ref → doc/api}/ruby/classes/Float.html +8 -8
- data/doc/api/ruby/classes/Float.src/M000020.html +19 -0
- data/{ref → doc/api}/ruby/classes/Integer.html +67 -67
- data/doc/api/ruby/classes/Integer.src/M000008.html +25 -0
- data/doc/api/ruby/classes/Integer.src/M000009.html +18 -0
- data/doc/api/ruby/classes/Integer.src/M000010.html +18 -0
- data/doc/api/ruby/classes/Integer.src/M000011.html +18 -0
- data/doc/api/ruby/classes/Integer.src/M000012.html +18 -0
- data/doc/api/ruby/classes/Integer.src/M000013.html +18 -0
- data/doc/api/ruby/classes/Integer.src/M000016.html +25 -0
- data/doc/api/ruby/classes/Integer.src/M000017.html +31 -0
- data/doc/api/ruby/classes/Integer.src/M000018.html +25 -0
- data/doc/api/ruby/classes/Integer.src/M000019.html +30 -0
- data/{ref → doc/api}/ruby/classes/Object.html +3 -3
- data/{ref → doc/api}/ruby/classes/RDoc.html +7 -7
- data/doc/api/ruby/classes/RDoc.src/M000541.html +40 -0
- data/doc/api/ruby/classes/RubyVPI/SIMULATORS.html +130 -0
- data/doc/api/ruby/classes/RubyVPI/SIMULATORS.src/M000028.html +19 -0
- data/{ref → doc/api}/ruby/classes/RubyVPI.html +96 -55
- data/doc/api/ruby/classes/RubyVPI.src/M000027.html +34 -0
- data/{ref → doc/api}/ruby/classes/String.html +16 -16
- data/doc/api/ruby/classes/String.src/M000021.html +36 -0
- data/doc/api/ruby/classes/String.src/M000022.html +18 -0
- data/doc/api/ruby/classes/String.src/M000023.html +18 -0
- data/doc/api/ruby/classes/String.src/M000024.html +41 -0
- data/doc/api/ruby/classes/VPI/Handle.html +2098 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000434.html +31 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000435.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000436.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000439.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000440.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000443.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000444.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000447.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000448.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000451.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000452.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000455.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000456.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000459.html +24 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000461.html +21 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000462.html +28 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000463.html +50 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000464.html +19 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000465.html +19 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000466.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000467.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000468.html +30 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000469.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000470.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000471.html +40 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000472.html +18 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000473.html +21 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000474.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000475.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000476.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000477.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000478.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000479.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000480.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000481.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000482.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000483.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000484.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000485.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000486.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000487.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000488.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000489.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000490.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000491.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000492.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000493.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000494.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000495.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000496.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000497.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000498.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000499.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000500.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000501.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000502.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000503.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000504.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000505.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000506.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000507.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000508.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000509.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000510.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000511.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000512.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000513.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000514.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000515.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000516.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000517.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000518.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000519.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000520.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000521.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000522.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000523.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000524.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000525.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000526.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000527.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000528.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000529.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000530.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000531.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000532.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000533.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000534.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000535.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000536.html +16 -0
- data/doc/api/ruby/classes/VPI/Handle.src/M000537.html +16 -0
- data/{ref → doc/api}/ruby/classes/VPI/S_vpi_time.html +18 -18
- data/doc/api/ruby/classes/VPI/S_vpi_time.src/M000538.html +18 -0
- data/doc/api/ruby/classes/VPI/S_vpi_time.src/M000539.html +19 -0
- data/{ref → doc/api}/ruby/classes/VPI/S_vpi_value.html +17 -17
- data/doc/api/ruby/classes/VPI/S_vpi_value.src/M000431.html +35 -0
- data/doc/api/ruby/classes/VPI/S_vpi_value.src/M000432.html +42 -0
- data/doc/api/ruby/classes/VPI/S_vpi_value.src/M000433.html +42 -0
- data/doc/api/ruby/classes/VPI.html +11152 -0
- data/doc/api/ruby/classes/VPI.src/M000029.html +19 -0
- data/doc/api/ruby/classes/VPI.src/M000030.html +18 -0
- data/doc/api/ruby/classes/VPI.src/M000031.html +19 -0
- data/doc/api/ruby/classes/VPI.src/M000033.html +25 -0
- data/doc/api/ruby/classes/VPI.src/M000034.html +26 -0
- data/doc/api/ruby/classes/VPI.src/M000036.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000037.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000038.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000039.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000040.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000041.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000042.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000043.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000044.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000045.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000046.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000047.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000048.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000049.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000050.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000051.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000052.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000053.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000054.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000055.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000056.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000057.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000058.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000059.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000060.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000061.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000062.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000063.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000064.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000065.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000066.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000067.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000068.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000069.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000070.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000071.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000072.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000073.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000074.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000075.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000076.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000077.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000078.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000079.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000080.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000081.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000082.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000083.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000084.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000085.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000086.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000087.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000088.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000089.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000090.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000091.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000092.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000093.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000094.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000095.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000096.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000097.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000098.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000099.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000100.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000101.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000102.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000103.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000104.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000105.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000106.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000107.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000108.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000109.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000110.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000111.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000112.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000113.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000114.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000115.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000116.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000117.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000118.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000119.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000120.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000121.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000122.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000123.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000124.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000125.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000126.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000127.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000128.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000129.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000130.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000131.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000132.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000133.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000134.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000135.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000136.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000137.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000138.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000139.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000140.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000141.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000142.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000143.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000144.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000145.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000146.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000147.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000148.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000149.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000150.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000151.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000152.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000153.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000154.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000155.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000156.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000157.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000158.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000159.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000160.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000161.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000162.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000163.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000164.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000165.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000166.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000167.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000168.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000169.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000170.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000171.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000172.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000173.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000174.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000175.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000176.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000177.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000178.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000179.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000180.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000181.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000182.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000183.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000184.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000185.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000186.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000187.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000188.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000189.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000190.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000191.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000192.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000193.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000194.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000195.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000196.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000197.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000198.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000199.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000200.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000201.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000202.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000203.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000204.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000205.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000206.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000207.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000208.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000209.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000210.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000211.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000212.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000213.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000214.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000215.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000216.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000217.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000218.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000219.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000220.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000221.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000222.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000223.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000224.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000225.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000226.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000227.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000228.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000229.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000230.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000231.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000232.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000233.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000234.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000235.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000236.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000237.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000238.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000239.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000240.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000241.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000242.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000243.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000244.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000245.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000246.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000247.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000248.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000249.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000250.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000251.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000252.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000253.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000254.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000255.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000256.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000257.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000258.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000259.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000260.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000261.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000262.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000263.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000264.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000265.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000266.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000267.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000268.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000269.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000270.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000271.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000272.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000273.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000274.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000275.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000276.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000277.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000278.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000279.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000280.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000281.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000282.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000283.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000284.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000285.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000286.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000287.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000288.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000289.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000290.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000291.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000292.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000293.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000294.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000295.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000296.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000297.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000298.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000299.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000300.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000301.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000302.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000303.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000304.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000305.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000306.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000307.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000308.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000309.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000310.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000311.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000312.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000313.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000314.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000315.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000316.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000317.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000318.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000319.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000320.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000321.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000322.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000323.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000324.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000325.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000326.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000327.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000328.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000329.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000330.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000331.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000332.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000333.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000334.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000335.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000336.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000337.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000338.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000339.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000340.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000341.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000342.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000343.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000344.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000345.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000346.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000347.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000348.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000349.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000350.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000351.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000352.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000353.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000354.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000355.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000356.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000357.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000358.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000359.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000360.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000361.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000362.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000363.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000364.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000365.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000366.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000367.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000368.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000369.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000370.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000371.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000372.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000373.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000374.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000375.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000376.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000377.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000378.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000379.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000380.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000381.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000382.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000383.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000384.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000385.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000386.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000387.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000388.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000389.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000390.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000391.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000392.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000393.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000394.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000395.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000396.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000397.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000398.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000399.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000400.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000401.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000402.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000403.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000404.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000405.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000406.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000407.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000408.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000409.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000410.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000411.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000412.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000413.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000414.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000415.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000416.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000417.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000418.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000419.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000420.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000421.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000422.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000423.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000424.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000425.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000426.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000427.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000428.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000429.html +16 -0
- data/doc/api/ruby/classes/VPI.src/M000430.html +16 -0
- data/{ref → doc/api}/ruby/classes/VerilogParser/Module/Port.html +17 -17
- data/doc/api/ruby/classes/VerilogParser/Module/Port.src/M000005.html +23 -0
- data/doc/api/ruby/classes/VerilogParser/Module/Port.src/M000006.html +18 -0
- data/doc/api/ruby/classes/VerilogParser/Module/Port.src/M000007.html +18 -0
- data/{ref → doc/api}/ruby/classes/VerilogParser/Module.html +7 -7
- data/doc/api/ruby/classes/VerilogParser/Module.src/M000004.html +29 -0
- data/{ref → doc/api}/ruby/classes/VerilogParser.html +7 -7
- data/doc/api/ruby/classes/VerilogParser.src/M000003.html +26 -0
- data/doc/api/ruby/created.rid +1 -0
- data/{ref → doc/api}/ruby/files/bin/convert_rb.html +4 -4
- data/{ref → doc/api}/ruby/files/bin/generate_rb.html +10 -6
- data/doc/api/ruby/files/bin/ruby-vpi.html +169 -0
- data/doc/api/ruby/files/bin/ruby-vpi.src/M000001.html +35 -0
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core/callback_rb.html +3 -3
- data/doc/api/ruby/files/lib/ruby-vpi/core/edge-methods_rb.html +107 -0
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core/edge_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core/handle_rb.html +10 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core/scheduler_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core/struct_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/core_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/erb_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/float_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/integer_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/rake_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/rcov_rb.html +3 -4
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/rdoc_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.html +9 -10
- data/doc/api/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000002.html +17 -0
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/runner_proxy_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/runner_rb.html +3 -3
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/util_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi/verilog_parser_rb.html +2 -2
- data/{ref → doc/api}/ruby/files/lib/ruby-vpi_rb.html +3 -3
- data/doc/api/ruby/files/ruby-vpi-dynamic_rb.html +110 -0
- data/{ref → doc/api}/ruby/fr_class_index.html +3 -2
- data/{ref → doc/api}/ruby/fr_file_index.html +5 -2
- data/doc/api/ruby/fr_method_index.html +567 -0
- data/{ref → doc/api}/ruby/index.html +5 -5
- data/{ref → doc/api}/ruby/rdoc-style.css +0 -0
- data/doc/{manual.doc → guide.erb} +379 -121
- data/doc/guide.html +3524 -0
- data/examples/counter/RSpec/counter_design.rb +7 -7
- data/examples/counter/RSpec/counter_loader.rb +1 -0
- data/examples/counter/RSpec/counter_proto.rb +8 -6
- data/examples/counter/RSpec/counter_runner.rake +9 -4
- data/examples/counter/RSpec/counter_spec.rb +13 -13
- data/examples/counter/xUnit/counter_design.rb +7 -6
- data/examples/counter/xUnit/counter_loader.rb +1 -0
- data/examples/counter/xUnit/counter_proto.rb +8 -6
- data/examples/counter/xUnit/counter_runner.rake +9 -4
- data/examples/counter/xUnit/counter_spec.rb +15 -15
- data/examples/pipelined_alu/hw5_unit_design.rb +11 -10
- data/examples/pipelined_alu/hw5_unit_loader.rb +1 -0
- data/examples/pipelined_alu/hw5_unit_proto.rb +4 -2
- data/examples/pipelined_alu/hw5_unit_runner.rake +9 -4
- data/examples/pipelined_alu/hw5_unit_spec.rb +18 -18
- data/examples/register_file/register_file_design.rb +2 -2
- data/examples/register_file/register_file_loader.rb +1 -0
- data/examples/register_file/register_file_proto.rb +15 -8
- data/examples/register_file/register_file_runner.rake +9 -4
- data/examples/register_file/register_file_spec.rb +15 -15
- data/ext/main.c +4 -4
- data/lib/ruby-vpi/core/edge-methods.rb +32 -0
- data/lib/ruby-vpi/core/edge.rb +8 -43
- data/lib/ruby-vpi/core/handle.rb +127 -91
- data/lib/ruby-vpi/core/scheduler.rb +14 -15
- data/lib/ruby-vpi/core.rb +1 -1
- data/lib/ruby-vpi/rake.rb +5 -7
- data/lib/ruby-vpi/rcov.rb +2 -7
- data/lib/ruby-vpi/runner.rb +16 -11
- data/lib/ruby-vpi/runner_boot_loader.rb +24 -60
- data/lib/ruby-vpi/runner_proxy.rb +2 -6
- data/lib/ruby-vpi.rb +56 -14
- metadata +809 -368
- data/doc/README +0 -9
- data/doc/Rakefile +0 -92
- data/doc/common.css +0 -108
- data/doc/common.inc +0 -14
- data/doc/common.tpl +0 -90
- data/doc/history.doc +0 -17
- data/doc/history.html +0 -2694
- data/doc/history.inc +0 -1077
- data/doc/history.rb +0 -22
- data/doc/history.yaml +0 -1409
- data/doc/images/feed-icon-28x28.png +0 -0
- data/doc/images/tango/LICENSE +0 -67
- data/doc/images/tango/caution.png +0 -0
- data/doc/images/tango/caution.svg +0 -290
- data/doc/images/tango/home.png +0 -0
- data/doc/images/tango/home.svg +0 -386
- data/doc/images/tango/important.png +0 -0
- data/doc/images/tango/important.svg +0 -163
- data/doc/images/tango/next.png +0 -0
- data/doc/images/tango/next.svg +0 -191
- data/doc/images/tango/note.png +0 -0
- data/doc/images/tango/note.svg +0 -483
- data/doc/images/tango/prev.png +0 -0
- data/doc/images/tango/prev.svg +0 -852
- data/doc/images/tango/tip.png +0 -0
- data/doc/images/tango/tip.svg +0 -1145
- data/doc/images/tango/up.png +0 -0
- data/doc/images/tango/up.svg +0 -195
- data/doc/images/tango/warning.png +0 -0
- data/doc/images/tango/warning.svg +0 -334
- data/doc/intro.inc +0 -215
- data/doc/lib/doc_format.rb +0 -137
- data/doc/lib/doc_proxy.rb +0 -562
- data/doc/lib/erb_content.rb +0 -55
- data/doc/lib/erb_proxy.rb +0 -42
- data/doc/manual.html +0 -3061
- data/doc/memo.doc +0 -66
- data/doc/memo.html +0 -210
- data/doc/print.css +0 -69
- data/doc/readme.doc +0 -10
- data/doc/readme.html +0 -515
- data/doc/rss.erb +0 -29
- data/doc/rss.xml +0 -186
- data/doc/screen.css +0 -146
- data/doc/spacing.css +0 -57
- data/index.html +0 -2
- data/ref/c/annotated.html +0 -34
- data/ref/c/functions.html +0 -182
- data/ref/c/functions_vars.html +0 -182
- data/ref/c/globals_0x73.html +0 -73
- data/ref/c/globals_type.html +0 -88
- data/ref/c/structt__vpi__value.html +0 -204
- data/ref/ruby/classes/ERB.src/M000024.html +0 -29
- data/ref/ruby/classes/FileUtils.src/M000025.html +0 -18
- data/ref/ruby/classes/FileUtils.src/M000026.html +0 -18
- data/ref/ruby/classes/Float.src/M000019.html +0 -19
- data/ref/ruby/classes/Integer.src/M000007.html +0 -25
- data/ref/ruby/classes/Integer.src/M000008.html +0 -18
- data/ref/ruby/classes/Integer.src/M000009.html +0 -18
- data/ref/ruby/classes/Integer.src/M000010.html +0 -18
- data/ref/ruby/classes/Integer.src/M000011.html +0 -18
- data/ref/ruby/classes/Integer.src/M000012.html +0 -18
- data/ref/ruby/classes/Integer.src/M000015.html +0 -25
- data/ref/ruby/classes/Integer.src/M000016.html +0 -31
- data/ref/ruby/classes/Integer.src/M000017.html +0 -25
- data/ref/ruby/classes/Integer.src/M000018.html +0 -30
- data/ref/ruby/classes/RDoc.src/M000081.html +0 -40
- data/ref/ruby/classes/String.src/M000020.html +0 -36
- data/ref/ruby/classes/String.src/M000021.html +0 -41
- data/ref/ruby/classes/String.src/M000022.html +0 -18
- data/ref/ruby/classes/String.src/M000023.html +0 -18
- data/ref/ruby/classes/VPI/Handle.html +0 -898
- data/ref/ruby/classes/VPI/Handle.src/M000037.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000038.html +0 -21
- data/ref/ruby/classes/VPI/Handle.src/M000039.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000040.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000045.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000046.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000057.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000058.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000061.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000062.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000065.html +0 -24
- data/ref/ruby/classes/VPI/Handle.src/M000067.html +0 -21
- data/ref/ruby/classes/VPI/Handle.src/M000068.html +0 -28
- data/ref/ruby/classes/VPI/Handle.src/M000069.html +0 -50
- data/ref/ruby/classes/VPI/Handle.src/M000070.html +0 -19
- data/ref/ruby/classes/VPI/Handle.src/M000071.html +0 -19
- data/ref/ruby/classes/VPI/Handle.src/M000072.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000073.html +0 -30
- data/ref/ruby/classes/VPI/Handle.src/M000075.html +0 -18
- data/ref/ruby/classes/VPI/Handle.src/M000076.html +0 -40
- data/ref/ruby/classes/VPI/Handle.src/M000077.html +0 -31
- data/ref/ruby/classes/VPI/S_vpi_time.src/M000078.html +0 -18
- data/ref/ruby/classes/VPI/S_vpi_time.src/M000079.html +0 -19
- data/ref/ruby/classes/VPI/S_vpi_value.src/M000034.html +0 -35
- data/ref/ruby/classes/VPI/S_vpi_value.src/M000035.html +0 -42
- data/ref/ruby/classes/VPI/S_vpi_value.src/M000036.html +0 -42
- data/ref/ruby/classes/VPI.html +0 -356
- data/ref/ruby/classes/VPI.src/M000027.html +0 -19
- data/ref/ruby/classes/VPI.src/M000028.html +0 -18
- data/ref/ruby/classes/VPI.src/M000029.html +0 -19
- data/ref/ruby/classes/VPI.src/M000031.html +0 -25
- data/ref/ruby/classes/VPI.src/M000032.html +0 -26
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000004.html +0 -23
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000005.html +0 -18
- data/ref/ruby/classes/VerilogParser/Module/Port.src/M000006.html +0 -18
- data/ref/ruby/classes/VerilogParser/Module.src/M000003.html +0 -29
- data/ref/ruby/classes/VerilogParser.src/M000002.html +0 -26
- data/ref/ruby/created.rid +0 -1
- data/ref/ruby/files/lib/ruby-vpi/runner_boot_loader_rb.src/M000001.html +0 -17
- data/ref/ruby/fr_method_index.html +0 -107
data/doc/lib/doc_proxy.rb
DELETED
@@ -1,562 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright 2006 Suraj N. Kurapati
|
3
|
-
# See the file named LICENSE for details.
|
4
|
-
|
5
|
-
$: << File.basename(__FILE__)
|
6
|
-
require 'erb_proxy'
|
7
|
-
require 'doc_format'
|
8
|
-
|
9
|
-
require 'digest/md5'
|
10
|
-
require 'ostruct'
|
11
|
-
require 'pp'
|
12
|
-
|
13
|
-
class String
|
14
|
-
def digest
|
15
|
-
Digest::MD5.hexdigest self
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
# Processes ERB templates to produce documentation.
|
20
|
-
# Templates may contain "<xref...>" tags where the ...
|
21
|
-
# represents the target anchor of the cross-reference.
|
22
|
-
class DocProxy < ErbProxy
|
23
|
-
Box = Struct.new(:type, :anchor, :index, :title, :id)
|
24
|
-
BibItem = Struct.new(:anchor, :name)
|
25
|
-
FootNote = Struct.new(:anchor, :name)
|
26
|
-
|
27
|
-
GROUP2TYPES = {
|
28
|
-
:admonition => [:tip, :note, :important, :caution, :warning],
|
29
|
-
|
30
|
-
# see http://www.sagehill.net/docbookxsl/FormalTitles.html
|
31
|
-
:formal => [:figure, :table, :example, :equation, :procedure],
|
32
|
-
|
33
|
-
:latex => [:part, :chapter, :section, :paragraph],
|
34
|
-
}
|
35
|
-
|
36
|
-
attr_reader :nodeTree, :references
|
37
|
-
|
38
|
-
def initialize
|
39
|
-
super
|
40
|
-
|
41
|
-
@boxCipher = Cipher.new
|
42
|
-
@references = []
|
43
|
-
@boxes = Hash.new {|h,k| h[k] = []}
|
44
|
-
@lazyHandlers = {}
|
45
|
-
|
46
|
-
|
47
|
-
# node hierarcy
|
48
|
-
|
49
|
-
@nodeTree = NodeTree.new
|
50
|
-
|
51
|
-
GROUP2TYPES.each_pair do |group, types|
|
52
|
-
next if group == :latex
|
53
|
-
|
54
|
-
types.each do |type|
|
55
|
-
add_node_handler group, type do |node, content, *args|
|
56
|
-
%{
|
57
|
-
<hr style="display: none"/>
|
58
|
-
|
59
|
-
<div class="#{group}">
|
60
|
-
<div class="#{type}" id="#{node.anchor}">
|
61
|
-
#{
|
62
|
-
if group == :admonition
|
63
|
-
%{<img src="images/tango/#{type}.png" alt="#{type}" class="icon"/>}
|
64
|
-
end
|
65
|
-
}
|
66
|
-
|
67
|
-
<p class="title"><a href="##{node.tocAnchor}" class="ref">#{type.to_s.capitalize} #{node.number}</a>. #{node.title.to_html}</p>
|
68
|
-
|
69
|
-
#{content.to_html}
|
70
|
-
</div>
|
71
|
-
</div>
|
72
|
-
}
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
add_node_handler :latex, :front_cover do |node, content, *args|
|
78
|
-
%{
|
79
|
-
<hr style="display: none"/>
|
80
|
-
|
81
|
-
<div id="#{node.anchor}" class="front_cover">
|
82
|
-
<h1 class="title"><big>#{node.title.to_html}</big></h1>
|
83
|
-
|
84
|
-
#{content.to_html}
|
85
|
-
|
86
|
-
</div>
|
87
|
-
}
|
88
|
-
end
|
89
|
-
|
90
|
-
add_node_handler :latex, :part do |node, content, *args|
|
91
|
-
%{
|
92
|
-
<hr style="display: none"/>
|
93
|
-
|
94
|
-
<div id="#{node.anchor}" class="part">
|
95
|
-
<h1 class="title">
|
96
|
-
Part <a href="##{node.tocAnchor}" class="ref">#{node.number}</a>
|
97
|
-
|
98
|
-
<br/><br/>
|
99
|
-
|
100
|
-
<big>#{node.title.to_html}</big>
|
101
|
-
</h1>
|
102
|
-
|
103
|
-
#{content.to_html}
|
104
|
-
|
105
|
-
</div>
|
106
|
-
}
|
107
|
-
end
|
108
|
-
|
109
|
-
add_node_handler :latex, :chapter do |node, content, *args|
|
110
|
-
%{
|
111
|
-
<hr style="display: none"/>
|
112
|
-
|
113
|
-
<div id="#{node.anchor}" class="chapter">
|
114
|
-
<h1 class="title">
|
115
|
-
Chapter <a href="##{node.tocAnchor}" class="ref">#{node.latexNumber}</a>
|
116
|
-
|
117
|
-
<br/><br/>
|
118
|
-
|
119
|
-
<big>#{node.title}</big>
|
120
|
-
</h1>
|
121
|
-
|
122
|
-
#{content.to_html}
|
123
|
-
</div>
|
124
|
-
}
|
125
|
-
end
|
126
|
-
|
127
|
-
add_node_handler :latex, :section do |node, content, *args|
|
128
|
-
level = [node.depth, 6].min
|
129
|
-
|
130
|
-
%{
|
131
|
-
<hr style="display: none"/>
|
132
|
-
|
133
|
-
<div id="#{node.anchor}" class="section">
|
134
|
-
<h#{level} class="title">
|
135
|
-
<a href="##{node.tocAnchor}" class="ref">#{node.latexNumber}</a>
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
#{node.title.to_html}
|
140
|
-
</h#{level}>
|
141
|
-
|
142
|
-
#{content.to_html}
|
143
|
-
|
144
|
-
</div>
|
145
|
-
}
|
146
|
-
end
|
147
|
-
|
148
|
-
add_node_handler :latex, :paragraph do |node, content, *args|
|
149
|
-
%{
|
150
|
-
<div id="#{node.anchor}" class="paragraph">
|
151
|
-
<p class="title">#{node.title.to_html}</p>
|
152
|
-
#{content.to_html}
|
153
|
-
</div>
|
154
|
-
}
|
155
|
-
end
|
156
|
-
|
157
|
-
|
158
|
-
@bibCipher = Cipher.new
|
159
|
-
|
160
|
-
# bibliography items
|
161
|
-
add_node_handler :index, :reference do |node, content, *args|
|
162
|
-
%{
|
163
|
-
<div id="#{node.anchor}" class="reference">
|
164
|
-
<table>
|
165
|
-
<tr>
|
166
|
-
<th>[#{node.number}]</th>
|
167
|
-
<td>#{content.to_html}</td>
|
168
|
-
</tr>
|
169
|
-
</table>
|
170
|
-
</div>
|
171
|
-
}
|
172
|
-
end
|
173
|
-
|
174
|
-
# bibliography items
|
175
|
-
add_handler :footnote do |caller, buffer, content, name|
|
176
|
-
anchor = "ref:#{name}".to_html_anchor
|
177
|
-
index = @footnotes.length
|
178
|
-
@footnotes << FootNote.new(anchor, name)
|
179
|
-
|
180
|
-
buffer << @bibCipher.encrypt(
|
181
|
-
[
|
182
|
-
%{<div id="#{anchor}">},
|
183
|
-
%{|_. [#{index}]|#{content}|}.to_html,
|
184
|
-
'</div>',
|
185
|
-
].join
|
186
|
-
)
|
187
|
-
end
|
188
|
-
|
189
|
-
# bibliography citations
|
190
|
-
add_lazy_handler :cite do |target, *args|
|
191
|
-
node = @nodeTree.type2nodes[:reference].find {|n| n.id == target}
|
192
|
-
|
193
|
-
if node
|
194
|
-
words = [
|
195
|
-
%{<a href="##{node.anchor}" class="ref">Reference #{node.number}</a>},
|
196
|
-
|
197
|
-
# extra information about the citation (page #, etc.)
|
198
|
-
*args.map {|s| s.to_html}
|
199
|
-
]
|
200
|
-
|
201
|
-
"(see #{ words.join(', ') })"
|
202
|
-
else
|
203
|
-
warn "invalid cite to #{target.inspect}"
|
204
|
-
''
|
205
|
-
end
|
206
|
-
end
|
207
|
-
|
208
|
-
# cross references
|
209
|
-
add_lazy_handler :xref do |aTarget, aTitle|
|
210
|
-
nodes = @nodeTree.nodes
|
211
|
-
target = nodes.find {|n| n.id == aTarget} || # id has first priority
|
212
|
-
nodes.find {|n| n.anchor == aTarget}
|
213
|
-
|
214
|
-
if target
|
215
|
-
title = aTitle || "#{target.type.to_s.capitalize} #{target.latexNumber || target.number}"
|
216
|
-
%{<a href="##{target.anchor}" class="ref">#{title.to_html}</a>}
|
217
|
-
else
|
218
|
-
warn "invalid xref to #{aTarget.inspect}"
|
219
|
-
''
|
220
|
-
end
|
221
|
-
end
|
222
|
-
end
|
223
|
-
|
224
|
-
def add_lazy_handler aHandlerName, &aHandler
|
225
|
-
(class << self; self; end).instance_eval do
|
226
|
-
define_method aHandlerName do |*args|
|
227
|
-
token = "#{aHandlerName}#{args.object_id}".digest
|
228
|
-
@lazyHandlers[token] = [aHandler, args]
|
229
|
-
token
|
230
|
-
end
|
231
|
-
end
|
232
|
-
end
|
233
|
-
|
234
|
-
# aNodeType:: name of the command that will trigger the handler
|
235
|
-
# aNodeHandler:: handler that will be triggered by the given command
|
236
|
-
def add_node_handler aNodeGroup, aNodeType, &aNodeHandler #:yields: node, content, *args
|
237
|
-
raise ArgumentError unless block_given?
|
238
|
-
|
239
|
-
if @nodeTree.handlers.key? aNodeType
|
240
|
-
raise "node handler #{aNodeType.inspect} already exists"
|
241
|
-
end
|
242
|
-
@nodeTree.handlers[aNodeType] = aNodeHandler
|
243
|
-
|
244
|
-
|
245
|
-
add_handler aNodeType do |caller, buffer, content, nodeInfo, *args|
|
246
|
-
if @nodeTree.caller2node.key? caller
|
247
|
-
node = @nodeTree.caller2node[caller]
|
248
|
-
|
249
|
-
# collect tree traversal information
|
250
|
-
node.timesSeen += 1
|
251
|
-
|
252
|
-
else # first time we are handling this node
|
253
|
-
|
254
|
-
# parse the arguments given to this handler
|
255
|
-
if nodeInfo.respond_to? :to_hash
|
256
|
-
nodeInfo = nodeInfo.to_hash
|
257
|
-
raise ArgumentError unless nodeInfo.key? :title
|
258
|
-
else
|
259
|
-
nodeInfo = {:title => nodeInfo.to_s, :id => args.shift}
|
260
|
-
end
|
261
|
-
|
262
|
-
# register this node as having been seen
|
263
|
-
node = Node.new nodeInfo.merge(
|
264
|
-
# node info
|
265
|
-
:caller => caller,
|
266
|
-
:type => aNodeType,
|
267
|
-
:group => aNodeGroup,
|
268
|
-
:args => args,
|
269
|
-
|
270
|
-
# content info
|
271
|
-
:content => content,
|
272
|
-
:digest => content.digest,
|
273
|
-
:leadingSpace => (buffer =~ /([ \t]*)\Z/ && $1),
|
274
|
-
|
275
|
-
# traversal info
|
276
|
-
:orderSeen => @nodeTree.caller2node.keys.length,
|
277
|
-
:timesSeen => 1
|
278
|
-
)
|
279
|
-
@nodeTree.caller2node[caller] = node
|
280
|
-
end
|
281
|
-
|
282
|
-
buffer << node.digest
|
283
|
-
end
|
284
|
-
end
|
285
|
-
|
286
|
-
# Post-processes the given ERB template result by parsing the document
|
287
|
-
# structure and expanding cross-references, and returns the result.
|
288
|
-
def post_process aResult
|
289
|
-
text = aResult
|
290
|
-
|
291
|
-
|
292
|
-
# build the node tree
|
293
|
-
@nodeTree.build!
|
294
|
-
toc = @nodeTree.table_of_contents
|
295
|
-
|
296
|
-
|
297
|
-
# convert to HTML
|
298
|
-
File.open('text', 'w') {|f| f << text} if $DEBUG
|
299
|
-
html = text.to_html
|
300
|
-
File.open('html', 'w') {|f| f << html} if $DEBUG
|
301
|
-
|
302
|
-
|
303
|
-
@nodeTree.process_input! html, @innerSpace
|
304
|
-
|
305
|
-
# expand cross-references into links to their targets
|
306
|
-
@lazyHandlers.each_pair do |token, (handler, args)|
|
307
|
-
html.gsub! token, handler.call(*args)
|
308
|
-
end
|
309
|
-
|
310
|
-
# expand all citations
|
311
|
-
# html = @bibCipher.decrypt_all(html)
|
312
|
-
|
313
|
-
|
314
|
-
[toc, html]
|
315
|
-
end
|
316
|
-
|
317
|
-
|
318
|
-
##-----------------------------------------------------------------------
|
319
|
-
# user API
|
320
|
-
|
321
|
-
# Unindents the inner space by the given amount.
|
322
|
-
def unindent aInnerSpace
|
323
|
-
@innerSpace = aInnerSpace
|
324
|
-
end
|
325
|
-
|
326
|
-
#-----------------------------------------------------------------------
|
327
|
-
|
328
|
-
private
|
329
|
-
|
330
|
-
def expand_includes aFilePath
|
331
|
-
input = File.read(aFilePath)
|
332
|
-
|
333
|
-
input.gsub! %r{<doc_proxy_include *(.*?)>} do
|
334
|
-
expand_includes($1)
|
335
|
-
end
|
336
|
-
|
337
|
-
input
|
338
|
-
end
|
339
|
-
|
340
|
-
#-----------------------------------------------------------------------
|
341
|
-
|
342
|
-
class Node < OpenStruct
|
343
|
-
undef id
|
344
|
-
undef type
|
345
|
-
end
|
346
|
-
|
347
|
-
class Cipher < Hash
|
348
|
-
def encrypt aString
|
349
|
-
digest = aString.digest
|
350
|
-
self[digest] = aString
|
351
|
-
digest
|
352
|
-
end
|
353
|
-
|
354
|
-
def decrypt digest
|
355
|
-
self[digest]
|
356
|
-
end
|
357
|
-
|
358
|
-
# Iteratively decrypts all digest substrings within the given string.
|
359
|
-
def decrypt_all aString
|
360
|
-
temp = self.dup
|
361
|
-
str = aString.dup
|
362
|
-
|
363
|
-
until temp.empty?
|
364
|
-
cipher = temp.find do |(digest, original)|
|
365
|
-
str.gsub! digest, original
|
366
|
-
end
|
367
|
-
|
368
|
-
raise unless cipher
|
369
|
-
temp.delete cipher[0]
|
370
|
-
end
|
371
|
-
|
372
|
-
str
|
373
|
-
end
|
374
|
-
end
|
375
|
-
|
376
|
-
class NodeTree < Hash
|
377
|
-
attr_reader :caller2node, :group2nodes, :type2nodes, :cipher, :handlers
|
378
|
-
|
379
|
-
def initialize
|
380
|
-
@cipher = Cipher.new
|
381
|
-
@handlers = {}
|
382
|
-
@caller2node = {}
|
383
|
-
@type2nodes = Hash.new {|h,k| h[k] = []}
|
384
|
-
@group2nodes = Hash.new {|h,k| h[k] = []}
|
385
|
-
end
|
386
|
-
|
387
|
-
def nodes
|
388
|
-
@caller2node.values
|
389
|
-
end
|
390
|
-
|
391
|
-
# Evaluates the given string which contains node digests.
|
392
|
-
def process_input! aString, aInnerSpace = nil
|
393
|
-
list = nodes
|
394
|
-
|
395
|
-
# let handlers modify node content
|
396
|
-
list.each do |node|
|
397
|
-
src = node.content
|
398
|
-
dst = @handlers[node.type].call(node, src, *node.args)
|
399
|
-
|
400
|
-
if aInnerSpace
|
401
|
-
space = node.leadingSpace + aInnerSpace
|
402
|
-
|
403
|
-
# add leading space if not present. this will ensure that
|
404
|
-
# lines without any leading space are correctly unindented
|
405
|
-
dst.gsub! %r/^[ \t]*/ do
|
406
|
-
if $&.index(space) == 0
|
407
|
-
$&
|
408
|
-
else
|
409
|
-
space + $&
|
410
|
-
end
|
411
|
-
end
|
412
|
-
|
413
|
-
# remove leading space
|
414
|
-
dst.gsub! %r/^#{space}/, ''
|
415
|
-
end
|
416
|
-
|
417
|
-
# XXX: escape single backslashes because they
|
418
|
-
# are removed later on for some reason...
|
419
|
-
dst.gsub! %r/\\/, '\&\&'
|
420
|
-
|
421
|
-
node.content = dst
|
422
|
-
end
|
423
|
-
|
424
|
-
# replace all node digests with node content
|
425
|
-
until list.empty?
|
426
|
-
target = list.find do |node|
|
427
|
-
aString.gsub! node.digest, node.content
|
428
|
-
end
|
429
|
-
|
430
|
-
raise unless target
|
431
|
-
list.delete target
|
432
|
-
end
|
433
|
-
end
|
434
|
-
|
435
|
-
# Builds this tree from traversal information.
|
436
|
-
def build!
|
437
|
-
# build the tree
|
438
|
-
self.clear
|
439
|
-
children = []
|
440
|
-
lastDepth = 0
|
441
|
-
|
442
|
-
nodes.sort_by {|n| n.orderSeen}.each do |node|
|
443
|
-
currDepth = node.timesSeen
|
444
|
-
|
445
|
-
# register this node into adjacency list
|
446
|
-
self[node] = [] unless self.key? node
|
447
|
-
|
448
|
-
if lastDepth > currDepth
|
449
|
-
subnodes = children.select {|n| n.timesSeen > currDepth}
|
450
|
-
self[node].concat subnodes
|
451
|
-
children = children - subnodes
|
452
|
-
end
|
453
|
-
|
454
|
-
children << node
|
455
|
-
lastDepth = currDepth
|
456
|
-
end
|
457
|
-
|
458
|
-
if $DEBUG
|
459
|
-
nodes.each do |node|
|
460
|
-
def node.inspect
|
461
|
-
title.inspect
|
462
|
-
end
|
463
|
-
end
|
464
|
-
pp self
|
465
|
-
end
|
466
|
-
|
467
|
-
|
468
|
-
# set depths of all nodes starting from root-level nodes
|
469
|
-
rootNodes = self.keys - self.values.flatten.uniq
|
470
|
-
rootNodes.sort_by {|n| n.orderSeen}.each do |node|
|
471
|
-
set_depth node, 1
|
472
|
-
end
|
473
|
-
|
474
|
-
|
475
|
-
# fill information for later stages
|
476
|
-
idUsage = Hash.new {|h,k| h[k] = []}
|
477
|
-
|
478
|
-
nodes.each do |node|
|
479
|
-
node.id ||= node.title
|
480
|
-
idUsage[node.id] << node
|
481
|
-
|
482
|
-
# forward and reverse anchors from & back to TOC
|
483
|
-
node.anchor = node.id.to_html_anchor
|
484
|
-
node.tocAnchor = node.object_id.to_s.to_html_anchor
|
485
|
-
end
|
486
|
-
|
487
|
-
idUsage.select {|(k,v)| v.length > 1}.each do |id, nodes|
|
488
|
-
warn "#{nodes.length} nodes have the same identifier: #{id.inspect}"
|
489
|
-
end
|
490
|
-
end
|
491
|
-
|
492
|
-
def table_of_contents
|
493
|
-
toc = '<ul>'
|
494
|
-
prevDepth = 0
|
495
|
-
prevIndex = ''
|
496
|
-
|
497
|
-
@group2nodes[:latex].each do |node|
|
498
|
-
# generate a LaTeX-style index (section number) for the heading
|
499
|
-
depthDiff = (node.depth - prevDepth).abs
|
500
|
-
|
501
|
-
node.latexNumber =
|
502
|
-
if node.depth > prevDepth
|
503
|
-
toc << '<li><ul>' * depthDiff
|
504
|
-
|
505
|
-
s = prevIndex + ('.1' * depthDiff)
|
506
|
-
s.sub(/^\./, '')
|
507
|
-
|
508
|
-
elsif node.depth < prevDepth
|
509
|
-
toc << '</ul></li>' * depthDiff
|
510
|
-
|
511
|
-
s = prevIndex.sub(/(\.\d+){#{depthDiff}}$/, '')
|
512
|
-
s.next
|
513
|
-
|
514
|
-
else
|
515
|
-
prevIndex.next
|
516
|
-
end
|
517
|
-
|
518
|
-
prevDepth = node.depth
|
519
|
-
prevIndex = node.latexNumber
|
520
|
-
|
521
|
-
|
522
|
-
# generate hyperlink for traveling from TOC to heading
|
523
|
-
toc << %{<li>#{node.latexNumber} <a id="#{node.tocAnchor}" href="##{node.anchor}" class="ref">#{node.title.to_html}</a></li>}
|
524
|
-
end
|
525
|
-
|
526
|
-
if prevIndex.empty?
|
527
|
-
toc = nil # there were no headings
|
528
|
-
else
|
529
|
-
toc << '</ul></li>' * prevDepth
|
530
|
-
toc << '</ul>'
|
531
|
-
|
532
|
-
# collapse redundant list elements
|
533
|
-
while toc.gsub! %r{(<li>.*?)</li><li>(<ul>)}, '\1\2'
|
534
|
-
end
|
535
|
-
|
536
|
-
# collapse unnecessary levels
|
537
|
-
while toc.gsub! %r{(<ul>)<li><ul>(.*)</ul></li>(</ul>)}, '\1\2\3'
|
538
|
-
end
|
539
|
-
end
|
540
|
-
|
541
|
-
toc
|
542
|
-
end
|
543
|
-
|
544
|
-
private
|
545
|
-
|
546
|
-
# recursively sets the depth of the given
|
547
|
-
# node and performs linear node numbering
|
548
|
-
def set_depth aNode, aDepth
|
549
|
-
aNode.depth = aDepth
|
550
|
-
|
551
|
-
# set number for boxes (fig 1, fig 2, etc.)
|
552
|
-
ary = @type2nodes[aNode.type]
|
553
|
-
ary << aNode
|
554
|
-
aNode.number = ary.length
|
555
|
-
@group2nodes[aNode.group] << aNode
|
556
|
-
|
557
|
-
self[aNode].each do |child|
|
558
|
-
set_depth child, aDepth + 1
|
559
|
-
end
|
560
|
-
end
|
561
|
-
end
|
562
|
-
end
|
data/doc/lib/erb_content.rb
DELETED
@@ -1,55 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright 2006 Suraj N. Kurapati
|
3
|
-
# See the file named LICENSE for details.
|
4
|
-
|
5
|
-
require 'erb'
|
6
|
-
|
7
|
-
# Returns an array containing the current ERB buffer and the content
|
8
|
-
# that the given block will append to the buffer when it is invoked.
|
9
|
-
#
|
10
|
-
# == Example
|
11
|
-
# Suppose your ERB template invoked a method with some arguments
|
12
|
-
# and some content in a block. You can pass the block to this
|
13
|
-
# method to obtain the content contained within the block.
|
14
|
-
#
|
15
|
-
## template = ERB.new <<-EOS
|
16
|
-
## <% wrap_xml "message" do %>
|
17
|
-
## i love ruby!
|
18
|
-
## <% end %>
|
19
|
-
## EOS
|
20
|
-
#
|
21
|
-
# In this case, the ERB template invokes the _wrap_xml_
|
22
|
-
# method to wrap some content within a pair of XML tags.
|
23
|
-
#
|
24
|
-
## def wrap_xml tag, &block
|
25
|
-
## buffer, content = ERB.buffer_and_content(&block)
|
26
|
-
## buffer << "<#{tag}>#{content}</#{tag}>"
|
27
|
-
## end
|
28
|
-
#
|
29
|
-
# When we evaluate the template:
|
30
|
-
## puts template.result(binding)
|
31
|
-
#
|
32
|
-
# we see the following output:
|
33
|
-
## <message>
|
34
|
-
## i love ruby!
|
35
|
-
## </message>
|
36
|
-
#
|
37
|
-
def ERB.buffer_and_content
|
38
|
-
raise ArgumentError unless block_given?
|
39
|
-
|
40
|
-
# buffer + content
|
41
|
-
buffer = yield
|
42
|
-
a = buffer.length
|
43
|
-
|
44
|
-
# buffer + content + content
|
45
|
-
yield
|
46
|
-
b = buffer.length
|
47
|
-
|
48
|
-
# buffer + content
|
49
|
-
content = buffer.slice! a..b
|
50
|
-
|
51
|
-
# buffer
|
52
|
-
buffer.slice! -content.length..-1
|
53
|
-
|
54
|
-
[buffer, content]
|
55
|
-
end
|
data/doc/lib/erb_proxy.rb
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright 2006 Suraj N. Kurapati
|
3
|
-
# See the file named LICENSE for details.
|
4
|
-
|
5
|
-
$: << File.basename(__FILE__)
|
6
|
-
require 'erb_content'
|
7
|
-
|
8
|
-
class ErbProxy
|
9
|
-
attr_reader :handlers
|
10
|
-
|
11
|
-
def initialize
|
12
|
-
@handlers = {}
|
13
|
-
end
|
14
|
-
|
15
|
-
# Adds a new handler that can be invoked from a ERB
|
16
|
-
# template. The arguments passed to the handler are:
|
17
|
-
#
|
18
|
-
# 1. unique identifier for the calling location in the ERB template
|
19
|
-
#
|
20
|
-
# 2. buffer containing the evaluated results of the ERB template thus far
|
21
|
-
#
|
22
|
-
# 3. content that was passed to the handler from the ERB template
|
23
|
-
#
|
24
|
-
# 4. variable number of method arguments passed from the ERB template
|
25
|
-
#
|
26
|
-
def add_handler aName, &aHandler # :yields: caller, buffer, content, *args
|
27
|
-
@handlers[aName] = aHandler
|
28
|
-
|
29
|
-
# XXX: using a string because define_method
|
30
|
-
# does not accept a block until Ruby 1.9
|
31
|
-
instance_eval %{
|
32
|
-
def #{aName} *args, &block
|
33
|
-
if block_given?
|
34
|
-
args = ERB.buffer_and_content(&block).concat(args)
|
35
|
-
else
|
36
|
-
args.unshift '', ''
|
37
|
-
end
|
38
|
-
@handlers[#{aName.inspect}].call(Kernel.caller.first, *args)
|
39
|
-
end
|
40
|
-
}
|
41
|
-
end
|
42
|
-
end
|