guard 0.6.3 → 0.7.0.rc1

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.
data/lib/guard/hook.rb ADDED
@@ -0,0 +1,72 @@
1
+ module Guard
2
+ module Hook
3
+
4
+ def self.included(base)
5
+ base.send :include, InstanceMethods
6
+ end
7
+
8
+ module InstanceMethods
9
+ # When +event+ is a Symbol, #hook will generate a hook name
10
+ # by concatenating the method name from where #hook is called
11
+ # with the given Symbol.
12
+ # Example:
13
+ # def run_all
14
+ # hook :foo
15
+ # end
16
+ # Here, when #run_all is called, #hook will notify callbacks
17
+ # registered for the "run_all_foo" event.
18
+ #
19
+ # When +event+ is a String, #hook will directly turn the String
20
+ # into a Symbol.
21
+ # Example:
22
+ # def run_all
23
+ # hook "foo_bar"
24
+ # end
25
+ # Here, when #run_all is called, #hook will notify callbacks
26
+ # registered for the "foo_bar" event.
27
+ #
28
+ # +args+ parameter is passed as is to the callbacks registered
29
+ # for the given event.
30
+ def hook(event, *args)
31
+ hook_name = if event.is_a? Symbol
32
+ calling_method = caller[0][/`([^']*)'/, 1]
33
+ "#{calling_method}_#{event}"
34
+ else
35
+ event
36
+ end.to_sym
37
+
38
+ UI.debug "Hook :#{hook_name} executed for #{self.class}"
39
+
40
+ Hook.notify(self.class, hook_name, *args)
41
+ end
42
+ end
43
+
44
+ class << self
45
+ def callbacks
46
+ @callbacks ||= Hash.new { |hash, key| hash[key] = [] }
47
+ end
48
+
49
+ def add_callback(listener, guard_class, events)
50
+ _events = events.is_a?(Array) ? events : [events]
51
+ _events.each do |event|
52
+ callbacks[[guard_class, event]] << listener
53
+ end
54
+ end
55
+
56
+ def has_callback?(listener, guard_class, event)
57
+ callbacks[[guard_class, event]].include?(listener)
58
+ end
59
+
60
+ def notify(guard_class, event, *args)
61
+ callbacks[[guard_class, event]].each do |listener|
62
+ listener.call(guard_class, event, *args)
63
+ end
64
+ end
65
+
66
+ def reset_callbacks!
67
+ @callbacks = nil
68
+ end
69
+ end
70
+
71
+ end
72
+ end
@@ -1,54 +1,40 @@
1
1
  module Guard
2
- module Interactor
3
- extend self
2
+ class Interactor
4
3
 
5
- def run_all
6
- ::Guard.run do
7
- ::Guard.guards.each { |guard| ::Guard.supervised_task(guard, :run_all) }
8
- end
9
- end
4
+ attr_reader :locked
10
5
 
11
- def stop
12
- UI.info "Bye bye...", :reset => true
13
- ::Guard.listener.stop
14
- ::Guard.guards.each { |guard| ::Guard.supervised_task(guard, :stop) }
15
- abort
6
+ def initialize
7
+ @locked = false
16
8
  end
17
9
 
18
- def reload
19
- ::Guard.run do
20
- ::Guard.guards.each { |guard| ::Guard.supervised_task(guard, :reload) }
21
- end
22
- end
23
-
24
- def self.init_signal_traps
25
- # Run all (Ctrl-\)
26
- if Signal.list.has_key?('QUIT')
27
- Signal.trap('QUIT') do
28
- run_all
10
+ def start
11
+ return if ENV["GUARD_ENV"] == 'test'
12
+ Thread.new do
13
+ loop do
14
+ if (entry = $stdin.gets) && !@locked
15
+ entry.gsub! /\n/, ''
16
+ case entry
17
+ when 'stop', 'quit', 'exit', 's', 'q', 'e'
18
+ ::Guard.stop
19
+ when 'reload', 'r', 'z'
20
+ ::Guard.reload
21
+ when 'pause', 'p'
22
+ ::Guard.pause
23
+ else
24
+ ::Guard.run_all
25
+ end
26
+ end
29
27
  end
30
- else
31
- UI.info "Your system doesn't support QUIT signal, so Ctrl-\\ (Run all) won't work"
32
- end
33
-
34
- # Stop (Ctrl-C)
35
- if Signal.list.has_key?('INT')
36
- Signal.trap('INT') do
37
- stop
38
- end
39
- else
40
- UI.info "Your system doesn't support INT signal, so Ctrl-C (Stop) won't work"
41
28
  end
29
+ end
42
30
 
43
- # Reload (Ctrl-Z)
44
- if Signal.list.has_key?('TSTP')
45
- Signal.trap('TSTP') do
46
- reload
47
- end
48
- else
49
- UI.info "Your system doesn't support TSTP signal, so Ctrl-Z (Reload) won't work"
50
- end
31
+ def lock
32
+ @locked = true
33
+ end
51
34
 
35
+ def unlock
36
+ @locked = false
52
37
  end
38
+
53
39
  end
54
40
  end
@@ -0,0 +1,1218 @@
1
+ !RBIX
2
+ 16846133056282117387
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 28
13
+ 99
14
+ 7
15
+ 0
16
+ 65
17
+ 49
18
+ 1
19
+ 2
20
+ 13
21
+ 99
22
+ 12
23
+ 7
24
+ 2
25
+ 12
26
+ 7
27
+ 3
28
+ 12
29
+ 65
30
+ 12
31
+ 49
32
+ 4
33
+ 4
34
+ 15
35
+ 49
36
+ 2
37
+ 0
38
+ 15
39
+ 2
40
+ 11
41
+ I
42
+ 6
43
+ I
44
+ 0
45
+ I
46
+ 0
47
+ I
48
+ 0
49
+ n
50
+ p
51
+ 5
52
+ x
53
+ 5
54
+ Guard
55
+ x
56
+ 11
57
+ open_module
58
+ x
59
+ 15
60
+ __module_init__
61
+ M
62
+ 1
63
+ n
64
+ n
65
+ x
66
+ 5
67
+ Guard
68
+ i
69
+ 28
70
+ 5
71
+ 66
72
+ 99
73
+ 7
74
+ 0
75
+ 65
76
+ 49
77
+ 1
78
+ 2
79
+ 13
80
+ 99
81
+ 12
82
+ 7
83
+ 2
84
+ 12
85
+ 7
86
+ 3
87
+ 12
88
+ 65
89
+ 12
90
+ 49
91
+ 4
92
+ 4
93
+ 15
94
+ 49
95
+ 2
96
+ 0
97
+ 11
98
+ I
99
+ 6
100
+ I
101
+ 0
102
+ I
103
+ 0
104
+ I
105
+ 0
106
+ n
107
+ p
108
+ 5
109
+ x
110
+ 10
111
+ Interactor
112
+ x
113
+ 11
114
+ open_module
115
+ x
116
+ 15
117
+ __module_init__
118
+ M
119
+ 1
120
+ n
121
+ n
122
+ x
123
+ 10
124
+ Interactor
125
+ i
126
+ 62
127
+ 5
128
+ 66
129
+ 5
130
+ 5
131
+ 47
132
+ 49
133
+ 0
134
+ 1
135
+ 15
136
+ 99
137
+ 7
138
+ 1
139
+ 7
140
+ 2
141
+ 65
142
+ 67
143
+ 49
144
+ 3
145
+ 0
146
+ 49
147
+ 4
148
+ 4
149
+ 15
150
+ 99
151
+ 7
152
+ 5
153
+ 7
154
+ 6
155
+ 65
156
+ 67
157
+ 49
158
+ 3
159
+ 0
160
+ 49
161
+ 4
162
+ 4
163
+ 15
164
+ 99
165
+ 7
166
+ 7
167
+ 7
168
+ 8
169
+ 65
170
+ 67
171
+ 49
172
+ 3
173
+ 0
174
+ 49
175
+ 4
176
+ 4
177
+ 15
178
+ 99
179
+ 7
180
+ 9
181
+ 7
182
+ 10
183
+ 65
184
+ 5
185
+ 49
186
+ 11
187
+ 4
188
+ 11
189
+ I
190
+ 5
191
+ I
192
+ 0
193
+ I
194
+ 0
195
+ I
196
+ 0
197
+ n
198
+ p
199
+ 12
200
+ x
201
+ 6
202
+ extend
203
+ x
204
+ 7
205
+ run_all
206
+ M
207
+ 1
208
+ n
209
+ n
210
+ x
211
+ 7
212
+ run_all
213
+ i
214
+ 9
215
+ 44
216
+ 43
217
+ 0
218
+ 56
219
+ 1
220
+ 50
221
+ 2
222
+ 0
223
+ 11
224
+ I
225
+ 2
226
+ I
227
+ 0
228
+ I
229
+ 0
230
+ I
231
+ 0
232
+ n
233
+ p
234
+ 3
235
+ x
236
+ 5
237
+ Guard
238
+ M
239
+ 1
240
+ p
241
+ 2
242
+ x
243
+ 9
244
+ for_block
245
+ t
246
+ n
247
+ x
248
+ 7
249
+ run_all
250
+ i
251
+ 12
252
+ 44
253
+ 43
254
+ 0
255
+ 49
256
+ 1
257
+ 0
258
+ 56
259
+ 2
260
+ 50
261
+ 3
262
+ 0
263
+ 11
264
+ I
265
+ 3
266
+ I
267
+ 0
268
+ I
269
+ 0
270
+ I
271
+ 0
272
+ I
273
+ -2
274
+ p
275
+ 4
276
+ x
277
+ 5
278
+ Guard
279
+ x
280
+ 6
281
+ guards
282
+ M
283
+ 1
284
+ p
285
+ 2
286
+ x
287
+ 9
288
+ for_block
289
+ t
290
+ n
291
+ x
292
+ 7
293
+ run_all
294
+ i
295
+ 15
296
+ 57
297
+ 19
298
+ 0
299
+ 15
300
+ 44
301
+ 43
302
+ 0
303
+ 20
304
+ 0
305
+ 7
306
+ 1
307
+ 49
308
+ 2
309
+ 2
310
+ 11
311
+ I
312
+ 5
313
+ I
314
+ 1
315
+ I
316
+ 1
317
+ I
318
+ 1
319
+ n
320
+ p
321
+ 3
322
+ x
323
+ 5
324
+ Guard
325
+ x
326
+ 7
327
+ run_all
328
+ x
329
+ 15
330
+ supervised_task
331
+ p
332
+ 3
333
+ I
334
+ 0
335
+ I
336
+ 7
337
+ I
338
+ f
339
+ x
340
+ 50
341
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
342
+ p
343
+ 1
344
+ x
345
+ 5
346
+ guard
347
+ x
348
+ 4
349
+ each
350
+ p
351
+ 3
352
+ I
353
+ 0
354
+ I
355
+ 7
356
+ I
357
+ c
358
+ x
359
+ 50
360
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
361
+ p
362
+ 0
363
+ x
364
+ 3
365
+ run
366
+ p
367
+ 5
368
+ I
369
+ -1
370
+ I
371
+ 5
372
+ I
373
+ 0
374
+ I
375
+ 6
376
+ I
377
+ 9
378
+ x
379
+ 50
380
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
381
+ p
382
+ 0
383
+ x
384
+ 17
385
+ method_visibility
386
+ x
387
+ 15
388
+ add_defn_method
389
+ x
390
+ 4
391
+ stop
392
+ M
393
+ 1
394
+ n
395
+ n
396
+ x
397
+ 4
398
+ stop
399
+ i
400
+ 51
401
+ 45
402
+ 0
403
+ 1
404
+ 7
405
+ 2
406
+ 64
407
+ 44
408
+ 43
409
+ 3
410
+ 79
411
+ 49
412
+ 4
413
+ 1
414
+ 13
415
+ 7
416
+ 5
417
+ 2
418
+ 49
419
+ 6
420
+ 2
421
+ 15
422
+ 49
423
+ 7
424
+ 2
425
+ 15
426
+ 44
427
+ 43
428
+ 8
429
+ 49
430
+ 9
431
+ 0
432
+ 49
433
+ 10
434
+ 0
435
+ 15
436
+ 44
437
+ 43
438
+ 8
439
+ 49
440
+ 11
441
+ 0
442
+ 56
443
+ 12
444
+ 50
445
+ 13
446
+ 0
447
+ 15
448
+ 5
449
+ 48
450
+ 14
451
+ 11
452
+ I
453
+ 6
454
+ I
455
+ 0
456
+ I
457
+ 0
458
+ I
459
+ 0
460
+ n
461
+ p
462
+ 15
463
+ x
464
+ 2
465
+ UI
466
+ n
467
+ s
468
+ 10
469
+ Bye bye...
470
+ x
471
+ 4
472
+ Hash
473
+ x
474
+ 16
475
+ new_from_literal
476
+ x
477
+ 5
478
+ reset
479
+ x
480
+ 3
481
+ []=
482
+ x
483
+ 4
484
+ info
485
+ x
486
+ 5
487
+ Guard
488
+ x
489
+ 8
490
+ listener
491
+ x
492
+ 4
493
+ stop
494
+ x
495
+ 6
496
+ guards
497
+ M
498
+ 1
499
+ p
500
+ 2
501
+ x
502
+ 9
503
+ for_block
504
+ t
505
+ n
506
+ x
507
+ 4
508
+ stop
509
+ i
510
+ 15
511
+ 57
512
+ 19
513
+ 0
514
+ 15
515
+ 44
516
+ 43
517
+ 0
518
+ 20
519
+ 0
520
+ 7
521
+ 1
522
+ 49
523
+ 2
524
+ 2
525
+ 11
526
+ I
527
+ 5
528
+ I
529
+ 1
530
+ I
531
+ 1
532
+ I
533
+ 1
534
+ n
535
+ p
536
+ 3
537
+ x
538
+ 5
539
+ Guard
540
+ x
541
+ 4
542
+ stop
543
+ x
544
+ 15
545
+ supervised_task
546
+ p
547
+ 3
548
+ I
549
+ 0
550
+ I
551
+ e
552
+ I
553
+ f
554
+ x
555
+ 50
556
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
557
+ p
558
+ 1
559
+ x
560
+ 5
561
+ guard
562
+ x
563
+ 4
564
+ each
565
+ x
566
+ 5
567
+ abort
568
+ p
569
+ 11
570
+ I
571
+ -1
572
+ I
573
+ b
574
+ I
575
+ 0
576
+ I
577
+ c
578
+ I
579
+ 19
580
+ I
581
+ d
582
+ I
583
+ 23
584
+ I
585
+ e
586
+ I
587
+ 2f
588
+ I
589
+ f
590
+ I
591
+ 33
592
+ x
593
+ 50
594
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
595
+ p
596
+ 0
597
+ x
598
+ 6
599
+ reload
600
+ M
601
+ 1
602
+ n
603
+ n
604
+ x
605
+ 6
606
+ reload
607
+ i
608
+ 9
609
+ 44
610
+ 43
611
+ 0
612
+ 56
613
+ 1
614
+ 50
615
+ 2
616
+ 0
617
+ 11
618
+ I
619
+ 2
620
+ I
621
+ 0
622
+ I
623
+ 0
624
+ I
625
+ 0
626
+ n
627
+ p
628
+ 3
629
+ x
630
+ 5
631
+ Guard
632
+ M
633
+ 1
634
+ p
635
+ 2
636
+ x
637
+ 9
638
+ for_block
639
+ t
640
+ n
641
+ x
642
+ 6
643
+ reload
644
+ i
645
+ 12
646
+ 44
647
+ 43
648
+ 0
649
+ 49
650
+ 1
651
+ 0
652
+ 56
653
+ 2
654
+ 50
655
+ 3
656
+ 0
657
+ 11
658
+ I
659
+ 3
660
+ I
661
+ 0
662
+ I
663
+ 0
664
+ I
665
+ 0
666
+ I
667
+ -2
668
+ p
669
+ 4
670
+ x
671
+ 5
672
+ Guard
673
+ x
674
+ 6
675
+ guards
676
+ M
677
+ 1
678
+ p
679
+ 2
680
+ x
681
+ 9
682
+ for_block
683
+ t
684
+ n
685
+ x
686
+ 6
687
+ reload
688
+ i
689
+ 15
690
+ 57
691
+ 19
692
+ 0
693
+ 15
694
+ 44
695
+ 43
696
+ 0
697
+ 20
698
+ 0
699
+ 7
700
+ 1
701
+ 49
702
+ 2
703
+ 2
704
+ 11
705
+ I
706
+ 5
707
+ I
708
+ 1
709
+ I
710
+ 1
711
+ I
712
+ 1
713
+ n
714
+ p
715
+ 3
716
+ x
717
+ 5
718
+ Guard
719
+ x
720
+ 6
721
+ reload
722
+ x
723
+ 15
724
+ supervised_task
725
+ p
726
+ 3
727
+ I
728
+ 0
729
+ I
730
+ 14
731
+ I
732
+ f
733
+ x
734
+ 50
735
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
736
+ p
737
+ 1
738
+ x
739
+ 5
740
+ guard
741
+ x
742
+ 4
743
+ each
744
+ p
745
+ 3
746
+ I
747
+ 0
748
+ I
749
+ 14
750
+ I
751
+ c
752
+ x
753
+ 50
754
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
755
+ p
756
+ 0
757
+ x
758
+ 3
759
+ run
760
+ p
761
+ 5
762
+ I
763
+ -1
764
+ I
765
+ 12
766
+ I
767
+ 0
768
+ I
769
+ 13
770
+ I
771
+ 9
772
+ x
773
+ 50
774
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
775
+ p
776
+ 0
777
+ x
778
+ 17
779
+ init_signal_traps
780
+ M
781
+ 1
782
+ n
783
+ n
784
+ x
785
+ 17
786
+ init_signal_traps
787
+ i
788
+ 111
789
+ 45
790
+ 0
791
+ 1
792
+ 49
793
+ 2
794
+ 0
795
+ 7
796
+ 3
797
+ 64
798
+ 49
799
+ 4
800
+ 1
801
+ 9
802
+ 27
803
+ 45
804
+ 0
805
+ 5
806
+ 7
807
+ 3
808
+ 64
809
+ 56
810
+ 6
811
+ 50
812
+ 7
813
+ 1
814
+ 8
815
+ 36
816
+ 45
817
+ 8
818
+ 9
819
+ 7
820
+ 10
821
+ 64
822
+ 49
823
+ 11
824
+ 1
825
+ 15
826
+ 45
827
+ 0
828
+ 12
829
+ 49
830
+ 2
831
+ 0
832
+ 7
833
+ 13
834
+ 64
835
+ 49
836
+ 4
837
+ 1
838
+ 9
839
+ 64
840
+ 45
841
+ 0
842
+ 14
843
+ 7
844
+ 13
845
+ 64
846
+ 56
847
+ 15
848
+ 50
849
+ 7
850
+ 1
851
+ 8
852
+ 73
853
+ 45
854
+ 8
855
+ 16
856
+ 7
857
+ 17
858
+ 64
859
+ 49
860
+ 11
861
+ 1
862
+ 15
863
+ 45
864
+ 0
865
+ 18
866
+ 49
867
+ 2
868
+ 0
869
+ 7
870
+ 19
871
+ 64
872
+ 49
873
+ 4
874
+ 1
875
+ 9
876
+ 101
877
+ 45
878
+ 0
879
+ 20
880
+ 7
881
+ 19
882
+ 64
883
+ 56
884
+ 21
885
+ 50
886
+ 7
887
+ 1
888
+ 8
889
+ 110
890
+ 45
891
+ 8
892
+ 22
893
+ 7
894
+ 23
895
+ 64
896
+ 49
897
+ 11
898
+ 1
899
+ 11
900
+ I
901
+ 3
902
+ I
903
+ 0
904
+ I
905
+ 0
906
+ I
907
+ 0
908
+ n
909
+ p
910
+ 24
911
+ x
912
+ 6
913
+ Signal
914
+ n
915
+ x
916
+ 4
917
+ list
918
+ s
919
+ 4
920
+ QUIT
921
+ x
922
+ 8
923
+ has_key?
924
+ n
925
+ M
926
+ 1
927
+ p
928
+ 2
929
+ x
930
+ 9
931
+ for_block
932
+ t
933
+ n
934
+ x
935
+ 17
936
+ init_signal_traps
937
+ i
938
+ 4
939
+ 5
940
+ 48
941
+ 0
942
+ 11
943
+ I
944
+ 2
945
+ I
946
+ 0
947
+ I
948
+ 0
949
+ I
950
+ 0
951
+ I
952
+ -2
953
+ p
954
+ 1
955
+ x
956
+ 7
957
+ run_all
958
+ p
959
+ 3
960
+ I
961
+ 0
962
+ I
963
+ 1c
964
+ I
965
+ 4
966
+ x
967
+ 50
968
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
969
+ p
970
+ 0
971
+ x
972
+ 4
973
+ trap
974
+ x
975
+ 2
976
+ UI
977
+ n
978
+ s
979
+ 71
980
+ Your system doesn't support QUIT signal, so Ctrl-\ (Run all) won't work
981
+ x
982
+ 4
983
+ info
984
+ n
985
+ s
986
+ 3
987
+ INT
988
+ n
989
+ M
990
+ 1
991
+ p
992
+ 2
993
+ x
994
+ 9
995
+ for_block
996
+ t
997
+ n
998
+ x
999
+ 17
1000
+ init_signal_traps
1001
+ i
1002
+ 4
1003
+ 5
1004
+ 48
1005
+ 0
1006
+ 11
1007
+ I
1008
+ 2
1009
+ I
1010
+ 0
1011
+ I
1012
+ 0
1013
+ I
1014
+ 0
1015
+ I
1016
+ -2
1017
+ p
1018
+ 1
1019
+ x
1020
+ 4
1021
+ stop
1022
+ p
1023
+ 3
1024
+ I
1025
+ 0
1026
+ I
1027
+ 25
1028
+ I
1029
+ 4
1030
+ x
1031
+ 50
1032
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1033
+ p
1034
+ 0
1035
+ n
1036
+ s
1037
+ 67
1038
+ Your system doesn't support INT signal, so Ctrl-C (Stop) won't work
1039
+ n
1040
+ s
1041
+ 4
1042
+ TSTP
1043
+ n
1044
+ M
1045
+ 1
1046
+ p
1047
+ 2
1048
+ x
1049
+ 9
1050
+ for_block
1051
+ t
1052
+ n
1053
+ x
1054
+ 17
1055
+ init_signal_traps
1056
+ i
1057
+ 4
1058
+ 5
1059
+ 48
1060
+ 0
1061
+ 11
1062
+ I
1063
+ 2
1064
+ I
1065
+ 0
1066
+ I
1067
+ 0
1068
+ I
1069
+ 0
1070
+ I
1071
+ -2
1072
+ p
1073
+ 1
1074
+ x
1075
+ 6
1076
+ reload
1077
+ p
1078
+ 3
1079
+ I
1080
+ 0
1081
+ I
1082
+ 2e
1083
+ I
1084
+ 4
1085
+ x
1086
+ 50
1087
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1088
+ p
1089
+ 0
1090
+ n
1091
+ s
1092
+ 70
1093
+ Your system doesn't support TSTP signal, so Ctrl-Z (Reload) won't work
1094
+ p
1095
+ 27
1096
+ I
1097
+ -1
1098
+ I
1099
+ 18
1100
+ I
1101
+ 0
1102
+ I
1103
+ 1a
1104
+ I
1105
+ e
1106
+ I
1107
+ 1b
1108
+ I
1109
+ 1b
1110
+ I
1111
+ 1f
1112
+ I
1113
+ 24
1114
+ I
1115
+ 0
1116
+ I
1117
+ 25
1118
+ I
1119
+ 23
1120
+ I
1121
+ 33
1122
+ I
1123
+ 24
1124
+ I
1125
+ 40
1126
+ I
1127
+ 28
1128
+ I
1129
+ 49
1130
+ I
1131
+ 0
1132
+ I
1133
+ 4a
1134
+ I
1135
+ 2c
1136
+ I
1137
+ 58
1138
+ I
1139
+ 2d
1140
+ I
1141
+ 65
1142
+ I
1143
+ 31
1144
+ I
1145
+ 6e
1146
+ I
1147
+ 0
1148
+ I
1149
+ 6f
1150
+ x
1151
+ 50
1152
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1153
+ p
1154
+ 0
1155
+ x
1156
+ 13
1157
+ attach_method
1158
+ p
1159
+ 11
1160
+ I
1161
+ 2
1162
+ I
1163
+ 3
1164
+ I
1165
+ 9
1166
+ I
1167
+ 5
1168
+ I
1169
+ 17
1170
+ I
1171
+ b
1172
+ I
1173
+ 25
1174
+ I
1175
+ 12
1176
+ I
1177
+ 33
1178
+ I
1179
+ 18
1180
+ I
1181
+ 3e
1182
+ x
1183
+ 50
1184
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1185
+ p
1186
+ 0
1187
+ x
1188
+ 13
1189
+ attach_method
1190
+ p
1191
+ 3
1192
+ I
1193
+ 2
1194
+ I
1195
+ 2
1196
+ I
1197
+ 1c
1198
+ x
1199
+ 50
1200
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1201
+ p
1202
+ 0
1203
+ x
1204
+ 13
1205
+ attach_method
1206
+ p
1207
+ 3
1208
+ I
1209
+ 0
1210
+ I
1211
+ 1
1212
+ I
1213
+ 1c
1214
+ x
1215
+ 50
1216
+ /Users/Thibaud/Codes/guard/lib/guard/interactor.rb
1217
+ p
1218
+ 0