nabaztag_hack_kit 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. data/.gitignore +7 -0
  2. data/.travis.yml +3 -0
  3. data/CHANGELOG.md +11 -0
  4. data/Gemfile +4 -0
  5. data/README.md +119 -0
  6. data/Rakefile +21 -0
  7. data/bin/mtl_comp +41 -0
  8. data/bin/mtl_merge +22 -0
  9. data/bin/mtl_simu +40 -0
  10. data/bytecode/lib/buffer.mtl +109 -0
  11. data/bytecode/lib/button.mtl +27 -0
  12. data/bytecode/lib/data_helper.mtl +88 -0
  13. data/bytecode/lib/ear.mtl +90 -0
  14. data/bytecode/lib/led.mtl +33 -0
  15. data/bytecode/lib/rfid.mtl +50 -0
  16. data/bytecode/main.mtl +129 -0
  17. data/config.ru +6 -0
  18. data/ext/bytecode/Commands.md +172 -0
  19. data/ext/bytecode/Docs.md +488 -0
  20. data/ext/bytecode/README.md +5 -0
  21. data/ext/bytecode/lib/arp.mtl +159 -0
  22. data/ext/bytecode/lib/cfg.mtl +74 -0
  23. data/ext/bytecode/lib/choreos.mtl +1487 -0
  24. data/ext/bytecode/lib/dhcp.mtl +152 -0
  25. data/ext/bytecode/lib/dns.mtl +89 -0
  26. data/ext/bytecode/lib/http.mtl +84 -0
  27. data/ext/bytecode/lib/tcp.mtl +340 -0
  28. data/ext/bytecode/lib/udp.mtl +49 -0
  29. data/ext/bytecode/lib/util.mtl +74 -0
  30. data/ext/bytecode/lib/var.mtl +15 -0
  31. data/ext/bytecode/lib/wifi.mtl +243 -0
  32. data/ext/bytecode/nominal-ping.mtl +5828 -0
  33. data/ext/mtl/Makefile +42 -0
  34. data/ext/mtl/README.md +13 -0
  35. data/ext/mtl/bc.cpp +1891 -0
  36. data/ext/mtl/conf.bin.sans_password +0 -0
  37. data/ext/mtl/config.txt +5 -0
  38. data/ext/mtl/dumpbc.c +2566 -0
  39. data/ext/mtl/extconf.rb +1 -0
  40. data/ext/mtl/linux_simu.c +271 -0
  41. data/ext/mtl/linux_simuaudio.c +16 -0
  42. data/ext/mtl/linux_simuaudio.h +18 -0
  43. data/ext/mtl/linux_simunet.c +620 -0
  44. data/ext/mtl/linux_simunet.h +7 -0
  45. data/ext/mtl/log.c +297 -0
  46. data/ext/mtl/log.h +20 -0
  47. data/ext/mtl/main_compiler.cpp +104 -0
  48. data/ext/mtl/main_simu.cpp +221 -0
  49. data/ext/mtl/mp3/GTKANAL.H +97 -0
  50. data/ext/mtl/mp3/LAYER3.C +2090 -0
  51. data/ext/mtl/mp3/TABINIT.C +82 -0
  52. data/ext/mtl/mp3/common.c +265 -0
  53. data/ext/mtl/mp3/dct64_i386.c +316 -0
  54. data/ext/mtl/mp3/decode_i386.c +155 -0
  55. data/ext/mtl/mp3/huffman.h +332 -0
  56. data/ext/mtl/mp3/interface.c +258 -0
  57. data/ext/mtl/mp3/mpg123.h +182 -0
  58. data/ext/mtl/mp3/mpglib.h +44 -0
  59. data/ext/mtl/properties.c +293 -0
  60. data/ext/mtl/properties.h +10 -0
  61. data/ext/mtl/simu.c +750 -0
  62. data/ext/mtl/simuaudio.c +662 -0
  63. data/ext/mtl/simuaudio.h +74 -0
  64. data/ext/mtl/simunet.c +400 -0
  65. data/ext/mtl/simunet.h +30 -0
  66. data/ext/mtl/utils/correct_const.sh +34 -0
  67. data/ext/mtl/vaudio.c +677 -0
  68. data/ext/mtl/vaudio.h +46 -0
  69. data/ext/mtl/vbc.h +160 -0
  70. data/ext/mtl/vbc_str.h +166 -0
  71. data/ext/mtl/vcomp/Makefile +29 -0
  72. data/ext/mtl/vcomp/bootstrap.cpp +89 -0
  73. data/ext/mtl/vcomp/compiler.cpp +470 -0
  74. data/ext/mtl/vcomp/compiler.h +200 -0
  75. data/ext/mtl/vcomp/compiler_file.cpp +929 -0
  76. data/ext/mtl/vcomp/compiler_prog.cpp +250 -0
  77. data/ext/mtl/vcomp/compiler_term.cpp +1053 -0
  78. data/ext/mtl/vcomp/compiler_type.cpp +872 -0
  79. data/ext/mtl/vcomp/compiler_var.cpp +289 -0
  80. data/ext/mtl/vcomp/file.cpp +79 -0
  81. data/ext/mtl/vcomp/file.h +39 -0
  82. data/ext/mtl/vcomp/filesystem.h +14 -0
  83. data/ext/mtl/vcomp/interpreter.cpp +85 -0
  84. data/ext/mtl/vcomp/interpreter.h +121 -0
  85. data/ext/mtl/vcomp/memory.cpp +241 -0
  86. data/ext/mtl/vcomp/memory.h +326 -0
  87. data/ext/mtl/vcomp/param.h +95 -0
  88. data/ext/mtl/vcomp/parser.cpp +427 -0
  89. data/ext/mtl/vcomp/parser.h +97 -0
  90. data/ext/mtl/vcomp/parser_xml.cpp +124 -0
  91. data/ext/mtl/vcomp/prodbuffer.cpp +125 -0
  92. data/ext/mtl/vcomp/prodbuffer.h +42 -0
  93. data/ext/mtl/vcomp/resource.h +17 -0
  94. data/ext/mtl/vcomp/stdlib_core.cpp +122 -0
  95. data/ext/mtl/vcomp/terminal.cpp +73 -0
  96. data/ext/mtl/vcomp/terminal.h +30 -0
  97. data/ext/mtl/vcomp/util.cpp +48 -0
  98. data/ext/mtl/vcomp/util.h +31 -0
  99. data/ext/mtl/vinterp.c +1349 -0
  100. data/ext/mtl/vinterp.h +11 -0
  101. data/ext/mtl/vloader.c +127 -0
  102. data/ext/mtl/vloader.h +31 -0
  103. data/ext/mtl/vlog.c +589 -0
  104. data/ext/mtl/vlog.h +69 -0
  105. data/ext/mtl/vmem.c +424 -0
  106. data/ext/mtl/vmem.h +107 -0
  107. data/ext/mtl/vnet.c +255 -0
  108. data/ext/mtl/vnet.h +19 -0
  109. data/lib/nabaztag_hack_kit/message/api.rb +39 -0
  110. data/lib/nabaztag_hack_kit/message/helper.rb +39 -0
  111. data/lib/nabaztag_hack_kit/message.rb +36 -0
  112. data/lib/nabaztag_hack_kit/server.rb +50 -0
  113. data/lib/nabaztag_hack_kit/version.rb +3 -0
  114. data/lib/nabaztag_hack_kit.rb +4 -0
  115. data/nabaztag_hack_kit.gemspec +29 -0
  116. data/public/bytecode.bin +0 -0
  117. data/test/bytecode/helper.mtl +60 -0
  118. data/test/bytecode/native.mtl +28 -0
  119. data/test/bytecode/test.mtl +221 -0
  120. data/test/spec_helper.rb +5 -0
  121. data/test/unit/message_spec.rb +56 -0
  122. metadata +209 -0
@@ -0,0 +1,221 @@
1
+ proto main 0;;
2
+
3
+ #include "../../ext/bytecode/lib/util"
4
+ #include "../../bytecode/lib/data_helper"
5
+ #include "../../bytecode/lib/buffer"
6
+
7
+ #include "./helper"
8
+
9
+ //-------------------- MAIN
10
+ fun main=
11
+
12
+ let test "strcmp" -> t in
13
+ (
14
+ assert_equalI 0 strcmp "" "";
15
+ assert_equalI 0 strcmp "T" "T";
16
+ assert_equalI -1 strcmp "T" "To";
17
+ assert_equalI -1 strcmp "T" "t";
18
+ assert_equalI 1 strcmp "t" "T";
19
+ assert_equalI 1 strcmp "To" "Tb";
20
+ 0);
21
+
22
+ let test "itoa" -> t in
23
+ (
24
+ assert_equalS "0" itoa 0;
25
+ assert_equalS "51" itoa 51;
26
+ assert_equalS "255" itoa 255;
27
+ assert_equalS "25500" itoa 25500;
28
+ 0);
29
+
30
+ let test "itoh" -> t in
31
+ (
32
+ assert_equalS "0" itoh 0;
33
+ assert_equalS "33" itoh 51; // 51 -> hex == 33
34
+ assert_equalS "ff" itoh 255; // 255 -> hex == ff
35
+ assert_equalS "3e517" itoh 255255; // 255255 -> hex == 3e517
36
+ 0);
37
+
38
+ let test "ctoa" -> t in
39
+ (
40
+ assert_equalS "\0" ctoa 0;
41
+ assert_equalS "\51" ctoa 51;
42
+ assert_equalS "\255" ctoa 255;
43
+ 0);
44
+
45
+ let test "webmac" -> t in
46
+ (
47
+ assert_equalS "0100" webmac "\1\0";
48
+ assert_equalS "0a00" webmac "\10\0";
49
+ assert_equalS "00ff" webmac "\0\255";
50
+ assert_equalS "ff00" webmac "\255\0";
51
+ 0);
52
+
53
+ let test "StoI3" -> t in
54
+ (
55
+ assert_equalI 0 StoI3 "\0\0\0dummy" ;
56
+ assert_equalI 0 StoI3 "\0\0\0" ;
57
+ assert_equalI 255 StoI3 "\0\0\255";
58
+ assert_equalI 65280 StoI3 "\0\255\0";
59
+ assert_equalI 6579300 StoI3 "\100\100\100";
60
+ assert_equalI 16711680 StoI3 "\255\0\0";
61
+ assert_equalI 16777215 StoI3 "\255\255\255";
62
+ 0);
63
+
64
+ let test "StoI2" -> t in
65
+ (
66
+ assert_equalI 0 StoI2 "\0\0\0" ;
67
+ assert_equalI 0 StoI2 "\0\0\255";
68
+ assert_equalI 255 StoI2 "\0\255\0";
69
+ 0);
70
+
71
+ let test "StoI" -> t in
72
+ (
73
+ assert_equalI 0 StoI "\0\0\0" ;
74
+ assert_equalI 255 StoI "\0\0\255";
75
+ assert_equalI 65280 StoI "\0\255\0";
76
+ 0);
77
+
78
+ let test "str_find_end" -> t in
79
+ (
80
+ assert_equalI nil str_find_end "" ;
81
+ assert_equalI 0 str_find_end "\255\0\0" ;
82
+ assert_equalI 2 str_find_end "AB\255";
83
+ assert_equalI 10 str_find_end "0123456789\255";
84
+ 0);
85
+
86
+ let test "find RIFID id" -> t in
87
+ (
88
+ assert_equalI 0 strstr "\208\2\26\1\1\1\1\1" "\208\2\26" 0;
89
+ assert_equalI 1 strstr "\1\208\2\26\1\1\1\1" "\208\2\26" 0;
90
+ assert_equalI nil strstr "\1\208\1\26\1\1\1\1" "\208\2\26" 0;
91
+ 0);
92
+
93
+ let test "COtoI" -> t in
94
+ (
95
+ assert_equalI 0 COtoI 0 0 0;
96
+ assert_equalI 51 COtoI 1 2 3;
97
+ assert_equalI 121 COtoI 3 2 1;
98
+ assert_equalI 215 COtoI 5 5 5;
99
+ 0);
100
+
101
+ let test "ItoCO" -> t in
102
+ (
103
+ assert_equalI 0x000000 ItoCO nil;
104
+ assert_equalI 0x000000 ItoCO 0;
105
+ assert_equalI 0x5a82aa ItoCO 51;
106
+ assert_equalI 0xaa825a ItoCO 121;
107
+ assert_equalI 0xFFFFFF ItoCO 215;
108
+ assert_equalI 0xFFFFFF ItoCO 255;
109
+ 0);
110
+
111
+ let test "CtoI3" -> t in
112
+ (
113
+ assert_equalI 0 CtoI3 "\0\0\0" 0;
114
+ assert_equalI 255 CtoI3 "\0\0\255" 0;
115
+ assert_equalI 65535 CtoI3 "\0\255\255" 0;
116
+ assert_equalI 16776959 CtoI3 "\0\255\255" 1;
117
+ 0);
118
+
119
+ let test "parseResponse" -> t in
120
+ (
121
+ assert_nil parseResponse "\127";
122
+ assert_nil parseResponse "\122";
123
+ assert_equalTL [11 "1"]::[10 "123"]::nil parseResponse "\127\10\0\0\3\49\50\51\11\0\0\1\49";
124
+ assert_equalTL [11 "1"]::[10 "123"]::nil parseResponse "\127\10\0\0\3\49\50\51\11\0\0\2\49";
125
+ assert_equalTL [51 "\2\49"]::[10 "12"]::nil parseResponse "\127\10\0\0\2\49\50\51\11\0\0\2\49";
126
+ //TODO check last ending byte
127
+ 0);
128
+
129
+ buffersInit 1;
130
+ let test "bufferFill" -> t in
131
+ (
132
+ bufferFill 0 "\0\255";
133
+
134
+ let buffers.0 -> buffer in
135
+ (
136
+ assert_equalS "\0\255" buffer.valB;
137
+ assert_equalI 2 buffer.lenB;
138
+ assert_equalI 1 buffer.stepB;
139
+ assert_equalI 0 buffer.posB;
140
+ assert_equalI 0 buffer.loopB;
141
+ 0);
142
+ 0);
143
+
144
+ let test "bufferRead" -> t in
145
+ (
146
+ assert_equalI 0 bufferRead 0;
147
+ assert_equalI 0xFF bufferRead 0;
148
+ assert_nil bufferRead 0;
149
+ 0);
150
+
151
+ let test "bufferFill3" -> t in
152
+ (
153
+ bufferFill3 0 "\0\0\0\255\255\255";
154
+
155
+ let buffers.0 -> buffer in
156
+ (
157
+ assert_equalS "\0\0\0\255\255\255" buffer.valB;
158
+ assert_equalI 6 buffer.lenB;
159
+ assert_equalI 3 buffer.stepB;
160
+ assert_equalI 0 buffer.posB;
161
+ assert_equalI 0 buffer.loopB;
162
+ 0);
163
+ 0);
164
+
165
+ let test "bufferRead3" -> t in
166
+ (
167
+ assert_equalI 0 bufferRead 0;
168
+ assert_equalI 0xFFFFFF bufferRead 0;
169
+ assert_nil bufferRead 0;
170
+ 0);
171
+
172
+ //-------- Loop
173
+ let test "loopBufferFill" -> t in
174
+ (
175
+ loopBufferFill 0 "\0\255\32";
176
+
177
+ let buffers.0 -> buffer in
178
+ (
179
+ assert_equalI 0 buffer.posB;
180
+ assert_equalI 1 buffer.loopB;
181
+ 0);
182
+ 0);
183
+
184
+ let test "loopBufferRead" -> t in
185
+ (
186
+ assert_equalI 0 bufferRead 0;
187
+ assert_equalI 0xFF bufferRead 0;
188
+ assert_equalI 0x20 bufferRead 0;
189
+ assert_equalI 0 bufferRead 0;
190
+ assert_equalI 0xFF bufferRead 0;
191
+ 0);
192
+
193
+ let test "bufferFill3" -> t in
194
+ (
195
+ loopBufferFill3 0 "\0\0\0\255\255\255";
196
+
197
+ let buffers.0 -> buffer in
198
+ (
199
+ assert_equalI 0 buffer.posB;
200
+ assert_equalI 1 buffer.loopB;
201
+ 0);
202
+ 0);
203
+
204
+ let test "bufferRead3" -> t in
205
+ (
206
+ assert_equalI 0 bufferRead 0;
207
+ assert_equalI 0xFFFFFF bufferRead 0;
208
+ assert_equalI 0 bufferRead 0;
209
+ assert_equalI 0xFFFFFF bufferRead 0;
210
+ 0);
211
+
212
+ let test "log" -> t in
213
+ (
214
+ log "test" {1};
215
+ assert_equalS "test,0,1,|" logs;
216
+ log "test" {56 67 90};
217
+ assert_equalS "test,0,1,|test,0,56,67,90,|" logs;
218
+ 0);
219
+
220
+ exit;
221
+ 0;;
@@ -0,0 +1,5 @@
1
+ require 'rspec'
2
+
3
+ $: << File.expand_path("../../lib", __FILE__)
4
+
5
+ require "nabaztag_hack_kit"
@@ -0,0 +1,56 @@
1
+ require File.expand_path("../../spec_helper", __FILE__)
2
+
3
+ require "nabaztag_hack_kit/message"
4
+
5
+ describe NabaztagHackKit::Message do
6
+ CMD = 30
7
+ CMD1 = 31
8
+ let(:data) { [1,2,3,4,5] }
9
+ let(:size) { NabaztagHackKit::Message.to_3b(data.size) }
10
+
11
+ before do
12
+ NabaztagHackKit::Message.stub!(:full_message).and_return do |data|
13
+ data
14
+ end
15
+
16
+ NabaztagHackKit::Message.stub!(:pack).and_return do |data|
17
+ data
18
+ end
19
+ end
20
+
21
+ describe ".build" do
22
+ it "accepts single input" do
23
+ NabaztagHackKit::Message.build(CMD).should == [[CMD, 0, 0, 0]]
24
+ end
25
+
26
+ it "accepts flat input" do
27
+ NabaztagHackKit::Message.build(CMD, *data).should == [[CMD, *size, *data]]
28
+ end
29
+
30
+ it "accepts array input" do
31
+ NabaztagHackKit::Message.build([CMD, *data]).should == [[CMD, *size, *data]]
32
+ end
33
+
34
+ it "accepts multiple array input" do
35
+ NabaztagHackKit::Message.build([CMD, *data], [CMD1, *data]).should == [[CMD, *size, *data], [CMD1, *size, *data]]
36
+ end
37
+
38
+ it "accepts hash input" do
39
+ NabaztagHackKit::Message.build(CMD => data, CMD1 => data).should == [[CMD, *size, *data], [CMD1, *size, *data]]
40
+ end
41
+ end
42
+
43
+ describe ".to_3b" do
44
+ it "accepts zero" do
45
+ NabaztagHackKit::Message.to_3b(0).should == [0, 0, 0]
46
+ end
47
+
48
+ it "accepts 2 byte input" do
49
+ NabaztagHackKit::Message.to_3b(511).should == [0, 1, 255]
50
+ end
51
+
52
+ it "accepts 3 byte input" do
53
+ NabaztagHackKit::Message.to_3b(6334239).should == [96, 167, 31]
54
+ end
55
+ end
56
+ end
metadata ADDED
@@ -0,0 +1,209 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: nabaztag_hack_kit
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - RngTng - Tobias Bielohlawek
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-01-30 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: sinatra
16
+ requirement: &70107235050200 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70107235050200
25
+ - !ruby/object:Gem::Dependency
26
+ name: rake
27
+ requirement: &70107235049680 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70107235049680
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &70107235049220 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70107235049220
47
+ description: Sinatra server api framework to run custom bytecode on Nabaztag v1/v2.
48
+ Sources + Compiler included (linux only)
49
+ email:
50
+ - tobi@soundcloud.com
51
+ executables:
52
+ - mtl_comp
53
+ - mtl_simu
54
+ - mtl_merge
55
+ extensions:
56
+ - ext/mtl/extconf.rb
57
+ extra_rdoc_files: []
58
+ files:
59
+ - .gitignore
60
+ - .travis.yml
61
+ - CHANGELOG.md
62
+ - Gemfile
63
+ - README.md
64
+ - Rakefile
65
+ - bin/mtl_comp
66
+ - bin/mtl_merge
67
+ - bin/mtl_simu
68
+ - bytecode/lib/buffer.mtl
69
+ - bytecode/lib/button.mtl
70
+ - bytecode/lib/data_helper.mtl
71
+ - bytecode/lib/ear.mtl
72
+ - bytecode/lib/led.mtl
73
+ - bytecode/lib/rfid.mtl
74
+ - bytecode/main.mtl
75
+ - config.ru
76
+ - ext/bytecode/Commands.md
77
+ - ext/bytecode/Docs.md
78
+ - ext/bytecode/README.md
79
+ - ext/bytecode/lib/arp.mtl
80
+ - ext/bytecode/lib/cfg.mtl
81
+ - ext/bytecode/lib/choreos.mtl
82
+ - ext/bytecode/lib/dhcp.mtl
83
+ - ext/bytecode/lib/dns.mtl
84
+ - ext/bytecode/lib/http.mtl
85
+ - ext/bytecode/lib/tcp.mtl
86
+ - ext/bytecode/lib/udp.mtl
87
+ - ext/bytecode/lib/util.mtl
88
+ - ext/bytecode/lib/var.mtl
89
+ - ext/bytecode/lib/wifi.mtl
90
+ - ext/bytecode/nominal-ping.mtl
91
+ - ext/mtl/Makefile
92
+ - ext/mtl/README.md
93
+ - ext/mtl/bc.cpp
94
+ - ext/mtl/conf.bin.sans_password
95
+ - ext/mtl/config.txt
96
+ - ext/mtl/dumpbc.c
97
+ - ext/mtl/extconf.rb
98
+ - ext/mtl/linux_simu.c
99
+ - ext/mtl/linux_simuaudio.c
100
+ - ext/mtl/linux_simuaudio.h
101
+ - ext/mtl/linux_simunet.c
102
+ - ext/mtl/linux_simunet.h
103
+ - ext/mtl/log.c
104
+ - ext/mtl/log.h
105
+ - ext/mtl/main_compiler.cpp
106
+ - ext/mtl/main_simu.cpp
107
+ - ext/mtl/mp3/GTKANAL.H
108
+ - ext/mtl/mp3/LAYER3.C
109
+ - ext/mtl/mp3/TABINIT.C
110
+ - ext/mtl/mp3/common.c
111
+ - ext/mtl/mp3/dct64_i386.c
112
+ - ext/mtl/mp3/decode_i386.c
113
+ - ext/mtl/mp3/huffman.h
114
+ - ext/mtl/mp3/interface.c
115
+ - ext/mtl/mp3/mpg123.h
116
+ - ext/mtl/mp3/mpglib.h
117
+ - ext/mtl/properties.c
118
+ - ext/mtl/properties.h
119
+ - ext/mtl/simu.c
120
+ - ext/mtl/simuaudio.c
121
+ - ext/mtl/simuaudio.h
122
+ - ext/mtl/simunet.c
123
+ - ext/mtl/simunet.h
124
+ - ext/mtl/utils/correct_const.sh
125
+ - ext/mtl/vaudio.c
126
+ - ext/mtl/vaudio.h
127
+ - ext/mtl/vbc.h
128
+ - ext/mtl/vbc_str.h
129
+ - ext/mtl/vcomp/Makefile
130
+ - ext/mtl/vcomp/bootstrap.cpp
131
+ - ext/mtl/vcomp/compiler.cpp
132
+ - ext/mtl/vcomp/compiler.h
133
+ - ext/mtl/vcomp/compiler_file.cpp
134
+ - ext/mtl/vcomp/compiler_prog.cpp
135
+ - ext/mtl/vcomp/compiler_term.cpp
136
+ - ext/mtl/vcomp/compiler_type.cpp
137
+ - ext/mtl/vcomp/compiler_var.cpp
138
+ - ext/mtl/vcomp/file.cpp
139
+ - ext/mtl/vcomp/file.h
140
+ - ext/mtl/vcomp/filesystem.h
141
+ - ext/mtl/vcomp/interpreter.cpp
142
+ - ext/mtl/vcomp/interpreter.h
143
+ - ext/mtl/vcomp/memory.cpp
144
+ - ext/mtl/vcomp/memory.h
145
+ - ext/mtl/vcomp/param.h
146
+ - ext/mtl/vcomp/parser.cpp
147
+ - ext/mtl/vcomp/parser.h
148
+ - ext/mtl/vcomp/parser_xml.cpp
149
+ - ext/mtl/vcomp/prodbuffer.cpp
150
+ - ext/mtl/vcomp/prodbuffer.h
151
+ - ext/mtl/vcomp/resource.h
152
+ - ext/mtl/vcomp/stdlib_core.cpp
153
+ - ext/mtl/vcomp/terminal.cpp
154
+ - ext/mtl/vcomp/terminal.h
155
+ - ext/mtl/vcomp/util.cpp
156
+ - ext/mtl/vcomp/util.h
157
+ - ext/mtl/vinterp.c
158
+ - ext/mtl/vinterp.h
159
+ - ext/mtl/vloader.c
160
+ - ext/mtl/vloader.h
161
+ - ext/mtl/vlog.c
162
+ - ext/mtl/vlog.h
163
+ - ext/mtl/vmem.c
164
+ - ext/mtl/vmem.h
165
+ - ext/mtl/vnet.c
166
+ - ext/mtl/vnet.h
167
+ - lib/nabaztag_hack_kit.rb
168
+ - lib/nabaztag_hack_kit/message.rb
169
+ - lib/nabaztag_hack_kit/message/api.rb
170
+ - lib/nabaztag_hack_kit/message/helper.rb
171
+ - lib/nabaztag_hack_kit/server.rb
172
+ - lib/nabaztag_hack_kit/version.rb
173
+ - nabaztag_hack_kit.gemspec
174
+ - public/bytecode.bin
175
+ - test/bytecode/helper.mtl
176
+ - test/bytecode/native.mtl
177
+ - test/bytecode/test.mtl
178
+ - test/spec_helper.rb
179
+ - test/unit/message_spec.rb
180
+ homepage: https://github.com/rngtng/nabaztag_hack_kit
181
+ licenses: []
182
+ post_install_message:
183
+ rdoc_options: []
184
+ require_paths:
185
+ - lib
186
+ required_ruby_version: !ruby/object:Gem::Requirement
187
+ none: false
188
+ requirements:
189
+ - - ! '>='
190
+ - !ruby/object:Gem::Version
191
+ version: '0'
192
+ required_rubygems_version: !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '0'
198
+ requirements: []
199
+ rubyforge_project:
200
+ rubygems_version: 1.8.15
201
+ signing_key:
202
+ specification_version: 3
203
+ summary: Sinatra server to run custom Nabaztag bytecode
204
+ test_files:
205
+ - test/bytecode/helper.mtl
206
+ - test/bytecode/native.mtl
207
+ - test/bytecode/test.mtl
208
+ - test/spec_helper.rb
209
+ - test/unit/message_spec.rb