netlinx-erb 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +9 -0
- data/doc/Array.html +213 -0
- data/doc/Hash.html +266 -0
- data/doc/HashHelpers.html +413 -0
- data/doc/Helpers.html +2154 -0
- data/doc/NetLinx.html +128 -0
- data/doc/NetLinx/ERB.html +233 -0
- data/doc/NetLinx/ERB/HashHelpers.html +413 -0
- data/doc/NetLinx/ERB/Helpers.html +2157 -0
- data/doc/NetLinx/Rake.html +117 -0
- data/doc/NetLinx/Rake/ERB.html +117 -0
- data/doc/NetLinx/Rake/ERB/Compile.html +354 -0
- data/doc/NetLinx/Rake/ERB/GenerateERB.html +419 -0
- data/doc/NetLinx/Rake/ERB/GenerateRPC.html +349 -0
- data/doc/NetLinx/Rake/ERB/Lines.html +381 -0
- data/doc/NetLinx/Rake/Lines.html +381 -0
- data/doc/RPC.html +683 -0
- data/doc/String.html +322 -0
- data/doc/_index.html +248 -0
- data/doc/class_list.html +58 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +339 -0
- data/doc/file.README.html +84 -0
- data/doc/file.license.html +73 -0
- data/doc/file_list.html +63 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +84 -0
- data/doc/js/app.js +219 -0
- data/doc/js/full_list.js +181 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +237 -0
- data/doc/top-level-namespace.html +114 -0
- data/lib/netlinx-erb.rb +14 -0
- data/lib/netlinx/erb/erb.rb +19 -0
- data/lib/netlinx/erb/hash_helpers.rb +42 -0
- data/lib/netlinx/erb/helpers.rb +399 -0
- data/lib/netlinx/erb/rpc.rb +270 -0
- data/lib/netlinx/rake/erb.rb +26 -0
- data/lib/netlinx/rake/erb/generate_erb.rb +66 -0
- data/lib/netlinx/rake/erb/generate_rpc.rb +31 -0
- data/lib/netlinx/rake/erb/lines.rb +47 -0
- data/license.txt +21 -0
- data/template/Gemfile +9 -0
- data/template/README.md +130 -0
- data/template/Rakefile +11 -0
- data/template/rpc.axi +148 -0
- metadata +234 -0
data/doc/RPC.html
ADDED
@@ -0,0 +1,683 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Class: RPC
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '';
|
20
|
+
framesUrl = "frames.html#!RPC.html";
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="_index.html">Index (R)</a> »
|
35
|
+
|
36
|
+
|
37
|
+
<span class="title">RPC</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Class: RPC
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
<dt class="r1">Inherits:</dt>
|
75
|
+
<dd class="r1">
|
76
|
+
<span class="inheritName">Object</span>
|
77
|
+
|
78
|
+
<ul class="fullTree">
|
79
|
+
<li>Object</li>
|
80
|
+
|
81
|
+
<li class="next">RPC</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
<dt class="r2 last">Defined in:</dt>
|
97
|
+
<dd class="r2 last">lib/netlinx/erb/rpc.rb</dd>
|
98
|
+
|
99
|
+
</dl>
|
100
|
+
<div class="clear"></div>
|
101
|
+
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
103
|
+
<div class="discussion">
|
104
|
+
|
105
|
+
<p>:nodoc:</p>
|
106
|
+
|
107
|
+
|
108
|
+
</div>
|
109
|
+
</div>
|
110
|
+
<div class="tags">
|
111
|
+
|
112
|
+
|
113
|
+
</div>
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
<h2>
|
122
|
+
Class Method Summary
|
123
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
124
|
+
</h2>
|
125
|
+
|
126
|
+
<ul class="summary">
|
127
|
+
|
128
|
+
<li class="public ">
|
129
|
+
<span class="summary_signature">
|
130
|
+
|
131
|
+
<a href="#build-class_method" title="build (class method)">+ (Object) <strong>build</strong> </a>
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
</span>
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
<span class="summary_desc"><div class='inline'>
|
146
|
+
<p>:nodoc:.</p>
|
147
|
+
</div></span>
|
148
|
+
|
149
|
+
</li>
|
150
|
+
|
151
|
+
|
152
|
+
</ul>
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
<div id="class_method_details" class="method_details_list">
|
158
|
+
<h2>Class Method Details</h2>
|
159
|
+
|
160
|
+
|
161
|
+
<div class="method_details first">
|
162
|
+
<h3 class="signature first" id="build-class_method">
|
163
|
+
|
164
|
+
+ (<tt>Object</tt>) <strong>build</strong>
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
</h3><div class="docstring">
|
171
|
+
<div class="discussion">
|
172
|
+
|
173
|
+
<p>:nodoc:</p>
|
174
|
+
|
175
|
+
|
176
|
+
</div>
|
177
|
+
</div>
|
178
|
+
<div class="tags">
|
179
|
+
|
180
|
+
|
181
|
+
</div><table class="source_code">
|
182
|
+
<tr>
|
183
|
+
<td>
|
184
|
+
<pre class="lines">
|
185
|
+
|
186
|
+
|
187
|
+
31
|
188
|
+
32
|
189
|
+
33
|
190
|
+
34
|
191
|
+
35
|
192
|
+
36
|
193
|
+
37
|
194
|
+
38
|
195
|
+
39
|
196
|
+
40
|
197
|
+
41
|
198
|
+
42
|
199
|
+
43
|
200
|
+
44
|
201
|
+
45
|
202
|
+
46
|
203
|
+
47
|
204
|
+
48
|
205
|
+
49
|
206
|
+
50
|
207
|
+
51
|
208
|
+
52
|
209
|
+
53
|
210
|
+
54
|
211
|
+
55
|
212
|
+
56
|
213
|
+
57
|
214
|
+
58
|
215
|
+
59
|
216
|
+
60
|
217
|
+
61
|
218
|
+
62
|
219
|
+
63
|
220
|
+
64
|
221
|
+
65
|
222
|
+
66
|
223
|
+
67
|
224
|
+
68
|
225
|
+
69
|
226
|
+
70
|
227
|
+
71
|
228
|
+
72
|
229
|
+
73
|
230
|
+
74
|
231
|
+
75
|
232
|
+
76
|
233
|
+
77
|
234
|
+
78
|
235
|
+
79
|
236
|
+
80
|
237
|
+
81
|
238
|
+
82
|
239
|
+
83
|
240
|
+
84
|
241
|
+
85
|
242
|
+
86
|
243
|
+
87
|
244
|
+
88
|
245
|
+
89
|
246
|
+
90
|
247
|
+
91
|
248
|
+
92
|
249
|
+
93
|
250
|
+
94
|
251
|
+
95
|
252
|
+
96
|
253
|
+
97
|
254
|
+
98
|
255
|
+
99
|
256
|
+
100
|
257
|
+
101
|
258
|
+
102
|
259
|
+
103
|
260
|
+
104
|
261
|
+
105
|
262
|
+
106
|
263
|
+
107
|
264
|
+
108
|
265
|
+
109
|
266
|
+
110
|
267
|
+
111
|
268
|
+
112
|
269
|
+
113
|
270
|
+
114
|
271
|
+
115
|
272
|
+
116
|
273
|
+
117
|
274
|
+
118
|
275
|
+
119
|
276
|
+
120
|
277
|
+
121
|
278
|
+
122
|
279
|
+
123
|
280
|
+
124
|
281
|
+
125
|
282
|
+
126
|
283
|
+
127
|
284
|
+
128
|
285
|
+
129
|
286
|
+
130
|
287
|
+
131
|
288
|
+
132
|
289
|
+
133
|
290
|
+
134
|
291
|
+
135
|
292
|
+
136
|
293
|
+
137
|
294
|
+
138
|
295
|
+
139
|
296
|
+
140
|
297
|
+
141
|
298
|
+
142
|
299
|
+
143
|
300
|
+
144
|
301
|
+
145
|
302
|
+
146
|
303
|
+
147
|
304
|
+
148
|
305
|
+
149
|
306
|
+
150
|
307
|
+
151
|
308
|
+
152
|
309
|
+
153
|
310
|
+
154
|
311
|
+
155
|
312
|
+
156
|
313
|
+
157
|
314
|
+
158
|
315
|
+
159
|
316
|
+
160
|
317
|
+
161
|
318
|
+
162
|
319
|
+
163
|
320
|
+
164
|
321
|
+
165
|
322
|
+
166
|
323
|
+
167
|
324
|
+
168
|
325
|
+
169
|
326
|
+
170
|
327
|
+
171
|
328
|
+
172
|
329
|
+
173
|
330
|
+
174
|
331
|
+
175
|
332
|
+
176
|
333
|
+
177
|
334
|
+
178
|
335
|
+
179
|
336
|
+
180
|
337
|
+
181
|
338
|
+
182
|
339
|
+
183
|
340
|
+
184
|
341
|
+
185
|
342
|
+
186
|
343
|
+
187
|
344
|
+
188
|
345
|
+
189
|
346
|
+
190
|
347
|
+
191
|
348
|
+
192
|
349
|
+
193
|
350
|
+
194
|
351
|
+
195
|
352
|
+
196
|
353
|
+
197
|
354
|
+
198
|
355
|
+
199
|
356
|
+
200
|
357
|
+
201
|
358
|
+
202
|
359
|
+
203
|
360
|
+
204
|
361
|
+
205
|
362
|
+
206
|
363
|
+
207
|
364
|
+
208
|
365
|
+
209
|
366
|
+
210
|
367
|
+
211
|
368
|
+
212
|
369
|
+
213
|
370
|
+
214
|
371
|
+
215
|
372
|
+
216
|
373
|
+
217
|
374
|
+
218
|
375
|
+
219
|
376
|
+
220
|
377
|
+
221
|
378
|
+
222
|
379
|
+
223
|
380
|
+
224
|
381
|
+
225
|
382
|
+
226
|
383
|
+
227
|
384
|
+
228
|
385
|
+
229
|
386
|
+
230
|
387
|
+
231
|
388
|
+
232
|
389
|
+
233
|
390
|
+
234
|
391
|
+
235
|
392
|
+
236
|
393
|
+
237
|
394
|
+
238
|
395
|
+
239
|
396
|
+
240
|
397
|
+
241
|
398
|
+
242
|
399
|
+
243
|
400
|
+
244
|
401
|
+
245
|
402
|
+
246
|
403
|
+
247
|
404
|
+
248
|
405
|
+
249
|
406
|
+
250
|
407
|
+
251
|
408
|
+
252
|
409
|
+
253
|
410
|
+
254
|
411
|
+
255
|
412
|
+
256
|
413
|
+
257
|
414
|
+
258
|
415
|
+
259
|
416
|
+
260
|
417
|
+
261
|
418
|
+
262
|
419
|
+
263
|
420
|
+
264
|
421
|
+
265
|
422
|
+
266
|
423
|
+
267
|
424
|
+
268</pre>
|
425
|
+
</td>
|
426
|
+
<td>
|
427
|
+
<pre class="code"><span class="info file"># File 'lib/netlinx/erb/rpc.rb', line 31</span>
|
428
|
+
|
429
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_build'>build</span>
|
430
|
+
<span class='id identifier rubyid_fn_exp'>fn_exp</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>
|
431
|
+
(?#
|
432
|
+
Pull out comment\\description above the function, enclosed in slash\\star syntax.
|
433
|
+
Does not have to exist.
|
434
|
+
)
|
435
|
+
^(?<desc>[\t ]*\/\*(?:[^\*]|\*[^\/])*\*\/)?\s*
|
436
|
+
|
437
|
+
(?# Find the function definition. )
|
438
|
+
define_function\s+
|
439
|
+
|
440
|
+
(?# Capture function's return type, if it exists.)
|
441
|
+
(?<rtn>\w+(?<width>\[\d+\])?)??\s*
|
442
|
+
|
443
|
+
(?# Capture the function name. )
|
444
|
+
(?<name>\w+)
|
445
|
+
|
446
|
+
(?#
|
447
|
+
Capture the function parameters.
|
448
|
+
Run this through another regex to get the type\\name pairs.
|
449
|
+
)
|
450
|
+
\(\s*(?<params>.*?)\s*\)\s*
|
451
|
+
|
452
|
+
(?# Capture the function's source code. )
|
453
|
+
{[\r\n]*(?<code>(?:.|\r|\n)*?)?[\r\n]*}
|
454
|
+
</span><span class='regexp_end'>/x</span></span>
|
455
|
+
|
456
|
+
<span class='id identifier rubyid_param_exp'>param_exp</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\s*(?:(?<type>\w+)\s+(?<name>\w+(?<width>\[\d*\])?)),?\s*</span><span class='regexp_end'>/</span></span>
|
457
|
+
|
458
|
+
<span class='id identifier rubyid_sections'>sections</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span> <span class='comment'># Collect a set of matches for each file, separated by file.
|
459
|
+
</span>
|
460
|
+
|
461
|
+
<span class='comment'># Pull file list from workspace.
|
462
|
+
</span> <span class='id identifier rubyid_workspace_path'>workspace_path</span> <span class='op'>=</span> <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>*.apw</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
|
463
|
+
<span class='id identifier rubyid_workspace'>workspace</span> <span class='op'>=</span> <span class='const'>NetLinx</span><span class='op'>::</span><span class='const'>Workspace</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='label'>file:</span> <span class='id identifier rubyid_workspace_path'>workspace_path</span>
|
464
|
+
|
465
|
+
<span class='id identifier rubyid_file_paths'>file_paths</span> <span class='op'>=</span> <span class='id identifier rubyid_workspace'>workspace</span><span class='period'>.</span><span class='id identifier rubyid_projects'>projects</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='period'>.</span><span class='id identifier rubyid_systems'>systems</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='period'>.</span><span class='id identifier rubyid_files'>files</span><span class='period'>
|
466
|
+
</span><span class='id identifier rubyid_ .map'> .map</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:path</span><span class='rparen'>)</span><span class='period'>
|
467
|
+
</span><span class='id identifier rubyid_ .select'> .select</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_path'>path</span><span class='op'>|</span> <span class='id identifier rubyid_path'>path</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>(\.axi|\.axs)$</span><span class='regexp_end'>/</span></span> <span class='rbrace'>}</span><span class='period'>
|
468
|
+
</span><span class='id identifier rubyid_ .reject'> .reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_path'>path</span><span class='op'>|</span> <span class='id identifier rubyid_path'>path</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>rpc(?:-|_.*?)?\.axi</span><span class='regexp_end'>/</span></span> <span class='rbrace'>}</span> <span class='comment'># Remove RPC files.
|
469
|
+
</span>
|
470
|
+
<span class='comment'># file_paths = Dir['**/*.axi']
|
471
|
+
</span>
|
472
|
+
<span class='id identifier rubyid_file_paths'>file_paths</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
|
473
|
+
<span class='id identifier rubyid_str'>str</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>\\</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>r:iso-8859-1</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span>
|
474
|
+
<span class='id identifier rubyid_matches'>matches</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
475
|
+
|
476
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='id identifier rubyid_fn_exp'>fn_exp</span>
|
477
|
+
<span class='id identifier rubyid_matches'>matches</span> <span class='op'><<</span> <span class='gvar'>$~</span>
|
478
|
+
<span class='id identifier rubyid_str'>str</span> <span class='op'>=</span> <span class='backref'>$'</span>
|
479
|
+
<span class='kw'>end</span>
|
480
|
+
|
481
|
+
<span class='id identifier rubyid_sections'>sections</span><span class='lbracket'>[</span><span class='id identifier rubyid_f'>f</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_matches'>matches</span>
|
482
|
+
<span class='kw'>end</span>
|
483
|
+
|
484
|
+
<span class='comment'># -----------------------
|
485
|
+
</span> <span class='comment'># Documentation Generator
|
486
|
+
</span> <span class='comment'># -----------------------
|
487
|
+
</span>
|
488
|
+
<span class='comment'># output = ''
|
489
|
+
</span> <span class='comment'># sections.each do |name, matches|
|
490
|
+
</span>
|
491
|
+
<span class='comment'># output << "--------------------------------------------------\n"
|
492
|
+
</span> <span class='comment'># output << "FILE: '#{name}'\n"
|
493
|
+
</span> <span class='comment'># output << "--------------------------------------------------\n"
|
494
|
+
</span> <span class='comment'># output << "\n\n"
|
495
|
+
</span>
|
496
|
+
<span class='comment'># matches.each do |m|
|
497
|
+
</span> <span class='comment'># output << m[:desc].to_s
|
498
|
+
</span> <span class='comment'># output << "\n"
|
499
|
+
</span> <span class='comment'># output << m[:name].to_s
|
500
|
+
</span> <span class='comment'># output << "\n\n\n"
|
501
|
+
</span> <span class='comment'># end
|
502
|
+
</span>
|
503
|
+
<span class='comment'># end
|
504
|
+
</span>
|
505
|
+
<span class='comment'># File.open('functions.axi', 'w+') { |f| f << output }
|
506
|
+
</span>
|
507
|
+
|
508
|
+
<span class='comment'># ----------------------
|
509
|
+
</span> <span class='comment'># RPC Function Generator
|
510
|
+
</span> <span class='comment'># ----------------------
|
511
|
+
</span>
|
512
|
+
<span class='comment'># Generate list of included and excluded files for sanity check.
|
513
|
+
</span> <span class='id identifier rubyid_directory_files'>directory_files</span> <span class='op'>=</span> <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>**/*.axi</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span> <span class='op'>+</span> <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>**/*.axs</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
514
|
+
|
515
|
+
<span class='id identifier rubyid_included_files'>included_files</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
516
|
+
<span class='id identifier rubyid_file_paths'>file_paths</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_path'>path</span><span class='op'>|</span> <span class='id identifier rubyid_included_files'>included_files</span> <span class='op'><<</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>\\</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n</span><span class='tstring_end'>"</span></span> <span class='rbrace'>}</span> <span class='comment'># TODO: As string.
|
517
|
+
</span>
|
518
|
+
<span class='id identifier rubyid_excluded_files'>excluded_files</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
519
|
+
<span class='lparen'>(</span><span class='id identifier rubyid_directory_files'>directory_files</span> <span class='op'>-</span> <span class='id identifier rubyid_file_paths'>file_paths</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_path'>path</span><span class='op'>|</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>\\</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_path'>path</span><span class='op'>|</span> <span class='id identifier rubyid_excluded_files'>excluded_files</span> <span class='op'><<</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>\\</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n</span><span class='tstring_end'>"</span></span> <span class='rbrace'>}</span>
|
520
|
+
|
521
|
+
<span class='id identifier rubyid_fn_symbols'>fn_symbols</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span> <span class='comment'># Symbol names to avoid duplicates.
|
522
|
+
</span> <span class='id identifier rubyid_output'>output</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
523
|
+
|
524
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='heredoc_beg'><<-EOS</span>
|
525
|
+
<span class='tstring_content'>(***********************************************************)
|
526
|
+
(* WARNING *)
|
527
|
+
(***********************************************************)
|
528
|
+
(* This file is automatically generated. *)
|
529
|
+
(***********************************************************)
|
530
|
+
|
531
|
+
/*
|
532
|
+
Included Files:
|
533
|
+
---------------
|
534
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_included_files'>included_files</span><span class='embexpr_end'>}</span><span class='tstring_content'>
|
535
|
+
|
536
|
+
Excluded Files:
|
537
|
+
---------------
|
538
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_excluded_files'>excluded_files</span><span class='embexpr_end'>}</span><span class='tstring_content'>
|
539
|
+
*/
|
540
|
+
|
541
|
+
|
542
|
+
#if_not_defined RPC_FUNCTION_LIST
|
543
|
+
#define RPC_FUNCTION_LIST 1
|
544
|
+
|
545
|
+
DEFINE_EVENT
|
546
|
+
|
547
|
+
data_event[vdvRPC]
|
548
|
+
{
|
549
|
+
string:
|
550
|
+
{
|
551
|
+
char f_name[255];
|
552
|
+
f_name = rpc_function_name(data.text);
|
553
|
+
|
554
|
+
</span><span class='heredoc_end'>EOS
|
555
|
+
</span>
|
556
|
+
<span class='id identifier rubyid_sections'>sections</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_matches'>matches</span><span class='op'>|</span>
|
557
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> /*------------------------------------------------------------------/\n</span><span class='tstring_end'>"</span></span>
|
558
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> FILE: '</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'>'\n</span><span class='tstring_end'>"</span></span>
|
559
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> /------------------------------------------------------------------*/\n\n</span><span class='tstring_end'>"</span></span>
|
560
|
+
|
561
|
+
|
562
|
+
<span class='id identifier rubyid_matches'>matches</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_fn'>fn</span><span class='op'>|</span>
|
563
|
+
<span class='id identifier rubyid_function_valid'>function_valid</span> <span class='op'>=</span> <span class='kw'>true</span>
|
564
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
565
|
+
<span class='id identifier rubyid_return_type'>return_type</span> <span class='op'>=</span> <span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:rtn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='kw'>nil</span> <span class='op'>:</span> <span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:rtn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
566
|
+
<span class='comment'># TODO: Calculate return value width.
|
567
|
+
</span> <span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
568
|
+
|
569
|
+
<span class='comment'># Store function name as symbol and check for duplicates.
|
570
|
+
</span> <span class='id identifier rubyid_fn_sym'>fn_sym</span> <span class='op'>=</span> <span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
571
|
+
|
572
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_fn_symbols'>fn_symbols</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_fn_sym'>fn_sym</span>
|
573
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> // Already defined.\n</span><span class='tstring_end'>"</span></span>
|
574
|
+
<span class='id identifier rubyid_function_valid'>function_valid</span> <span class='op'>=</span> <span class='kw'>false</span>
|
575
|
+
<span class='kw'>else</span>
|
576
|
+
<span class='id identifier rubyid_fn_symbols'>fn_symbols</span> <span class='op'><<</span> <span class='id identifier rubyid_fn_sym'>fn_sym</span>
|
577
|
+
<span class='kw'>end</span>
|
578
|
+
|
579
|
+
<span class='comment'># Retrieve params.
|
580
|
+
</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=</span> <span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:params</span><span class='rbracket'>]</span>
|
581
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='id identifier rubyid_param_exp'>param_exp</span>
|
582
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'><<</span> <span class='gvar'>$~</span>
|
583
|
+
<span class='id identifier rubyid_str'>str</span> <span class='op'>=</span> <span class='backref'>$'</span>
|
584
|
+
<span class='kw'>end</span>
|
585
|
+
|
586
|
+
<span class='comment'># Generate function handler.
|
587
|
+
</span> <span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> if(compare_string(f_name, '</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='embexpr_end'>}</span><span class='tstring_content'>'))\n</span><span class='tstring_end'>"</span></span>
|
588
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> {\n</span><span class='tstring_end'>"</span></span>
|
589
|
+
|
590
|
+
<span class='comment'># Generate return value.
|
591
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
592
|
+
<span class='kw'>case</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
593
|
+
<span class='kw'>when</span> <span class='symbol'>:integer</span>
|
594
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_return_type'>return_type</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='embexpr_end'>}</span><span class='tstring_content'> return_value;\n</span><span class='tstring_end'>"</span></span>
|
595
|
+
<span class='kw'>end</span>
|
596
|
+
|
597
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> \n</span><span class='tstring_end'>"</span></span>
|
598
|
+
<span class='kw'>end</span>
|
599
|
+
|
600
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> print(LOG_LEVEL_INFO, 'RPC: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>()');\n</span><span class='tstring_end'>"</span></span>
|
601
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> \n</span><span class='tstring_end'>"</span></span>
|
602
|
+
|
603
|
+
<span class='comment'># Set return value equal to function if return value exists.
|
604
|
+
</span> <span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span>
|
605
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>return_value = </span><span class='tstring_end'>"</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
606
|
+
|
607
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='tstring_end'>"</span></span>
|
608
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>);\n</span><span class='tstring_end'>"</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
609
|
+
|
610
|
+
<span class='id identifier rubyid_function_valid'>function_valid</span> <span class='op'>=</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='lbracket'>[</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='symbol'>:integer</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
611
|
+
|
612
|
+
<span class='comment'># Generate parameters.
|
613
|
+
</span> <span class='id identifier rubyid_param_index'>param_index</span> <span class='op'>=</span> <span class='int'>0</span>
|
614
|
+
<span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_param'>param</span><span class='op'>|</span>
|
615
|
+
<span class='id identifier rubyid_param_index'>param_index</span> <span class='op'>+=</span> <span class='int'>1</span>
|
616
|
+
|
617
|
+
<span class='id identifier rubyid_valid_params'>valid_params</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:integer</span><span class='rbracket'>]</span>
|
618
|
+
<span class='id identifier rubyid_type'>type</span> <span class='op'>=</span> <span class='id identifier rubyid_param'>param</span><span class='lbracket'>[</span><span class='symbol'>:type</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
619
|
+
|
620
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_valid_params'>valid_params</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_type'>type</span>
|
621
|
+
<span class='id identifier rubyid_function_valid'>function_valid</span> <span class='op'>=</span> <span class='kw'>false</span>
|
622
|
+
<span class='kw'>break</span>
|
623
|
+
<span class='kw'>end</span>
|
624
|
+
|
625
|
+
<span class='kw'>case</span> <span class='id identifier rubyid_type'>type</span>
|
626
|
+
<span class='kw'>when</span> <span class='symbol'>:integer</span>
|
627
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n rpc_get_arg_i(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_param_index'>param_index</span><span class='embexpr_end'>}</span><span class='tstring_content'>, data.text),</span><span class='tstring_end'>"</span></span>
|
628
|
+
<span class='kw'>end</span>
|
629
|
+
<span class='kw'>end</span>
|
630
|
+
|
631
|
+
<span class='comment'># Remove trailing comma from last arg.
|
632
|
+
</span> <span class='id identifier rubyid_fn_output'>fn_output</span><span class='period'>.</span><span class='id identifier rubyid_chop!'>chop!</span> <span class='kw'>unless</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
633
|
+
|
634
|
+
<span class='comment'># Close function.
|
635
|
+
</span> <span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n );\n</span><span class='tstring_end'>"</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
636
|
+
|
637
|
+
<span class='comment'># Print return value if exists.
|
638
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
639
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> \n</span><span class='tstring_end'>"</span></span>
|
640
|
+
|
641
|
+
<span class='kw'>case</span> <span class='id identifier rubyid_return_type'>return_type</span>
|
642
|
+
<span class='kw'>when</span> <span class='symbol'>:integer</span>
|
643
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> print(LOG_LEVEL_INFO, \"'RPC RTN: ', itoa(return_value)\");\n</span><span class='tstring_end'>"</span></span>
|
644
|
+
<span class='kw'>end</span>
|
645
|
+
<span class='kw'>end</span>
|
646
|
+
|
647
|
+
<span class='id identifier rubyid_fn_output'>fn_output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> }\n\n</span><span class='tstring_end'>"</span></span>
|
648
|
+
|
649
|
+
<span class='comment'># Store function string.
|
650
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_function_valid'>function_valid</span>
|
651
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='id identifier rubyid_fn_output'>fn_output</span>
|
652
|
+
<span class='kw'>else</span>
|
653
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> // Skipped:\n</span><span class='tstring_end'>"</span></span>
|
654
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> // </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_fn'>fn</span><span class='lbracket'>[</span><span class='symbol'>:params</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>)\n\n</span><span class='tstring_end'>"</span></span>
|
655
|
+
<span class='kw'>end</span>
|
656
|
+
<span class='kw'>end</span>
|
657
|
+
|
658
|
+
<span class='kw'>end</span>
|
659
|
+
|
660
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> }\n</span><span class='tstring_end'>"</span></span>
|
661
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>}\n</span><span class='tstring_end'>"</span></span>
|
662
|
+
<span class='id identifier rubyid_output'>output</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>#end_if\n\n</span><span class='tstring_end'>"</span></span>
|
663
|
+
|
664
|
+
|
665
|
+
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>include/rpc-functions.axi</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>w+</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span> <span class='id identifier rubyid_f'>f</span> <span class='op'><<</span> <span class='id identifier rubyid_output'>output</span> <span class='rbrace'>}</span>
|
666
|
+
<span class='kw'>end</span></pre>
|
667
|
+
</td>
|
668
|
+
</tr>
|
669
|
+
</table>
|
670
|
+
</div>
|
671
|
+
|
672
|
+
</div>
|
673
|
+
|
674
|
+
</div>
|
675
|
+
|
676
|
+
<div id="footer">
|
677
|
+
Generated on Fri Jan 30 17:24:15 2015 by
|
678
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
679
|
+
0.8.7.6 (ruby-2.1.3).
|
680
|
+
</div>
|
681
|
+
|
682
|
+
</body>
|
683
|
+
</html>
|