ruby-redis 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,63 +1,6 @@
1
- require File.expand_path '../redis', File.dirname(__FILE__)
2
- require 'eventmachine'
3
- require_relative 'reader'
4
- require_relative 'sender'
5
-
6
- class Redis
7
-
8
- # Use to respond with raw protocol
9
- # Response["+",data,"\n\r"]
10
- # Response::OK
11
- # Response[]
12
- class Response < Array
13
- OK = self["+OK\r\n".freeze].freeze
14
- PONG = self["+PONG\r\n".freeze].freeze
15
- NIL_MB = self["*-1\r\n".freeze].freeze
16
- QUEUED = self["+QUEUED\r\n".freeze].freeze
17
- end
18
-
19
- class Watcher
20
- include EventMachine::Deferrable
21
-
22
- attr_reader :bound
23
-
24
- def initialize
25
- @watched = []
26
- @bound = true
27
- errback { unbind }
28
- callback { unbind }
29
- end
30
-
31
- def bind database, *keys
32
- return unless @bound
33
- keys.each do |key|
34
- entry = [database, key]
35
- next if @watched.include? entry
36
- @watched << entry
37
- (database.watchers[key] ||= []).push self
38
- end
39
- end
40
-
41
- def unbind
42
- return unless @bound
43
- @watched.each do |database, key|
44
- key_df_list = database.watchers[key]
45
- next unless key_df_list
46
- key_df_list.delete_if { |e| e == self }
47
- end
48
- @bound = false
49
- end
50
-
51
- end
52
-
1
+ module Redis
53
2
  module Protocol
54
3
 
55
- include Sender
56
-
57
- # Typically raised by redis_QUIT
58
- class CloseConnection < Exception
59
- end
60
-
61
4
  def initialize *args
62
5
  @reader = Reader.new
63
6
  @multi = nil
@@ -69,28 +12,46 @@ class Redis
69
12
  def unbind
70
13
  @deferred.unbind if @deferred
71
14
  @watcher.unbind if @watcher
15
+ super
72
16
  end
73
17
 
74
- # Companion to send_data.
75
- def send_redis data
76
- if EventMachine::Deferrable === data
77
- @deferred.unbind if @deferred and @deferred != data
78
- @deferred = data
79
- elsif Response === data
80
- data.each do |item|
81
- send_data item
18
+ # Process incoming redis protocol
19
+ def receive_data data
20
+ return unless @reader
21
+ @reader.feed data
22
+ until (strings = @reader.gets) == false
23
+ if @multi and !%w{WATCH DISCARD MULTI EXEC DEBUG}.include?(strings[0].upcase)
24
+ @multi << strings
25
+ send_redis :'+QUEUED'
26
+ else
27
+ result = __send__ "redis_#{strings[0].upcase}", *strings[1..-1]
28
+ if Integer === result
29
+ send_data ":#{result}\r\n"
30
+ elsif EventMachine::Deferrable === result
31
+ @deferred.unbind if @deferred and @deferred != result
32
+ @deferred = result
33
+ elsif result == :quit
34
+ @reader = nil
35
+ close_connection_after_writing
36
+ break
37
+ elsif result != :exec
38
+ send_redis result
39
+ end
82
40
  end
83
- elsif Integer === data
84
- send_data ":#{data}\r\n"
85
- else
86
- super
87
41
  end
42
+ rescue Exception => e
43
+ raise e if Interrupt === e
44
+ # This sometimes comes in handy for the TCL tests
45
+ # @logger.warn "#{e.class}:/#{e.backtrace[0]} #{e.message}"
46
+ # e.backtrace[1..-1].each {|bt| @logger.warn bt}
47
+ send_data "-ERR #{e.class.name}: #{e.message}\r\n"
88
48
  end
89
-
49
+
90
50
  def redis_WATCH *keys
91
- @watcher ||= Watcher.new
51
+ raise 'WATCH inside MULTI is not allowed' if @multi
52
+ @watcher ||= Database::Watcher.new
92
53
  @watcher.bind @database, *keys
93
- Response::OK
54
+ :'+OK'
94
55
  end
95
56
 
96
57
  def redis_UNWATCH
@@ -98,19 +59,19 @@ class Redis
98
59
  @watcher.unbind
99
60
  @watcher = nil
100
61
  end
101
- Response::OK
62
+ :'+OK'
102
63
  end
103
64
 
104
65
  def redis_MULTI
105
66
  raise 'MULTI nesting not allowed' if @multi
106
67
  @multi = []
107
- Response::OK
68
+ :'+OK'
108
69
  end
109
70
 
110
71
  def redis_DISCARD
111
72
  redis_UNWATCH
112
73
  @multi = nil
113
- Response::OK
74
+ :'+OK'
114
75
  end
115
76
 
116
77
  def redis_EXEC
@@ -119,51 +80,29 @@ class Redis
119
80
  redis_UNWATCH
120
81
  unless still_bound
121
82
  @multi = nil
122
- return Response::NIL_MB
83
+ return :'*-1'
123
84
  end
124
85
  end
125
86
  send_data "*#{@multi.size}\r\n"
126
87
  response = []
127
- @multi.each do |strings|
128
- result = call_redis *strings
88
+ @multi.each do |strings|
89
+ begin
90
+ result = __send__ "redis_#{strings[0].upcase}", *strings[1..-1]
91
+ rescue Exception => e
92
+ raise e if Interrupt === e
93
+ result = e
94
+ end
129
95
  if EventMachine::Deferrable === result
130
96
  result.unbind
131
97
  send_redis nil
98
+ elsif Exception === result
99
+ send_data "-ERR #{result.class.name}: #{result.message}"
132
100
  else
133
101
  send_redis result
134
102
  end
135
103
  end
136
104
  @multi = nil
137
- Response[]
138
- end
139
-
140
- def call_redis command, *arguments
141
- send "redis_#{command.upcase}", *arguments
142
- rescue Exception => e
143
- raise e if CloseConnection === e
144
- # Redis.logger.warn "#{command.dump}: #{e.class}:/#{e.backtrace[0]} #{e.message}"
145
- # e.backtrace[1..-1].each {|bt|Redis.logger.warn bt}
146
- Response["-ERR #{e.class.name}: #{e.message}\r\n" ]
147
- end
148
-
149
- # Process incoming redis protocol
150
- def receive_data data
151
- @reader.feed data
152
- until (strings = @reader.gets) == false
153
- # Redis.logger.warn "#{strings.collect{|a|a.dump}.join ' '}"
154
- if @multi and !%w{MULTI EXEC DEBUG DISCARD}.include?(strings[0].upcase)
155
- @multi << strings
156
- send_redis Response::QUEUED
157
- else
158
- send_redis call_redis *strings
159
- end
160
- end
161
- rescue Exception => e
162
- if CloseConnection === e
163
- close_connection_after_writing
164
- else
165
- send_data "-ERR #{e.class.name}: #{e.message}\r\n"
166
- end
105
+ :exec
167
106
  end
168
107
 
169
108
  end
@@ -1,6 +1,6 @@
1
1
  !RBIX
2
- 6235178746665710376
3
- x
2
+ 8948944263761558646
3
+ 18
4
4
  M
5
5
  1
6
6
  n
@@ -9,84 +9,32 @@ x
9
9
  10
10
10
  __script__
11
11
  i
12
- 81
13
- 5
14
- 45
15
- 0
16
- 1
17
- 7
18
- 2
19
- 64
20
- 45
21
- 0
22
- 3
23
- 65
24
- 49
25
- 4
26
- 0
27
- 49
28
- 5
29
- 1
30
- 49
31
- 6
32
- 2
33
- 47
34
- 49
35
- 7
36
- 1
37
- 15
38
- 5
39
- 7
40
- 8
41
- 64
42
- 47
43
- 49
44
- 7
45
- 1
46
- 15
47
- 5
48
- 7
49
- 9
50
- 64
51
- 47
52
- 49
53
- 10
54
- 1
55
- 15
56
- 5
57
- 7
58
- 11
59
- 64
60
- 47
61
- 49
62
- 10
63
- 1
64
- 15
12
+ 29
65
13
  99
66
14
  7
67
- 12
15
+ 0
68
16
  1
69
17
  65
70
18
  49
71
- 13
19
+ 1
72
20
  3
73
21
  13
74
22
  99
75
23
  12
76
24
  7
77
- 14
25
+ 2
78
26
  12
79
27
  7
80
- 15
28
+ 3
81
29
  12
82
30
  65
83
31
  12
84
32
  49
85
- 16
33
+ 4
86
34
  4
87
35
  15
88
36
  49
89
- 14
37
+ 2
90
38
  0
91
39
  15
92
40
  2
@@ -99,41 +47,11 @@ I
99
47
  0
100
48
  I
101
49
  0
50
+ I
51
+ 0
102
52
  n
103
53
  p
104
- 17
105
- x
106
- 4
107
- File
108
- n
109
- s
110
- 8
111
- ../redis
112
- n
113
- x
114
- 11
115
- active_path
116
- x
117
- 7
118
- dirname
119
- x
120
- 11
121
- expand_path
122
- x
123
- 7
124
- require
125
- s
126
- 12
127
- eventmachine
128
- s
129
- 6
130
- reader
131
- x
132
- 16
133
- require_relative
134
- s
135
- 6
136
- sender
54
+ 5
137
55
  x
138
56
  5
139
57
  Redis
@@ -151,89 +69,33 @@ x
151
69
  5
152
70
  Redis
153
71
  i
154
- 84
72
+ 28
155
73
  5
156
74
  66
157
75
  99
158
76
  7
159
77
  0
160
- 45
161
- 1
162
- 2
163
- 65
164
- 49
165
- 3
166
- 3
167
- 13
168
- 99
169
- 12
170
- 7
171
- 4
172
- 12
173
- 7
174
- 5
175
- 12
176
78
  65
177
- 12
178
- 49
179
- 6
180
- 4
181
- 15
182
79
  49
183
- 4
184
- 0
185
- 15
186
- 99
187
- 7
188
- 7
189
80
  1
190
- 65
191
- 49
192
- 3
193
- 3
81
+ 2
194
82
  13
195
83
  99
196
84
  12
197
85
  7
198
- 4
86
+ 2
199
87
  12
200
88
  7
201
- 8
89
+ 3
202
90
  12
203
91
  65
204
92
  12
205
93
  49
206
- 6
207
94
  4
208
- 15
209
- 49
210
95
  4
211
- 0
212
96
  15
213
- 99
214
- 7
215
- 9
216
- 65
217
97
  49
218
- 10
219
98
  2
220
- 13
221
- 99
222
- 12
223
- 7
224
- 11
225
- 12
226
- 7
227
- 12
228
- 12
229
- 65
230
- 12
231
- 49
232
- 6
233
- 4
234
- 15
235
- 49
236
- 11
237
99
  0
238
100
  11
239
101
  I
@@ -244,119 +106,147 @@ I
244
106
  0
245
107
  I
246
108
  0
109
+ I
110
+ 0
247
111
  n
248
112
  p
249
- 13
113
+ 5
250
114
  x
251
115
  8
252
- Response
253
- x
254
- 5
255
- Array
256
- n
116
+ Protocol
257
117
  x
258
- 10
259
- open_class
118
+ 11
119
+ open_module
260
120
  x
261
- 14
262
- __class_init__
121
+ 15
122
+ __module_init__
263
123
  M
264
124
  1
265
125
  n
266
126
  n
267
127
  x
268
128
  8
269
- Response
129
+ Protocol
270
130
  i
271
- 86
131
+ 114
272
132
  5
273
133
  66
274
- 65
134
+ 99
275
135
  7
276
136
  0
277
- 5
278
137
  7
279
138
  1
280
- 64
139
+ 65
140
+ 67
281
141
  49
282
142
  2
283
143
  0
284
- 47
285
144
  49
286
145
  3
287
- 1
288
- 49
289
- 2
290
- 0
291
- 49
292
146
  4
293
- 2
294
147
  15
295
- 65
148
+ 99
296
149
  7
297
- 5
298
- 5
150
+ 4
299
151
  7
300
- 6
301
- 64
152
+ 5
153
+ 65
154
+ 67
302
155
  49
303
156
  2
304
157
  0
305
- 47
306
158
  49
307
159
  3
308
- 1
160
+ 4
161
+ 15
162
+ 99
163
+ 7
164
+ 6
165
+ 7
166
+ 7
167
+ 65
168
+ 67
309
169
  49
310
170
  2
311
171
  0
312
172
  49
173
+ 3
313
174
  4
314
- 2
315
175
  15
316
- 65
317
- 7
318
- 7
319
- 5
176
+ 99
320
177
  7
321
178
  8
322
- 64
179
+ 7
180
+ 9
181
+ 65
182
+ 67
323
183
  49
324
184
  2
325
185
  0
326
- 47
327
186
  49
328
187
  3
329
- 1
188
+ 4
189
+ 15
190
+ 99
191
+ 7
192
+ 10
193
+ 7
194
+ 11
195
+ 65
196
+ 67
330
197
  49
331
198
  2
332
199
  0
333
200
  49
201
+ 3
334
202
  4
335
- 2
336
203
  15
337
- 65
204
+ 99
338
205
  7
339
- 9
340
- 5
206
+ 12
341
207
  7
342
- 10
343
- 64
208
+ 13
209
+ 65
210
+ 67
344
211
  49
345
212
  2
346
213
  0
347
- 47
348
214
  49
349
215
  3
350
- 1
216
+ 4
217
+ 15
218
+ 99
219
+ 7
220
+ 14
221
+ 7
222
+ 15
223
+ 65
224
+ 67
351
225
  49
352
226
  2
353
227
  0
354
228
  49
229
+ 3
230
+ 4
231
+ 15
232
+ 99
233
+ 7
234
+ 16
235
+ 7
236
+ 17
237
+ 65
238
+ 67
239
+ 49
240
+ 2
241
+ 0
242
+ 49
243
+ 3
355
244
  4
356
- 2
357
245
  11
358
246
  I
359
- 4
247
+ 5
248
+ I
249
+ 0
360
250
  I
361
251
  0
362
252
  I
@@ -365,149 +255,189 @@ I
365
255
  0
366
256
  n
367
257
  p
368
- 11
258
+ 18
259
+ x
260
+ 10
261
+ initialize
262
+ M
263
+ 1
264
+ n
265
+ n
369
266
  x
267
+ 10
268
+ initialize
269
+ i
270
+ 43
271
+ 45
272
+ 0
273
+ 1
274
+ 13
275
+ 71
370
276
  2
371
- OK
372
- s
277
+ 47
278
+ 9
279
+ 21
280
+ 47
281
+ 49
282
+ 3
283
+ 0
284
+ 13
285
+ 47
286
+ 49
287
+ 4
288
+ 0
289
+ 15
290
+ 8
291
+ 24
292
+ 49
293
+ 2
294
+ 0
295
+ 38
373
296
  5
374
- +OK
375
-
297
+ 15
298
+ 1
299
+ 38
300
+ 6
301
+ 15
302
+ 1
303
+ 38
304
+ 7
305
+ 15
306
+ 1
307
+ 38
308
+ 8
309
+ 15
310
+ 54
311
+ 89
312
+ 4
313
+ 11
314
+ I
315
+ 3
316
+ I
317
+ 1
318
+ I
319
+ 0
320
+ I
321
+ 0
322
+ I
323
+ 0
324
+ I
325
+ 0
326
+ p
327
+ 9
376
328
  x
377
329
  6
378
- freeze
330
+ Reader
331
+ n
379
332
  x
380
- 2
381
- []
333
+ 3
334
+ new
382
335
  x
383
- 9
384
- const_set
336
+ 8
337
+ allocate
338
+ x
339
+ 10
340
+ initialize
385
341
  x
386
- 4
387
- PONG
388
- s
389
342
  7
390
- +PONG
391
-
343
+ @reader
392
344
  x
393
345
  6
394
- NIL_MB
395
- s
396
- 5
397
- *-1
398
-
346
+ @multi
399
347
  x
400
- 6
401
- QUEUED
402
- s
403
348
  9
404
- +QUEUED
405
-
349
+ @deferred
350
+ x
351
+ 8
352
+ @watcher
406
353
  p
407
- 9
354
+ 13
408
355
  I
409
- 2
356
+ -1
410
357
  I
411
- d
358
+ 4
412
359
  I
413
- 17
360
+ 0
414
361
  I
415
- e
362
+ 5
416
363
  I
417
- 2c
364
+ 1b
418
365
  I
419
- f
366
+ 6
420
367
  I
421
- 41
368
+ 1f
422
369
  I
423
- 10
370
+ 7
424
371
  I
425
- 56
372
+ 23
373
+ I
374
+ 8
375
+ I
376
+ 27
377
+ I
378
+ 9
379
+ I
380
+ 2b
426
381
  x
427
382
  54
428
383
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
429
384
  p
430
- 0
385
+ 1
431
386
  x
432
- 13
433
- attach_method
387
+ 4
388
+ args
434
389
  x
435
- 7
436
- Watcher
390
+ 17
391
+ method_visibility
392
+ x
393
+ 15
394
+ add_defn_method
395
+ x
396
+ 6
397
+ unbind
437
398
  M
438
399
  1
439
400
  n
440
401
  n
441
402
  x
442
- 7
443
- Watcher
403
+ 6
404
+ unbind
444
405
  i
445
- 63
446
- 5
447
- 66
448
- 5
449
- 45
406
+ 30
407
+ 39
408
+ 0
409
+ 9
410
+ 11
411
+ 39
450
412
  0
451
- 1
452
- 43
453
- 2
454
- 47
455
413
  49
456
- 3
457
414
  1
458
- 15
459
- 5
460
- 7
461
- 4
462
- 47
463
- 49
464
- 5
415
+ 0
416
+ 8
417
+ 12
465
418
  1
466
419
  15
467
- 99
468
- 7
469
- 6
470
- 7
471
- 7
472
- 65
473
- 67
474
- 49
475
- 8
476
- 0
477
- 49
420
+ 39
421
+ 2
478
422
  9
479
- 4
480
- 15
481
- 99
482
- 7
483
- 10
484
- 7
485
- 11
486
- 65
487
- 67
423
+ 24
424
+ 39
425
+ 2
488
426
  49
489
- 8
427
+ 1
490
428
  0
491
- 49
492
- 9
493
- 4
494
- 15
495
- 99
496
- 7
497
- 12
498
- 7
499
- 13
500
- 65
501
- 67
502
- 49
503
429
  8
504
- 0
505
- 49
506
- 9
507
- 4
430
+ 25
431
+ 1
432
+ 15
433
+ 54
434
+ 89
435
+ 1
508
436
  11
509
437
  I
510
- 5
438
+ 1
439
+ I
440
+ 0
511
441
  I
512
442
  0
513
443
  I
@@ -516,2052 +446,502 @@ I
516
446
  0
517
447
  n
518
448
  p
519
- 14
520
- x
521
- 12
522
- EventMachine
523
- n
449
+ 3
524
450
  x
525
- 10
526
- Deferrable
451
+ 9
452
+ @deferred
527
453
  x
528
- 7
529
- include
530
- x
531
- 5
532
- bound
533
- x
534
- 11
535
- attr_reader
536
- x
537
- 10
538
- initialize
539
- M
540
- 1
541
- n
542
- n
543
- x
544
- 10
545
- initialize
546
- i
547
- 25
548
- 35
549
- 0
550
- 38
551
- 0
552
- 15
553
- 2
554
- 38
555
- 1
556
- 15
557
- 5
558
- 56
559
- 2
560
- 47
561
- 50
562
- 3
563
- 0
564
- 15
565
- 5
566
- 56
567
- 4
568
- 47
569
- 50
570
- 5
571
- 0
572
- 11
573
- I
574
- 2
575
- I
576
- 0
577
- I
578
- 0
579
- I
580
- 0
581
- n
582
- p
583
- 6
454
+ 6
455
+ unbind
584
456
  x
585
457
  8
586
- @watched
587
- x
588
- 6
589
- @bound
590
- M
591
- 1
592
- p
593
- 2
594
- x
595
- 9
596
- for_block
597
- t
598
- n
599
- x
600
- 10
601
- initialize
602
- i
603
- 4
604
- 5
605
- 48
606
- 0
607
- 11
608
- I
609
- 2
610
- I
611
- 0
612
- I
613
- 0
614
- I
615
- 0
616
- I
617
- -2
618
- p
619
- 1
620
- x
621
- 6
622
- unbind
623
- p
624
- 3
625
- I
626
- 0
627
- I
628
- 1b
629
- I
630
- 4
631
- x
632
- 54
633
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
634
- p
635
- 0
636
- x
637
- 7
638
- errback
639
- M
640
- 1
458
+ @watcher
641
459
  p
642
- 2
643
- x
644
- 9
645
- for_block
646
- t
647
- n
648
- x
649
- 10
650
- initialize
651
- i
652
- 4
653
- 5
654
- 48
655
- 0
656
- 11
657
- I
658
- 2
460
+ 13
659
461
  I
660
- 0
462
+ -1
661
463
  I
662
- 0
464
+ c
663
465
  I
664
466
  0
665
467
  I
666
- -2
667
- p
668
- 1
669
- x
670
- 6
671
- unbind
672
- p
673
- 3
674
- I
675
- 0
468
+ d
676
469
  I
677
- 1c
470
+ c
678
471
  I
679
- 4
680
- x
681
- 54
682
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
683
- p
684
472
  0
685
- x
686
- 8
687
- callback
688
- p
689
- 11
690
- I
691
- -1
692
473
  I
693
- 18
474
+ d
694
475
  I
695
- 0
476
+ e
696
477
  I
697
478
  19
698
479
  I
699
- 5
480
+ 0
700
481
  I
701
482
  1a
702
483
  I
703
- 9
704
- I
705
- 1b
706
- I
707
- 11
708
- I
709
- 1c
484
+ f
710
485
  I
711
- 19
486
+ 1e
712
487
  x
713
488
  54
714
489
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
715
490
  p
716
491
  0
717
492
  x
718
- 17
719
- method_visibility
720
- x
721
- 15
722
- add_defn_method
723
- x
724
- 4
725
- bind
493
+ 12
494
+ receive_data
726
495
  M
727
496
  1
728
497
  n
729
498
  n
730
499
  x
731
- 4
732
- bind
500
+ 12
501
+ receive_data
733
502
  i
734
- 18
503
+ 348
504
+ 26
505
+ 93
506
+ 0
507
+ 15
508
+ 29
509
+ 262
510
+ 0
735
511
  39
736
512
  0
737
513
  9
738
- 7
514
+ 14
739
515
  1
740
516
  8
741
- 9
742
- 1
743
- 11
744
- 15
745
- 20
746
- 1
747
- 56
517
+ 16
748
518
  1
749
- 50
750
- 2
751
- 0
752
519
  11
753
- I
754
- 4
755
- I
756
- 2
757
- I
758
- 1
759
- I
760
- 1
761
- I
762
- 1
763
- p
764
- 3
765
- x
766
- 6
767
- @bound
768
- M
769
- 1
770
- p
771
- 2
772
- x
773
- 9
774
- for_block
775
- t
776
- n
777
- x
778
- 4
779
- bind
780
- i
781
- 74
782
- 57
783
- 19
784
- 0
785
- 15
786
- 21
787
- 1
788
- 0
789
- 20
790
- 0
791
- 35
792
- 2
793
- 19
794
- 1
795
520
  15
796
521
  39
797
522
  0
798
523
  20
799
- 1
524
+ 0
800
525
  49
801
526
  1
802
527
  1
803
- 9
804
- 27
805
- 1
806
- 11
807
- 8
808
- 28
809
- 1
810
528
  15
811
529
  39
812
530
  0
813
- 20
814
- 1
815
531
  49
816
532
  2
817
- 1
818
- 15
819
- 21
820
- 1
821
533
  0
822
- 49
823
- 3
824
- 0
825
- 20
826
- 0
827
- 14
828
- 2
829
- 49
830
- 4
831
- 1
832
- 13
833
- 10
834
- 65
835
- 15
836
- 35
837
- 0
838
- 13
839
- 18
840
- 3
841
- 49
842
- 5
843
- 2
844
- 15
845
- 8
846
- 69
847
- 18
848
- 2
849
- 16
850
- 2
851
- 5
852
- 49
853
- 6
854
- 1
855
- 11
856
- I
857
- 7
858
- I
859
- 2
860
- I
861
- 1
862
- I
863
- 1
864
- n
865
- p
866
- 7
867
- x
868
- 8
869
- @watched
870
- x
871
- 8
872
- include?
873
- x
874
- 2
875
- <<
876
- x
877
- 8
878
- watchers
879
- x
880
- 2
881
- []
882
- x
883
- 3
884
- []=
885
- x
886
- 4
887
- push
888
- p
889
- 13
890
- I
891
- 0
892
- I
893
- 21
894
- I
895
- 4
896
- I
897
- 22
898
- I
899
- e
900
- I
901
- 23
902
- I
903
- 1c
904
- I
905
- 0
906
- I
907
- 1d
908
- I
909
- 24
910
- I
911
- 25
912
- I
913
- 25
914
- I
915
- 4a
916
- x
917
- 54
918
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
919
- p
920
- 2
921
- x
922
- 3
923
- key
924
- x
925
- 5
926
- entry
927
- x
928
- 4
929
- each
930
- p
931
- 9
932
- I
933
- -1
934
- I
935
- 1f
936
- I
937
- 0
938
- I
939
- 20
940
- I
941
- 9
942
- I
943
- 0
944
- I
945
- a
946
- I
947
- 21
948
- I
949
- 12
950
- x
951
- 54
952
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
953
- p
954
- 2
955
- x
956
- 8
957
- database
958
- x
959
- 4
960
- keys
961
- x
962
- 6
963
- unbind
964
- M
965
- 1
966
- n
967
- n
968
- x
969
- 6
970
- unbind
971
- i
972
- 22
973
- 39
974
- 0
975
- 9
976
- 7
977
- 1
978
- 8
979
- 9
980
- 1
981
- 11
982
- 15
983
- 39
984
- 1
985
- 56
986
- 2
987
- 50
988
- 3
989
- 0
990
- 15
991
- 3
992
- 38
993
- 0
994
- 11
995
- I
996
- 2
997
- I
998
- 0
999
- I
1000
- 0
1001
- I
1002
- 0
1003
- n
1004
- p
1005
- 4
1006
- x
1007
- 6
1008
- @bound
1009
- x
1010
- 8
1011
- @watched
1012
- M
1013
- 1
1014
- p
1015
- 2
1016
- x
1017
- 9
1018
- for_block
1019
- t
1020
- n
1021
- x
1022
- 6
1023
- unbind
1024
- i
1025
- 41
1026
- 58
1027
- 37
1028
- 19
1029
- 0
1030
- 15
1031
- 37
1032
- 19
1033
- 1
1034
- 15
1035
- 15
1036
- 20
1037
- 0
1038
- 49
1039
- 0
1040
- 0
1041
- 20
1042
- 1
1043
- 49
1044
- 1
1045
- 1
1046
- 19
1047
- 2
1048
- 15
1049
- 20
1050
- 2
1051
- 9
1052
- 30
1053
- 1
1054
- 8
1055
- 32
1056
- 1
1057
- 11
1058
- 15
1059
- 20
1060
- 2
1061
- 56
1062
- 2
1063
- 50
1064
- 3
1065
- 0
1066
- 11
1067
- I
1068
- 6
1069
- I
1070
- 3
1071
- I
1072
- 2
1073
- I
1074
- 2
1075
- n
1076
- p
1077
- 4
1078
- x
1079
- 8
1080
- watchers
1081
- x
1082
- 2
1083
- []
1084
- M
1085
- 1
1086
- p
1087
- 2
1088
- x
1089
- 9
1090
- for_block
1091
- t
1092
- n
1093
- x
1094
- 6
1095
- unbind
1096
- i
1097
- 10
1098
- 57
1099
- 19
1100
- 0
1101
- 15
1102
- 20
1103
- 0
1104
- 5
1105
- 83
1106
- 0
1107
- 11
1108
- I
1109
- 4
1110
- I
1111
- 1
1112
- I
1113
- 1
1114
- I
1115
- 1
1116
- n
1117
- p
1118
- 1
1119
- x
1120
- 2
1121
- ==
1122
- p
1123
- 3
1124
- I
1125
- 0
1126
- I
1127
- 2e
1128
- I
1129
- a
1130
- x
1131
- 54
1132
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1133
- p
1134
- 1
1135
- x
1136
- 1
1137
- e
1138
- x
1139
- 9
1140
- delete_if
1141
- p
1142
- 11
1143
- I
1144
- 0
1145
- I
1146
- 2b
1147
- I
1148
- a
1149
- I
1150
- 2c
1151
- I
1152
- 17
1153
- I
1154
- 2d
1155
- I
1156
- 20
1157
- I
1158
- 0
1159
- I
1160
- 21
1161
- I
1162
- 2e
1163
- I
1164
- 29
1165
- x
1166
- 54
1167
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1168
- p
1169
- 3
1170
- x
1171
- 8
1172
- database
1173
- x
1174
- 3
1175
- key
1176
- x
1177
- 11
1178
- key_df_list
1179
- x
1180
- 4
1181
- each
1182
- p
1183
- 11
1184
- I
1185
- -1
1186
- I
1187
- 29
1188
- I
1189
- 0
1190
- I
1191
- 2a
1192
- I
1193
- 9
1194
- I
1195
- 0
1196
- I
1197
- a
1198
- I
1199
- 2b
1200
- I
1201
- 12
1202
- I
1203
- 30
1204
- I
1205
- 16
1206
- x
1207
- 54
1208
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1209
- p
1210
- 0
1211
- p
1212
- 11
1213
- I
1214
- 2
1215
- I
1216
- 14
1217
- I
1218
- d
1219
- I
1220
- 16
1221
- I
1222
- 15
1223
- I
1224
- 18
1225
- I
1226
- 23
1227
- I
1228
- 1f
1229
- I
1230
- 31
1231
- I
1232
- 29
1233
- I
1234
- 3f
1235
- x
1236
- 54
1237
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1238
- p
1239
- 0
1240
- x
1241
- 8
1242
- Protocol
1243
- x
1244
- 11
1245
- open_module
1246
- x
1247
- 15
1248
- __module_init__
1249
- M
1250
- 1
1251
- n
1252
- n
1253
- x
1254
- 8
1255
- Protocol
1256
- i
1257
- 164
1258
- 5
1259
- 66
1260
- 5
1261
- 45
1262
- 0
1263
- 1
1264
- 47
1265
- 49
1266
- 2
1267
- 1
1268
- 15
1269
- 99
1270
- 7
1271
- 3
1272
- 45
1273
- 4
1274
- 5
1275
- 65
1276
- 49
1277
- 6
1278
- 3
1279
- 15
1280
- 1
1281
- 15
1282
- 99
1283
- 7
1284
- 7
1285
- 7
1286
- 8
1287
- 65
1288
- 67
1289
- 49
1290
- 9
1291
- 0
1292
- 49
1293
- 10
1294
- 4
1295
- 15
1296
- 99
1297
- 7
1298
- 11
1299
- 7
1300
- 12
1301
- 65
1302
- 67
1303
- 49
1304
- 9
1305
- 0
1306
- 49
1307
- 10
1308
- 4
1309
- 15
1310
- 99
1311
- 7
1312
- 13
1313
- 7
1314
- 14
1315
- 65
1316
- 67
1317
- 49
1318
- 9
1319
- 0
1320
- 49
1321
- 10
1322
- 4
1323
- 15
1324
- 99
1325
- 7
1326
- 15
1327
- 7
1328
- 16
1329
- 65
1330
- 67
1331
- 49
1332
- 9
1333
- 0
1334
- 49
1335
- 10
1336
- 4
1337
- 15
1338
- 99
1339
- 7
1340
- 17
1341
- 7
1342
- 18
1343
- 65
1344
- 67
1345
- 49
1346
- 9
1347
- 0
1348
- 49
1349
- 10
1350
- 4
1351
- 15
1352
- 99
1353
- 7
1354
- 19
1355
- 7
1356
- 20
1357
- 65
1358
- 67
1359
- 49
1360
- 9
1361
- 0
1362
- 49
1363
- 10
1364
- 4
1365
- 15
1366
- 99
1367
- 7
1368
- 21
1369
- 7
1370
- 22
1371
- 65
1372
- 67
1373
- 49
1374
- 9
1375
- 0
1376
- 49
1377
- 10
1378
- 4
1379
- 15
1380
- 99
1381
- 7
1382
- 23
1383
- 7
1384
- 24
1385
- 65
1386
- 67
1387
- 49
1388
- 9
1389
- 0
1390
- 49
1391
- 10
1392
- 4
1393
- 15
1394
- 99
1395
- 7
1396
- 25
1397
- 7
1398
- 26
1399
- 65
1400
- 67
1401
- 49
1402
- 9
1403
- 0
1404
- 49
1405
- 10
1406
- 4
1407
- 15
1408
- 99
1409
- 7
1410
- 27
1411
- 7
1412
- 28
1413
- 65
1414
- 67
1415
- 49
1416
- 9
1417
- 0
1418
- 49
1419
- 10
1420
- 4
1421
- 11
1422
- I
1423
- 5
1424
- I
1425
- 0
1426
- I
1427
- 0
1428
- I
1429
- 0
1430
- n
1431
- p
1432
- 29
1433
- x
1434
- 6
1435
- Sender
1436
- n
1437
- x
1438
- 7
1439
- include
1440
- x
1441
- 15
1442
- CloseConnection
1443
- x
1444
- 9
1445
- Exception
1446
- n
1447
- x
1448
- 10
1449
- open_class
1450
- x
1451
- 10
1452
- initialize
1453
- M
1454
- 1
1455
- n
1456
- n
1457
- x
1458
- 10
1459
- initialize
1460
- i
1461
- 43
1462
- 45
1463
- 0
1464
- 1
1465
- 13
1466
- 71
1467
- 2
1468
- 47
1469
- 9
1470
- 21
1471
- 47
1472
- 49
1473
- 3
1474
- 0
1475
- 13
1476
- 47
1477
- 49
1478
- 4
1479
- 0
1480
- 15
1481
- 8
1482
- 24
1483
- 49
1484
- 2
1485
- 0
1486
- 38
1487
- 5
1488
- 15
1489
- 1
1490
- 38
1491
- 6
1492
- 15
1493
- 1
1494
- 38
1495
- 7
1496
- 15
1497
- 1
1498
- 38
1499
- 8
1500
- 15
1501
- 54
1502
- 89
1503
- 4
1504
- 11
1505
- I
1506
- 3
1507
- I
1508
- 1
1509
- I
1510
- 0
1511
- I
1512
- 0
1513
- I
1514
- 0
1515
- p
1516
- 9
1517
- x
1518
- 6
1519
- Reader
1520
- n
1521
- x
1522
- 3
1523
- new
1524
- x
1525
- 8
1526
- allocate
1527
- x
1528
- 10
1529
- initialize
1530
- x
1531
- 7
1532
- @reader
1533
- x
1534
- 6
1535
- @multi
1536
- x
1537
- 9
1538
- @deferred
1539
- x
1540
- 8
1541
- @watcher
1542
- p
1543
- 13
1544
- I
1545
- -1
1546
- I
1547
- 3d
1548
- I
1549
- 0
1550
- I
1551
- 3e
1552
- I
1553
- 1b
1554
- I
1555
- 3f
1556
- I
1557
- 1f
1558
- I
1559
- 40
1560
- I
1561
- 23
1562
- I
1563
- 41
1564
- I
1565
- 27
1566
- I
1567
- 42
1568
- I
1569
- 2b
1570
- x
1571
- 54
1572
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1573
- p
1574
- 1
1575
- x
1576
- 4
1577
- args
1578
- x
1579
- 17
1580
- method_visibility
1581
- x
1582
- 15
1583
- add_defn_method
1584
- x
1585
- 6
1586
- unbind
1587
- M
1588
- 1
1589
- n
1590
- n
1591
- x
1592
- 6
1593
- unbind
1594
- i
1595
- 26
1596
- 39
1597
- 0
1598
- 9
1599
- 11
1600
- 39
1601
- 0
1602
- 49
1603
- 1
1604
- 0
1605
- 8
1606
- 12
1607
- 1
1608
- 15
1609
- 39
1610
- 2
1611
- 9
1612
- 24
1613
- 39
1614
- 2
1615
- 49
1616
- 1
1617
- 0
1618
- 8
1619
- 25
1620
- 1
1621
- 11
1622
- I
1623
- 1
1624
- I
1625
- 0
1626
- I
1627
- 0
1628
- I
1629
- 0
1630
- n
1631
- p
1632
- 3
1633
- x
1634
- 9
1635
- @deferred
1636
- x
1637
- 6
1638
- unbind
1639
- x
1640
- 8
1641
- @watcher
1642
- p
1643
- 11
1644
- I
1645
- -1
1646
- I
1647
- 45
1648
- I
1649
- 0
1650
- I
1651
- 46
1652
- I
1653
- c
1654
- I
1655
- 0
1656
- I
1657
- d
1658
- I
1659
- 47
1660
- I
1661
- 19
1662
- I
1663
- 0
1664
- I
1665
- 1a
1666
- x
1667
- 54
1668
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1669
- p
1670
- 0
1671
- x
1672
- 10
1673
- send_redis
1674
- M
1675
- 1
1676
- n
1677
- n
1678
- x
1679
- 10
1680
- send_redis
1681
- i
1682
- 95
1683
- 45
1684
- 0
1685
- 1
1686
- 43
1687
- 2
1688
- 20
1689
- 0
1690
- 86
1691
- 3
1692
- 9
1693
- 46
1694
- 39
1695
- 4
1696
- 13
1697
- 9
1698
- 29
1699
- 15
1700
- 39
1701
- 4
1702
- 20
1703
- 0
1704
- 83
1705
- 5
1706
- 10
1707
- 28
1708
- 2
1709
- 8
1710
- 29
1711
- 3
1712
- 9
1713
- 38
1714
- 39
1715
- 4
1716
- 49
1717
- 6
1718
- 0
1719
- 8
1720
- 39
1721
- 1
1722
- 15
1723
- 20
1724
- 0
1725
- 38
1726
- 4
1727
- 8
1728
- 94
1729
- 45
1730
- 7
1731
- 8
1732
- 20
1733
- 0
1734
- 86
1735
- 3
1736
- 9
1737
- 64
1738
- 20
1739
- 0
1740
- 56
1741
- 9
1742
- 50
1743
- 10
1744
- 0
1745
- 8
1746
- 94
1747
- 45
1748
- 11
1749
- 12
1750
- 20
1751
- 0
1752
- 86
1753
- 3
1754
- 9
1755
- 91
1756
- 5
1757
- 7
1758
- 13
1759
- 20
1760
- 0
1761
- 47
1762
- 101
1763
- 14
1764
- 7
1765
- 15
1766
- 63
1767
- 3
1768
- 47
1769
- 49
1770
- 16
1771
- 1
1772
- 8
1773
- 94
1774
- 54
1775
- 89
1776
- 17
1777
- 11
1778
- I
1779
- 5
1780
- I
1781
- 1
1782
- I
1783
- 1
1784
- I
1785
- 1
1786
- n
1787
- p
1788
- 18
1789
- x
1790
- 12
1791
- EventMachine
1792
- n
1793
- x
1794
- 10
1795
- Deferrable
1796
- x
1797
- 3
1798
- ===
1799
- x
1800
- 9
1801
- @deferred
1802
- x
1803
- 2
1804
- ==
1805
- x
1806
- 6
1807
- unbind
1808
- x
1809
- 8
1810
- Response
1811
- n
1812
- M
1813
- 1
1814
- p
1815
- 2
1816
- x
1817
- 9
1818
- for_block
1819
- t
1820
- n
1821
- x
1822
- 10
1823
- send_redis
1824
- i
1825
- 12
1826
- 57
1827
- 19
1828
- 0
1829
- 15
1830
- 5
1831
- 20
1832
- 0
1833
- 47
1834
- 49
1835
- 0
1836
- 1
1837
- 11
1838
- I
1839
- 4
1840
- I
1841
- 1
1842
- I
1843
- 1
1844
- I
1845
- 1
1846
- n
1847
- p
1848
- 1
1849
- x
1850
- 9
1851
- send_data
1852
- p
1853
- 5
1854
- I
1855
- 0
1856
- I
1857
- 50
1858
- I
1859
- 4
1860
- I
1861
- 51
1862
- I
1863
- c
1864
- x
1865
- 54
1866
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1867
- p
1868
- 1
1869
- x
1870
- 4
1871
- item
1872
- x
1873
- 4
1874
- each
1875
- x
1876
- 7
1877
- Integer
1878
- n
1879
- s
1880
- 1
1881
- :
1882
- x
1883
- 4
1884
- to_s
1885
- s
1886
- 2
1887
-
1888
-
1889
- x
1890
- 9
1891
- send_data
1892
- x
1893
- 10
1894
- send_redis
1895
- p
1896
- 23
1897
- I
1898
- -1
1899
- I
1900
- 4b
1901
- I
1902
- 0
1903
- I
1904
- 4c
1905
- I
1906
- b
1907
- I
1908
- 4d
1909
- I
1910
- 27
1911
- I
1912
- 0
1913
- I
1914
- 28
1915
- I
1916
- 4e
1917
- I
1918
- 2e
1919
- I
1920
- 4f
1921
- I
1922
- 37
1923
- I
1924
- 50
1925
- I
1926
- 40
1927
- I
1928
- 53
1929
- I
1930
- 49
1931
- I
1932
- 54
1933
- I
1934
- 5b
1935
- I
1936
- 56
1937
- I
1938
- 5e
1939
- I
1940
- 0
1941
- I
1942
- 5f
1943
- x
1944
- 54
1945
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1946
- p
1947
- 1
1948
- x
1949
- 4
1950
- data
1951
- x
1952
- 11
1953
- redis_WATCH
1954
- M
1955
- 1
1956
- n
1957
- n
1958
- x
1959
- 11
1960
- redis_WATCH
1961
- i
1962
- 51
1963
- 39
1964
- 0
1965
- 13
1966
- 10
1967
- 32
1968
- 15
1969
- 45
1970
- 1
1971
- 2
1972
- 13
1973
- 71
1974
- 3
1975
- 47
1976
- 9
1977
- 27
1978
- 47
1979
- 49
1980
- 4
1981
- 0
1982
- 13
1983
- 47
1984
- 49
1985
- 5
1986
- 0
1987
- 15
1988
- 8
1989
- 30
1990
- 49
1991
- 3
1992
- 0
1993
- 38
1994
- 0
1995
- 15
1996
- 39
1997
- 0
1998
- 39
1999
- 6
2000
- 20
2001
- 0
2002
- 36
2003
- 1
2004
- 51
2005
- 7
2006
- 1
2007
- 15
2008
- 45
2009
- 8
2010
- 9
2011
- 43
2012
- 10
2013
- 11
2014
- I
2015
- 5
2016
- I
534
+ 19
2017
535
  1
2018
- I
2019
- 0
2020
- I
2021
- 0
2022
- I
2023
- 0
2024
- p
2025
- 11
2026
- x
2027
- 8
2028
- @watcher
2029
- x
2030
- 7
2031
- Watcher
2032
- n
2033
- x
2034
536
  3
2035
- new
2036
- x
2037
- 8
2038
- allocate
2039
- x
537
+ 83
538
+ 3
2040
539
  10
2041
- initialize
2042
- x
2043
- 9
2044
- @database
2045
- x
2046
- 4
2047
- bind
2048
- x
2049
- 8
2050
- Response
2051
- n
2052
- x
2053
- 2
2054
- OK
2055
- p
2056
- 9
2057
- I
2058
- -1
2059
- I
2060
- 5a
2061
- I
2062
- 0
2063
- I
2064
- 5b
2065
- I
2066
- 21
2067
- I
2068
- 5c
2069
- I
2070
- 2d
2071
- I
2072
- 5d
2073
- I
2074
- 33
2075
- x
2076
- 54
2077
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2078
- p
2079
- 1
2080
- x
540
+ 258
541
+ 39
2081
542
  4
2082
- keys
2083
- x
2084
- 13
2085
- redis_UNWATCH
2086
- M
2087
- 1
2088
- n
2089
- n
2090
- x
2091
543
  13
2092
- redis_UNWATCH
2093
- i
2094
- 23
2095
- 39
2096
- 0
2097
544
  9
545
+ 78
2098
546
  15
2099
- 39
2100
- 0
2101
- 49
2102
- 1
2103
- 0
2104
- 15
2105
- 1
2106
- 38
2107
- 0
2108
- 8
2109
- 16
2110
- 1
2111
- 15
2112
- 45
2113
- 2
2114
- 3
2115
- 43
2116
- 4
2117
- 11
2118
- I
2119
- 1
2120
- I
2121
- 0
2122
- I
2123
- 0
2124
- I
2125
- 0
2126
- n
2127
- p
547
+ 7
2128
548
  5
2129
- x
2130
- 8
2131
- @watcher
2132
- x
549
+ 64
550
+ 7
2133
551
  6
2134
- unbind
2135
- x
552
+ 64
553
+ 7
554
+ 7
555
+ 64
556
+ 7
2136
557
  8
2137
- Response
2138
- n
2139
- x
2140
- 2
2141
- OK
2142
- p
2143
- 15
2144
- I
2145
- -1
2146
- I
2147
- 60
2148
- I
2149
- 0
2150
- I
2151
- 61
2152
- I
2153
- 4
2154
- I
2155
- 62
2156
- I
2157
- a
2158
- I
2159
- 63
2160
- I
2161
- f
2162
- I
2163
- 61
2164
- I
2165
- 10
2166
- I
2167
- 0
2168
- I
2169
- 11
2170
- I
2171
- 65
2172
- I
2173
- 17
2174
- x
2175
- 54
2176
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2177
- p
2178
- 0
2179
- x
2180
- 11
2181
- redis_MULTI
2182
- M
2183
- 1
2184
- n
2185
- n
2186
- x
2187
- 11
2188
- redis_MULTI
2189
- i
2190
- 27
2191
- 39
2192
- 0
558
+ 64
559
+ 7
2193
560
  9
2194
- 14
561
+ 64
562
+ 35
2195
563
  5
2196
- 7
564
+ 20
2197
565
  1
2198
- 64
2199
- 47
566
+ 78
2200
567
  49
2201
- 2
2202
- 1
2203
- 8
2204
- 15
568
+ 10
2205
569
  1
2206
- 15
2207
- 35
2208
- 0
2209
- 38
2210
- 0
2211
- 15
2212
- 45
2213
- 3
2214
- 4
2215
- 43
2216
- 5
2217
- 11
2218
- I
2219
- 2
2220
- I
2221
- 0
2222
- I
2223
- 0
2224
- I
2225
- 0
2226
- n
2227
- p
2228
- 6
2229
- x
2230
- 6
2231
- @multi
2232
- s
2233
- 25
2234
- MULTI nesting not allowed
2235
- x
2236
- 5
2237
- raise
2238
- x
2239
- 8
2240
- Response
2241
- n
2242
- x
2243
- 2
2244
- OK
2245
- p
570
+ 49
2246
571
  11
2247
- I
2248
- -1
2249
- I
2250
- 68
2251
- I
2252
- 0
2253
- I
2254
- 69
2255
- I
2256
- f
2257
- I
2258
572
  0
2259
- I
573
+ 49
574
+ 12
575
+ 1
2260
576
  10
2261
- I
2262
- 6a
2263
- I
2264
- 15
2265
- I
2266
- 6b
2267
- I
2268
- 1b
2269
- x
2270
- 54
2271
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2272
- p
2273
- 0
2274
- x
2275
- 13
2276
- redis_DISCARD
2277
- M
577
+ 77
578
+ 2
579
+ 8
580
+ 78
581
+ 3
582
+ 9
583
+ 97
584
+ 39
585
+ 4
586
+ 20
2278
587
  1
2279
- n
2280
- n
2281
- x
588
+ 49
2282
589
  13
2283
- redis_DISCARD
2284
- i
590
+ 1
591
+ 15
592
+ 5
593
+ 7
2285
594
  14
595
+ 47
596
+ 49
597
+ 15
598
+ 1
599
+ 8
600
+ 254
2286
601
  5
2287
- 48
602
+ 7
603
+ 16
604
+ 20
605
+ 1
606
+ 78
607
+ 49
608
+ 10
609
+ 1
610
+ 49
611
+ 11
2288
612
  0
2289
- 15
613
+ 47
614
+ 101
615
+ 17
616
+ 63
617
+ 2
618
+ 20
2290
619
  1
2291
- 38
620
+ 44
621
+ 43
622
+ 18
623
+ 79
624
+ 77
625
+ 49
626
+ 19
627
+ 2
628
+ 49
629
+ 10
630
+ 1
631
+ 36
632
+ 1
633
+ 47
634
+ 51
635
+ 20
2292
636
  1
637
+ 19
638
+ 2
2293
639
  15
2294
640
  45
641
+ 21
642
+ 22
643
+ 20
2295
644
  2
645
+ 86
646
+ 23
647
+ 9
648
+ 163
649
+ 5
650
+ 7
651
+ 24
652
+ 20
653
+ 2
654
+ 47
655
+ 101
656
+ 17
657
+ 7
658
+ 25
659
+ 63
2296
660
  3
2297
- 43
2298
- 4
2299
- 11
2300
- I
661
+ 47
662
+ 49
663
+ 26
2301
664
  1
2302
- I
2303
- 0
2304
- I
2305
- 0
2306
- I
2307
- 0
2308
- n
2309
- p
2310
- 5
2311
- x
2312
- 13
2313
- redis_UNWATCH
2314
- x
2315
- 6
2316
- @multi
2317
- x
2318
665
  8
2319
- Response
2320
- n
2321
- x
666
+ 254
667
+ 45
668
+ 27
669
+ 28
670
+ 43
671
+ 29
672
+ 20
2322
673
  2
2323
- OK
2324
- p
674
+ 86
675
+ 23
2325
676
  9
2326
- I
2327
- -1
2328
- I
2329
- 6e
2330
- I
2331
- 0
2332
- I
2333
- 6f
2334
- I
2335
- 4
2336
- I
2337
- 70
2338
- I
2339
- 8
2340
- I
2341
- 71
2342
- I
2343
- e
2344
- x
2345
- 54
2346
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2347
- p
2348
- 0
2349
- x
2350
- 10
2351
- redis_EXEC
2352
- M
2353
- 1
2354
- n
2355
- n
2356
- x
2357
- 10
2358
- redis_EXEC
2359
- i
2360
- 81
677
+ 209
2361
678
  39
2362
- 0
679
+ 30
680
+ 13
2363
681
  9
2364
- 35
682
+ 192
683
+ 15
2365
684
  39
2366
- 0
685
+ 30
686
+ 20
687
+ 2
688
+ 83
689
+ 3
690
+ 10
691
+ 191
692
+ 2
693
+ 8
694
+ 192
695
+ 3
696
+ 9
697
+ 201
698
+ 39
699
+ 30
2367
700
  49
2368
- 1
701
+ 31
2369
702
  0
2370
- 19
703
+ 8
704
+ 202
705
+ 1
706
+ 15
707
+ 20
708
+ 2
709
+ 38
710
+ 30
711
+ 8
712
+ 254
713
+ 20
714
+ 2
715
+ 7
716
+ 32
717
+ 83
718
+ 3
719
+ 9
720
+ 230
721
+ 1
722
+ 38
2371
723
  0
2372
724
  15
2373
725
  5
2374
726
  48
2375
- 2
727
+ 33
2376
728
  15
729
+ 1
730
+ 8
731
+ 259
732
+ 8
733
+ 254
2377
734
  20
2378
- 0
735
+ 2
736
+ 7
737
+ 34
738
+ 83
739
+ 3
740
+ 10
741
+ 241
742
+ 2
743
+ 8
744
+ 242
745
+ 3
2379
746
  9
2380
- 23
747
+ 253
748
+ 5
749
+ 20
750
+ 2
751
+ 47
752
+ 49
753
+ 15
2381
754
  1
2382
755
  8
2383
- 33
756
+ 254
2384
757
  1
2385
- 38
758
+ 15
759
+ 68
760
+ 8
761
+ 25
762
+ 1
763
+ 30
764
+ 8
765
+ 344
766
+ 26
767
+ 93
768
+ 1
769
+ 15
770
+ 24
771
+ 13
772
+ 45
773
+ 35
774
+ 36
775
+ 12
776
+ 49
777
+ 23
778
+ 1
779
+ 10
780
+ 279
781
+ 8
782
+ 339
783
+ 15
784
+ 24
785
+ 19
2386
786
  3
2387
787
  15
2388
788
  45
2389
- 4
789
+ 37
790
+ 38
791
+ 20
792
+ 3
793
+ 86
794
+ 23
795
+ 9
796
+ 302
2390
797
  5
2391
- 43
2392
- 6
2393
- 11
798
+ 20
799
+ 3
800
+ 47
801
+ 49
802
+ 39
803
+ 1
2394
804
  8
2395
- 36
805
+ 303
2396
806
  1
2397
807
  15
2398
808
  5
2399
809
  7
810
+ 40
811
+ 20
812
+ 3
813
+ 49
814
+ 41
815
+ 0
816
+ 49
817
+ 42
818
+ 0
819
+ 47
820
+ 101
821
+ 17
2400
822
  7
2401
- 39
823
+ 43
824
+ 20
2402
825
  3
2403
826
  49
2404
- 8
827
+ 44
2405
828
  0
2406
829
  47
2407
830
  101
2408
- 9
831
+ 17
2409
832
  7
2410
- 10
833
+ 25
2411
834
  63
2412
- 3
835
+ 5
2413
836
  47
2414
837
  49
2415
- 11
2416
- 1
2417
- 15
2418
- 35
2419
- 0
2420
- 19
838
+ 26
2421
839
  1
840
+ 25
841
+ 8
842
+ 344
2422
843
  15
2423
- 39
2424
- 3
2425
- 56
2426
- 12
2427
- 50
2428
- 13
2429
- 0
2430
- 15
844
+ 92
2431
845
  1
2432
- 38
2433
- 3
2434
- 15
2435
- 45
2436
- 4
2437
- 14
2438
- 49
2439
- 15
846
+ 27
847
+ 34
848
+ 92
2440
849
  0
850
+ 27
2441
851
  11
2442
852
  I
2443
- 6
853
+ c
2444
854
  I
2445
- 2
855
+ 4
2446
856
  I
2447
- 0
857
+ 1
2448
858
  I
2449
859
  0
860
+ I
861
+ 1
2450
862
  n
2451
863
  p
2452
- 16
2453
- x
2454
- 8
2455
- @watcher
864
+ 45
2456
865
  x
2457
- 5
2458
- bound
866
+ 7
867
+ @reader
2459
868
  x
2460
- 13
2461
- redis_UNWATCH
869
+ 4
870
+ feed
2462
871
  x
2463
- 6
2464
- @multi
872
+ 4
873
+ gets
2465
874
  x
2466
- 8
2467
- Response
2468
- n
875
+ 2
876
+ ==
2469
877
  x
2470
878
  6
2471
- NIL_MB
879
+ @multi
880
+ s
881
+ 5
882
+ WATCH
883
+ s
884
+ 7
885
+ DISCARD
886
+ s
887
+ 5
888
+ MULTI
2472
889
  s
2473
- 1
2474
- *
2475
- x
2476
- 4
2477
- size
2478
- x
2479
890
  4
2480
- to_s
891
+ EXEC
2481
892
  s
893
+ 5
894
+ DEBUG
895
+ x
2482
896
  2
2483
-
2484
-
897
+ []
898
+ x
899
+ 6
900
+ upcase
901
+ x
902
+ 8
903
+ include?
2485
904
  x
2486
- 9
2487
- send_data
2488
- M
2489
- 1
2490
- p
2491
905
  2
906
+ <<
2492
907
  x
2493
- 9
2494
- for_block
2495
- t
2496
- n
908
+ 7
909
+ +QUEUED
2497
910
  x
2498
911
  10
2499
- redis_EXEC
2500
- i
2501
- 49
2502
- 57
2503
- 19
2504
- 0
2505
- 15
2506
- 5
2507
- 20
2508
- 0
2509
- 36
2510
- 1
2511
- 47
2512
- 51
2513
- 0
2514
- 0
2515
- 19
2516
- 1
2517
- 15
2518
- 45
2519
- 1
2520
- 2
2521
- 43
2522
- 3
2523
- 20
2524
- 1
2525
- 86
912
+ send_redis
913
+ s
914
+ 6
915
+ redis_
916
+ x
2526
917
  4
2527
- 9
2528
- 41
2529
- 20
2530
- 1
2531
- 49
2532
- 5
2533
- 0
2534
- 15
918
+ to_s
919
+ x
2535
920
  5
2536
- 1
2537
- 47
2538
- 49
2539
- 6
2540
- 1
921
+ Range
922
+ x
923
+ 3
924
+ new
925
+ x
2541
926
  8
2542
- 48
2543
- 5
2544
- 20
2545
- 1
2546
- 47
2547
- 49
2548
- 6
927
+ __send__
928
+ x
929
+ 7
930
+ Integer
931
+ n
932
+ x
933
+ 3
934
+ ===
935
+ s
2549
936
  1
2550
- 11
2551
- I
2552
- 6
2553
- I
937
+ :
938
+ s
2554
939
  2
2555
- I
2556
- 1
2557
- I
2558
- 1
2559
- n
2560
- p
2561
- 7
940
+
941
+
2562
942
  x
2563
- 10
2564
- call_redis
943
+ 9
944
+ send_data
2565
945
  x
2566
946
  12
2567
947
  EventMachine
@@ -2570,832 +950,733 @@ x
2570
950
  10
2571
951
  Deferrable
2572
952
  x
2573
- 3
2574
- ===
953
+ 9
954
+ @deferred
2575
955
  x
2576
956
  6
2577
957
  unbind
2578
958
  x
2579
- 10
2580
- send_redis
959
+ 4
960
+ quit
961
+ x
962
+ 30
963
+ close_connection_after_writing
964
+ x
965
+ 4
966
+ exec
967
+ x
968
+ 9
969
+ Exception
970
+ n
971
+ x
972
+ 9
973
+ Interrupt
974
+ n
975
+ x
976
+ 5
977
+ raise
978
+ s
979
+ 5
980
+ -ERR
981
+ x
982
+ 5
983
+ class
984
+ x
985
+ 4
986
+ name
987
+ s
988
+ 2
989
+ :
990
+ x
991
+ 7
992
+ message
2581
993
  p
994
+ 61
995
+ I
996
+ -1
997
+ I
998
+ 13
999
+ I
1000
+ 0
1001
+ I
1002
+ 14
1003
+ I
1004
+ 10
1005
+ I
1006
+ 0
1007
+ I
1008
+ 11
1009
+ I
2582
1010
  15
2583
1011
  I
2584
- 0
1012
+ 19
1013
+ I
1014
+ 16
1015
+ I
1016
+ 25
2585
1017
  I
2586
- 7f
1018
+ 17
2587
1019
  I
2588
- 4
1020
+ 50
2589
1021
  I
2590
- 80
1022
+ 18
2591
1023
  I
2592
- 10
1024
+ 58
2593
1025
  I
2594
- 81
1026
+ 19
1027
+ I
1028
+ 61
2595
1029
  I
2596
1030
  1b
2597
1031
  I
2598
- 82
1032
+ 88
2599
1033
  I
2600
- 21
1034
+ 1c
2601
1035
  I
2602
- 83
1036
+ 91
2603
1037
  I
2604
- 29
1038
+ 1d
2605
1039
  I
2606
- 85
1040
+ a3
2607
1041
  I
2608
- 30
1042
+ 1e
1043
+ I
1044
+ ae
1045
+ I
1046
+ 1f
1047
+ I
1048
+ ca
2609
1049
  I
2610
1050
  0
2611
1051
  I
2612
- 31
2613
- x
2614
- 54
2615
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2616
- p
2617
- 2
2618
- x
2619
- 7
2620
- strings
2621
- x
2622
- 6
2623
- result
2624
- x
2625
- 4
2626
- each
2627
- n
2628
- x
2629
- 2
2630
- []
2631
- p
2632
- 31
1052
+ cb
2633
1053
  I
2634
- -1
1054
+ 20
2635
1055
  I
2636
- 74
1056
+ d1
2637
1057
  I
2638
- 0
1058
+ 21
2639
1059
  I
2640
- 75
1060
+ d9
2641
1061
  I
2642
- 4
1062
+ 22
2643
1063
  I
2644
- 76
1064
+ dd
2645
1065
  I
2646
- c
1066
+ 23
2647
1067
  I
2648
- 77
1068
+ e1
2649
1069
  I
2650
- 10
1070
+ 24
2651
1071
  I
2652
- 78
1072
+ e6
2653
1073
  I
2654
- 17
1074
+ 25
2655
1075
  I
2656
- 79
1076
+ f4
2657
1077
  I
2658
- 1b
1078
+ 26
2659
1079
  I
2660
- 7a
1080
+ fd
2661
1081
  I
2662
- 21
1082
+ 25
1083
+ I
1084
+ fe
2663
1085
  I
2664
1086
  0
2665
1087
  I
2666
- 23
1088
+ 10b
2667
1089
  I
2668
- 75
1090
+ 2a
2669
1091
  I
2670
- 24
1092
+ 118
2671
1093
  I
2672
- 0
1094
+ 30
2673
1095
  I
2674
- 25
1096
+ 119
2675
1097
  I
2676
- 7d
1098
+ 2a
2677
1099
  I
2678
- 39
1100
+ 11c
2679
1101
  I
2680
- 7e
1102
+ 2b
2681
1103
  I
2682
- 3e
1104
+ 12f
2683
1105
  I
2684
- 7f
1106
+ 0
2685
1107
  I
2686
- 46
1108
+ 130
2687
1109
  I
2688
- 88
1110
+ 2f
2689
1111
  I
2690
- 4a
1112
+ 158
2691
1113
  I
2692
- 89
1114
+ 0
2693
1115
  I
2694
- 51
1116
+ 15c
2695
1117
  x
2696
1118
  54
2697
1119
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
2698
1120
  p
2699
- 2
1121
+ 4
2700
1122
  x
2701
- 11
2702
- still_bound
1123
+ 4
1124
+ data
2703
1125
  x
2704
- 8
2705
- response
1126
+ 7
1127
+ strings
2706
1128
  x
2707
- 10
2708
- call_redis
1129
+ 6
1130
+ result
1131
+ x
1132
+ 1
1133
+ e
1134
+ x
1135
+ 11
1136
+ redis_WATCH
2709
1137
  M
2710
1138
  1
2711
1139
  n
2712
1140
  n
2713
1141
  x
2714
- 10
2715
- call_redis
1142
+ 11
1143
+ redis_WATCH
2716
1144
  i
2717
- 194
2718
- 26
2719
- 93
2720
- 0
2721
- 15
2722
- 29
2723
- 31
1145
+ 66
1146
+ 39
2724
1147
  0
1148
+ 9
1149
+ 14
2725
1150
  5
2726
1151
  7
2727
- 0
2728
- 20
2729
- 0
2730
- 49
2731
1152
  1
2732
- 0
1153
+ 64
2733
1154
  47
2734
- 101
2735
- 2
2736
- 63
1155
+ 49
2737
1156
  2
2738
- 20
2739
- 1
2740
- 36
2741
- 1
2742
- 47
2743
- 51
2744
- 3
2745
1157
  1
2746
- 30
2747
1158
  8
2748
- 190
2749
- 26
2750
- 93
1159
+ 15
2751
1160
  1
2752
1161
  15
2753
- 24
1162
+ 39
1163
+ 3
2754
1164
  13
2755
- 45
2756
- 4
2757
- 5
2758
- 12
2759
- 49
2760
- 6
2761
- 1
2762
1165
  10
2763
- 48
2764
- 8
2765
- 185
2766
- 15
2767
- 24
2768
- 19
2769
- 2
1166
+ 50
2770
1167
  15
2771
1168
  45
2772
- 7
2773
- 8
2774
- 20
2775
- 2
2776
- 86
2777
- 6
2778
- 9
2779
- 71
1169
+ 4
2780
1170
  5
2781
- 20
2782
- 2
2783
- 47
2784
- 49
2785
- 9
2786
- 1
2787
- 8
2788
- 72
2789
- 1
2790
- 15
2791
- 45
2792
- 10
2793
- 11
2794
- 49
2795
- 12
2796
- 0
2797
- 20
2798
- 0
2799
- 49
2800
- 13
2801
- 0
2802
- 47
2803
- 101
2804
- 2
2805
- 7
2806
- 14
2807
- 20
2808
- 2
2809
- 49
2810
- 15
2811
- 0
2812
- 47
2813
- 101
2814
- 2
2815
- 7
2816
- 16
2817
- 20
2818
- 2
2819
- 49
2820
- 17
2821
- 0
2822
- 78
2823
- 49
2824
- 18
2825
- 1
2826
- 47
2827
- 101
2828
- 2
2829
- 7
2830
- 19
2831
- 20
2832
- 2
2833
- 49
2834
- 20
2835
- 0
2836
- 47
2837
- 101
2838
- 2
2839
- 63
2840
- 7
2841
- 49
2842
- 21
2843
- 1
2844
- 15
2845
- 20
2846
- 2
2847
- 49
2848
- 17
2849
- 0
2850
- 44
2851
1171
  43
2852
- 22
2853
- 79
2854
- 77
2855
- 49
2856
- 23
2857
- 2
2858
- 49
2859
- 18
2860
- 1
2861
- 56
2862
- 24
2863
- 50
2864
- 25
2865
- 0
2866
- 15
2867
- 45
2868
- 26
2869
- 27
1172
+ 6
1173
+ 13
1174
+ 71
2870
1175
  7
2871
- 28
2872
- 20
2873
- 2
1176
+ 47
1177
+ 9
1178
+ 45
1179
+ 47
2874
1180
  49
2875
- 15
1181
+ 8
2876
1182
  0
1183
+ 13
1184
+ 47
2877
1185
  49
2878
- 29
1186
+ 9
2879
1187
  0
2880
- 47
2881
- 101
2882
- 2
2883
- 7
2884
- 14
2885
- 20
2886
- 2
1188
+ 15
1189
+ 8
1190
+ 48
2887
1191
  49
1192
+ 7
1193
+ 0
1194
+ 38
1195
+ 3
1196
+ 15
1197
+ 39
1198
+ 3
1199
+ 39
1200
+ 10
2888
1201
  20
2889
1202
  0
2890
- 47
2891
- 101
2892
- 2
2893
- 7
2894
- 30
2895
- 63
2896
- 5
2897
- 49
2898
- 18
1203
+ 36
2899
1204
  1
2900
- 25
2901
- 8
2902
- 190
2903
- 15
2904
- 92
1205
+ 51
1206
+ 11
2905
1207
  1
2906
- 27
2907
- 34
2908
- 92
2909
- 0
2910
- 27
1208
+ 15
1209
+ 7
1210
+ 12
2911
1211
  11
2912
1212
  I
2913
- d
2914
- I
2915
- 3
1213
+ 5
2916
1214
  I
2917
1215
  1
2918
1216
  I
2919
- 1
1217
+ 0
2920
1218
  I
2921
- 1
1219
+ 0
1220
+ I
1221
+ 0
1222
+ I
1223
+ 0
2922
1224
  p
2923
- 31
2924
- s
2925
- 6
2926
- redis_
1225
+ 13
2927
1226
  x
2928
1227
  6
2929
- upcase
1228
+ @multi
1229
+ s
1230
+ 33
1231
+ WATCH inside MULTI is not allowed
2930
1232
  x
2931
- 4
2932
- to_s
1233
+ 5
1234
+ raise
2933
1235
  x
2934
- 4
2935
- send
1236
+ 8
1237
+ @watcher
2936
1238
  x
2937
- 9
2938
- Exception
1239
+ 8
1240
+ Database
2939
1241
  n
2940
1242
  x
1243
+ 7
1244
+ Watcher
1245
+ x
2941
1246
  3
2942
- ===
1247
+ new
2943
1248
  x
2944
- 15
2945
- CloseConnection
2946
- n
1249
+ 8
1250
+ allocate
2947
1251
  x
2948
- 5
2949
- raise
1252
+ 10
1253
+ initialize
2950
1254
  x
2951
- 5
2952
- Redis
2953
- n
1255
+ 9
1256
+ @database
2954
1257
  x
2955
- 6
2956
- logger
1258
+ 4
1259
+ bind
1260
+ x
1261
+ 3
1262
+ +OK
1263
+ p
1264
+ 13
1265
+ I
1266
+ -1
1267
+ I
1268
+ 32
1269
+ I
1270
+ 0
1271
+ I
1272
+ 33
1273
+ I
1274
+ f
1275
+ I
1276
+ 0
1277
+ I
1278
+ 10
1279
+ I
1280
+ 34
1281
+ I
1282
+ 33
1283
+ I
1284
+ 35
1285
+ I
1286
+ 3f
1287
+ I
1288
+ 36
1289
+ I
1290
+ 42
1291
+ x
1292
+ 54
1293
+ /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1294
+ p
1295
+ 1
2957
1296
  x
2958
1297
  4
2959
- dump
2960
- s
2961
- 2
2962
- :
1298
+ keys
2963
1299
  x
2964
- 5
2965
- class
2966
- s
2967
- 2
2968
- :/
1300
+ 13
1301
+ redis_UNWATCH
1302
+ M
1303
+ 1
1304
+ n
1305
+ n
2969
1306
  x
1307
+ 13
1308
+ redis_UNWATCH
1309
+ i
1310
+ 20
1311
+ 39
1312
+ 0
2970
1313
  9
2971
- backtrace
2972
- x
1314
+ 15
1315
+ 39
1316
+ 0
1317
+ 49
1318
+ 1
1319
+ 0
1320
+ 15
1321
+ 1
1322
+ 38
1323
+ 0
1324
+ 8
1325
+ 16
1326
+ 1
1327
+ 15
1328
+ 7
2973
1329
  2
2974
- []
2975
- s
1330
+ 11
1331
+ I
2976
1332
  1
2977
-
1333
+ I
1334
+ 0
1335
+ I
1336
+ 0
1337
+ I
1338
+ 0
1339
+ I
1340
+ 0
1341
+ n
1342
+ p
1343
+ 3
2978
1344
  x
2979
- 7
2980
- message
1345
+ 8
1346
+ @watcher
1347
+ x
1348
+ 6
1349
+ unbind
2981
1350
  x
1351
+ 3
1352
+ +OK
1353
+ p
1354
+ 15
1355
+ I
1356
+ -1
1357
+ I
1358
+ 39
1359
+ I
1360
+ 0
1361
+ I
1362
+ 3a
1363
+ I
2982
1364
  4
2983
- warn
1365
+ I
1366
+ 3b
1367
+ I
1368
+ a
1369
+ I
1370
+ 3c
1371
+ I
1372
+ f
1373
+ I
1374
+ 3a
1375
+ I
1376
+ 10
1377
+ I
1378
+ 0
1379
+ I
1380
+ 11
1381
+ I
1382
+ 3e
1383
+ I
1384
+ 14
2984
1385
  x
2985
- 5
2986
- Range
1386
+ 54
1387
+ /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1388
+ p
1389
+ 0
2987
1390
  x
2988
- 3
2989
- new
1391
+ 11
1392
+ redis_MULTI
2990
1393
  M
2991
1394
  1
2992
- p
2993
- 2
2994
- x
2995
- 9
2996
- for_block
2997
- t
1395
+ n
2998
1396
  n
2999
1397
  x
3000
- 10
3001
- call_redis
3002
- i
3003
- 16
3004
- 57
3005
- 19
3006
- 0
3007
- 15
3008
- 45
1398
+ 11
1399
+ redis_MULTI
1400
+ i
1401
+ 24
1402
+ 39
3009
1403
  0
1404
+ 9
1405
+ 14
1406
+ 5
1407
+ 7
3010
1408
  1
1409
+ 64
1410
+ 47
3011
1411
  49
3012
1412
  2
1413
+ 1
1414
+ 8
1415
+ 15
1416
+ 1
1417
+ 15
1418
+ 35
3013
1419
  0
3014
- 20
1420
+ 38
3015
1421
  0
3016
- 49
1422
+ 15
1423
+ 7
3017
1424
  3
3018
- 1
3019
1425
  11
3020
1426
  I
3021
- 4
3022
- I
3023
- 1
3024
- I
3025
- 1
1427
+ 2
3026
1428
  I
3027
- 1
3028
- n
3029
- p
3030
- 4
3031
- x
3032
- 5
3033
- Redis
3034
- n
3035
- x
3036
- 6
3037
- logger
3038
- x
3039
- 4
3040
- warn
3041
- p
3042
- 3
1429
+ 0
3043
1430
  I
3044
1431
  0
3045
1432
  I
3046
- 91
1433
+ 0
3047
1434
  I
3048
- 10
3049
- x
3050
- 54
3051
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1435
+ 0
1436
+ n
3052
1437
  p
3053
- 1
3054
- x
3055
- 2
3056
- bt
3057
- x
3058
1438
  4
3059
- each
3060
1439
  x
3061
- 8
3062
- Response
3063
- n
1440
+ 6
1441
+ @multi
3064
1442
  s
1443
+ 25
1444
+ MULTI nesting not allowed
1445
+ x
3065
1446
  5
3066
- -ERR
1447
+ raise
3067
1448
  x
3068
- 4
3069
- name
3070
- s
3071
- 2
3072
-
3073
-
1449
+ 3
1450
+ +OK
3074
1451
  p
3075
- 25
1452
+ 11
3076
1453
  I
3077
1454
  -1
3078
1455
  I
3079
- 8c
3080
- I
3081
- 0
3082
- I
3083
- 8d
3084
- I
3085
- 1f
1456
+ 41
3086
1457
  I
3087
1458
  0
3088
1459
  I
3089
- 24
3090
- I
3091
- 8e
3092
- I
3093
- 31
3094
- I
3095
- 93
3096
- I
3097
- 32
3098
- I
3099
- 8e
3100
- I
3101
- 35
3102
- I
3103
- 8f
1460
+ 42
3104
1461
  I
3105
- 48
1462
+ f
3106
1463
  I
3107
1464
  0
3108
1465
  I
3109
- 49
3110
- I
3111
- 90
3112
- I
3113
- 7f
3114
- I
3115
- 91
3116
- I
3117
- 95
1466
+ 10
3118
1467
  I
3119
- 92
1468
+ 43
3120
1469
  I
3121
- be
1470
+ 15
3122
1471
  I
3123
- 0
1472
+ 44
3124
1473
  I
3125
- c2
1474
+ 18
3126
1475
  x
3127
1476
  54
3128
1477
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
3129
1478
  p
3130
- 3
3131
- x
3132
- 7
3133
- command
3134
- x
3135
- 9
3136
- arguments
3137
- x
3138
- 1
3139
- e
1479
+ 0
3140
1480
  x
3141
- 12
3142
- receive_data
1481
+ 13
1482
+ redis_DISCARD
3143
1483
  M
3144
1484
  1
3145
1485
  n
3146
1486
  n
3147
1487
  x
3148
- 12
3149
- receive_data
1488
+ 13
1489
+ redis_DISCARD
3150
1490
  i
3151
- 217
3152
- 26
3153
- 93
1491
+ 11
1492
+ 5
1493
+ 48
3154
1494
  0
3155
1495
  15
3156
- 29
3157
- 137
3158
- 0
3159
- 39
3160
- 0
3161
- 20
3162
- 0
3163
- 49
3164
1496
  1
1497
+ 38
3165
1498
  1
3166
1499
  15
3167
- 39
3168
- 0
3169
- 49
1500
+ 7
3170
1501
  2
3171
- 0
3172
- 19
1502
+ 11
1503
+ I
3173
1504
  1
1505
+ I
1506
+ 0
1507
+ I
1508
+ 0
1509
+ I
1510
+ 0
1511
+ I
1512
+ 0
1513
+ n
1514
+ p
3174
1515
  3
3175
- 83
1516
+ x
1517
+ 13
1518
+ redis_UNWATCH
1519
+ x
1520
+ 6
1521
+ @multi
1522
+ x
3176
1523
  3
3177
- 10
3178
- 133
3179
- 45
1524
+ +OK
1525
+ p
1526
+ 9
1527
+ I
1528
+ -1
1529
+ I
1530
+ 47
1531
+ I
1532
+ 0
1533
+ I
1534
+ 48
1535
+ I
3180
1536
  4
3181
- 5
1537
+ I
3182
1538
  49
3183
- 6
3184
- 0
3185
- 20
3186
- 1
3187
- 56
3188
- 7
3189
- 50
1539
+ I
3190
1540
  8
1541
+ I
1542
+ 4a
1543
+ I
1544
+ b
1545
+ x
1546
+ 54
1547
+ /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1548
+ p
3191
1549
  0
3192
- 7
3193
- 9
3194
- 64
3195
- 49
1550
+ x
3196
1551
  10
1552
+ redis_EXEC
1553
+ M
3197
1554
  1
3198
- 47
3199
- 101
3200
- 11
3201
- 63
3202
- 1
3203
- 49
3204
- 12
3205
- 1
3206
- 15
1555
+ n
1556
+ n
1557
+ x
1558
+ 10
1559
+ redis_EXEC
1560
+ i
1561
+ 74
3207
1562
  39
3208
- 13
3209
- 13
3210
- 9
3211
- 93
3212
- 15
3213
- 7
3214
- 14
3215
- 64
3216
- 7
3217
- 15
3218
- 64
3219
- 7
3220
- 16
3221
- 64
3222
- 7
3223
- 17
3224
- 64
3225
- 35
3226
- 4
3227
- 20
3228
- 1
3229
- 78
3230
- 49
3231
- 18
3232
- 1
3233
- 49
3234
- 19
3235
1563
  0
3236
- 49
3237
- 20
3238
- 1
3239
- 10
3240
- 92
3241
- 2
3242
- 8
3243
- 93
3244
- 3
3245
1564
  9
3246
- 115
1565
+ 32
3247
1566
  39
3248
- 13
3249
- 20
3250
- 1
1567
+ 0
3251
1568
  49
3252
- 21
3253
1569
  1
1570
+ 0
1571
+ 19
1572
+ 0
3254
1573
  15
3255
1574
  5
3256
- 45
3257
- 22
3258
- 23
3259
- 43
3260
- 24
3261
- 47
3262
- 49
3263
- 25
3264
- 1
3265
- 8
3266
- 129
3267
- 5
3268
- 5
1575
+ 48
1576
+ 2
1577
+ 15
3269
1578
  20
3270
- 1
3271
- 36
3272
- 1
3273
- 47
3274
- 51
3275
- 26
3276
1579
  0
3277
- 47
3278
- 49
3279
- 25
1580
+ 9
1581
+ 23
3280
1582
  1
3281
- 15
3282
- 68
3283
1583
  8
3284
- 15
3285
- 1
3286
1584
  30
3287
- 8
3288
- 213
3289
- 26
3290
- 93
3291
1585
  1
1586
+ 38
1587
+ 3
3292
1588
  15
3293
- 24
3294
- 13
3295
- 45
3296
- 27
3297
- 28
3298
- 12
3299
- 49
3300
- 29
3301
- 1
3302
- 10
3303
- 154
1589
+ 7
1590
+ 4
1591
+ 11
3304
1592
  8
3305
- 208
3306
- 15
3307
- 24
3308
- 19
3309
- 2
1593
+ 33
1594
+ 1
3310
1595
  15
3311
- 45
3312
- 30
3313
- 31
3314
- 20
3315
- 2
3316
- 86
3317
- 29
3318
- 9
3319
- 173
3320
- 5
3321
- 48
3322
- 32
3323
- 8
3324
- 205
3325
1596
  5
3326
1597
  7
3327
- 33
3328
- 20
3329
- 2
3330
- 49
3331
- 34
3332
- 0
1598
+ 5
1599
+ 39
1600
+ 3
3333
1601
  49
3334
- 35
1602
+ 6
3335
1603
  0
3336
1604
  47
3337
1605
  101
3338
- 11
3339
1606
  7
3340
- 36
3341
- 20
3342
- 2
3343
- 49
3344
- 37
3345
- 0
3346
- 47
3347
- 101
3348
- 11
3349
1607
  7
3350
- 38
1608
+ 8
3351
1609
  63
3352
- 5
1610
+ 3
3353
1611
  47
3354
1612
  49
3355
- 39
1613
+ 9
3356
1614
  1
3357
- 25
3358
- 8
3359
- 213
3360
1615
  15
3361
- 92
1616
+ 35
1617
+ 0
1618
+ 19
3362
1619
  1
3363
- 27
3364
- 34
3365
- 92
1620
+ 15
1621
+ 39
1622
+ 3
1623
+ 56
1624
+ 10
1625
+ 50
1626
+ 11
3366
1627
  0
3367
- 27
1628
+ 15
1629
+ 1
1630
+ 38
1631
+ 3
1632
+ 15
1633
+ 7
1634
+ 12
3368
1635
  11
3369
1636
  I
3370
- b
1637
+ 6
3371
1638
  I
3372
- 3
1639
+ 2
3373
1640
  I
3374
- 1
1641
+ 0
3375
1642
  I
3376
- 1
1643
+ 0
1644
+ I
1645
+ 0
3377
1646
  n
3378
1647
  p
3379
- 40
1648
+ 13
3380
1649
  x
3381
- 7
3382
- @reader
1650
+ 8
1651
+ @watcher
3383
1652
  x
3384
- 4
3385
- feed
1653
+ 5
1654
+ bound
1655
+ x
1656
+ 13
1657
+ redis_UNWATCH
1658
+ x
1659
+ 6
1660
+ @multi
1661
+ x
1662
+ 3
1663
+ *-1
1664
+ s
1665
+ 1
1666
+ *
3386
1667
  x
3387
1668
  4
3388
- gets
1669
+ size
3389
1670
  x
1671
+ 4
1672
+ to_s
1673
+ s
3390
1674
  2
3391
- ==
3392
- x
3393
- 5
3394
- Redis
3395
- n
1675
+
1676
+
3396
1677
  x
3397
- 6
3398
- logger
1678
+ 9
1679
+ send_data
3399
1680
  M
3400
1681
  1
3401
1682
  p
@@ -3406,80 +1687,102 @@ for_block
3406
1687
  t
3407
1688
  n
3408
1689
  x
3409
- 12
3410
- receive_data
3411
- i
3412
1690
  10
1691
+ redis_EXEC
1692
+ i
1693
+ 76
3413
1694
  57
3414
1695
  19
3415
1696
  0
3416
1697
  15
1698
+ 5
1699
+ 7
1700
+ 0
3417
1701
  20
3418
1702
  0
1703
+ 78
1704
+ 49
1705
+ 1
1706
+ 1
3419
1707
  49
1708
+ 2
1709
+ 0
1710
+ 47
1711
+ 101
1712
+ 3
1713
+ 63
1714
+ 2
1715
+ 20
3420
1716
  0
1717
+ 44
1718
+ 43
1719
+ 4
1720
+ 79
1721
+ 77
1722
+ 49
1723
+ 5
1724
+ 2
1725
+ 49
1726
+ 1
1727
+ 1
1728
+ 36
1729
+ 1
1730
+ 47
1731
+ 51
1732
+ 6
1733
+ 1
1734
+ 19
1735
+ 1
1736
+ 15
1737
+ 45
1738
+ 7
1739
+ 8
1740
+ 43
1741
+ 9
1742
+ 20
1743
+ 1
1744
+ 86
1745
+ 10
1746
+ 9
1747
+ 68
1748
+ 20
1749
+ 1
1750
+ 49
1751
+ 11
3421
1752
  0
1753
+ 15
1754
+ 5
1755
+ 1
1756
+ 47
1757
+ 49
1758
+ 12
1759
+ 1
1760
+ 8
1761
+ 75
1762
+ 5
1763
+ 20
1764
+ 1
1765
+ 47
1766
+ 49
1767
+ 12
1768
+ 1
3422
1769
  11
3423
1770
  I
3424
- 3
3425
- I
3426
- 1
1771
+ 9
3427
1772
  I
3428
- 1
1773
+ 2
3429
1774
  I
3430
1775
  1
3431
- n
3432
- p
3433
- 1
3434
- x
3435
- 4
3436
- dump
3437
- p
3438
- 3
3439
1776
  I
3440
1777
  0
3441
1778
  I
3442
- 99
3443
- I
3444
- a
3445
- x
3446
- 54
3447
- /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
3448
- p
3449
- 1
3450
- x
3451
1779
  1
3452
- a
3453
- x
3454
- 7
3455
- collect
1780
+ n
1781
+ p
1782
+ 13
3456
1783
  s
3457
- 1
3458
-
3459
- x
3460
- 4
3461
- join
3462
- x
3463
- 4
3464
- to_s
3465
- x
3466
- 4
3467
- warn
3468
- x
3469
1784
  6
3470
- @multi
3471
- s
3472
- 5
3473
- MULTI
3474
- s
3475
- 4
3476
- EXEC
3477
- s
3478
- 5
3479
- DEBUG
3480
- s
3481
- 7
3482
- DISCARD
1785
+ redis_
3483
1786
  x
3484
1787
  2
3485
1788
  []
@@ -3487,215 +1790,209 @@ x
3487
1790
  6
3488
1791
  upcase
3489
1792
  x
3490
- 8
3491
- include?
1793
+ 4
1794
+ to_s
3492
1795
  x
3493
- 2
3494
- <<
1796
+ 5
1797
+ Range
3495
1798
  x
3496
- 8
3497
- Response
3498
- n
1799
+ 3
1800
+ new
3499
1801
  x
3500
- 6
3501
- QUEUED
1802
+ 8
1803
+ __send__
3502
1804
  x
3503
- 10
3504
- send_redis
1805
+ 12
1806
+ EventMachine
1807
+ n
3505
1808
  x
3506
1809
  10
3507
- call_redis
3508
- x
3509
- 9
3510
- Exception
3511
- n
1810
+ Deferrable
3512
1811
  x
3513
1812
  3
3514
1813
  ===
3515
1814
  x
3516
- 15
3517
- CloseConnection
3518
- n
3519
- x
3520
- 30
3521
- close_connection_after_writing
3522
- s
3523
- 5
3524
- -ERR
3525
- x
3526
- 5
3527
- class
1815
+ 6
1816
+ unbind
3528
1817
  x
1818
+ 10
1819
+ send_redis
1820
+ p
1821
+ 15
1822
+ I
1823
+ 0
1824
+ I
1825
+ 58
1826
+ I
3529
1827
  4
3530
- name
3531
- s
1828
+ I
1829
+ 59
1830
+ I
1831
+ 2b
1832
+ I
1833
+ 5a
1834
+ I
1835
+ 36
1836
+ I
1837
+ 5b
1838
+ I
1839
+ 3c
1840
+ I
1841
+ 5c
1842
+ I
1843
+ 44
1844
+ I
1845
+ 5e
1846
+ I
1847
+ 4b
1848
+ I
1849
+ 0
1850
+ I
1851
+ 4c
1852
+ x
1853
+ 54
1854
+ /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
1855
+ p
3532
1856
  2
3533
- :
3534
1857
  x
3535
1858
  7
3536
- message
3537
- s
3538
- 2
3539
-
3540
-
1859
+ strings
3541
1860
  x
3542
- 9
3543
- send_data
1861
+ 6
1862
+ result
1863
+ x
1864
+ 4
1865
+ each
1866
+ x
1867
+ 4
1868
+ exec
3544
1869
  p
3545
- 33
1870
+ 31
3546
1871
  I
3547
1872
  -1
3548
1873
  I
3549
- 96
1874
+ 4d
3550
1875
  I
3551
1876
  0
3552
1877
  I
3553
- 97
3554
- I
3555
- f
3556
- I
3557
- 98
1878
+ 4e
3558
1879
  I
3559
- 1b
1880
+ 4
3560
1881
  I
3561
- 99
1882
+ 4f
3562
1883
  I
3563
- 37
1884
+ c
3564
1885
  I
3565
- 9a
1886
+ 50
3566
1887
  I
3567
- 5f
1888
+ 10
3568
1889
  I
3569
- 9b
1890
+ 51
3570
1891
  I
3571
- 67
1892
+ 17
3572
1893
  I
3573
- 9c
1894
+ 52
3574
1895
  I
3575
- 73
1896
+ 1b
3576
1897
  I
3577
- 9e
1898
+ 53
3578
1899
  I
3579
- 81
1900
+ 1e
3580
1901
  I
3581
1902
  0
3582
1903
  I
3583
- 8e
1904
+ 20
3584
1905
  I
3585
- a1
1906
+ 4e
3586
1907
  I
3587
- 9b
1908
+ 21
3588
1909
  I
3589
- a7
1910
+ 0
3590
1911
  I
3591
- 9c
1912
+ 22
3592
1913
  I
3593
- a1
1914
+ 56
3594
1915
  I
3595
- 9f
1916
+ 36
3596
1917
  I
3597
- a2
1918
+ 57
3598
1919
  I
3599
- a8
1920
+ 3b
3600
1921
  I
3601
- a3
1922
+ 58
3602
1923
  I
3603
- ad
1924
+ 43
3604
1925
  I
3605
- a5
1926
+ 61
3606
1927
  I
3607
- cd
1928
+ 47
3608
1929
  I
3609
- 0
1930
+ 62
3610
1931
  I
3611
- d9
1932
+ 4a
3612
1933
  x
3613
1934
  54
3614
1935
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
3615
1936
  p
3616
- 3
3617
- x
3618
- 4
3619
- data
1937
+ 2
3620
1938
  x
3621
- 7
3622
- strings
1939
+ 11
1940
+ still_bound
3623
1941
  x
3624
- 1
3625
- e
1942
+ 8
1943
+ response
3626
1944
  p
3627
- 25
1945
+ 17
3628
1946
  I
3629
1947
  2
3630
1948
  I
3631
- 37
3632
- I
3633
- b
3634
- I
3635
- 3a
3636
- I
3637
- 18
3638
- I
3639
- 3d
3640
- I
3641
- 26
3642
- I
3643
- 45
3644
- I
3645
- 34
3646
- I
3647
- 4b
1949
+ 4
3648
1950
  I
3649
- 42
1951
+ 10
3650
1952
  I
3651
- 5a
1953
+ c
3652
1954
  I
3653
- 50
1955
+ 1e
3654
1956
  I
3655
- 60
1957
+ 13
3656
1958
  I
3657
- 5e
1959
+ 2c
3658
1960
  I
3659
- 68
1961
+ 32
3660
1962
  I
3661
- 6c
1963
+ 3a
3662
1964
  I
3663
- 6e
1965
+ 39
3664
1966
  I
3665
- 7a
1967
+ 48
3666
1968
  I
3667
- 74
1969
+ 41
3668
1970
  I
3669
- 88
1971
+ 56
3670
1972
  I
3671
- 8c
1973
+ 47
3672
1974
  I
3673
- 96
1975
+ 64
3674
1976
  I
3675
- 96
1977
+ 4d
3676
1978
  I
3677
- a4
1979
+ 72
3678
1980
  x
3679
1981
  54
3680
1982
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
3681
1983
  p
3682
1984
  0
1985
+ x
1986
+ 13
1987
+ attach_method
3683
1988
  p
3684
- 7
1989
+ 3
3685
1990
  I
3686
1991
  2
3687
1992
  I
3688
- c
3689
- I
3690
- 1f
3691
- I
3692
- 13
3693
- I
3694
- 3a
3695
- I
3696
- 35
1993
+ 2
3697
1994
  I
3698
- 54
1995
+ 1c
3699
1996
  x
3700
1997
  54
3701
1998
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb
@@ -3705,29 +2002,13 @@ x
3705
2002
  13
3706
2003
  attach_method
3707
2004
  p
3708
- 11
2005
+ 3
3709
2006
  I
3710
2007
  0
3711
2008
  I
3712
2009
  1
3713
2010
  I
3714
- 19
3715
- I
3716
- 2
3717
- I
3718
- 22
3719
- I
3720
- 3
3721
- I
3722
- 2b
3723
- I
3724
- 4
3725
- I
3726
- 34
3727
- I
3728
- 6
3729
- I
3730
- 51
2011
+ 1d
3731
2012
  x
3732
2013
  54
3733
2014
  /Users/dturnbull/ruby/ruby-redis/lib/redis/protocol.rb