netlinx-compile 1.0.0 → 2.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.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -0
  3. data/bin/netlinx-compile +0 -0
  4. data/doc/NetLinx.html +119 -151
  5. data/doc/NetLinx/Compile.html +119 -148
  6. data/doc/NetLinx/Compile/Extension.html +115 -145
  7. data/doc/NetLinx/Compile/Extension/AXS.html +217 -154
  8. data/doc/NetLinx/Compile/ExtensionDiscovery.html +479 -321
  9. data/doc/NetLinx/Compile/ExtensionHandler.html +703 -396
  10. data/doc/NetLinx/Compile/Script.html +390 -282
  11. data/doc/NetLinx/Compiler.html +375 -288
  12. data/doc/NetLinx/CompilerResult.html +1102 -498
  13. data/doc/NetLinx/NoCompilerError.html +135 -155
  14. data/doc/NetLinx/SourceFile.html +608 -423
  15. data/doc/_index.html +215 -0
  16. data/doc/class_list.html +58 -0
  17. data/doc/css/common.css +1 -0
  18. data/doc/css/full_list.css +57 -0
  19. data/doc/css/style.css +339 -0
  20. data/doc/file.README.html +94 -0
  21. data/doc/file.license.html +73 -0
  22. data/doc/file_list.html +63 -0
  23. data/doc/frames.html +26 -0
  24. data/doc/index.html +94 -103
  25. data/doc/js/app.js +219 -0
  26. data/doc/js/full_list.js +181 -0
  27. data/doc/js/jquery.js +4 -18
  28. data/doc/method_list.html +261 -0
  29. data/doc/top-level-namespace.html +112 -0
  30. data/lib/test/netlinx/compilable.rb +13 -48
  31. data/lib/test/netlinx/compile/discoverable.rb +3 -14
  32. data/lib/test/netlinx/compile/invokable.rb +3 -15
  33. metadata +98 -67
  34. data/README.txt +0 -2
  35. data/doc/Test.html +0 -147
  36. data/doc/Test/NetLinx.html +0 -147
  37. data/doc/Test/NetLinx/Compilable.html +0 -148
  38. data/doc/Test/NetLinx/Compile.html +0 -146
  39. data/doc/Test/NetLinx/Compile/Discoverable.html +0 -148
  40. data/doc/Test/NetLinx/Compile/Invokable.html +0 -149
  41. data/doc/created.rid +0 -12
  42. data/doc/images/add.png +0 -0
  43. data/doc/images/arrow_up.png +0 -0
  44. data/doc/images/brick.png +0 -0
  45. data/doc/images/brick_link.png +0 -0
  46. data/doc/images/bug.png +0 -0
  47. data/doc/images/bullet_black.png +0 -0
  48. data/doc/images/bullet_toggle_minus.png +0 -0
  49. data/doc/images/bullet_toggle_plus.png +0 -0
  50. data/doc/images/date.png +0 -0
  51. data/doc/images/delete.png +0 -0
  52. data/doc/images/find.png +0 -0
  53. data/doc/images/loadingAnimation.gif +0 -0
  54. data/doc/images/macFFBgHack.png +0 -0
  55. data/doc/images/package.png +0 -0
  56. data/doc/images/page_green.png +0 -0
  57. data/doc/images/page_white_text.png +0 -0
  58. data/doc/images/page_white_width.png +0 -0
  59. data/doc/images/plugin.png +0 -0
  60. data/doc/images/ruby.png +0 -0
  61. data/doc/images/tag_blue.png +0 -0
  62. data/doc/images/tag_green.png +0 -0
  63. data/doc/images/transparent.png +0 -0
  64. data/doc/images/wrench.png +0 -0
  65. data/doc/images/wrench_orange.png +0 -0
  66. data/doc/images/zoom.png +0 -0
  67. data/doc/js/darkfish.js +0 -155
  68. data/doc/js/navigation.js +0 -142
  69. data/doc/js/search.js +0 -94
  70. data/doc/js/search_index.js +0 -1
  71. data/doc/js/searcher.js +0 -228
  72. data/doc/rdoc.css +0 -595
  73. data/doc/table_of_contents.html +0 -138
@@ -1,396 +1,703 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
-
7
- <title>class NetLinx::Compile::ExtensionHandler - RDoc Documentation</title>
8
-
9
- <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
10
-
11
- <script type="text/javascript">
12
- var rdoc_rel_prefix = "../../";
13
- </script>
14
-
15
- <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="../../js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="../../js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="../../js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="../../js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="../../js/darkfish.js"></script>
21
-
22
-
23
- <body id="top" class="class">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="../../index.html">Home</a>
28
- <a href="../../table_of_contents.html#classes">Classes</a>
29
- <a href="../../table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
33
-
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
35
- <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
38
- title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
44
-
45
-
46
-
47
-
48
- <div id="file-metadata">
49
- <nav id="file-list-section" class="section">
50
- <h3 class="section-header">Defined In</h3>
51
- <ul>
52
- <li>lib/netlinx/compile/extension_handler.rb
53
- </ul>
54
- </nav>
55
-
56
-
57
- </div>
58
-
59
- <div id="class-metadata">
60
-
61
- <nav id="parent-class-section" class="section">
62
- <h3 class="section-header">Parent</h3>
63
-
64
- <p class="link">Object
65
-
66
- </nav>
67
-
68
-
69
-
70
- <!-- Method Quickref -->
71
- <nav id="method-list-section" class="section">
72
- <h3 class="section-header">Methods</h3>
73
-
74
- <ul class="link-list">
75
-
76
- <li ><a href="#method-c-new">::new</a>
77
-
78
- <li ><a href="#method-i-3C-3C">#&lt;&lt;</a>
79
-
80
- <li ><a href="#method-i-include-3F">#include?</a>
81
-
82
- <li ><a href="#method-i-is_a_workspace-3F">#is_a_workspace?</a>
83
-
84
- </ul>
85
- </nav>
86
-
87
- </div>
88
-
89
- <div id="project-metadata">
90
-
91
- <nav id="classindex-section" class="section project-section">
92
- <h3 class="section-header">Class and Module Index</h3>
93
-
94
- <ul class="link-list">
95
-
96
- <li><a href="../../NetLinx.html">NetLinx</a>
97
-
98
- <li><a href="../../NetLinx/Compile.html">NetLinx::Compile</a>
99
-
100
- <li><a href="../../NetLinx/Compile/Extension.html">NetLinx::Compile::Extension</a>
101
-
102
- <li><a href="../../NetLinx/Compile/Extension/AXS.html">NetLinx::Compile::Extension::AXS</a>
103
-
104
- <li><a href="../../NetLinx/Compile/ExtensionDiscovery.html">NetLinx::Compile::ExtensionDiscovery</a>
105
-
106
- <li><a href="../../NetLinx/Compile/ExtensionHandler.html">NetLinx::Compile::ExtensionHandler</a>
107
-
108
- <li><a href="../../NetLinx/Compile/Script.html">NetLinx::Compile::Script</a>
109
-
110
- <li><a href="../../NetLinx/Compiler.html">NetLinx::Compiler</a>
111
-
112
- <li><a href="../../NetLinx/CompilerResult.html">NetLinx::CompilerResult</a>
113
-
114
- <li><a href="../../NetLinx/NoCompilerError.html">NetLinx::NoCompilerError</a>
115
-
116
- <li><a href="../../NetLinx/SourceFile.html">NetLinx::SourceFile</a>
117
-
118
- <li><a href="../../Test.html">Test</a>
119
-
120
- <li><a href="../../Test/NetLinx.html">Test::NetLinx</a>
121
-
122
- <li><a href="../../Test/NetLinx/Compilable.html">Test::NetLinx::Compilable</a>
123
-
124
- <li><a href="../../Test/NetLinx/Compile.html">Test::NetLinx::Compile</a>
125
-
126
- <li><a href="../../Test/NetLinx/Compile/Discoverable.html">Test::NetLinx::Compile::Discoverable</a>
127
-
128
- <li><a href="../../Test/NetLinx/Compile/Invokable.html">Test::NetLinx::Compile::Invokable</a>
129
-
130
- </ul>
131
- </nav>
132
-
133
- </div>
134
- </nav>
135
-
136
- <div id="documentation">
137
- <h1 class="class">class NetLinx::Compile::ExtensionHandler</h1>
138
-
139
- <div id="description" class="description">
140
-
141
- <p>Tells netlinx-compile which class handles the compiling of a set of file
142
- extensions.</p>
143
-
144
- </div><!-- description -->
145
-
146
-
147
-
148
-
149
- <section id="5Buntitled-5D" class="documentation-section">
150
-
151
-
152
-
153
-
154
-
155
-
156
-
157
- <!-- Attributes -->
158
- <section id="attribute-method-details" class="method-section section">
159
- <h3 class="section-header">Attributes</h3>
160
-
161
-
162
- <div id="attribute-i-extensions" class="method-detail">
163
- <div class="method-heading attribute-method-heading">
164
- <span class="method-name">extensions</span><span
165
- class="attribute-access-type">[RW]</span>
166
- </div>
167
-
168
- <div class="method-description">
169
-
170
- <p>A list of file extensions that this <a
171
- href="ExtensionHandler.html">ExtensionHandler</a> handles.</p>
172
-
173
- </div>
174
- </div>
175
-
176
- <div id="attribute-i-handler_class" class="method-detail">
177
- <div class="method-heading attribute-method-heading">
178
- <span class="method-name">handler_class</span><span
179
- class="attribute-access-type">[R]</span>
180
- </div>
181
-
182
- <div class="method-description">
183
-
184
- <p>The class to invoke to handle compiling a file extension specified in this
185
- <a href="ExtensionHandler.html">ExtensionHandler</a>.</p>
186
-
187
- </div>
188
- </div>
189
-
190
- <div id="attribute-i-usurps" class="method-detail">
191
- <div class="method-heading attribute-method-heading">
192
- <span class="method-name">usurps</span><span
193
- class="attribute-access-type">[RW]</span>
194
- </div>
195
-
196
- <div class="method-description">
197
-
198
- <p>A list of file extensions that this <a
199
- href="ExtensionHandler.html">ExtensionHandler</a> usurps. For example,
200
- third-party workspace extensions would probably usurp the .apw workspace
201
- extension.</p>
202
-
203
- </div>
204
- </div>
205
-
206
- </section><!-- attribute-method-details -->
207
-
208
-
209
- <!-- Methods -->
210
-
211
- <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
212
- <h3 class="section-header">Public Class Methods</h3>
213
-
214
-
215
- <div id="method-c-new" class="method-detail ">
216
-
217
- <div class="method-heading">
218
- <span class="method-name">new</span><span
219
- class="method-args">(**kvargs)</span>
220
-
221
- <span class="method-click-advice">click to toggle source</span>
222
-
223
- </div>
224
-
225
-
226
- <div class="method-description">
227
-
228
- <p>Parameters:</p>
229
-
230
- <pre class="ruby"><span class="ruby-identifier">extensions</span><span class="ruby-operator">:</span> <span class="ruby-constant">An</span> <span class="ruby-identifier">array</span> <span class="ruby-identifier">of</span> <span class="ruby-identifier">file</span> <span class="ruby-identifier">extensions</span> (<span class="ruby-identifier">without</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">leading</span> <span class="ruby-identifier">dot</span>)
231
- <span class="ruby-identifier">that</span> <span class="ruby-identifier">this</span> <span class="ruby-constant">ExtensionHandler</span> <span class="ruby-identifier">supports</span>.
232
-
233
- <span class="ruby-identifier">usurps</span><span class="ruby-operator">:</span> <span class="ruby-constant">Future</span>.
234
- <span class="ruby-constant">Lets</span> <span class="ruby-identifier">this</span> <span class="ruby-constant">ExtensionHandler</span> <span class="ruby-identifier">take</span> <span class="ruby-identifier">priority</span> <span class="ruby-identifier">over</span> <span class="ruby-identifier">other</span>
235
- <span class="ruby-identifier">ones</span>. <span class="ruby-constant">For</span> <span class="ruby-identifier">example</span>, <span class="ruby-identifier">most</span> <span class="ruby-identifier">third</span><span class="ruby-operator">-</span><span class="ruby-identifier">party</span> <span class="ruby-identifier">handlers</span> <span class="ruby-identifier">would</span>
236
- <span class="ruby-identifier">probably</span> <span class="ruby-identifier">usurp</span> <span class="ruby-identifier">the</span> .<span class="ruby-identifier">apw</span> <span class="ruby-constant">NetLinx</span> <span class="ruby-constant">Studio</span> <span class="ruby-identifier">workspace</span>
237
- <span class="ruby-identifier">extension</span>.
238
-
239
- <span class="ruby-identifier">is_a_workspace</span><span class="ruby-operator">:</span> <span class="ruby-constant">Set</span> <span class="ruby-identifier">to</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">this</span> <span class="ruby-constant">ExtensionHandler</span> <span class="ruby-identifier">is</span> <span class="ruby-keyword">for</span>
240
- <span class="ruby-identifier">compiling</span> <span class="ruby-identifier">a</span> <span class="ruby-identifier">workspace</span>. <span class="ruby-constant">False</span> <span class="ruby-identifier">by</span> <span class="ruby-identifier">default</span>. <span class="ruby-constant">This</span>
241
- <span class="ruby-identifier">parameter</span> <span class="ruby-identifier">assists</span> <span class="ruby-identifier">with</span> <span class="ruby-identifier">smart</span> <span class="ruby-identifier">compiling</span>, <span class="ruby-identifier">as</span>
242
- <span class="ruby-constant">ExtensionDiscovery</span> <span class="ruby-identifier">can</span> <span class="ruby-keyword">return</span> <span class="ruby-identifier">all</span> <span class="ruby-identifier">workspace_handlers</span>.
243
-
244
- <span class="ruby-identifier">handler_class</span><span class="ruby-operator">:</span> <span class="ruby-constant">A</span> <span class="ruby-identifier">reference</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">the</span> <span class="ruby-keyword">class</span> <span class="ruby-identifier">that</span> <span class="ruby-identifier">should</span> <span class="ruby-identifier">be</span> <span class="ruby-identifier">instantiated</span>
245
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">this</span> <span class="ruby-identifier">handler</span> <span class="ruby-identifier">is</span> <span class="ruby-identifier">selected</span>. <span class="ruby-constant">For</span> <span class="ruby-identifier">example</span>,
246
- <span class="ruby-constant">NetLinx</span><span class="ruby-operator">::</span><span class="ruby-constant">SourceFile</span> <span class="ruby-identifier">is</span> <span class="ruby-identifier">the</span> <span class="ruby-keyword">class</span> <span class="ruby-identifier">that</span> <span class="ruby-identifier">handles</span> <span class="ruby-identifier">files</span>
247
- <span class="ruby-identifier">with</span> <span class="ruby-identifier">the</span> .<span class="ruby-identifier">axs</span> <span class="ruby-identifier">extension</span>.
248
- </pre>
249
-
250
-
251
-
252
-
253
- <div class="method-source-code" id="new-source">
254
- <pre><span class="ruby-comment"># File lib/netlinx/compile/extension_handler.rb, line 37</span>
255
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-operator">**</span><span class="ruby-identifier">kvargs</span>)
256
- <span class="ruby-ivar">@extensions</span> = <span class="ruby-identifier">kvargs</span>.<span class="ruby-identifier">fetch</span> <span class="ruby-value">:extensions</span>, []
257
- <span class="ruby-ivar">@usurps</span> = <span class="ruby-identifier">kvargs</span>.<span class="ruby-identifier">fetch</span> <span class="ruby-value">:usurps</span>, []
258
- <span class="ruby-ivar">@is_a_workspace</span> = <span class="ruby-identifier">kvargs</span>.<span class="ruby-identifier">fetch</span> <span class="ruby-value">:is_a_workspace</span>, <span class="ruby-keyword">false</span>
259
- <span class="ruby-ivar">@handler_class</span> = <span class="ruby-identifier">kvargs</span>.<span class="ruby-identifier">fetch</span> <span class="ruby-value">:handler_class</span>, <span class="ruby-keyword">nil</span>
260
- <span class="ruby-keyword">end</span></pre>
261
- </div><!-- new-source -->
262
-
263
- </div>
264
-
265
-
266
-
267
-
268
- </div><!-- new-method -->
269
-
270
-
271
- </section><!-- public-class-method-details -->
272
-
273
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
274
- <h3 class="section-header">Public Instance Methods</h3>
275
-
276
-
277
- <div id="method-i-3C-3C" class="method-detail ">
278
-
279
- <div class="method-heading">
280
- <span class="method-name">&lt;&lt;</span><span
281
- class="method-args">(file_extension)</span>
282
-
283
- <span class="method-click-advice">click to toggle source</span>
284
-
285
- </div>
286
-
287
-
288
- <div class="method-description">
289
-
290
- <p>Alias to add a file extension.</p>
291
-
292
-
293
-
294
-
295
- <div class="method-source-code" id="3C-3C-source">
296
- <pre><span class="ruby-comment"># File lib/netlinx/compile/extension_handler.rb, line 45</span>
297
- <span class="ruby-keyword">def</span> <span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">file_extension</span>)
298
- <span class="ruby-ivar">@extensions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">parse_extension</span>(<span class="ruby-identifier">file_extension</span>)
299
- <span class="ruby-keyword">end</span></pre>
300
- </div><!-- 3C-3C-source -->
301
-
302
- </div>
303
-
304
-
305
-
306
-
307
- </div><!-- 3C-3C-method -->
308
-
309
-
310
- <div id="method-i-include-3F" class="method-detail ">
311
-
312
- <div class="method-heading">
313
- <span class="method-name">include?</span><span
314
- class="method-args">(file_extension)</span>
315
-
316
- <span class="method-click-advice">click to toggle source</span>
317
-
318
- </div>
319
-
320
-
321
- <div class="method-description">
322
-
323
- <p>Returns true if this <a href="ExtensionHandler.html">ExtensionHandler</a>
324
- can handle the specified file extension.</p>
325
-
326
-
327
-
328
-
329
- <div class="method-source-code" id="include-3F-source">
330
- <pre><span class="ruby-comment"># File lib/netlinx/compile/extension_handler.rb, line 64</span>
331
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">include?</span>(<span class="ruby-identifier">file_extension</span>)
332
- <span class="ruby-ivar">@extensions</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">parse_extension</span>(<span class="ruby-identifier">file_extension</span>)
333
- <span class="ruby-keyword">end</span></pre>
334
- </div><!-- include-3F-source -->
335
-
336
- </div>
337
-
338
-
339
-
340
-
341
- </div><!-- include-3F-method -->
342
-
343
-
344
- <div id="method-i-is_a_workspace-3F" class="method-detail ">
345
-
346
- <div class="method-heading">
347
- <span class="method-name">is_a_workspace?</span><span
348
- class="method-args">()</span>
349
-
350
- <span class="method-click-advice">click to toggle source</span>
351
-
352
- </div>
353
-
354
-
355
- <div class="method-description">
356
-
357
- <p>Returns true if the <a href="ExtensionHandler.html">ExtensionHandler</a>
358
- handles a workspace file (as opposed to a source code file).</p>
359
-
360
- <p>Workspace files are significant because they contain information about a
361
- project, connection settings for a master, and possibly multiple systems
362
- that need to be compiled. Therefore, when smart-compiling, workspaces need
363
- to be distinguished from source code files because discovering a workspace
364
- should be considered a better match than discovering a source code file.</p>
365
-
366
-
367
-
368
-
369
- <div class="method-source-code" id="is_a_workspace-3F-source">
370
- <pre><span class="ruby-comment"># File lib/netlinx/compile/extension_handler.rb, line 58</span>
371
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">is_a_workspace?</span>
372
- <span class="ruby-ivar">@is_a_workspace</span>
373
- <span class="ruby-keyword">end</span></pre>
374
- </div><!-- is_a_workspace-3F-source -->
375
-
376
- </div>
377
-
378
-
379
-
380
-
381
- </div><!-- is_a_workspace-3F-method -->
382
-
383
-
384
- </section><!-- public-instance-method-details -->
385
-
386
- </section><!-- 5Buntitled-5D -->
387
-
388
- </div><!-- documentation -->
389
-
390
-
391
- <footer id="validator-badges">
392
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
393
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 4.0.1.
394
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
395
- </footer>
396
-
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: NetLinx::Compile::ExtensionHandler
8
+
9
+ &mdash; 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#!NetLinx/Compile/ExtensionHandler.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 (E)</a> &raquo;
35
+ <span class='title'><span class='object_link'><a href="../../NetLinx.html" title="NetLinx (module)">NetLinx</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Compile.html" title="NetLinx::Compile (module)">Compile</a></span></span>
36
+ &raquo;
37
+ <span class="title">ExtensionHandler</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: NetLinx::Compile::ExtensionHandler
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">NetLinx::Compile::ExtensionHandler</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/compile/extension_handler.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>Tells netlinx-compile which class handles the compiling of a set of file
106
+ extensions.</p>
107
+
108
+
109
+ </div>
110
+ </div>
111
+ <div class="tags">
112
+
113
+
114
+ </div>
115
+
116
+
117
+
118
+ <h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
119
+ <ul class="summary">
120
+
121
+ <li class="public ">
122
+ <span class="summary_signature">
123
+
124
+ <a href="#extensions-instance_method" title="#extensions (instance method)">- (Object) <strong>extensions</strong> </a>
125
+
126
+
127
+
128
+ </span>
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+ <span class="summary_desc"><div class='inline'>
142
+ <p>A list of file extensions that this ExtensionHandler handles.</p>
143
+ </div></span>
144
+
145
+ </li>
146
+
147
+
148
+ <li class="public ">
149
+ <span class="summary_signature">
150
+
151
+ <a href="#handler_class-instance_method" title="#handler_class (instance method)">- (Object) <strong>handler_class</strong> </a>
152
+
153
+
154
+
155
+ </span>
156
+
157
+
158
+
159
+
160
+ <span class="note title readonly">readonly</span>
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+ <span class="summary_desc"><div class='inline'>
171
+ <p>The class to invoke to handle compiling a file extension specified in this
172
+ ExtensionHandler.</p>
173
+ </div></span>
174
+
175
+ </li>
176
+
177
+
178
+ <li class="public ">
179
+ <span class="summary_signature">
180
+
181
+ <a href="#usurps-instance_method" title="#usurps (instance method)">- (Object) <strong>usurps</strong> </a>
182
+
183
+
184
+
185
+ </span>
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+ <span class="summary_desc"><div class='inline'>
199
+ <p>A list of file extensions that this ExtensionHandler usurps.</p>
200
+ </div></span>
201
+
202
+ </li>
203
+
204
+
205
+ </ul>
206
+
207
+
208
+
209
+
210
+
211
+ <h2>
212
+ Instance Method Summary
213
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
214
+ </h2>
215
+
216
+ <ul class="summary">
217
+
218
+ <li class="public ">
219
+ <span class="summary_signature">
220
+
221
+ <a href="#%3C%3C-instance_method" title="#&lt;&lt; (instance method)">- (Object) <strong>&lt;&lt;</strong>(file_extension) </a>
222
+
223
+
224
+
225
+ </span>
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+ <span class="summary_desc"><div class='inline'>
236
+ <p>Alias to add a file extension.</p>
237
+ </div></span>
238
+
239
+ </li>
240
+
241
+
242
+ <li class="public ">
243
+ <span class="summary_signature">
244
+
245
+ <a href="#include%3F-instance_method" title="#include? (instance method)">- (Boolean) <strong>include?</strong>(file_extension) </a>
246
+
247
+
248
+
249
+ </span>
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+ <span class="summary_desc"><div class='inline'>
260
+ <p>Returns true if this ExtensionHandler can handle the specified file
261
+ extension.</p>
262
+ </div></span>
263
+
264
+ </li>
265
+
266
+
267
+ <li class="public ">
268
+ <span class="summary_signature">
269
+
270
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (ExtensionHandler) <strong>initialize</strong>(**kvargs) </a>
271
+
272
+
273
+
274
+ </span>
275
+
276
+
277
+ <span class="note title constructor">constructor</span>
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+ <span class="summary_desc"><div class='inline'>
287
+ <p>Parameters: extensions: An array of file extensions (without the leading
288
+ dot) that this ExtensionHandler supports.</p>
289
+ </div></span>
290
+
291
+ </li>
292
+
293
+
294
+ <li class="public ">
295
+ <span class="summary_signature">
296
+
297
+ <a href="#is_a_workspace%3F-instance_method" title="#is_a_workspace? (instance method)">- (Boolean) <strong>is_a_workspace?</strong> </a>
298
+
299
+
300
+
301
+ </span>
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+
310
+
311
+ <span class="summary_desc"><div class='inline'>
312
+ <p>Returns true if the ExtensionHandler handles a workspace file (as opposed
313
+ to a source code file).</p>
314
+ </div></span>
315
+
316
+ </li>
317
+
318
+
319
+ </ul>
320
+
321
+
322
+ <div id="constructor_details" class="method_details_list">
323
+ <h2>Constructor Details</h2>
324
+
325
+ <div class="method_details first">
326
+ <h3 class="signature first" id="initialize-instance_method">
327
+
328
+ - (<tt><span class='object_link'><a href="" title="NetLinx::Compile::ExtensionHandler (class)">ExtensionHandler</a></span></tt>) <strong>initialize</strong>(**kvargs)
329
+
330
+
331
+
332
+
333
+
334
+ </h3><div class="docstring">
335
+ <div class="discussion">
336
+
337
+ <p>Parameters:</p>
338
+
339
+ <pre class="code ruby"><code class="ruby">extensions: An array of file extensions (without the leading dot)
340
+ that this ExtensionHandler supports.
341
+
342
+ usurps: Future.
343
+ Lets this ExtensionHandler take priority over other
344
+ ones. For example, most third-party handlers would
345
+ probably usurp the .apw NetLinx Studio workspace
346
+ extension.
347
+
348
+ is_a_workspace: Set to true if this ExtensionHandler is for
349
+ compiling a workspace. False by default. This
350
+ parameter assists with smart compiling, as
351
+ ExtensionDiscovery can return all workspace_handlers.
352
+
353
+ handler_class: A reference to the class that should be instantiated
354
+ if this handler is selected. For example,
355
+ NetLinx::SourceFile is the class that handles files
356
+ with the .axs extension.</code></pre>
357
+
358
+
359
+ </div>
360
+ </div>
361
+ <div class="tags">
362
+
363
+
364
+ </div><table class="source_code">
365
+ <tr>
366
+ <td>
367
+ <pre class="lines">
368
+
369
+
370
+ 37
371
+ 38
372
+ 39
373
+ 40
374
+ 41
375
+ 42</pre>
376
+ </td>
377
+ <td>
378
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 37</span>
379
+
380
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>**</span><span class='id identifier rubyid_kvargs'>kvargs</span><span class='rparen'>)</span>
381
+ <span class='ivar'>@extensions</span> <span class='op'>=</span> <span class='id identifier rubyid_kvargs'>kvargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:extensions</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
382
+ <span class='ivar'>@usurps</span> <span class='op'>=</span> <span class='id identifier rubyid_kvargs'>kvargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:usurps</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
383
+ <span class='ivar'>@is_a_workspace</span> <span class='op'>=</span> <span class='id identifier rubyid_kvargs'>kvargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:is_a_workspace</span><span class='comma'>,</span> <span class='kw'>false</span>
384
+ <span class='ivar'>@handler_class</span> <span class='op'>=</span> <span class='id identifier rubyid_kvargs'>kvargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:handler_class</span><span class='comma'>,</span> <span class='kw'>nil</span>
385
+ <span class='kw'>end</span></pre>
386
+ </td>
387
+ </tr>
388
+ </table>
389
+ </div>
390
+
391
+ </div>
392
+
393
+ <div id="instance_attr_details" class="attr_details">
394
+ <h2>Instance Attribute Details</h2>
395
+
396
+
397
+ <span id="extensions=-instance_method"></span>
398
+ <div class="method_details first">
399
+ <h3 class="signature first" id="extensions-instance_method">
400
+
401
+ - (<tt>Object</tt>) <strong>extensions</strong>
402
+
403
+
404
+
405
+
406
+
407
+ </h3><div class="docstring">
408
+ <div class="discussion">
409
+
410
+ <p>A list of file extensions that this ExtensionHandler handles.</p>
411
+
412
+
413
+ </div>
414
+ </div>
415
+ <div class="tags">
416
+
417
+
418
+ </div><table class="source_code">
419
+ <tr>
420
+ <td>
421
+ <pre class="lines">
422
+
423
+
424
+ 7
425
+ 8
426
+ 9</pre>
427
+ </td>
428
+ <td>
429
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 7</span>
430
+
431
+ <span class='kw'>def</span> <span class='id identifier rubyid_extensions'>extensions</span>
432
+ <span class='ivar'>@extensions</span>
433
+ <span class='kw'>end</span></pre>
434
+ </td>
435
+ </tr>
436
+ </table>
437
+ </div>
438
+
439
+
440
+ <span id=""></span>
441
+ <div class="method_details ">
442
+ <h3 class="signature " id="handler_class-instance_method">
443
+
444
+ - (<tt>Object</tt>) <strong>handler_class</strong> <span class="extras">(readonly)</span>
445
+
446
+
447
+
448
+
449
+
450
+ </h3><div class="docstring">
451
+ <div class="discussion">
452
+
453
+ <p>The class to invoke to handle compiling a file extension specified in this
454
+ ExtensionHandler.</p>
455
+
456
+
457
+ </div>
458
+ </div>
459
+ <div class="tags">
460
+
461
+
462
+ </div><table class="source_code">
463
+ <tr>
464
+ <td>
465
+ <pre class="lines">
466
+
467
+
468
+ 16
469
+ 17
470
+ 18</pre>
471
+ </td>
472
+ <td>
473
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 16</span>
474
+
475
+ <span class='kw'>def</span> <span class='id identifier rubyid_handler_class'>handler_class</span>
476
+ <span class='ivar'>@handler_class</span>
477
+ <span class='kw'>end</span></pre>
478
+ </td>
479
+ </tr>
480
+ </table>
481
+ </div>
482
+
483
+
484
+ <span id="usurps=-instance_method"></span>
485
+ <div class="method_details ">
486
+ <h3 class="signature " id="usurps-instance_method">
487
+
488
+ - (<tt>Object</tt>) <strong>usurps</strong>
489
+
490
+
491
+
492
+
493
+
494
+ </h3><div class="docstring">
495
+ <div class="discussion">
496
+
497
+ <p>A list of file extensions that this ExtensionHandler usurps. For example,
498
+ third-party workspace extensions would probably usurp the .apw workspace
499
+ extension.</p>
500
+
501
+
502
+ </div>
503
+ </div>
504
+ <div class="tags">
505
+
506
+
507
+ </div><table class="source_code">
508
+ <tr>
509
+ <td>
510
+ <pre class="lines">
511
+
512
+
513
+ 12
514
+ 13
515
+ 14</pre>
516
+ </td>
517
+ <td>
518
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 12</span>
519
+
520
+ <span class='kw'>def</span> <span class='id identifier rubyid_usurps'>usurps</span>
521
+ <span class='ivar'>@usurps</span>
522
+ <span class='kw'>end</span></pre>
523
+ </td>
524
+ </tr>
525
+ </table>
526
+ </div>
527
+
528
+ </div>
529
+
530
+
531
+ <div id="instance_method_details" class="method_details_list">
532
+ <h2>Instance Method Details</h2>
533
+
534
+
535
+ <div class="method_details first">
536
+ <h3 class="signature first" id="<<-instance_method">
537
+
538
+ - (<tt>Object</tt>) <strong>&lt;&lt;</strong>(file_extension)
539
+
540
+
541
+
542
+
543
+
544
+ </h3><div class="docstring">
545
+ <div class="discussion">
546
+
547
+ <p>Alias to add a file extension.</p>
548
+
549
+
550
+ </div>
551
+ </div>
552
+ <div class="tags">
553
+
554
+
555
+ </div><table class="source_code">
556
+ <tr>
557
+ <td>
558
+ <pre class="lines">
559
+
560
+
561
+ 45
562
+ 46
563
+ 47</pre>
564
+ </td>
565
+ <td>
566
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 45</span>
567
+
568
+ <span class='kw'>def</span> <span class='op'>&lt;&lt;</span><span class='lparen'>(</span><span class='id identifier rubyid_file_extension'>file_extension</span><span class='rparen'>)</span>
569
+ <span class='ivar'>@extensions</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_parse_extension'>parse_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_file_extension'>file_extension</span><span class='rparen'>)</span>
570
+ <span class='kw'>end</span></pre>
571
+ </td>
572
+ </tr>
573
+ </table>
574
+ </div>
575
+
576
+ <div class="method_details ">
577
+ <h3 class="signature " id="include?-instance_method">
578
+
579
+ - (<tt>Boolean</tt>) <strong>include?</strong>(file_extension)
580
+
581
+
582
+
583
+
584
+
585
+ </h3><div class="docstring">
586
+ <div class="discussion">
587
+
588
+ <p>Returns true if this ExtensionHandler can handle the specified file
589
+ extension.</p>
590
+
591
+
592
+ </div>
593
+ </div>
594
+ <div class="tags">
595
+
596
+ <p class="tag_title">Returns:</p>
597
+ <ul class="return">
598
+
599
+ <li>
600
+
601
+
602
+ <span class='type'>(<tt>Boolean</tt>)</span>
603
+
604
+
605
+
606
+ </li>
607
+
608
+ </ul>
609
+
610
+ </div><table class="source_code">
611
+ <tr>
612
+ <td>
613
+ <pre class="lines">
614
+
615
+
616
+ 64
617
+ 65
618
+ 66</pre>
619
+ </td>
620
+ <td>
621
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 64</span>
622
+
623
+ <span class='kw'>def</span> <span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_file_extension'>file_extension</span><span class='rparen'>)</span>
624
+ <span class='ivar'>@extensions</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_parse_extension'>parse_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_file_extension'>file_extension</span><span class='rparen'>)</span>
625
+ <span class='kw'>end</span></pre>
626
+ </td>
627
+ </tr>
628
+ </table>
629
+ </div>
630
+
631
+ <div class="method_details ">
632
+ <h3 class="signature " id="is_a_workspace?-instance_method">
633
+
634
+ - (<tt>Boolean</tt>) <strong>is_a_workspace?</strong>
635
+
636
+
637
+
638
+
639
+
640
+ </h3><div class="docstring">
641
+ <div class="discussion">
642
+
643
+ <p>Returns true if the ExtensionHandler handles a workspace file (as opposed
644
+ to a source code file).</p>
645
+
646
+ <p>Workspace files are significant because they contain information about a
647
+ project, connection settings for a master, and possibly multiple systems
648
+ that need to be compiled. Therefore, when smart-compiling, workspaces need
649
+ to be distinguished from source code files because discovering a workspace
650
+ should be considered a better match than discovering a source code file.</p>
651
+
652
+
653
+ </div>
654
+ </div>
655
+ <div class="tags">
656
+
657
+ <p class="tag_title">Returns:</p>
658
+ <ul class="return">
659
+
660
+ <li>
661
+
662
+
663
+ <span class='type'>(<tt>Boolean</tt>)</span>
664
+
665
+
666
+
667
+ </li>
668
+
669
+ </ul>
670
+
671
+ </div><table class="source_code">
672
+ <tr>
673
+ <td>
674
+ <pre class="lines">
675
+
676
+
677
+ 58
678
+ 59
679
+ 60</pre>
680
+ </td>
681
+ <td>
682
+ <pre class="code"><span class="info file"># File 'lib/netlinx/compile/extension_handler.rb', line 58</span>
683
+
684
+ <span class='kw'>def</span> <span class='id identifier rubyid_is_a_workspace?'>is_a_workspace?</span>
685
+ <span class='ivar'>@is_a_workspace</span>
686
+ <span class='kw'>end</span></pre>
687
+ </td>
688
+ </tr>
689
+ </table>
690
+ </div>
691
+
692
+ </div>
693
+
694
+ </div>
695
+
696
+ <div id="footer">
697
+ Generated on Mon Jan 26 15:35:29 2015 by
698
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
699
+ 0.8.7.6 (ruby-2.1.5).
700
+ </div>
701
+
702
+ </body>
703
+ </html>