sprout 1.0.35.pre → 1.1.2.pre

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sprout might be problematic. Click here for more details.

Files changed (234) hide show
  1. data/Gemfile +1 -1
  2. data/Gemfile.lock +0 -2
  3. data/README.textile +1 -1
  4. data/VERSION +1 -1
  5. data/lib/sprout/concern.rb +5 -7
  6. data/lib/sprout/daemon.rb +183 -143
  7. data/lib/sprout/executable/base.rb +564 -0
  8. data/lib/sprout/executable.rb +1 -550
  9. data/lib/sprout/generator/base.rb +2 -3
  10. data/lib/sprout/generator.rb +2 -1
  11. data/lib/sprout/generators/ruby/templates/ruby_base.rb +1 -2
  12. data/lib/sprout/library.rb +3 -3
  13. data/lib/sprout/output_buffer.rb +35 -0
  14. data/lib/sprout/process_runner.rb +68 -17
  15. data/lib/sprout/progress_bar.rb +5 -5
  16. data/lib/sprout/remote_file_target.rb +1 -1
  17. data/lib/sprout/system/base_system.rb +3 -3
  18. data/lib/sprout/system/unix_system.rb +1 -1
  19. data/lib/sprout/{test/sprout_test_case.rb → test_helper.rb} +214 -14
  20. data/lib/sprout/version.rb +1 -1
  21. data/lib/sprout.rb +133 -2
  22. data/rakefile.rb +2 -0
  23. data/test/fixtures/examples/echo_inputs.rb +1 -2
  24. data/test/fixtures/executable/fdb.rb +7 -9
  25. data/test/fixtures/executable/flex3sdk_gem/fdb +49 -18
  26. data/test/fixtures/executable/mxmlc.rb +1 -2
  27. data/test/fixtures/executable/subclass/executable_subclass.rb +0 -1
  28. data/test/fixtures/executable/subclass/executable_superclass.rb +1 -2
  29. data/test/fixtures/specification/flex4sdk.rb +35 -24
  30. data/test/unit/archive_unpacker_test.rb +1 -1
  31. data/test/unit/boolean_param_test.rb +1 -1
  32. data/test/unit/daemon_test.rb +35 -3
  33. data/test/unit/executable_option_parser_test.rb +2 -3
  34. data/test/unit/executable_param_test.rb +1 -1
  35. data/test/unit/executable_test.rb +8 -15
  36. data/test/unit/fake_other_executable.rb +1 -2
  37. data/test/unit/file_param_test.rb +1 -1
  38. data/test/unit/file_target_test.rb +1 -1
  39. data/test/unit/files_param_test.rb +1 -1
  40. data/test/unit/generator_generator_test.rb +1 -1
  41. data/test/unit/generator_test.rb +1 -1
  42. data/test/unit/library_generator_test.rb +1 -1
  43. data/test/unit/library_test.rb +1 -1
  44. data/test/unit/osx_system_test.rb +1 -1
  45. data/test/unit/path_param_test.rb +1 -1
  46. data/test/unit/paths_param_test.rb +1 -1
  47. data/test/unit/platform_test.rb +1 -1
  48. data/test/unit/process_runner_test.rb +1 -1
  49. data/test/unit/rdoc_parser_test.rb +1 -1
  50. data/test/unit/remote_file_loader_test.rb +1 -1
  51. data/test/unit/remote_file_target_test.rb +1 -1
  52. data/test/unit/ruby_feature_test.rb +1 -1
  53. data/test/unit/ruby_generator_test.rb +1 -1
  54. data/test/unit/specification_test.rb +8 -1
  55. data/test/unit/sprout_test.rb +2 -2
  56. data/test/unit/string_param_test.rb +1 -1
  57. data/test/unit/string_test.rb +1 -1
  58. data/test/unit/strings_param_test.rb +1 -1
  59. data/test/unit/test_helper.rb +33 -1
  60. data/test/unit/tool_generator_test.rb +1 -1
  61. data/test/unit/unix_system_test.rb +1 -1
  62. data/test/unit/user_test.rb +1 -1
  63. data/test/unit/vista_system_test.rb +1 -1
  64. data/test/unit/win_nix_system_test.rb +1 -1
  65. data/test/unit/win_system_test.rb +1 -1
  66. data/test-stderr.log +1 -0
  67. data/test-stdout.log +237 -0
  68. metadata +15 -190
  69. data/doc/Dir.html +0 -288
  70. data/doc/Rake/Task.html +0 -184
  71. data/doc/Sprout/ArchiveUnpacker.html +0 -1246
  72. data/doc/Sprout/Base/ClassMethods.html +0 -434
  73. data/doc/Sprout/Base.html +0 -126
  74. data/doc/Sprout/Concern.html +0 -353
  75. data/doc/Sprout/Daemon/ClassMethods.html +0 -244
  76. data/doc/Sprout/Daemon/InstanceMethods.html +0 -601
  77. data/doc/Sprout/Daemon.html +0 -166
  78. data/doc/Sprout/Errors/ArchiveUnpackerError.html +0 -125
  79. data/doc/Sprout/Errors/DestinationExistsError.html +0 -133
  80. data/doc/Sprout/Errors/DuplicateMemberError.html +0 -132
  81. data/doc/Sprout/Errors/ExecutableError.html +0 -125
  82. data/doc/Sprout/Errors/ExecutableRegistrationError.html +0 -132
  83. data/doc/Sprout/Errors/ExecutionError.html +0 -121
  84. data/doc/Sprout/Errors/GeneratorError.html +0 -125
  85. data/doc/Sprout/Errors/InvalidArgumentError.html +0 -132
  86. data/doc/Sprout/Errors/LoadError.html +0 -121
  87. data/doc/Sprout/Errors/MissingArgumentError.html +0 -132
  88. data/doc/Sprout/Errors/MissingExecutableError.html +0 -132
  89. data/doc/Sprout/Errors/MissingGeneratorError.html +0 -132
  90. data/doc/Sprout/Errors/MissingTemplateError.html +0 -132
  91. data/doc/Sprout/Errors/ProcessRunnerError.html +0 -121
  92. data/doc/Sprout/Errors/RemoteFileLoaderError.html +0 -110
  93. data/doc/Sprout/Errors/SproutError.html +0 -114
  94. data/doc/Sprout/Errors/UnknownArchiveType.html +0 -122
  95. data/doc/Sprout/Errors/UsageError.html +0 -121
  96. data/doc/Sprout/Errors/ValidationError.html +0 -121
  97. data/doc/Sprout/Errors/VersionRequirementNotMetError.html +0 -121
  98. data/doc/Sprout/Errors.html +0 -101
  99. data/doc/Sprout/Executable/Boolean.html +0 -483
  100. data/doc/Sprout/Executable/ClassMethods.html +0 -417
  101. data/doc/Sprout/Executable/CollectionParam.html +0 -483
  102. data/doc/Sprout/Executable/FileParam.html +0 -484
  103. data/doc/Sprout/Executable/Files.html +0 -292
  104. data/doc/Sprout/Executable/InstanceMethods.html +0 -2006
  105. data/doc/Sprout/Executable/Number.html +0 -141
  106. data/doc/Sprout/Executable/Param.html +0 -2818
  107. data/doc/Sprout/Executable/ParameterFactory.html +0 -232
  108. data/doc/Sprout/Executable/Path.html +0 -223
  109. data/doc/Sprout/Executable/Paths.html +0 -253
  110. data/doc/Sprout/Executable/StringParam.html +0 -213
  111. data/doc/Sprout/Executable/Strings.html +0 -167
  112. data/doc/Sprout/Executable/Url.html +0 -160
  113. data/doc/Sprout/Executable/Urls.html +0 -170
  114. data/doc/Sprout/Executable.html +0 -173
  115. data/doc/Sprout/FileTarget.html +0 -1109
  116. data/doc/Sprout/Generator/Base.html +0 -1626
  117. data/doc/Sprout/Generator/Command.html +0 -690
  118. data/doc/Sprout/Generator/DirectoryManifest.html +0 -476
  119. data/doc/Sprout/Generator/FileManifest.html +0 -572
  120. data/doc/Sprout/Generator/Manifest.html +0 -377
  121. data/doc/Sprout/Generator/TemplateManifest.html +0 -196
  122. data/doc/Sprout/Generator.html +0 -689
  123. data/doc/Sprout/GeneratorGenerator.html +0 -1018
  124. data/doc/Sprout/Library.html +0 -1141
  125. data/doc/Sprout/LibraryGenerator.html +0 -309
  126. data/doc/Sprout/Log.html +0 -496
  127. data/doc/Sprout/MXMLC.html +0 -6373
  128. data/doc/Sprout/Platform.html +0 -714
  129. data/doc/Sprout/ProcessRunner.html +0 -1352
  130. data/doc/Sprout/ProgressBar.html +0 -376
  131. data/doc/Sprout/ProgressBarImpl.html +0 -2119
  132. data/doc/Sprout/ProgressBarManager.html +0 -434
  133. data/doc/Sprout/ProgressBarOutputStream.html +0 -416
  134. data/doc/Sprout/RDocParser.html +0 -211
  135. data/doc/Sprout/RemoteFileLoader.html +0 -172
  136. data/doc/Sprout/RemoteFileTarget.html +0 -679
  137. data/doc/Sprout/ReversedProgressBar.html +0 -194
  138. data/doc/Sprout/RubyFeature/ClassMethods.html +0 -1065
  139. data/doc/Sprout/RubyFeature.html +0 -155
  140. data/doc/Sprout/RubyGenerator.html +0 -764
  141. data/doc/Sprout/Specification.html +0 -767
  142. data/doc/Sprout/System/BaseSystem.html +0 -1455
  143. data/doc/Sprout/System/JavaSystem.html +0 -122
  144. data/doc/Sprout/System/OSXSystem.html +0 -335
  145. data/doc/Sprout/System/ThreadMock.html +0 -193
  146. data/doc/Sprout/System/UnixSystem.html +0 -584
  147. data/doc/Sprout/System/VistaSystem.html +0 -251
  148. data/doc/Sprout/System/WinNixSystem.html +0 -325
  149. data/doc/Sprout/System/WinSystem.html +0 -571
  150. data/doc/Sprout/System.html +0 -191
  151. data/doc/Sprout/ToolGenerator.html +0 -931
  152. data/doc/Sprout/VERSION.html +0 -128
  153. data/doc/Sprout.html +0 -144
  154. data/doc/SproutTestCase.html +0 -1412
  155. data/doc/String.html +0 -286
  156. data/doc/_index.html +0 -1035
  157. data/doc/class_list.html +0 -36
  158. data/doc/css/common.css +0 -1
  159. data/doc/css/full_list.css +0 -53
  160. data/doc/css/style.css +0 -310
  161. data/doc/file.README.html +0 -96
  162. data/doc/file.archive_unpacker.html +0 -288
  163. data/doc/file.base.html +0 -208
  164. data/doc/file.base_system.html +0 -278
  165. data/doc/file.boolean.html +0 -135
  166. data/doc/file.collection_param.html +0 -139
  167. data/doc/file.command.html +0 -126
  168. data/doc/file.concern.html +0 -136
  169. data/doc/file.daemon.html +0 -309
  170. data/doc/file.dir.html +0 -76
  171. data/doc/file.directory_manifest.html +0 -122
  172. data/doc/file.errors.html +0 -147
  173. data/doc/file.executable.html +0 -638
  174. data/doc/file.file_manifest.html +0 -109
  175. data/doc/file.file_param.html +0 -120
  176. data/doc/file.file_target.html +0 -140
  177. data/doc/file.files.html +0 -85
  178. data/doc/file.generator.html +0 -296
  179. data/doc/file.generator_class.html +0 -72
  180. data/doc/file.generator_generator.html +0 -137
  181. data/doc/file.generator_test.html +0 -92
  182. data/doc/file.generator_test_helper.html +0 -67
  183. data/doc/file.java_system.html +0 -62
  184. data/doc/file.library.html +0 -291
  185. data/doc/file.library_generator.html +0 -74
  186. data/doc/file.log.html +0 -100
  187. data/doc/file.manifest.html +0 -67
  188. data/doc/file.mxmlc.html +0 -740
  189. data/doc/file.number.html +0 -67
  190. data/doc/file.osx_system.html +0 -79
  191. data/doc/file.param.html +0 -491
  192. data/doc/file.parameter_factory.html +0 -119
  193. data/doc/file.path.html +0 -81
  194. data/doc/file.paths.html +0 -80
  195. data/doc/file.platform.html +0 -124
  196. data/doc/file.process_runner.html +0 -224
  197. data/doc/file.progress_bar.html +0 -390
  198. data/doc/file.rdoc_parser.html +0 -145
  199. data/doc/file.remote_file_loader.html +0 -117
  200. data/doc/file.remote_file_target.html +0 -176
  201. data/doc/file.ruby_base.html +0 -64
  202. data/doc/file.ruby_feature.html +0 -244
  203. data/doc/file.ruby_generator.html +0 -118
  204. data/doc/file.ruby_input.html +0 -62
  205. data/doc/file.ruby_test_case.html +0 -78
  206. data/doc/file.ruby_test_helper.html +0 -61
  207. data/doc/file.specification.html +0 -248
  208. data/doc/file.sprout.html +0 -64
  209. data/doc/file.sprout_test_case.html +0 -280
  210. data/doc/file.string.html +0 -72
  211. data/doc/file.string_param.html +0 -76
  212. data/doc/file.strings.html +0 -71
  213. data/doc/file.system.html +0 -86
  214. data/doc/file.template_manifest.html +0 -67
  215. data/doc/file.tool.html +0 -92
  216. data/doc/file.tool_generator.html +0 -90
  217. data/doc/file.unix_system.html +0 -128
  218. data/doc/file.url.html +0 -71
  219. data/doc/file.urls.html +0 -70
  220. data/doc/file.version.html +0 -71
  221. data/doc/file.vista_system.html +0 -69
  222. data/doc/file.win_nix_system.html +0 -88
  223. data/doc/file.win_system.html +0 -129
  224. data/doc/file_list.html +0 -230
  225. data/doc/frames.html +0 -13
  226. data/doc/index.html +0 -96
  227. data/doc/js/app.js +0 -202
  228. data/doc/js/full_list.js +0 -149
  229. data/doc/js/jquery.js +0 -154
  230. data/doc/method_list.html +0 -3355
  231. data/doc/top-level-namespace.html +0 -192
  232. data/lib/sprout/base.rb +0 -121
  233. data/lib/sprout/log.rb +0 -46
  234. data/test/unit/sprout_test_helper.rb +0 -33
@@ -1,296 +0,0 @@
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 name="Content-Type" content="text/html; charset=utf-8" />
6
- <title>File: generator</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html" title="Index">Index</a> &raquo;
27
- <span class="title">File: generator</span>
28
-
29
-
30
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
- </div>
32
-
33
- <div id="search">
34
- <a id="class_list_link" href="#">Class List</a>
35
- <a id="method_list_link" href="#">Method List</a>
36
- <a id ="file_list_link" href="#">File List</a>
37
- </div>
38
-
39
- <div class="clear"></div>
40
- </div>
41
-
42
- <iframe id="search_frame"></iframe>
43
-
44
- <div id="content"><div id='filecontents'>
45
- <p>require ‘sprout/generator/base’ require ‘sprout/generator/command’ require
46
- ‘sprout/generator/manifest’ require ‘sprout/generator/file_manifest’
47
- require ‘sprout/generator/template_manifest’ require
48
- ‘sprout/generator/directory_manifest’</p>
49
-
50
- <p>module Sprout</p>
51
-
52
- <pre class="code"><span class='comment'>##
53
- </span><span class='comment'>#
54
- </span><span class='comment'># = Introduction
55
- </span><span class='comment'>#
56
- </span><span class='comment'># Sprout Generators are command line applications that are
57
- </span><span class='comment'># installed by RubyGems and should universally provide the
58
- </span><span class='comment'># following features:
59
- </span><span class='comment'>#
60
- </span><span class='comment'># * Terminal tab completion to discover generators
61
- </span><span class='comment'># * Call with no arguments to see help output
62
- </span><span class='comment'># * Call with an +--input+ (or trailing) argument to create
63
- </span><span class='comment'># * Call with a collection of arguments given on a previous run
64
- </span><span class='comment'># plus +--delete+ to undo a previous +create+
65
- </span><span class='comment'>#
66
- </span><span class='comment'># = Usage
67
- </span><span class='comment'>#
68
- </span><span class='comment'># == Discovery
69
- </span><span class='comment'>#
70
- </span><span class='comment'># Sprout generators should be installed by RubyGems as command line
71
- </span><span class='comment'># applications on your system. After installing the flashsdk gem, you
72
- </span><span class='comment'># should have access to a variety of generators. You can find out what
73
- </span><span class='comment'># generators are available by typing: sprout- followed by pressing the
74
- </span><span class='comment'># &lt;TAB&gt; key.
75
- </span><span class='comment'>#
76
- </span><span class='comment'># Your terminal should list out all available applications that match
77
- </span><span class='comment'># this name.
78
- </span><span class='comment'>#
79
- </span><span class='comment'># Some generators are expected to create new projects, others expect to
80
- </span><span class='comment'># run within existing projects. You should be able to infer the kind of
81
- </span><span class='comment'># generator you're looking at by the name, but if you can't just run the
82
- </span><span class='comment'># generator with no arguments to see it's usage guidelines.
83
- </span><span class='comment'>#
84
- </span><span class='comment'># Generators that expect to be run from within a project will usually
85
- </span><span class='comment'># expect a file named +Gemfile+ to exist in the project root. If you're
86
- </span><span class='comment'># trying to run Sprout generators in a project that wasn't created using
87
- </span><span class='comment'># Sprouts, create this file and add the Rubygems that include the
88
- </span><span class='comment'># generators that you want to use.
89
- </span><span class='comment'>#
90
- </span><span class='comment'># == Execution
91
- </span><span class='comment'>#
92
- </span><span class='comment'># Generators are created by human beings and sometimes they have
93
- </span><span class='comment'># different assumptions than you do. If you're running a generator
94
- </span><span class='comment'># within a project (especially for the first time - or since updating a
95
- </span><span class='comment'># gem), be sure to get your project checked into version control before
96
- </span><span class='comment'># running anything.
97
- </span><span class='comment'>#
98
- </span><span class='comment'># Non-application generators should always be executed at the project
99
- </span><span class='comment'># root (where you store your Rakefile, Gemfile or build.xml).
100
- </span><span class='comment'>#
101
- </span><span class='comment'># == Deletion
102
- </span><span class='comment'>#
103
- </span><span class='comment'># Any generator that inherits from the provided Sprout::Generators::Base
104
- </span><span class='comment'># includes support for deletion. If you run a generator and realize that
105
- </span><span class='comment'># you don't want the files that it created, you can always run the same
106
- </span><span class='comment'># generator again with the same arguments, but add the --delete (or -d)
107
- </span><span class='comment'># argument.
108
- </span><span class='comment'>#
109
- </span><span class='comment'># == Templates
110
- </span><span class='comment'>#
111
- </span><span class='comment'># Each time a generator is asked to locate a template, it begins a lookup
112
- </span><span class='comment'># process. This process is designed to make it easy for you to modify any
113
- </span><span class='comment'># template at the scope you desire.
114
- </span><span class='comment'>#
115
- </span><span class='comment'># The lookup process will end at the first location where the expected
116
- </span><span class='comment'># file is found.
117
- </span><span class='comment'>#
118
- </span><span class='comment'># The search will begin with the location specified by the +-templates+
119
- </span><span class='comment'># option (if provided) and will continue by adding '/templates' to the
120
- </span><span class='comment'># end of each location specified by the listing for
121
- </span><span class='comment'># Sprout::Generator#search_paths .
122
- </span><span class='comment'>#
123
- </span><span class='comment'># = Creation
124
- </span><span class='comment'>#
125
- </span><span class='comment'># The core Sprout gem comes with a Sprout::GeneratorGenerator. This command line
126
- </span><span class='comment'># application is intended to be executed within a project and given the name
127
- </span><span class='comment'># of a generator that you'd like to create.
128
- </span><span class='comment'>#
129
- </span><span class='comment'># Try experimenting with this, and please
130
- </span><span class='comment'># suggest[http://groups.google.com/group/projectsprouts/] any improvements to
131
- </span><span class='comment'># the Google Group.
132
- </span><span class='comment'>#
133
- </span><span class='comment'># ---
134
- </span><span class='comment'>#
135
- </span><span class='comment'># Back to Home: {file:README.textile}
136
- </span><span class='comment'>#
137
- </span><span class='comment'># Next Topic: {Sprout::Library}
138
- </span><span class='comment'>#
139
- </span><span class='comment'># ---
140
- </span><span class='comment'>#
141
- </span><span class='comment'># @see Sprout::GeneratorGenerator
142
- </span><span class='comment'># @see Sprout::Library
143
- </span><span class='comment'># @see Sprout::Executable
144
- </span><span class='comment'># @see Sprout::Specification
145
- </span><span class='comment'># @see Sprout::RubyFeature
146
- </span><span class='comment'># @see Sprout::System
147
- </span><span class='comment'>#
148
- </span><span class='kw'>module</span> <span class='const'>Generator</span>
149
- <span class='id include'>include</span> <span class='const'>RubyFeature</span>
150
-
151
- <span class='kw'>class</span> <span class='op'>&lt;&lt;</span> <span class='kw'>self</span>
152
-
153
- <span class='comment'>##
154
- </span> <span class='comment'># Register a generator class and template path for future use.
155
- </span> <span class='comment'># Generator class names must end with &quot;Generator&quot;, and everything
156
- </span> <span class='comment'># to the left will be used for future lookups.
157
- </span> <span class='comment'>#
158
- </span> <span class='comment'># The following example will register a TestGenerator that can be
159
- </span> <span class='comment'># retrieved as +:test+.
160
- </span> <span class='comment'>#
161
- </span> <span class='comment'># Sprout::Generator.register TestGenerator
162
- </span> <span class='comment'>#
163
- </span> <span class='comment'># @param generator_class [Class] A reference to the concrete Generator class.
164
- </span> <span class='comment'># Usually these classes extend Sprout::Generator::Base.
165
- </span> <span class='comment'># @param templates_path [Directory] The path to the default templates that should
166
- </span> <span class='comment'># be used for this generator. By default, a folder named +templates+ relative to
167
- </span> <span class='comment'># the class definition will be used. Templates will also be searched for in a variety
168
- </span> <span class='comment'># of locations depending on the user system. This path is simply the final searching
169
- </span> <span class='comment'># point.
170
- </span> <span class='comment'># @return [Hash] the entity that was stored to represent the provided Generator.
171
- </span> <span class='comment'># The entity will generally have the keys, :class and :templates.
172
- </span> <span class='kw'>def</span> <span class='id register'>register</span> <span class='id generator_class'>generator_class</span><span class='comma'>,</span> <span class='id templates_path'>templates_path</span><span class='op'>=</span><span class='kw'>nil</span>
173
- <span class='id generator_paths'>generator_paths</span> <span class='op'>&lt;&lt;</span> <span class='lbrace'>{</span> <span class='symbol'>:class</span> <span class='op'>=&gt;</span> <span class='id generator_class'>generator_class</span><span class='comma'>,</span> <span class='symbol'>:templates</span> <span class='op'>=&gt;</span> <span class='id templates_path'>templates_path</span> <span class='rbrace'>}</span> <span class='kw'>unless</span> <span class='id templates_path'>templates_path</span><span class='period'>.</span><span class='id nil?'>nil?</span>
174
- <span class='kw'>super</span><span class='lparen'>(</span><span class='id generator_class'>generator_class</span><span class='rparen'>)</span>
175
- <span class='kw'>end</span>
176
-
177
- <span class='comment'>##
178
- </span> <span class='comment'># Create an instance of a concrete Generator using a +type+ argument.
179
- </span> <span class='comment'>#
180
- </span> <span class='comment'># The idea is that libraries may register a generator class named,
181
- </span> <span class='comment'># +TestGenerator+, and other generators can instantiate it without
182
- </span> <span class='comment'># including it's Class by reference with:
183
- </span> <span class='comment'>#
184
- </span> <span class='comment'># Sprout::Generator.create_instance :test
185
- </span> <span class='comment'>#
186
- </span> <span class='comment'># @param type [Symbol] A snake-cased name of the class without the Generator suffix.
187
- </span> <span class='comment'># for example, to instantiate a generator named, +TestSuiteGenerator+, this argument
188
- </span> <span class='comment'># would be +:test_suite+
189
- </span> <span class='comment'># @param options [Hash] deprecated - please remove this argument wherever it's found.
190
- </span> <span class='kw'>def</span> <span class='id create_instance'>create_instance</span> <span class='id type'>type</span><span class='comma'>,</span> <span class='id options'>options</span><span class='op'>=</span><span class='kw'>nil</span>
191
- <span class='id class_name'>class_name</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id type'>type</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='period'>.</span><span class='id camel_case'>camel_case</span><span class='rbrace'>}</span><span class='tstring_content'>Generator</span><span class='tstring_end'>&quot;</span></span>
192
- <span class='id registered_entities'>registered_entities</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id entity'>entity</span><span class='op'>|</span>
193
- <span class='kw'>if</span><span class='lparen'>(</span><span class='id entity'>entity</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='period'>.</span><span class='id match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>::</span><span class='embexpr_beg'>#{</span><span class='id class_name'>class_name</span><span class='rbrace'>}</span><span class='tstring_content'>$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id entity'>entity</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='period'>.</span><span class='id match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^</span><span class='embexpr_beg'>#{</span><span class='id class_name'>class_name</span><span class='rbrace'>}</span><span class='tstring_content'>$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span><span class='rparen'>)</span>
194
- <span class='kw'>return</span> <span class='id entity'>entity</span><span class='period'>.</span><span class='id new'>new</span>
195
- <span class='kw'>end</span>
196
- <span class='kw'>end</span>
197
- <span class='id raise'>raise</span> <span class='const'>Sprout</span><span class='op'>::</span><span class='const'>Errors</span><span class='op'>::</span><span class='const'>MissingGeneratorError</span><span class='period'>.</span><span class='id new'>new</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Could not find any generator named: (</span><span class='embexpr_beg'>#{</span><span class='id class_name'>class_name</span><span class='rbrace'>}</span><span class='tstring_content'>). Perhaps you need to add a RubyGem to your Gemfile?</span><span class='tstring_end'>&quot;</span></span>
198
- <span class='kw'>end</span>
199
-
200
- <span class='comment'>##
201
- </span> <span class='comment'># Retrieve the root template folder for the provided Class.
202
- </span> <span class='comment'>#
203
- </span> <span class='comment'># This method will look for a templates folder next to
204
- </span> <span class='comment'># each superclass in the inheritance chain.
205
- </span> <span class='comment'>#
206
- </span> <span class='kw'>def</span> <span class='id template_folder_for'>template_folder_for</span> <span class='id clazz'>clazz</span>
207
- <span class='comment'># Search the potential matches in reverse order
208
- </span> <span class='comment'># because subclasses have registered AFTER their
209
- </span> <span class='comment'># superclasses and superclasses match the ===
210
- </span> <span class='comment'># check...
211
- </span> <span class='id generator_paths'>generator_paths</span><span class='period'>.</span><span class='id reverse'>reverse</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id options'>options</span><span class='op'>|</span>
212
- <span class='kw'>if</span> <span class='id options'>options</span><span class='lbracket'>[</span><span class='symbol'>:class</span><span class='rbracket'>]</span> <span class='op'>===</span> <span class='id clazz'>clazz</span>
213
- <span class='kw'>return</span> <span class='id options'>options</span><span class='lbracket'>[</span><span class='symbol'>:templates</span><span class='rbracket'>]</span>
214
- <span class='kw'>end</span>
215
- <span class='kw'>end</span>
216
- <span class='kw'>nil</span>
217
- <span class='kw'>end</span>
218
-
219
- <span class='comment'>##
220
- </span> <span class='comment'># Returns a new collection of paths to search within for generator
221
- </span> <span class='comment'># declarations and more importantly, folders named, 'templates'.
222
- </span> <span class='comment'>#
223
- </span> <span class='comment'># The collection of search_paths will be a subset of the following
224
- </span> <span class='comment'># that will include only those directories that exist:
225
- </span> <span class='comment'>#
226
- </span> <span class='comment'># ./config/generators
227
- </span> <span class='comment'># ./vendor/generators
228
- </span> <span class='comment'># ~/Library/Sprouts/1.0/generators # OS X only
229
- </span> <span class='comment'># ~/.sprouts/1.0/generators # Unix only
230
- </span> <span class='comment'># [USER_HOME]/Application Data/Sprouts/cache/1.0/generators # Windows only
231
- </span> <span class='comment'># ENV['SPROUT_GENERATORS'] # Only if defined
232
- </span> <span class='comment'># [Generator Declaration __FILE__]
233
- </span> <span class='comment'># [Generator SUPER-class declaration __FILE__]
234
- </span> <span class='comment'># [Repeat step above until there is no super-class]
235
- </span> <span class='comment'>#
236
- </span> <span class='comment'># When the generators attempt to resolve templates, each of the preceding
237
- </span> <span class='comment'># folders will be scanned for a child directory named 'templates'. Within
238
- </span> <span class='comment'># that directory, the requested template name will be scanned and the first
239
- </span> <span class='comment'># found template file will be used. This process will be repeated for each
240
- </span> <span class='comment'># template file that is requested.
241
- </span> <span class='comment'>#
242
- </span> <span class='comment'># The results of this search are not cached, so you can override a single
243
- </span> <span class='comment'># template and leave the rest wherever the generator has defined them.
244
- </span> <span class='comment'>#
245
- </span> <span class='comment'># @return [Array] of paths
246
- </span> <span class='comment'>#
247
- </span> <span class='kw'>def</span> <span class='id search_paths'>search_paths</span>
248
- <span class='comment'># NOTE: Do not cache this list, specific generators
249
- </span> <span class='comment'># will modify it with their own lookups
250
- </span> <span class='id create_search_paths'>create_search_paths</span><span class='period'>.</span><span class='id select'>select</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id path'>path</span><span class='op'>|</span> <span class='const'>File</span><span class='period'>.</span><span class='id directory?'>directory?</span><span class='lparen'>(</span><span class='id path'>path</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
251
- <span class='kw'>end</span>
252
-
253
- <span class='id private'>private</span>
254
-
255
- <span class='kw'>def</span> <span class='id create_search_paths'>create_search_paths</span>
256
- <span class='id paths'>paths</span> <span class='op'>=</span> <span class='lbracket'>[</span>
257
- <span class='const'>File</span><span class='period'>.</span><span class='id join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>config</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>generators</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='comma'>,</span>
258
- <span class='const'>File</span><span class='period'>.</span><span class='id join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>vendor</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>generators</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='comma'>,</span>
259
- <span class='const'>Sprout</span><span class='period'>.</span><span class='id generator_cache'>generator_cache</span>
260
- <span class='rbracket'>]</span>
261
- <span class='id paths'>paths</span> <span class='op'>&lt;&lt;</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>SPROUT_GENERATORS</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>SPROUT_GENERATORS</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id nil?'>nil?</span>
262
- <span class='id paths'>paths</span>
263
- <span class='kw'>end</span>
264
-
265
- <span class='comment'>##
266
- </span> <span class='comment'># I know this seems weird - but we can't instantiate the classes
267
- </span> <span class='comment'># during registration because they register before they've been fully
268
- </span> <span class='comment'># interpreted...
269
- </span> <span class='kw'>def</span> <span class='id update_registered_entities'>update_registered_entities</span>
270
- <span class='id registered_entities'>registered_entities</span><span class='period'>.</span><span class='id collect!'>collect!</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id gen'>gen</span><span class='op'>|</span>
271
- <span class='lparen'>(</span><span class='id gen'>gen</span><span class='period'>.</span><span class='id is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Class</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id gen'>gen</span><span class='period'>.</span><span class='id new'>new</span> <span class='op'>:</span> <span class='id gen'>gen</span>
272
- <span class='kw'>end</span>
273
- <span class='kw'>end</span>
274
-
275
- <span class='kw'>def</span> <span class='id configure_instance'>configure_instance</span> <span class='id generator'>generator</span>
276
- <span class='id generator'>generator</span>
277
- <span class='kw'>end</span>
278
-
279
- <span class='kw'>def</span> <span class='id generator_paths'>generator_paths</span>
280
- <span class='ivar'>@generator_paths</span> <span class='op'>||=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
281
- <span class='kw'>end</span>
282
-
283
- <span class='kw'>end</span>
284
- <span class='kw'>end</span></pre>
285
-
286
- <p>end</p>
287
- </div></div>
288
-
289
- <div id="footer">
290
- Generated on Wed Dec 22 11:58:32 2010 by
291
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
292
- 0.6.3 (ruby-1.9.2).
293
- </div>
294
-
295
- </body>
296
- </html>
@@ -1,72 +0,0 @@
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 name="Content-Type" content="text/html; charset=utf-8" />
6
- <title>File: generator_class</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html" title="Index">Index</a> &raquo;
27
- <span class="title">File: generator_class</span>
28
-
29
-
30
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
- </div>
32
-
33
- <div id="search">
34
- <a id="class_list_link" href="#">Class List</a>
35
- <a id="method_list_link" href="#">Method List</a>
36
- <a id ="file_list_link" href="#">File List</a>
37
- </div>
38
-
39
- <div class="clear"></div>
40
- </div>
41
-
42
- <iframe id="search_frame"></iframe>
43
-
44
- <div id="content"><div id='filecontents'>
45
- <p>module Sprout</p>
46
-
47
- <pre class="code">class &lt;%= input.camel_case %&gt;Generator &lt; Generator::Base
48
-
49
- ##
50
- # This is how you add a parameter to your generator
51
- #
52
- # add_param :fwee, String, :default =&gt; &quot;fwee&quot;
53
- #
54
- def manifest
55
- directory input.snake_case do
56
- template &quot;#{input.camel_case}&lt;%= extension %&gt;&quot;
57
- end
58
- end
59
-
60
- end</pre>
61
-
62
- <p>end</p>
63
- </div></div>
64
-
65
- <div id="footer">
66
- Generated on Wed Dec 22 11:58:32 2010 by
67
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
68
- 0.6.3 (ruby-1.9.2).
69
- </div>
70
-
71
- </body>
72
- </html>
@@ -1,137 +0,0 @@
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 name="Content-Type" content="text/html; charset=utf-8" />
6
- <title>File: generator_generator</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html" title="Index">Index</a> &raquo;
27
- <span class="title">File: generator_generator</span>
28
-
29
-
30
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
- </div>
32
-
33
- <div id="search">
34
- <a id="class_list_link" href="#">Class List</a>
35
- <a id="method_list_link" href="#">Method List</a>
36
- <a id ="file_list_link" href="#">File List</a>
37
- </div>
38
-
39
- <div class="clear"></div>
40
- </div>
41
-
42
- <iframe id="search_frame"></iframe>
43
-
44
- <div id="content"><div id='filecontents'>
45
- <p>module Sprout</p>
46
-
47
- <pre class="code"><span class='kw'>class</span> <span class='const'>GeneratorGenerator</span> <span class='op'>&lt;</span> <span class='const'>Generator</span><span class='op'>::</span><span class='const'>Base</span>
48
-
49
- <span class='comment'>##
50
- </span> <span class='comment'># The default module that classes will be added
51
- </span> <span class='comment'># to.
52
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:namespace</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rbrace'>}</span>
53
-
54
- <span class='comment'>##
55
- </span> <span class='comment'># The name of the folder where external libraries
56
- </span> <span class='comment'># will be installed.
57
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:lib</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>lib</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
58
-
59
- <span class='comment'>##
60
- </span> <span class='comment'># The name of the folder where custom generators and templates
61
- </span> <span class='comment'># will be found.
62
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:generators</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>generators</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
63
-
64
- <span class='comment'>##
65
- </span> <span class='comment'># The name of the folder where tests should be generated.
66
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:test</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>test</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
67
-
68
- <span class='comment'>##
69
- </span> <span class='comment'># The name of the child folder of the test folder where
70
- </span> <span class='comment'># unit tests should be generated.
71
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:unit</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>unit</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
72
-
73
- <span class='comment'>##
74
- </span> <span class='comment'># The name of the child folder of the test folder where
75
- </span> <span class='comment'># fixtures should be generated.
76
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:fixtures</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>fixtures</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
77
-
78
- <span class='comment'>##
79
- </span> <span class='comment'># The name of the folder where external source code
80
- </span> <span class='comment'># should be placed.
81
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:vendor</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>vendor</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
82
-
83
- <span class='comment'>##
84
- </span> <span class='comment'># The name of the folder where binary or executable
85
- </span> <span class='comment'># artifacts should be created by compiler tasks.
86
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:bin</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>bin</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
87
-
88
- <span class='comment'>##
89
- </span> <span class='comment'># The default (primary) file extension for generated source
90
- </span> <span class='comment'># files. This should hint at the project type.
91
- </span> <span class='id add_param'>add_param</span> <span class='symbol'>:extension</span><span class='comma'>,</span> <span class='const'>String</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>.as</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
92
-
93
- <span class='kw'>def</span> <span class='id manifest'>manifest</span>
94
- <span class='id directory'>directory</span> <span class='id bin'>bin</span> <span class='kw'>do</span>
95
- <span class='id template'>template</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id input'>input</span><span class='period'>.</span><span class='id snake_case'>snake_case</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generator_executable</span><span class='tstring_end'>&quot;</span></span>
96
- <span class='kw'>end</span>
97
-
98
- <span class='id directory'>directory</span> <span class='id lib'>lib</span> <span class='kw'>do</span>
99
- <span class='comment'>#We need to add a folder with the same name as the module to be used in order to faux namespace our generators to avoid collisions from super classes
100
- </span> <span class='id directory'>directory</span> <span class='id namespace'>namespace</span> <span class='kw'>do</span>
101
- <span class='id directory'>directory</span> <span class='id generators'>generators</span> <span class='kw'>do</span>
102
- <span class='id template'>template</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id input'>input</span><span class='period'>.</span><span class='id snake_case'>snake_case</span><span class='rbrace'>}</span><span class='tstring_content'>_generator.rb</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generator_class.rb</span><span class='tstring_end'>&quot;</span></span>
103
- <span class='id directory'>directory</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>templates</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
104
- <span class='id template'>template</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id input'>input</span><span class='period'>.</span><span class='id camel_case'>camel_case</span><span class='rbrace'>}</span><span class='embexpr_beg'>#{</span><span class='id extension'>extension</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generator_template</span><span class='tstring_end'>&quot;</span></span>
105
- <span class='kw'>end</span>
106
- <span class='kw'>end</span>
107
- <span class='kw'>end</span>
108
- <span class='kw'>end</span>
109
-
110
- <span class='id directory'>directory</span> <span class='id test'>test</span> <span class='kw'>do</span>
111
- <span class='id directory'>directory</span> <span class='id unit'>unit</span> <span class='kw'>do</span>
112
- <span class='id template'>template</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id input'>input</span><span class='period'>.</span><span class='id snake_case'>snake_case</span><span class='rbrace'>}</span><span class='tstring_content'>_generator_test.rb</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generator_test.rb</span><span class='tstring_end'>&quot;</span></span>
113
- <span class='id template'>template</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>test_helper.rb</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generator_test_helper.rb</span><span class='tstring_end'>&quot;</span></span>
114
- <span class='kw'>end</span>
115
- <span class='id directory'>directory</span> <span class='id fixtures'>fixtures</span> <span class='kw'>do</span>
116
- <span class='id directory'>directory</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>generators</span><span class='tstring_end'>&quot;</span></span>
117
- <span class='kw'>end</span>
118
- <span class='kw'>end</span>
119
-
120
- <span class='comment'>#This should actually be moved to the library generator
121
- </span> <span class='comment'>#directory vendor
122
- </span>
123
- <span class='kw'>end</span>
124
-
125
- <span class='kw'>end</span></pre>
126
-
127
- <p>end</p>
128
- </div></div>
129
-
130
- <div id="footer">
131
- Generated on Wed Dec 22 11:58:32 2010 by
132
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
133
- 0.6.3 (ruby-1.9.2).
134
- </div>
135
-
136
- </body>
137
- </html>