guard-coffeescript 1.4.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.
@@ -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