guard-coffeescript 1.4.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,269 @@
1
+ require 'coffee_script'
2
+
3
+ module Guard
4
+ class CoffeeScript
5
+ module Runner
6
+ class << self
7
+
8
+ attr_accessor :last_run_failed
9
+
10
+ # The CoffeeScript runner handles the CoffeeScript compilation,
11
+ # creates nested directories and the output file, writes the result
12
+ # to the console and triggers optional system notifications.
13
+ #
14
+ # @param [Array<String>] files the spec files or directories
15
+ # @param [Array<Guard::Watcher>] watchers the Guard watchers in the block
16
+ # @param [Hash] options the options for the execution
17
+ # @option options [String] :input the input directory
18
+ # @option options [String] :output the output directory
19
+ # @option options [Boolean] :bare do not wrap the output in a top level function
20
+ # @option options [Boolean] :shallow do not create nested directories
21
+ # @option options [Boolean] :hide_success hide success message notification
22
+ # @option options [Boolean] :noop do not generate an output file
23
+ # @option options [Boolean] :source_map generate the source map files
24
+ # @return [Array<Array<String>, Boolean>] the result for the compilation run
25
+ #
26
+ def run(files, watchers, options = { })
27
+ notify_start(files, options)
28
+ changed_files, errors = compile_files(files, watchers, options)
29
+ notify_result(changed_files, errors, options)
30
+
31
+ [changed_files, errors.empty?]
32
+ end
33
+
34
+ # The remove function deals with CoffeeScript file removal by
35
+ # locating the output javascript file and removing it.
36
+ #
37
+ # @param [Array<String>] files the spec files or directories
38
+ # @param [Array<Guard::Watcher>] watchers the Guard watchers in the block
39
+ # @param [Hash] options the options for the removal
40
+ # @option options [String] :output the output directory
41
+ # @option options [Boolean] :shallow do not create nested directories
42
+ #
43
+ def remove(files, watchers, options = { })
44
+ removed_files = []
45
+ directories = detect_nested_directories(watchers, files, options)
46
+
47
+ directories.each do |directory, scripts|
48
+ scripts.each do |file|
49
+ javascript = javascript_file_name(file, directory)
50
+ if File.exists?(javascript)
51
+ FileUtils.remove_file(javascript)
52
+ removed_files << javascript
53
+ end
54
+ end
55
+ end
56
+
57
+ if removed_files.length > 0
58
+ message = "Removed #{ removed_files.join(', ') }"
59
+ Formatter.success(message)
60
+ Formatter.notify(message, :title => 'CoffeeScript results')
61
+ end
62
+ end
63
+
64
+ private
65
+
66
+ # Generates a start compilation notification.
67
+ #
68
+ # @param [Array<String>] files the generated files
69
+ # @param [Hash] options the options for the execution
70
+ # @option options [Boolean] :noop do not generate an output file
71
+ #
72
+ def notify_start(files, options)
73
+ message = options[:message] || (options[:noop] ? 'Verify ' : 'Compile ') + files.join(', ')
74
+ Formatter.info(message, :reset => true)
75
+ end
76
+
77
+ # Compiles all CoffeeScript files and writes the JavaScript files.
78
+ #
79
+ # @param [Array<String>] files the files to compile
80
+ # @param [Array<Guard::Watcher>] watchers the Guard watchers in the block
81
+ # @param [Hash] options the options for the execution
82
+ # @return [Array<Array<String>, Array<String>] the result for the compilation run
83
+ #
84
+ def compile_files(files, watchers, options)
85
+ errors = []
86
+ changed_files = []
87
+ directories = detect_nested_directories(watchers, files, options)
88
+
89
+ directories.each do |directory, scripts|
90
+ scripts.each do |file|
91
+ begin
92
+ js, map = compile(file, options)
93
+ changed_files << write_javascript_file(js, map, file, directory, options)
94
+
95
+ rescue => e
96
+ error_message = file + ': ' + e.message.to_s
97
+
98
+ if options[:error_to_js]
99
+ js_error_message = "throw \"#{ error_message }\";"
100
+ changed_files << write_javascript_file(js_error_message, nil, file, directory, options)
101
+ end
102
+
103
+ errors << error_message
104
+ Formatter.error(error_message)
105
+ end
106
+ end
107
+ end
108
+
109
+ [changed_files.flatten.compact, errors]
110
+ end
111
+
112
+ # Compile the CoffeeScript and generate the source map.
113
+ #
114
+ # @param [String] filename the CoffeeScript file n
115
+ # @param [Hash] options the options for the execution
116
+ # @option options [Boolean] :source_map generate the source map files
117
+ # @return [Array<String, String>] the JavaScript source and the source map
118
+ #
119
+ def compile(filename, options)
120
+ file = File.read(filename)
121
+ file_options = options_for_file(filename, options)
122
+
123
+ if options[:source_map]
124
+ file_options.merge! options_for_source_map(filename, options)
125
+ result = ::CoffeeScript.compile(file, file_options)
126
+ js, map = result['js'], result['v3SourceMap']
127
+ else
128
+ js = ::CoffeeScript.compile(file, file_options)
129
+ end
130
+
131
+ [js, map]
132
+ end
133
+
134
+ # Gets the CoffeeScript compilation options.
135
+ #
136
+ # @param [String] file the CoffeeScript file
137
+ # @param [Hash] options the options for the execution of all files
138
+ # @option options [Boolean] :bare do not wrap the output in a top level function
139
+ # @return [Hash] options for a particular file's execution
140
+ #
141
+ def options_for_file(file, options)
142
+ file_options = options.clone
143
+
144
+ # if :bare was provided an array of filenames, check for file's inclusion
145
+ if file_options[:bare].respond_to? :include?
146
+ filename = file[/([^\/]*)\.(?:coffee|coffee\.md|litcoffee)$/]
147
+ file_options[:bare] = file_options[:bare].include?(filename)
148
+ end
149
+
150
+ if file[/\.(?:coffee\.md|litcoffee)$/]
151
+ file_options[:literate] = true
152
+ end
153
+
154
+ file_options
155
+ end
156
+
157
+ # Gets the CoffeeScript source map options.
158
+ #
159
+ # @param [String] filename the CoffeeScript filename
160
+ # @param [Hash] options the options for the execution
161
+ #
162
+ def options_for_source_map(filename, options)
163
+ # if :input was provided, make all filenames relative to that
164
+ filename = Pathname.new(filename).relative_path_from(Pathname.new(options[:input])).to_s if options[:input]
165
+
166
+ {
167
+ :sourceMap => true,
168
+ :generatedFile => filename.gsub(/((?:js\.)?(?:coffee|coffee\.md|litcoffee))$/, 'js'),
169
+ :sourceFiles => [filename],
170
+ :sourceRoot => options[:source_root] || options[:input] || '',
171
+ }
172
+ end
173
+
174
+ # Analyzes the CoffeeScript compilation output and creates the
175
+ # nested directories and writes the output file.
176
+ #
177
+ # @param [String] js the JavaScript content
178
+ # @param [String] map the source map content
179
+ # @param [String] file the CoffeeScript file name
180
+ # @param [String] directory the output directory
181
+ # @param [Hash] options the options for the execution
182
+ # @option options [Boolean] :noop do not generate an output file
183
+ # @return [String] the JavaScript file name
184
+ #
185
+ def write_javascript_file(js, map, file, directory, options)
186
+ directory = Dir.pwd if !directory || directory.empty?
187
+ filename = javascript_file_name(file, directory)
188
+
189
+ return filename if options[:noop]
190
+
191
+ if options[:source_map]
192
+ map_name = filename + '.map'
193
+ js += "\n/*\n//@ sourceMappingURL=#{File.basename(map_name)}\n*/\n"
194
+ end
195
+
196
+ FileUtils.mkdir_p(File.expand_path(directory)) if !File.directory?(directory)
197
+ File.open(File.expand_path(filename), 'w') { |f| f.write(js) }
198
+
199
+ if options[:source_map]
200
+ File.open(File.expand_path(map_name), 'w') { |f| f.write(map) }
201
+ [filename, map_name]
202
+ else
203
+ filename
204
+ end
205
+ end
206
+
207
+ # Calculates the output filename from the coffescript filename and
208
+ # the output directory
209
+ #
210
+ # @param [string] file the CoffeeScript file name
211
+ # @param [String] directory the output directory
212
+ #
213
+ def javascript_file_name(file, directory)
214
+ File.join(directory, File.basename(file.gsub(/((?:js\.)?(?:coffee|coffee\.md|litcoffee))$/, 'js')))
215
+ end
216
+
217
+ # Detects the output directory for each CoffeeScript file. Builds
218
+ # the product of all watchers and assigns to each directory
219
+ # the files to which it belongs to.
220
+ #
221
+ # @param [Array<Guard::Watcher>] watchers the Guard watchers in the block
222
+ # @param [Array<String>] files the CoffeeScript files
223
+ # @param [Hash] options the options for the execution
224
+ # @option options [String] :output the output directory
225
+ # @option options [Boolean] :shallow do not create nested directories
226
+ #
227
+ def detect_nested_directories(watchers, files, options)
228
+ return { options[:output] => files } if options[:shallow]
229
+
230
+ directories = { }
231
+
232
+ watchers.product(files).each do |watcher, file|
233
+ if matches = file.match(watcher.pattern)
234
+ target = matches[1] ? File.join(options[:output], File.dirname(matches[1])).gsub(/\/\.$/, '') : options[:output] || File.dirname(file)
235
+ if directories[target]
236
+ directories[target] << file
237
+ else
238
+ directories[target] = [file]
239
+ end
240
+ end
241
+ end
242
+
243
+ directories
244
+ end
245
+
246
+ # Writes console and system notifications about the result of the compilation.
247
+ #
248
+ # @param [Array<String>] changed_files the changed JavaScript files
249
+ # @param [Array<String>] errors the error messages
250
+ # @param [Hash] options the options for the execution
251
+ # @option options [Boolean] :hide_success hide success message notification
252
+ # @option options [Boolean] :noop do not generate an output file
253
+ #
254
+ def notify_result(changed_files, errors, options = { })
255
+ if !errors.empty?
256
+ self.last_run_failed = true
257
+ Formatter.notify(errors.join("\n"), :title => 'CoffeeScript results', :image => :failed, :priority => 2)
258
+ elsif !options[:hide_success] || last_run_failed
259
+ self.last_run_failed = false
260
+ message = "Successfully #{ options[:noop] ? 'verified' : 'generated' } #{ changed_files.join(', ') }"
261
+ Formatter.success(message)
262
+ Formatter.notify(message, :title => 'CoffeeScript results')
263
+ end
264
+ end
265
+
266
+ end
267
+ end
268
+ end
269
+ end
@@ -1 +1,9 @@
1
- guard 'coffeescript', :input => 'app/assets/javascripts'
1
+ coffeescript_options = {
2
+ input: 'app/assets/javascripts',
3
+ output: 'app/assets/javascripts',
4
+ patterns: [%r{^app/assets/javascripts/(.+\.(?:coffee|coffee\.md|litcoffee))$}]
5
+ }
6
+
7
+ guard 'coffeescript', coffeescript_options do
8
+ coffeescript_options[:patterns].each { |pattern| watch(pattern) }
9
+ end
@@ -0,0 +1 @@
1
+ guard 'coffeescript', :input => 'app/assets/javascripts'
@@ -1,6 +1,5 @@
1
1
  module Guard
2
2
  module CoffeeScriptVersion
3
- # Guard::CoffeeScript version that is used for the Gem specification
4
- VERSION = '1.4.0'
3
+ VERSION = '2.0.0'
5
4
  end
6
5
  end
@@ -0,0 +1,6 @@
1
+ module Guard
2
+ module CoffeeScriptVersion
3
+ # Guard::CoffeeScript version that is used for the Gem specification
4
+ VERSION = '1.4.0'
5
+ end
6
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guard-coffeescript
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Kessler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-01 00:00:00.000000000 Z
11
+ date: 2015-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard
@@ -16,58 +16,44 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.1.0
19
+ version: 2.1.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.1.0
26
+ version: 2.1.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: coffee-script
28
+ name: guard-compat
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 2.2.0
33
+ version: '1.1'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 2.2.0
40
+ version: '1.1'
41
41
  - !ruby/object:Gem::Dependency
42
- name: bundler
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: guard-rspec
42
+ name: coffee-script
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - ">="
60
46
  - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
47
+ version: 2.2.0
48
+ type: :runtime
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
52
  - - ">="
67
53
  - !ruby/object:Gem::Version
68
- version: '0'
54
+ version: 2.2.0
69
55
  - !ruby/object:Gem::Dependency
70
- name: rspec
56
+ name: bundler
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - ">="
@@ -91,15 +77,16 @@ files:
91
77
  - LICENSE
92
78
  - README.md
93
79
  - lib/guard/coffeescript.rb
94
- - lib/guard/coffeescript.rbc
80
+ - lib/guard/coffeescript.rb.orig
95
81
  - lib/guard/coffeescript/formatter.rb
96
- - lib/guard/coffeescript/formatter.rbc
82
+ - lib/guard/coffeescript/formatter.rb.orig
97
83
  - lib/guard/coffeescript/inspector.rb
98
84
  - lib/guard/coffeescript/runner.rb
99
- - lib/guard/coffeescript/runner.rbc
85
+ - lib/guard/coffeescript/runner.rb.orig
100
86
  - lib/guard/coffeescript/templates/Guardfile
87
+ - lib/guard/coffeescript/templates/Guardfile.orig
101
88
  - lib/guard/coffeescript/version.rb
102
- - lib/guard/coffeescript/version.rbc
89
+ - lib/guard/coffeescript/version.rb.orig
103
90
  homepage: http://github.com/netzpirat/guard-coffeescript
104
91
  licenses:
105
92
  - MIT
@@ -120,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
107
  version: 1.3.6
121
108
  requirements: []
122
109
  rubyforge_project: guard-coffeescript
123
- rubygems_version: 2.2.1
110
+ rubygems_version: 2.4.3
124
111
  signing_key:
125
112
  specification_version: 4
126
113
  summary: Guard gem for CoffeeScript
@@ -1,1536 +0,0 @@
1
- !RBIX
2
- 9595534255132031488
3
- x
4
- M
5
- 1
6
- n
7
- n
8
- x
9
- 10
10
- __script__
11
- i
12
- 55
13
- 5
14
- 7
15
- 0
16
- 64
17
- 47
18
- 49
19
- 1
20
- 1
21
- 15
22
- 5
23
- 7
24
- 2
25
- 64
26
- 47
27
- 49
28
- 1
29
- 1
30
- 15
31
- 5
32
- 7
33
- 3
34
- 64
35
- 47
36
- 49
37
- 1
38
- 1
39
- 15
40
- 99
41
- 7
42
- 4
43
- 65
44
- 49
45
- 5
46
- 2
47
- 13
48
- 99
49
- 12
50
- 7
51
- 6
52
- 12
53
- 7
54
- 7
55
- 12
56
- 65
57
- 12
58
- 49
59
- 8
60
- 4
61
- 15
62
- 49
63
- 6
64
- 0
65
- 15
66
- 2
67
- 11
68
- I
69
- 6
70
- I
71
- 0
72
- I
73
- 0
74
- I
75
- 0
76
- n
77
- p
78
- 9
79
- s
80
- 5
81
- guard
82
- x
83
- 7
84
- require
85
- s
86
- 11
87
- guard/guard
88
- s
89
- 13
90
- guard/watcher
91
- x
92
- 5
93
- Guard
94
- x
95
- 11
96
- open_module
97
- x
98
- 15
99
- __module_init__
100
- M
101
- 1
102
- n
103
- n
104
- x
105
- 5
106
- Guard
107
- i
108
- 31
109
- 5
110
- 66
111
- 99
112
- 7
113
- 0
114
- 45
115
- 1
116
- 2
117
- 65
118
- 49
119
- 3
120
- 3
121
- 13
122
- 99
123
- 12
124
- 7
125
- 4
126
- 12
127
- 7
128
- 5
129
- 12
130
- 65
131
- 12
132
- 49
133
- 6
134
- 4
135
- 15
136
- 49
137
- 4
138
- 0
139
- 11
140
- I
141
- 6
142
- I
143
- 0
144
- I
145
- 0
146
- I
147
- 0
148
- n
149
- p
150
- 7
151
- x
152
- 12
153
- CoffeeScript
154
- x
155
- 5
156
- Guard
157
- n
158
- x
159
- 10
160
- open_class
161
- x
162
- 14
163
- __class_init__
164
- M
165
- 1
166
- n
167
- n
168
- x
169
- 12
170
- CoffeeScript
171
- i
172
- 178
173
- 5
174
- 66
175
- 5
176
- 7
177
- 0
178
- 7
179
- 1
180
- 64
181
- 47
182
- 49
183
- 2
184
- 2
185
- 15
186
- 5
187
- 7
188
- 3
189
- 7
190
- 4
191
- 64
192
- 47
193
- 49
194
- 2
195
- 2
196
- 15
197
- 5
198
- 7
199
- 5
200
- 7
201
- 6
202
- 64
203
- 47
204
- 49
205
- 2
206
- 2
207
- 15
208
- 65
209
- 7
210
- 7
211
- 44
212
- 43
213
- 8
214
- 4
215
- 5
216
- 49
217
- 9
218
- 1
219
- 13
220
- 7
221
- 10
222
- 3
223
- 49
224
- 11
225
- 2
226
- 15
227
- 13
228
- 7
229
- 12
230
- 3
231
- 49
232
- 11
233
- 2
234
- 15
235
- 13
236
- 7
237
- 13
238
- 3
239
- 49
240
- 11
241
- 2
242
- 15
243
- 13
244
- 7
245
- 14
246
- 3
247
- 49
248
- 11
249
- 2
250
- 15
251
- 13
252
- 7
253
- 15
254
- 3
255
- 49
256
- 11
257
- 2
258
- 15
259
- 49
260
- 16
261
- 2
262
- 15
263
- 99
264
- 7
265
- 17
266
- 7
267
- 18
268
- 65
269
- 67
270
- 49
271
- 19
272
- 0
273
- 49
274
- 20
275
- 4
276
- 15
277
- 99
278
- 7
279
- 21
280
- 7
281
- 22
282
- 65
283
- 67
284
- 49
285
- 19
286
- 0
287
- 49
288
- 20
289
- 4
290
- 15
291
- 99
292
- 7
293
- 23
294
- 7
295
- 24
296
- 65
297
- 67
298
- 49
299
- 19
300
- 0
301
- 49
302
- 20
303
- 4
304
- 15
305
- 99
306
- 7
307
- 25
308
- 7
309
- 26
310
- 65
311
- 67
312
- 49
313
- 19
314
- 0
315
- 49
316
- 20
317
- 4
318
- 15
319
- 99
320
- 7
321
- 27
322
- 7
323
- 28
324
- 65
325
- 67
326
- 49
327
- 19
328
- 0
329
- 49
330
- 20
331
- 4
332
- 15
333
- 5
334
- 48
335
- 29
336
- 15
337
- 99
338
- 7
339
- 30
340
- 7
341
- 31
342
- 65
343
- 67
344
- 49
345
- 19
346
- 0
347
- 49
348
- 20
349
- 4
350
- 11
351
- I
352
- 6
353
- I
354
- 0
355
- I
356
- 0
357
- I
358
- 0
359
- n
360
- p
361
- 32
362
- x
363
- 9
364
- Formatter
365
- s
366
- 28
367
- guard/coffeescript/formatter
368
- x
369
- 8
370
- autoload
371
- x
372
- 9
373
- Inspector
374
- s
375
- 28
376
- guard/coffeescript/inspector
377
- x
378
- 6
379
- Runner
380
- s
381
- 25
382
- guard/coffeescript/runner
383
- x
384
- 15
385
- DEFAULT_OPTIONS
386
- x
387
- 4
388
- Hash
389
- x
390
- 16
391
- new_from_literal
392
- x
393
- 4
394
- bare
395
- x
396
- 3
397
- []=
398
- x
399
- 7
400
- shallow
401
- x
402
- 12
403
- hide_success
404
- x
405
- 4
406
- noop
407
- x
408
- 12
409
- all_on_start
410
- x
411
- 9
412
- const_set
413
- x
414
- 10
415
- initialize
416
- M
417
- 1
418
- n
419
- n
420
- x
421
- 10
422
- initialize
423
- i
424
- 175
425
- 23
426
- 0
427
- 10
428
- 9
429
- 35
430
- 0
431
- 19
432
- 0
433
- 15
434
- 23
435
- 1
436
- 10
437
- 23
438
- 44
439
- 43
440
- 0
441
- 78
442
- 49
443
- 1
444
- 1
445
- 19
446
- 1
447
- 15
448
- 20
449
- 0
450
- 9
451
- 30
452
- 1
453
- 8
454
- 34
455
- 35
456
- 0
457
- 19
458
- 0
459
- 15
460
- 45
461
- 2
462
- 3
463
- 49
464
- 4
465
- 0
466
- 19
467
- 2
468
- 15
469
- 20
470
- 1
471
- 7
472
- 5
473
- 49
474
- 6
475
- 1
476
- 9
477
- 159
478
- 20
479
- 2
480
- 44
481
- 43
482
- 0
483
- 79
484
- 49
485
- 1
486
- 1
487
- 13
488
- 7
489
- 7
490
- 20
491
- 1
492
- 7
493
- 5
494
- 49
495
- 6
496
- 1
497
- 49
498
- 8
499
- 2
500
- 15
501
- 49
502
- 9
503
- 1
504
- 15
505
- 20
506
- 0
507
- 44
508
- 43
509
- 10
510
- 43
511
- 11
512
- 13
513
- 71
514
- 12
515
- 47
516
- 9
517
- 128
518
- 47
519
- 49
520
- 13
521
- 0
522
- 13
523
- 44
524
- 43
525
- 14
526
- 7
527
- 15
528
- 20
529
- 1
530
- 7
531
- 5
532
- 49
533
- 16
534
- 1
535
- 47
536
- 101
537
- 17
538
- 7
539
- 18
540
- 63
541
- 3
542
- 78
543
- 49
544
- 12
545
- 2
546
- 47
547
- 49
548
- 19
549
- 1
550
- 15
551
- 8
552
- 154
553
- 44
554
- 43
555
- 14
556
- 7
557
- 15
558
- 20
559
- 1
560
- 7
561
- 5
562
- 49
563
- 16
564
- 1
565
- 47
566
- 101
567
- 17
568
- 7
569
- 18
570
- 63
571
- 3
572
- 78
573
- 49
574
- 12
575
- 2
576
- 49
577
- 12
578
- 1
579
- 49
580
- 20
581
- 1
582
- 8
583
- 160
584
- 1
585
- 15
586
- 20
587
- 0
588
- 20
589
- 2
590
- 20
591
- 1
592
- 49
593
- 21
594
- 1
595
- 54
596
- 52
597
- 19
598
- 2
599
- 11
600
- I
601
- a
602
- I
603
- 3
604
- I
605
- 0
606
- I
607
- 2
608
- n
609
- p
610
- 22
611
- x
612
- 4
613
- Hash
614
- x
615
- 16
616
- new_from_literal
617
- x
618
- 15
619
- DEFAULT_OPTIONS
620
- n
621
- x
622
- 5
623
- clone
624
- x
625
- 5
626
- input
627
- x
628
- 2
629
- []
630
- x
631
- 6
632
- output
633
- x
634
- 3
635
- []=
636
- x
637
- 6
638
- merge!
639
- x
640
- 5
641
- Guard
642
- x
643
- 7
644
- Watcher
645
- x
646
- 3
647
- new
648
- x
649
- 8
650
- allocate
651
- x
652
- 6
653
- Regexp
654
- s
655
- 1
656
- ^
657
- x
658
- 6
659
- delete
660
- x
661
- 4
662
- to_s
663
- s
664
- 14
665
- /(.+\.coffee)$
666
- x
667
- 10
668
- initialize
669
- x
670
- 2
671
- <<
672
- x
673
- 5
674
- merge
675
- p
676
- 21
677
- I
678
- -1
679
- I
680
- 24
681
- I
682
- 17
683
- I
684
- 25
685
- I
686
- 22
687
- I
688
- 0
689
- I
690
- 23
691
- I
692
- 26
693
- I
694
- 2c
695
- I
696
- 28
697
- I
698
- 35
699
- I
700
- 29
701
- I
702
- 50
703
- I
704
- 2a
705
- I
706
- 9f
707
- I
708
- 28
709
- I
710
- a0
711
- I
712
- 0
713
- I
714
- a1
715
- I
716
- 2d
717
- I
718
- af
719
- x
720
- 70
721
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
722
- p
723
- 3
724
- x
725
- 8
726
- watchers
727
- x
728
- 7
729
- options
730
- x
731
- 8
732
- defaults
733
- x
734
- 17
735
- method_visibility
736
- x
737
- 15
738
- add_defn_method
739
- x
740
- 5
741
- start
742
- M
743
- 1
744
- n
745
- n
746
- x
747
- 5
748
- start
749
- i
750
- 17
751
- 5
752
- 48
753
- 0
754
- 7
755
- 1
756
- 49
757
- 2
758
- 1
759
- 9
760
- 15
761
- 5
762
- 48
763
- 3
764
- 8
765
- 16
766
- 1
767
- 11
768
- I
769
- 2
770
- I
771
- 0
772
- I
773
- 0
774
- I
775
- 0
776
- n
777
- p
778
- 4
779
- x
780
- 7
781
- options
782
- x
783
- 12
784
- all_on_start
785
- x
786
- 2
787
- []
788
- x
789
- 7
790
- run_all
791
- p
792
- 7
793
- I
794
- -1
795
- I
796
- 34
797
- I
798
- 0
799
- I
800
- 35
801
- I
802
- 10
803
- I
804
- 0
805
- I
806
- 11
807
- x
808
- 70
809
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
810
- p
811
- 0
812
- x
813
- 7
814
- run_all
815
- M
816
- 1
817
- n
818
- n
819
- x
820
- 7
821
- run_all
822
- i
823
- 22
824
- 5
825
- 45
826
- 0
827
- 1
828
- 5
829
- 45
830
- 2
831
- 3
832
- 7
833
- 4
834
- 64
835
- 49
836
- 5
837
- 1
838
- 49
839
- 6
840
- 2
841
- 47
842
- 49
843
- 7
844
- 1
845
- 11
846
- I
847
- 5
848
- I
849
- 0
850
- I
851
- 0
852
- I
853
- 0
854
- n
855
- p
856
- 8
857
- x
858
- 7
859
- Watcher
860
- n
861
- x
862
- 3
863
- Dir
864
- n
865
- s
866
- 19
867
- **{,/*/**}/*.coffee
868
- x
869
- 4
870
- glob
871
- x
872
- 11
873
- match_files
874
- x
875
- 13
876
- run_on_change
877
- p
878
- 5
879
- I
880
- -1
881
- I
882
- 3c
883
- I
884
- 0
885
- I
886
- 3d
887
- I
888
- 16
889
- x
890
- 70
891
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
892
- p
893
- 0
894
- x
895
- 13
896
- run_on_change
897
- M
898
- 1
899
- n
900
- n
901
- x
902
- 13
903
- run_on_change
904
- i
905
- 55
906
- 45
907
- 0
908
- 1
909
- 45
910
- 2
911
- 3
912
- 20
913
- 0
914
- 49
915
- 4
916
- 1
917
- 5
918
- 48
919
- 5
920
- 5
921
- 48
922
- 6
923
- 49
924
- 7
925
- 3
926
- 97
927
- 37
928
- 19
929
- 1
930
- 15
931
- 37
932
- 19
933
- 2
934
- 15
935
- 15
936
- 2
937
- 15
938
- 5
939
- 20
940
- 1
941
- 47
942
- 49
943
- 8
944
- 1
945
- 15
946
- 20
947
- 2
948
- 9
949
- 47
950
- 1
951
- 8
952
- 54
953
- 5
954
- 7
955
- 9
956
- 47
957
- 49
958
- 10
959
- 1
960
- 11
961
- I
962
- 7
963
- I
964
- 3
965
- I
966
- 1
967
- I
968
- 1
969
- n
970
- p
971
- 11
972
- x
973
- 6
974
- Runner
975
- n
976
- x
977
- 9
978
- Inspector
979
- n
980
- x
981
- 5
982
- clean
983
- x
984
- 8
985
- watchers
986
- x
987
- 7
988
- options
989
- x
990
- 3
991
- run
992
- x
993
- 6
994
- notify
995
- x
996
- 15
997
- task_has_failed
998
- x
999
- 5
1000
- throw
1001
- p
1002
- 11
1003
- I
1004
- -1
1005
- I
1006
- 45
1007
- I
1008
- 0
1009
- I
1010
- 46
1011
- I
1012
- 20
1013
- I
1014
- 47
1015
- I
1016
- 28
1017
- I
1018
- 49
1019
- I
1020
- 36
1021
- I
1022
- 0
1023
- I
1024
- 37
1025
- x
1026
- 70
1027
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1028
- p
1029
- 3
1030
- x
1031
- 5
1032
- paths
1033
- x
1034
- 13
1035
- changed_files
1036
- x
1037
- 7
1038
- success
1039
- x
1040
- 15
1041
- run_on_deletion
1042
- M
1043
- 1
1044
- n
1045
- n
1046
- x
1047
- 15
1048
- run_on_deletion
1049
- i
1050
- 14
1051
- 45
1052
- 0
1053
- 1
1054
- 20
1055
- 0
1056
- 49
1057
- 2
1058
- 1
1059
- 56
1060
- 3
1061
- 50
1062
- 4
1063
- 0
1064
- 11
1065
- I
1066
- 3
1067
- I
1068
- 1
1069
- I
1070
- 1
1071
- I
1072
- 1
1073
- n
1074
- p
1075
- 5
1076
- x
1077
- 9
1078
- Inspector
1079
- n
1080
- x
1081
- 5
1082
- clean
1083
- M
1084
- 1
1085
- p
1086
- 2
1087
- x
1088
- 9
1089
- for_block
1090
- t
1091
- n
1092
- x
1093
- 15
1094
- run_on_deletion
1095
- i
1096
- 55
1097
- 57
1098
- 19
1099
- 0
1100
- 15
1101
- 20
1102
- 0
1103
- 7
1104
- 0
1105
- 13
1106
- 70
1107
- 9
1108
- 24
1109
- 15
1110
- 44
1111
- 43
1112
- 1
1113
- 7
1114
- 2
1115
- 78
1116
- 49
1117
- 3
1118
- 2
1119
- 6
1120
- 0
1121
- 7
1122
- 4
1123
- 64
1124
- 49
1125
- 5
1126
- 2
1127
- 19
1128
- 1
1129
- 15
1130
- 45
1131
- 6
1132
- 7
1133
- 20
1134
- 1
1135
- 49
1136
- 8
1137
- 1
1138
- 9
1139
- 53
1140
- 45
1141
- 6
1142
- 9
1143
- 20
1144
- 1
1145
- 49
1146
- 10
1147
- 1
1148
- 8
1149
- 54
1150
- 1
1151
- 11
1152
- I
1153
- 7
1154
- I
1155
- 2
1156
- I
1157
- 1
1158
- I
1159
- 1
1160
- n
1161
- p
1162
- 11
1163
- n
1164
- x
1165
- 6
1166
- Regexp
1167
- s
1168
- 20
1169
- (js\.coffee|coffee)$
1170
- x
1171
- 3
1172
- new
1173
- s
1174
- 2
1175
- js
1176
- x
1177
- 4
1178
- gsub
1179
- x
1180
- 4
1181
- File
1182
- n
1183
- x
1184
- 7
1185
- exists?
1186
- n
1187
- x
1188
- 6
1189
- remove
1190
- p
1191
- 9
1192
- I
1193
- 0
1194
- I
1195
- 52
1196
- I
1197
- 4
1198
- I
1199
- 53
1200
- I
1201
- 21
1202
- I
1203
- 54
1204
- I
1205
- 36
1206
- I
1207
- 0
1208
- I
1209
- 37
1210
- x
1211
- 70
1212
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1213
- p
1214
- 2
1215
- x
1216
- 4
1217
- file
1218
- x
1219
- 10
1220
- javascript
1221
- x
1222
- 4
1223
- each
1224
- p
1225
- 5
1226
- I
1227
- -1
1228
- I
1229
- 51
1230
- I
1231
- 0
1232
- I
1233
- 52
1234
- I
1235
- e
1236
- x
1237
- 70
1238
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1239
- p
1240
- 1
1241
- x
1242
- 5
1243
- paths
1244
- x
1245
- 7
1246
- private
1247
- x
1248
- 6
1249
- notify
1250
- M
1251
- 1
1252
- n
1253
- n
1254
- x
1255
- 6
1256
- notify
1257
- i
1258
- 12
1259
- 44
1260
- 43
1261
- 0
1262
- 49
1263
- 1
1264
- 0
1265
- 56
1266
- 2
1267
- 50
1268
- 3
1269
- 0
1270
- 11
1271
- I
1272
- 3
1273
- I
1274
- 1
1275
- I
1276
- 1
1277
- I
1278
- 1
1279
- n
1280
- p
1281
- 4
1282
- x
1283
- 5
1284
- Guard
1285
- x
1286
- 6
1287
- guards
1288
- M
1289
- 1
1290
- p
1291
- 2
1292
- x
1293
- 9
1294
- for_block
1295
- t
1296
- n
1297
- x
1298
- 6
1299
- notify
1300
- i
1301
- 36
1302
- 57
1303
- 19
1304
- 0
1305
- 15
1306
- 45
1307
- 0
1308
- 1
1309
- 20
1310
- 0
1311
- 21
1312
- 1
1313
- 0
1314
- 49
1315
- 2
1316
- 2
1317
- 19
1318
- 1
1319
- 15
1320
- 20
1321
- 1
1322
- 49
1323
- 3
1324
- 0
1325
- 9
1326
- 28
1327
- 1
1328
- 8
1329
- 35
1330
- 20
1331
- 0
1332
- 20
1333
- 1
1334
- 49
1335
- 4
1336
- 1
1337
- 11
1338
- I
1339
- 6
1340
- I
1341
- 2
1342
- I
1343
- 1
1344
- I
1345
- 1
1346
- n
1347
- p
1348
- 5
1349
- x
1350
- 7
1351
- Watcher
1352
- n
1353
- x
1354
- 11
1355
- match_files
1356
- x
1357
- 6
1358
- empty?
1359
- x
1360
- 13
1361
- run_on_change
1362
- p
1363
- 9
1364
- I
1365
- 0
1366
- I
1367
- 60
1368
- I
1369
- 4
1370
- I
1371
- 61
1372
- I
1373
- 12
1374
- I
1375
- 62
1376
- I
1377
- 23
1378
- I
1379
- 0
1380
- I
1381
- 24
1382
- x
1383
- 70
1384
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1385
- p
1386
- 2
1387
- x
1388
- 5
1389
- guard
1390
- x
1391
- 5
1392
- paths
1393
- x
1394
- 4
1395
- each
1396
- p
1397
- 5
1398
- I
1399
- -1
1400
- I
1401
- 5f
1402
- I
1403
- 0
1404
- I
1405
- 60
1406
- I
1407
- c
1408
- x
1409
- 70
1410
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1411
- p
1412
- 1
1413
- x
1414
- 13
1415
- changed_files
1416
- p
1417
- 35
1418
- I
1419
- 2
1420
- I
1421
- c
1422
- I
1423
- d
1424
- I
1425
- d
1426
- I
1427
- 18
1428
- I
1429
- e
1430
- I
1431
- 23
1432
- I
1433
- 10
1434
- I
1435
- 26
1436
- I
1437
- 16
1438
- I
1439
- 2f
1440
- I
1441
- 11
1442
- I
1443
- 37
1444
- I
1445
- 12
1446
- I
1447
- 3f
1448
- I
1449
- 13
1450
- I
1451
- 47
1452
- I
1453
- 14
1454
- I
1455
- 4f
1456
- I
1457
- 15
1458
- I
1459
- 5a
1460
- I
1461
- 24
1462
- I
1463
- 68
1464
- I
1465
- 34
1466
- I
1467
- 76
1468
- I
1469
- 3c
1470
- I
1471
- 84
1472
- I
1473
- 45
1474
- I
1475
- 92
1476
- I
1477
- 51
1478
- I
1479
- a0
1480
- I
1481
- 58
1482
- I
1483
- a4
1484
- I
1485
- 5f
1486
- I
1487
- b2
1488
- x
1489
- 70
1490
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1491
- p
1492
- 0
1493
- x
1494
- 13
1495
- attach_method
1496
- p
1497
- 3
1498
- I
1499
- 2
1500
- I
1501
- a
1502
- I
1503
- 1f
1504
- x
1505
- 70
1506
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1507
- p
1508
- 0
1509
- x
1510
- 13
1511
- attach_method
1512
- p
1513
- 9
1514
- I
1515
- 0
1516
- I
1517
- 1
1518
- I
1519
- 9
1520
- I
1521
- 2
1522
- I
1523
- 12
1524
- I
1525
- 3
1526
- I
1527
- 1b
1528
- I
1529
- 5
1530
- I
1531
- 37
1532
- x
1533
- 70
1534
- /Users/michi/Repositories/guard-coffeescript/lib/guard/coffeescript.rb
1535
- p
1536
- 0