ionian 0.6.8 → 0.6.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Class: Ionian::Socket
8
8
 
9
- &mdash; Documentation by YARD 0.8.7.4
9
+ &mdash; Documentation by YARD 0.8.7.6
10
10
 
11
11
  </title>
12
12
 
@@ -276,7 +276,7 @@
276
276
  <li class="public ">
277
277
  <span class="summary_signature">
278
278
 
279
- <a href="#cmd-instance_method" title="#cmd (instance method)">- (Object) <strong>cmd</strong>(string, **kwargs, &amp;block) </a>
279
+ <a href="#cmd-instance_method" title="#cmd (instance method)">- (Array&lt;MatchData&gt;) <strong>cmd</strong>(data, **kwargs) {|match| ... }</a>
280
280
 
281
281
 
282
282
 
@@ -396,7 +396,7 @@
396
396
  <li class="public ">
397
397
  <span class="summary_signature">
398
398
 
399
- <a href="#initialize-instance_method" title="#initialize (instance method)">- (Socket) <strong>initialize</strong>(existing_socket = nil, **kwargs) </a>
399
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (Socket) <strong>initialize</strong>(existing_socket = nil, **kwargs) {|socket| ... }</a>
400
400
 
401
401
 
402
402
 
@@ -553,7 +553,7 @@ any string not already ending with one.</p>
553
553
  <div class="method_details first">
554
554
  <h3 class="signature first" id="initialize-instance_method">
555
555
 
556
- - (<tt><span class='object_link'><a href="" title="Ionian::Socket (class)">Socket</a></span></tt>) <strong>initialize</strong>(existing_socket = nil, **kwargs)
556
+ - (<tt><span class='object_link'><a href="" title="Ionian::Socket (class)">Socket</a></span></tt>) <strong>initialize</strong>(existing_socket = nil, **kwargs) {|socket| ... }
557
557
 
558
558
 
559
559
 
@@ -564,30 +564,259 @@ any string not already ending with one.</p>
564
564
 
565
565
  <p>Creates a new socket or wraps an existing socket.</p>
566
566
 
567
- <p>Args:</p>
568
-
569
- <pre class="code ruby"><code class="ruby">host: IP or hostname to connect to. Can contain the port in the format &quot;host:port&quot;.
570
- port: Connection&#39;s port number. Default is 23. Unused by :unix protocol.
571
- protocol: Type of socket to create. :tcp, :udp, :unix. Default is :tcp.
572
- :udp will be automatically selected for addresses in the multicast range.
573
- persistent: The socket remains open after data is sent if this is true.
574
- The socket closes after data is sent and a packet is received
575
- if this is false. Default is true.
576
- bind_port: Local UDP port to bind to for receiving data, if different than
577
- the remote port being connected to.
578
- reuse_addr: Set true to enable the SO_REUSEADDR flag. Allows local address reuse.
579
- no_delay: Set true to enable the TCP_NODELAY flag. Disables Nagle algorithm.
580
- cork: Set true to enable the TCP_CORK flag. Buffers multiple writes
581
- into one segment.
582
- linger: Set true to enable the SO_LINGER flag. When #close is called,
583
- waits for the send buffer to empty before closing the socket.
584
- expression: Overrides the #read_match regular expression for received data.</code></pre>
585
-
586
567
 
587
568
  </div>
588
569
  </div>
589
570
  <div class="tags">
571
+ <p class="tag_title">Parameters:</p>
572
+ <ul class="param">
573
+
574
+ <li>
575
+
576
+ <span class='name'>existing_socket</span>
577
+
578
+
579
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Ionian::Socket (class)">Socket</a></span></tt>)</span>
580
+
581
+
582
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
583
+
584
+
585
+ &mdash;
586
+ <div class='inline'>
587
+ <p>An instantiated socket to be wrapped in and returned as an <span class='object_link'><a href="" title="Ionian::Socket (class)">Ionian::Socket</a></span>
588
+ (for example, TCPSocket). A new socket will be created if this parameter is
589
+ nil.</p>
590
+ </div>
591
+
592
+ </li>
593
+
594
+ <li>
595
+
596
+ <span class='name'>kwargs</span>
597
+
598
+
599
+ <span class='type'>(<tt>Hash</tt>)</span>
600
+
601
+
602
+
603
+ &mdash;
604
+ <div class='inline'>
605
+ <p>:host is mandatory.</p>
606
+ </div>
607
+
608
+ </li>
609
+
610
+ </ul>
611
+
612
+
613
+
614
+
615
+
616
+
617
+ <p class="tag_title">Options Hash (<tt>**kwargs</tt>):</p>
618
+ <ul class="option">
619
+
620
+ <li>
621
+ <span class="name">:host</span>
622
+ <span class="type">(<tt>String</tt>)</span>
623
+ <span class="default">
624
+
625
+ </span>
626
+
627
+ &mdash; <div class='inline'>
628
+ <p>IP or hostname to connect to. Can contain the port in the format
629
+ “host:port”.</p>
630
+ </div>
631
+
632
+ </li>
633
+
634
+ <li>
635
+ <span class="name">:port</span>
636
+ <span class="type">(<tt>Fixnum</tt>)</span>
637
+ <span class="default">
638
+
639
+ &mdash; default:
640
+ <tt>23</tt>
641
+
642
+ </span>
643
+
644
+ &mdash; <div class='inline'>
645
+ <p>Connection&#39;s port number. Unused by the :unix protocol.</p>
646
+ </div>
647
+
648
+ </li>
649
+
650
+ <li>
651
+ <span class="name">:protocol</span>
652
+ <span class="type">(<tt>:tcp</tt>, <tt>:udp</tt>, <tt>:unix</tt>)</span>
653
+ <span class="default">
654
+
655
+ &mdash; default:
656
+ <tt>:tcp</tt>
657
+
658
+ </span>
659
+
660
+ &mdash; <div class='inline'>
661
+ <p>Type of socket to create. :udp will be automatically selected for addresses
662
+ in the multicast range, or if the broadcast flag is set.</p>
663
+ </div>
664
+
665
+ </li>
666
+
667
+ <li>
668
+ <span class="name">:persistent</span>
669
+ <span class="type">(<tt>Boolean</tt>)</span>
670
+ <span class="default">
671
+
672
+ &mdash; default:
673
+ <tt>true</tt>
674
+
675
+ </span>
676
+
677
+ &mdash; <div class='inline'>
678
+ <p>The socket remains open after data is sent if this is true. The socket
679
+ closes after data is sent and a packet is received if this is false.</p>
680
+ </div>
681
+
682
+ </li>
683
+
684
+ <li>
685
+ <span class="name">:bind_port</span>
686
+ <span class="type">(<tt>Boolean</tt>)</span>
687
+ <span class="default">
688
+
689
+ &mdash; default:
690
+ <tt>:port</tt>
691
+
692
+ </span>
693
+
694
+ &mdash; <div class='inline'>
695
+ <p>Local UDP port to bind to for receiving data, if different than the remote
696
+ port being connected to.</p>
697
+ </div>
698
+
699
+ </li>
700
+
701
+ <li>
702
+ <span class="name">:broadcast</span>
703
+ <span class="type">(<tt>Boolean</tt>)</span>
704
+ <span class="default">
705
+
706
+ &mdash; default:
707
+ <tt>false</tt>
708
+
709
+ </span>
710
+
711
+ &mdash; <div class='inline'>
712
+ <p>Enable the SO_BROADCAST flag. Sets protocol to :udp implicitly.</p>
713
+ </div>
714
+
715
+ </li>
716
+
717
+ <li>
718
+ <span class="name">:reuse_addr</span>
719
+ <span class="type">(<tt>Boolean</tt>)</span>
720
+ <span class="default">
721
+
722
+ &mdash; default:
723
+ <tt>false</tt>
724
+
725
+ </span>
726
+
727
+ &mdash; <div class='inline'>
728
+ <p>Enable the SO_REUSEADDR flag. Allows local address reuse.</p>
729
+ </div>
730
+
731
+ </li>
732
+
733
+ <li>
734
+ <span class="name">:no_delay</span>
735
+ <span class="type">(<tt>Boolean</tt>)</span>
736
+ <span class="default">
737
+
738
+ &mdash; default:
739
+ <tt>false</tt>
740
+
741
+ </span>
742
+
743
+ &mdash; <div class='inline'>
744
+ <p>Enable the TCP_NODELAY flag. Disables Nagle algorithm.</p>
745
+ </div>
746
+
747
+ </li>
748
+
749
+ <li>
750
+ <span class="name">:cork</span>
751
+ <span class="type">(<tt>Boolean</tt>)</span>
752
+ <span class="default">
753
+
754
+ &mdash; default:
755
+ <tt>false</tt>
756
+
757
+ </span>
758
+
759
+ &mdash; <div class='inline'>
760
+ <p>Enable the TCP_CORK flag. Buffers multiple writes into one segment.</p>
761
+ </div>
762
+
763
+ </li>
764
+
765
+ <li>
766
+ <span class="name">:linger</span>
767
+ <span class="type">(<tt>Boolean</tt>)</span>
768
+ <span class="default">
769
+
770
+ &mdash; default:
771
+ <tt>false</tt>
772
+
773
+ </span>
774
+
775
+ &mdash; <div class='inline'>
776
+ <p>Enable the SO_LINGER flag. When #close is called, waits for the send buffer
777
+ to empty before closing the socket.</p>
778
+ </div>
779
+
780
+ </li>
781
+
782
+ <li>
783
+ <span class="name">:expression</span>
784
+ <span class="type">(<tt>Regexp</tt>, <tt>String</tt>)</span>
785
+ <span class="default">
786
+
787
+ </span>
788
+
789
+ &mdash; <div class='inline'>
790
+ <p>Overrides the <span class='object_link'><a href="Extension/IO.html#read_match-instance_method" title="Ionian::Extension::IO#read_match (method)">Extension::IO#read_match</a></span> regular expression for
791
+ received data.</p>
792
+ </div>
793
+
794
+ </li>
795
+
796
+ </ul>
797
+
798
+
799
+ <p class="tag_title">Yield Parameters:</p>
800
+ <ul class="yieldparam">
801
+
802
+ <li>
803
+
804
+ <span class='name'>socket</span>
805
+
806
+
807
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Ionian::Socket (class)">Ionian::Socket</a></span></tt>)</span>
808
+
809
+
810
+
811
+ &mdash;
812
+ <div class='inline'>
813
+ <p>This socket is yielded to the block. Socket flushes and closes when exiting
814
+ the block.</p>
815
+ </div>
816
+
817
+ </li>
590
818
 
819
+ </ul>
591
820
 
592
821
  </div><table class="source_code">
593
822
  <tr>
@@ -595,37 +824,6 @@ expression: Overrides the #read_match regular expression for received data.</cod
595
824
  <pre class="lines">
596
825
 
597
826
 
598
- 42
599
- 43
600
- 44
601
- 45
602
- 46
603
- 47
604
- 48
605
- 49
606
- 50
607
- 51
608
- 52
609
- 53
610
- 54
611
- 55
612
- 56
613
- 57
614
- 58
615
- 59
616
- 60
617
- 61
618
- 62
619
- 63
620
- 64
621
- 65
622
- 66
623
- 67
624
- 68
625
- 69
626
- 70
627
- 71
628
- 72
629
827
  73
630
828
  74
631
829
  75
@@ -663,12 +861,54 @@ expression: Overrides the #read_match regular expression for received data.</cod
663
861
  107
664
862
  108
665
863
  109
666
- 110</pre>
864
+ 110
865
+ 111
866
+ 112
867
+ 113
868
+ 114
869
+ 115
870
+ 116
871
+ 117
872
+ 118
873
+ 119
874
+ 120
875
+ 121
876
+ 122
877
+ 123
878
+ 124
879
+ 125
880
+ 126
881
+ 127
882
+ 128
883
+ 129
884
+ 130
885
+ 131
886
+ 132
887
+ 133
888
+ 134
889
+ 135
890
+ 136
891
+ 137
892
+ 138
893
+ 139
894
+ 140
895
+ 141
896
+ 142
897
+ 143
898
+ 144
899
+ 145
900
+ 146
901
+ 147
902
+ 148
903
+ 149
904
+ 150
905
+ 151
906
+ 152</pre>
667
907
  </td>
668
908
  <td>
669
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 42</span>
909
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 73</span>
670
910
 
671
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span> <span class='id identifier rubyid_existing_socket'>existing_socket</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span>
911
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span> <span class='id identifier rubyid_existing_socket'>existing_socket</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span>
672
912
  <span class='ivar'>@socket</span> <span class='op'>=</span> <span class='id identifier rubyid_existing_socket'>existing_socket</span>
673
913
 
674
914
  <span class='ivar'>@ionian_listeners</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
@@ -696,7 +936,7 @@ expression: Overrides the #read_match regular expression for received data.</cod
696
936
  <span class='ivar'>@protocol</span> <span class='op'>=</span> <span class='symbol'>:unix</span>
697
937
  <span class='kw'>end</span>
698
938
 
699
- <span class='ivar'>@persistent</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='comment'># Existing sockets are always persistent.
939
+ <span class='ivar'>@persistent</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='comment'># Existing sockets are always persistent.
700
940
  </span>
701
941
  <span class='ivar'>@socket</span><span class='period'>.</span><span class='id identifier rubyid_expression'>expression</span> <span class='op'>=</span> <span class='ivar'>@expression</span> <span class='kw'>if</span> <span class='ivar'>@expression</span>
702
942
 
@@ -710,12 +950,15 @@ expression: Overrides the #read_match regular expression for received data.</cod
710
950
 
711
951
  <span class='ivar'>@host</span> <span class='op'>=</span> <span class='id identifier rubyid_host_port_ary'>host_port_ary</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
712
952
  <span class='ivar'>@port</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:port</span><span class='comma'>,</span> <span class='id identifier rubyid_host_port_ary'>host_port_ary</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span> <span class='op'>||</span> <span class='int'>23</span>
713
- <span class='ivar'>@bind_port</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:bind_port</span><span class='comma'>,</span> <span class='ivar'>@port</span>
953
+ <span class='ivar'>@bind_port</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:bind_port</span><span class='comma'>,</span> <span class='ivar'>@port</span>
954
+
955
+ <span class='ivar'>@broadcast</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:broadcast</span><span class='comma'>,</span> <span class='kw'>false</span>
714
956
 
715
957
  <span class='comment'># Automatically select UDP for the multicast range. Otherwise default to TCP.
716
958
  </span> <span class='id identifier rubyid_default_protocol'>default_protocol</span> <span class='op'>=</span> <span class='symbol'>:tcp</span>
717
959
  <span class='id identifier rubyid_default_protocol'>default_protocol</span> <span class='op'>=</span> <span class='symbol'>:udp</span> <span class='kw'>if</span> <span class='const'>Ionian</span><span class='op'>::</span><span class='const'>Extension</span><span class='op'>::</span><span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_multicast?'>multicast?</span> <span class='ivar'>@host</span>
718
960
  <span class='id identifier rubyid_default_protocol'>default_protocol</span> <span class='op'>=</span> <span class='symbol'>:unix</span> <span class='kw'>if</span> <span class='ivar'>@host</span><span class='period'>.</span><span class='id identifier rubyid_start_with?'>start_with?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>/</span><span class='tstring_end'>&#39;</span></span>
961
+ <span class='id identifier rubyid_default_protocol'>default_protocol</span> <span class='op'>=</span> <span class='symbol'>:udp</span> <span class='kw'>if</span> <span class='ivar'>@broadcast</span>
719
962
 
720
963
  <span class='ivar'>@protocol</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:protocol</span><span class='comma'>,</span> <span class='id identifier rubyid_default_protocol'>default_protocol</span>
721
964
  <span class='ivar'>@persistent</span> <span class='op'>=</span> <span class='id identifier rubyid_kwargs'>kwargs</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span> <span class='symbol'>:persistent</span><span class='comma'>,</span> <span class='kw'>true</span>
@@ -736,6 +979,14 @@ expression: Overrides the #read_match regular expression for received data.</cod
736
979
 
737
980
  <span class='id identifier rubyid_create_socket'>create_socket</span> <span class='kw'>if</span> <span class='ivar'>@persistent</span>
738
981
  <span class='kw'>end</span>
982
+
983
+ <span class='kw'>if</span> <span class='id identifier rubyid_block'>block</span>
984
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span> <span class='kw'>self</span>
985
+ <span class='kw'>unless</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_closed?'>closed?</span>
986
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_flush'>flush</span>
987
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_close'>close</span>
988
+ <span class='kw'>end</span>
989
+ <span class='kw'>end</span>
739
990
  <span class='kw'>end</span></pre>
740
991
  </td>
741
992
  </tr>
@@ -970,13 +1221,13 @@ expression: Overrides the #read_match regular expression for received data.</cod
970
1221
  <pre class="lines">
971
1222
 
972
1223
 
973
- 175
974
- 176
975
- 177
976
- 178</pre>
1224
+ 222
1225
+ 223
1226
+ 224
1227
+ 225</pre>
977
1228
  </td>
978
1229
  <td>
979
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 175</span>
1230
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 222</span>
980
1231
 
981
1232
  <span class='kw'>def</span> <span class='id identifier rubyid_closed?'>closed?</span>
982
1233
  <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>unless</span> <span class='ivar'>@socket</span>
@@ -990,7 +1241,7 @@ expression: Overrides the #read_match regular expression for received data.</cod
990
1241
  <div class="method_details ">
991
1242
  <h3 class="signature " id="cmd-instance_method">
992
1243
 
993
- - (<tt>Object</tt>) <strong>cmd</strong>(string, **kwargs, &amp;block)
1244
+ - (<tt>Array&lt;MatchData&gt;</tt>) <strong>cmd</strong>(data, **kwargs) {|match| ... }
994
1245
 
995
1246
 
996
1247
 
@@ -999,14 +1250,78 @@ expression: Overrides the #read_match regular expression for received data.</cod
999
1250
  </h3><div class="docstring">
1000
1251
  <div class="discussion">
1001
1252
 
1002
- <p>Send a command (data) to the socket. Returns an array of received matches.
1003
- Block yields received match. See Ionian::Extension::IO#read_match.</p>
1253
+ <p>Send a command (data) to the socket.</p>
1004
1254
 
1005
1255
 
1006
1256
  </div>
1007
1257
  </div>
1008
1258
  <div class="tags">
1259
+ <p class="tag_title">Parameters:</p>
1260
+ <ul class="param">
1261
+
1262
+ <li>
1263
+
1264
+ <span class='name'>kwargs</span>
1265
+
1266
+
1267
+ <span class='type'>(<tt>Hash</tt>)</span>
1268
+
1269
+
1270
+
1271
+ &mdash;
1272
+ <div class='inline'>
1273
+ <p>Pass through to <span class='object_link'><a href="Extension/IO.html#read_match-instance_method" title="Ionian::Extension::IO#read_match (method)">Extension::IO#read_match</a></span>.</p>
1274
+ </div>
1275
+
1276
+ </li>
1277
+
1278
+ </ul>
1279
+
1280
+ <p class="tag_title">Yield Parameters:</p>
1281
+ <ul class="yieldparam">
1282
+
1283
+ <li>
1284
+
1285
+ <span class='name'>match</span>
1286
+
1287
+
1288
+ <span class='type'>(<tt>MatchData</tt>)</span>
1289
+
1290
+
1291
+
1292
+ &mdash;
1293
+ <div class='inline'>
1294
+ <p>Received match.</p>
1295
+ </div>
1296
+
1297
+ </li>
1009
1298
 
1299
+ </ul>
1300
+ <p class="tag_title">Returns:</p>
1301
+ <ul class="return">
1302
+
1303
+ <li>
1304
+
1305
+
1306
+ <span class='type'>(<tt>Array&lt;MatchData&gt;</tt>)</span>
1307
+
1308
+
1309
+
1310
+ &mdash;
1311
+ <div class='inline'>
1312
+ <p>An array of received matches.</p>
1313
+ </div>
1314
+
1315
+ </li>
1316
+
1317
+ </ul>
1318
+
1319
+ <p class="tag_title">See Also:</p>
1320
+ <ul class="see">
1321
+
1322
+ <li><span class='object_link'><a href="Extension/IO.html#read_match-instance_method" title="Ionian::Extension::IO#read_match (method)">Extension::IO#read_match</a></span></li>
1323
+
1324
+ </ul>
1010
1325
 
1011
1326
  </div><table class="source_code">
1012
1327
  <tr>
@@ -1014,25 +1329,25 @@ Block yields received match. See Ionian::Extension::IO#read_match.</p>
1014
1329
  <pre class="lines">
1015
1330
 
1016
1331
 
1017
- 132
1018
- 133
1019
- 134
1020
- 135
1021
- 136
1022
- 137
1023
- 138
1024
- 139
1025
- 140
1026
- 141
1027
- 142</pre>
1332
+ 179
1333
+ 180
1334
+ 181
1335
+ 182
1336
+ 183
1337
+ 184
1338
+ 185
1339
+ 186
1340
+ 187
1341
+ 188
1342
+ 189</pre>
1028
1343
  </td>
1029
1344
  <td>
1030
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 132</span>
1345
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 179</span>
1031
1346
 
1032
- <span class='kw'>def</span> <span class='id identifier rubyid_cmd'>cmd</span> <span class='id identifier rubyid_string'>string</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span>
1347
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd'>cmd</span> <span class='id identifier rubyid_data'>data</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span>
1033
1348
  <span class='id identifier rubyid_create_socket'>create_socket</span> <span class='kw'>unless</span> <span class='ivar'>@persistent</span>
1034
1349
 
1035
- <span class='id identifier rubyid_write'>write</span> <span class='id identifier rubyid_string'>string</span>
1350
+ <span class='id identifier rubyid_write'>write</span> <span class='id identifier rubyid_data'>data</span>
1036
1351
  <span class='ivar'>@socket</span><span class='period'>.</span><span class='id identifier rubyid_flush'>flush</span>
1037
1352
 
1038
1353
  <span class='id identifier rubyid_matches'>matches</span> <span class='op'>=</span> <span class='ivar'>@socket</span><span class='period'>.</span><span class='id identifier rubyid_read_match'>read_match</span><span class='lparen'>(</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_match'>match</span><span class='op'>|</span> <span class='kw'>yield</span> <span class='id identifier rubyid_match'>match</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span> <span class='rbrace'>}</span>
@@ -1071,12 +1386,12 @@ Block yields received match. See Ionian::Extension::IO#read_match.</p>
1071
1386
  <pre class="lines">
1072
1387
 
1073
1388
 
1074
- 113
1075
- 114
1076
- 115</pre>
1389
+ 155
1390
+ 156
1391
+ 157</pre>
1077
1392
  </td>
1078
1393
  <td>
1079
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 113</span>
1394
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 155</span>
1080
1395
 
1081
1396
  <span class='kw'>def</span> <span class='id identifier rubyid_expression'>expression</span>
1082
1397
  <span class='ivar'>@expression</span> <span class='op'>||</span> <span class='ivar'>@socket</span><span class='period'>.</span><span class='id identifier rubyid_expression'>expression</span>
@@ -1112,13 +1427,13 @@ Block yields received match. See Ionian::Extension::IO#read_match.</p>
1112
1427
  <pre class="lines">
1113
1428
 
1114
1429
 
1115
- 118
1116
- 119
1117
- 120
1118
- 121</pre>
1430
+ 160
1431
+ 161
1432
+ 162
1433
+ 163</pre>
1119
1434
  </td>
1120
1435
  <td>
1121
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 118</span>
1436
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 160</span>
1122
1437
 
1123
1438
  <span class='kw'>def</span> <span class='id identifier rubyid_expression='>expression=</span> <span class='id identifier rubyid_exp'>exp</span>
1124
1439
  <span class='ivar'>@expression</span> <span class='op'>=</span> <span class='id identifier rubyid_exp'>exp</span>
@@ -1156,12 +1471,12 @@ non-persistent sockets.</p>
1156
1471
  <pre class="lines">
1157
1472
 
1158
1473
 
1159
- 182
1160
- 183
1161
- 184</pre>
1474
+ 229
1475
+ 230
1476
+ 231</pre>
1162
1477
  </td>
1163
1478
  <td>
1164
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 182</span>
1479
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 229</span>
1165
1480
 
1166
1481
  <span class='kw'>def</span> <span class='id identifier rubyid_flush'>flush</span>
1167
1482
  <span class='ivar'>@socket</span><span class='period'>.</span><span class='id identifier rubyid_flush'>flush</span> <span class='kw'>if</span> <span class='ivar'>@persistent</span>
@@ -1213,13 +1528,13 @@ non-persistent sockets.</p>
1213
1528
  <pre class="lines">
1214
1529
 
1215
1530
 
1216
- 169
1217
- 170
1218
- 171
1219
- 172</pre>
1531
+ 216
1532
+ 217
1533
+ 218
1534
+ 219</pre>
1220
1535
  </td>
1221
1536
  <td>
1222
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 169</span>
1537
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 216</span>
1223
1538
 
1224
1539
  <span class='kw'>def</span> <span class='id identifier rubyid_has_data?'>has_data?</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span>
1225
1540
  <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='ivar'>@socket</span>
@@ -1269,12 +1584,12 @@ non-persistent sockets.</p>
1269
1584
  <pre class="lines">
1270
1585
 
1271
1586
 
1272
- 124
1273
- 125
1274
- 126</pre>
1587
+ 166
1588
+ 167
1589
+ 168</pre>
1275
1590
  </td>
1276
1591
  <td>
1277
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 124</span>
1592
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 166</span>
1278
1593
 
1279
1594
  <span class='kw'>def</span> <span class='id identifier rubyid_persistent?'>persistent?</span>
1280
1595
  <span class='ivar'>@persistent</span> <span class='op'>==</span> <span class='kw'>false</span> <span class='op'>||</span> <span class='ivar'>@persistent</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='op'>?</span> <span class='kw'>false</span> <span class='op'>:</span> <span class='kw'>true</span>
@@ -1311,12 +1626,12 @@ any string not already ending with one.</p>
1311
1626
  <pre class="lines">
1312
1627
 
1313
1628
 
1314
- 188
1315
- 189
1316
- 190</pre>
1629
+ 235
1630
+ 236
1631
+ 237</pre>
1317
1632
  </td>
1318
1633
  <td>
1319
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 188</span>
1634
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 235</span>
1320
1635
 
1321
1636
  <span class='kw'>def</span> <span class='id identifier rubyid_puts'>puts</span> <span class='op'>*</span><span class='id identifier rubyid_string'>string</span>
1322
1637
  <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span> <span class='id identifier rubyid_string'>string</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_s'>s</span><span class='op'>|</span> <span class='id identifier rubyid_s'>s</span><span class='period'>.</span><span class='id identifier rubyid_chomp'>chomp</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span>
@@ -1358,14 +1673,14 @@ reference to the given block. block = ionian_socket.register_observer { … }</p
1358
1673
  <pre class="lines">
1359
1674
 
1360
1675
 
1361
- 148
1362
- 149
1363
- 150
1364
- 151
1365
- 152</pre>
1676
+ 195
1677
+ 196
1678
+ 197
1679
+ 198
1680
+ 199</pre>
1366
1681
  </td>
1367
1682
  <td>
1368
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 148</span>
1683
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 195</span>
1369
1684
 
1370
1685
  <span class='kw'>def</span> <span class='id identifier rubyid_register_observer'>register_observer</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span>
1371
1686
  <span class='ivar'>@ionian_listeners</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_block'>block</span> <span class='kw'>unless</span> <span class='ivar'>@ionian_listeners</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_block'>block</span>
@@ -1403,14 +1718,14 @@ reference to the given block. block = ionian_socket.register_observer { … }</p
1403
1718
  <pre class="lines">
1404
1719
 
1405
1720
 
1406
- 157
1407
- 158
1408
- 159
1409
- 160
1410
- 161</pre>
1721
+ 204
1722
+ 205
1723
+ 206
1724
+ 207
1725
+ 208</pre>
1411
1726
  </td>
1412
1727
  <td>
1413
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 157</span>
1728
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 204</span>
1414
1729
 
1415
1730
  <span class='kw'>def</span> <span class='id identifier rubyid_unregister_observer'>unregister_observer</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span>
1416
1731
  <span class='ivar'>@ionian_listeners</span><span class='period'>.</span><span class='id identifier rubyid_delete_if'>delete_if</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_o'>o</span><span class='op'>|</span> <span class='id identifier rubyid_o'>o</span> <span class='op'>==</span> <span class='id identifier rubyid_block'>block</span> <span class='rbrace'>}</span>
@@ -1452,36 +1767,36 @@ reference to the given block. block = ionian_socket.register_observer { … }</p
1452
1767
  <pre class="lines">
1453
1768
 
1454
1769
 
1455
- 194
1456
- 195
1457
- 196
1458
- 197
1459
- 198
1460
- 199
1461
- 200
1462
- 201
1463
- 202
1464
- 203
1465
- 204
1466
- 205
1467
- 206
1468
- 207
1469
- 208
1470
- 209
1471
- 210
1472
- 211
1473
- 212
1474
- 213
1475
- 214
1476
- 215
1477
- 216
1478
- 217
1479
- 218
1480
- 219
1481
- 220</pre>
1770
+ 241
1771
+ 242
1772
+ 243
1773
+ 244
1774
+ 245
1775
+ 246
1776
+ 247
1777
+ 248
1778
+ 249
1779
+ 250
1780
+ 251
1781
+ 252
1782
+ 253
1783
+ 254
1784
+ 255
1785
+ 256
1786
+ 257
1787
+ 258
1788
+ 259
1789
+ 260
1790
+ 261
1791
+ 262
1792
+ 263
1793
+ 264
1794
+ 265
1795
+ 266
1796
+ 267</pre>
1482
1797
  </td>
1483
1798
  <td>
1484
- <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 194</span>
1799
+ <pre class="code"><span class="info file"># File 'lib/ionian/socket.rb', line 241</span>
1485
1800
 
1486
1801
  <span class='kw'>def</span> <span class='id identifier rubyid_write'>write</span> <span class='id identifier rubyid_string'>string</span>
1487
1802
  <span class='id identifier rubyid_create_socket'>create_socket</span> <span class='kw'>unless</span> <span class='ivar'>@persistent</span>
@@ -1520,9 +1835,9 @@ reference to the given block. block = ionian_socket.register_observer { … }</p
1520
1835
  </div>
1521
1836
 
1522
1837
  <div id="footer">
1523
- Generated on Mon Apr 14 18:43:33 2014 by
1838
+ Generated on Fri Oct 31 15:50:44 2014 by
1524
1839
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1525
- 0.8.7.4 (ruby-2.1.1).
1840
+ 0.8.7.6 (ruby-2.1.4).
1526
1841
  </div>
1527
1842
 
1528
1843
  </body>