doc/Ionian/Extension/Socket.html in ionian-0.6.3 vs doc/Ionian/Extension/Socket.html in ionian-0.6.4
- old
+ new
@@ -1,1410 +1,2236 @@
-<!DOCTYPE html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title>
+ Module: Ionian::Extension::Socket
+
+ — Documentation by YARD 0.8.7.3
+
+</title>
-<html>
-<head>
-<meta charset="UTF-8">
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" charset="utf-8" />
-<title>module Ionian::Extension::Socket - RDoc Documentation</title>
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" charset="utf-8" />
-<link href="../../fonts.css" rel="stylesheet">
-<link href="../../rdoc.css" rel="stylesheet">
-
-<script type="text/javascript">
- var rdoc_rel_prefix = "../../";
+<script type="text/javascript" charset="utf-8">
+ hasFrames = window.top.frames.main ? true : false;
+ relpath = '../../';
+ framesUrl = "../../frames.html#!" + escape(window.location.href);
</script>
-<script src="../../js/jquery.js"></script>
-<script src="../../js/navigation.js"></script>
-<script src="../../js/search_index.js"></script>
-<script src="../../js/search.js"></script>
-<script src="../../js/searcher.js"></script>
-<script src="../../js/darkfish.js"></script>
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
-<body id="top" role="document" class="module">
-<nav role="navigation">
- <div id="project-navigation">
- <div id="home-section" role="region" title="Quick navigation" class="nav-section">
- <h2>
- <a href="../../index.html" rel="home">Home</a>
- </h2>
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
- <div id="table-of-contents-navigation">
- <a href="../../table_of_contents.html#pages">Pages</a>
- <a href="../../table_of_contents.html#classes">Classes</a>
- <a href="../../table_of_contents.html#methods">Methods</a>
- </div>
+
+ </head>
+ <body>
+ <div id="header">
+ <div id="menu">
+
+ <a href="../../_index.html">Index (S)</a> »
+ <span class='title'><span class='object_link'><a href="../../Ionian.html" title="Ionian (module)">Ionian</a></span></span> » <span class='title'><span class='object_link'><a href="../Extension.html" title="Ionian::Extension (module)">Extension</a></span></span>
+ »
+ <span class="title">Socket</span>
+
+
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
- <div id="search-section" role="search" class="project-section initially-hidden">
- <form action="#" method="get" accept-charset="utf-8">
- <div id="search-field-wrapper">
- <input id="search-field" role="combobox" aria-label="Search"
- aria-autocomplete="list" aria-controls="search-results"
- type="text" name="search" placeholder="Search" spellcheck="false"
- title="Type to search, Up and Down to navigate, Enter to load">
+ <div id="search">
+
+ <a class="full_list_link" id="class_list_link"
+ href="../../class_list.html">
+ Class List
+ </a>
+
+ <a class="full_list_link" id="method_list_link"
+ href="../../method_list.html">
+ Method List
+ </a>
+
+ <a class="full_list_link" id="file_list_link"
+ href="../../file_list.html">
+ File List
+ </a>
+
+</div>
+ <div class="clear"></div>
</div>
- <ul id="search-results" aria-label="Search Results"
- aria-busy="false" aria-expanded="false"
- aria-atomic="false" class="initially-hidden"></ul>
- </form>
-</div>
+ <iframe id="search_frame"></iframe>
+ <div id="content"><h1>Module: Ionian::Extension::Socket
+
+
+
+</h1>
+
+<dl class="box">
+
+
+
+
+
+
+
+
+ <dt class="r1 last">Defined in:</dt>
+ <dd class="r1 last">lib/ionian/extension/socket.rb</dd>
+
+</dl>
+<div class="clear"></div>
+
+<h2>Overview</h2><div class="docstring">
+ <div class="discussion">
+
+<p>A mixin for Socket objects.</p>
+
+<p>This module was designed to be extended by instantiated objects that
+implement the standard library Socket class. my_socket.extend
+Ionian::Socket</p>
+
+<p>Extending this module also extends Ionian::IO.</p>
+
+
</div>
+</div>
+<div class="tags">
+
+</div>
+
+
+
+
+
+
+ <h2>
+ Class Method Summary
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
+ </h2>
- <div id="class-metadata">
+ <ul class="summary">
+
+ <li class="public ">
+ <span class="summary_signature">
+ <a href="#extended-class_method" title="extended (class method)">+ (Object) <strong>extended</strong>(obj) </a>
+
- <div id="extends-section" class="nav-section">
- <h3>Extended With Modules</h3>
+ </span>
+
+
+
+
+
+
+
- <ul class="link-list">
+
+ <span class="summary_desc"><div class='inline'>
+<p>Called automaticallly when the object is extended with #extend.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
+ <a href="#multicast-class_method" title="multicast (class method)">+ (Object) <strong>multicast</strong>(address) </a>
+
+
+
+ </span>
- <li><a class="extend" href="IO.html">Ionian::Extension::IO</a>
- </ul>
-</div>
+
+
+
+
- <!-- Method Quickref -->
-<div id="method-list-section" class="nav-section">
- <h3>Methods</h3>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if the given address is within the multicast range.</p>
+</div></span>
+
+</li>
- <ul class="link-list" role="directory">
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-c-extended">::extended</a>
+ <a href="#multicast%3F-class_method" title="multicast? (class method)">+ (Object) <strong>multicast?</strong> </a>
- <li ><a href="#method-i-cork">#cork</a>
+
- <li ><a href="#method-i-cork-3D">#cork=</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if the given address is within the multicast range.</p>
+</div></span>
+
+</li>
+
+
+ </ul>
+
+ <h2>
+ Instance Method Summary
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
+ </h2>
+
+ <ul class="summary">
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-cork-3F">#cork?</a>
+ <a href="#cork-instance_method" title="#cork (instance method)">- (Object) <strong>cork</strong> </a>
- <li ><a href="#method-i-initialize_ionian_socket">#initialize_ionian_socket</a>
+
- <li ><a href="#method-i-ip_add_membership">#ip_add_membership</a>
+ (also: #cork?)
- <li ><a href="#method-i-ip_drop_membership">#ip_drop_membership</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if multiple writes are buffered into a single segment.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ip_multicast_if">#ip_multicast_if</a>
+ <a href="#cork%3D-instance_method" title="#cork= (instance method)">- (Object) <strong>cork=</strong>(value) </a>
- <li ><a href="#method-i-ip_multicast_if-3D">#ip_multicast_if=</a>
+
- <li ><a href="#method-i-ip_multicast_loop">#ip_multicast_loop</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Buffers multiple writes into a single segment if true.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ip_multicast_loop-3D">#ip_multicast_loop=</a>
+ <a href="#initialize_ionian_socket-instance_method" title="#initialize_ionian_socket (instance method)">- (Object) <strong>initialize_ionian_socket</strong> </a>
- <li ><a href="#method-i-ip_multicast_loop-3F">#ip_multicast_loop?</a>
+
- <li ><a href="#method-i-ip_multicast_ttl">#ip_multicast_ttl</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Initialize the Ionian Socket variables.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ip_multicast_ttl-3D">#ip_multicast_ttl=</a>
+ <a href="#ip_add_membership-instance_method" title="#ip_add_membership (instance method)">- (Object) <strong>ip_add_membership</strong>(address = nil, interface = nil) </a>
- <li ><a href="#method-i-ipv6_add_membership">#ipv6_add_membership</a>
+
- <li ><a href="#method-i-ipv6_drop_membership">#ipv6_drop_membership</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Join a multicast group.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ipv6_multicast_hops">#ipv6_multicast_hops</a>
+ <a href="#ip_drop_membership-instance_method" title="#ip_drop_membership (instance method)">- (Object) <strong>ip_drop_membership</strong>(address = nil, interface = nil) </a>
- <li ><a href="#method-i-ipv6_multicast_hops-3D">#ipv6_multicast_hops=</a>
+
- <li ><a href="#method-i-ipv6_multicast_if">#ipv6_multicast_if</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Leave a multicast group.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ipv6_multicast_if-3D">#ipv6_multicast_if=</a>
+ <a href="#ip_multicast_if-instance_method" title="#ip_multicast_if (instance method)">- (Object) <strong>ip_multicast_if</strong> </a>
- <li ><a href="#method-i-ipv6_multicast_loop">#ipv6_multicast_loop</a>
+
- <li ><a href="#method-i-ipv6_multicast_loop-3D">#ipv6_multicast_loop=</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns the default interface for outgoing multicasts.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ipv6_multicast_loop-3F">#ipv6_multicast_loop?</a>
+ <a href="#ip_multicast_if%3D-instance_method" title="#ip_multicast_if= (instance method)">- (Object) <strong>ip_multicast_if=</strong>(interface = nil) </a>
- <li ><a href="#method-i-multicast">#multicast</a>
+
- <li ><a href="#method-i-multicast-3F">#multicast?</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Specify default interface for outgoing multicasts.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-no_delay">#no_delay</a>
+ <a href="#ip_multicast_loop-instance_method" title="#ip_multicast_loop (instance method)">- (Object) <strong>ip_multicast_loop</strong> </a>
- <li ><a href="#method-i-no_delay-3D">#no_delay=</a>
+
- <li ><a href="#method-i-no_delay-3F">#no_delay?</a>
+ (also: #ip_multicast_loop?)
- <li ><a href="#method-i-recork">#recork</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if loopback of outgoing multicasts is enabled.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-reuse_addr">#reuse_addr</a>
+ <a href="#ip_multicast_loop%3D-instance_method" title="#ip_multicast_loop= (instance method)">- (Object) <strong>ip_multicast_loop=</strong>(value) </a>
- <li ><a href="#method-i-reuse_addr-3D">#reuse_addr=</a>
+
- <li ><a href="#method-i-reuse_addr-3F">#reuse_addr?</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Enables loopback of outgoing multicasts if true.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <li ><a href="#method-i-ttl">#ttl</a>
+ <a href="#ip_multicast_ttl-instance_method" title="#ip_multicast_ttl (instance method)">- (Object) <strong>ip_multicast_ttl</strong> </a>
- <li ><a href="#method-i-ttl-3D">#ttl=</a>
+
- <li ><a href="#method-i-ttl-3F">#ttl?</a>
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns the time to live (hop limit) for outgoing multicasts.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- </ul>
-</div>
+ <a href="#ip_multicast_ttl%3D-instance_method" title="#ip_multicast_ttl= (instance method)">- (Object) <strong>ip_multicast_ttl=</strong>(value) </a>
+
- </div>
-</nav>
+
+ </span>
+
+
+
+
+
+
+
-<main role="main" aria-labelledby="module-Ionian::Extension::Socket">
- <h1 id="module-Ionian::Extension::Socket" class="module">
- module Ionian::Extension::Socket
- </h1>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Set the time to live (hop limit) for outgoing multicasts.</p>
+</div></span>
+
+</li>
- <section class="description">
+
+ <li class="public ">
+ <span class="summary_signature">
-<p>A mixin for <a href="Socket.html">Socket</a> objects.</p>
+ <a href="#ipv6_add_membership-instance_method" title="#ipv6_add_membership (instance method)">- (Object) <strong>ipv6_add_membership</strong> </a>
+
-<p>This module was designed to be extended by instantiated objects that
-implement the standard library <a href="Socket.html">Socket</a> class.
-my_socket.extend <a href="../Socket.html">Ionian::Socket</a></p>
+
+ </span>
+
+
+
+
+
+
+
-<p>Extending this module also extends Ionian::IO.</p>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
- </section>
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#ipv6_drop_membership-instance_method" title="#ipv6_drop_membership (instance method)">- (Object) <strong>ipv6_drop_membership</strong> </a>
+
+
+ </span>
- <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
+ <a href="#ipv6_multicast_hops-instance_method" title="#ipv6_multicast_hops (instance method)">- (Object) <strong>ipv6_multicast_hops</strong> </a>
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
+ <a href="#ipv6_multicast_hops%3D-instance_method" title="#ipv6_multicast_hops= (instance method)">- (Object) <strong>ipv6_multicast_hops=</strong>(value) </a>
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
- <header>
- <h3>Public Class Methods</h3>
- </header>
+ <a href="#ipv6_multicast_if-instance_method" title="#ipv6_multicast_if (instance method)">- (Object) <strong>ipv6_multicast_if</strong> </a>
+
- <div id="method-c-extended" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">extended</span><span
- class="method-args">(obj)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ </span>
+
+
+
+
+
+
+
- <div class="method-description">
-
- <p>Called automaticallly when the object is extended with extend.</p>
-
-
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
-
- <div class="method-source-code" id="extended-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 17</span>
-<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">extended</span>(<span class="ruby-identifier">obj</span>)
- <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">extend</span> <span class="ruby-constant">Ionian</span><span class="ruby-operator">::</span><span class="ruby-constant">Extension</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span>
- <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">initialize_ionian_socket</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#ipv6_multicast_if%3D-instance_method" title="#ipv6_multicast_if= (instance method)">- (Object) <strong>ipv6_multicast_if=</strong>(value) </a>
+
-
+
+ </span>
+
+
+
+
+
+
+
-
- </div>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
+
+ <li class="public ">
+ <span class="summary_signature">
- </section>
+ <a href="#ipv6_multicast_loop-instance_method" title="#ipv6_multicast_loop (instance method)">- (Object) <strong>ipv6_multicast_loop</strong> </a>
+
+
+
+ (also: #ipv6_multicast_loop?)
+
+ </span>
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
- <header>
- <h3>Public Instance Methods</h3>
- </header>
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <div id="method-i-cork" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">cork</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <a href="#ipv6_multicast_loop%3D-instance_method" title="#ipv6_multicast_loop= (instance method)">- (Object) <strong>ipv6_multicast_loop=</strong>(value) </a>
+
- <div class="method-description">
-
- <p>Returns true if multiple writes are buffered into a single segment. See <a
-href="Socket.html#method-i-recork">recork</a>. Linux only. ( TCP_CORK )</p>
-
-
+
+ </span>
+
+
+
+
+
+
+
-
- <div class="method-source-code" id="cork-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 80</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">cork</span>
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'i'</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-identifier">param</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Not yet implemented.</p>
+</div></span>
+
+</li>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-cork-3F">cork?</a>
- </div>
-
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#multicast-instance_method" title="#multicast (instance method)">- (Object) <strong>multicast</strong> </a>
+
-
- </div>
+
+ (also: #multicast?)
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if the socket's address is in the multicast range.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <div id="method-i-cork-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">cork=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <a href="#no_delay-instance_method" title="#no_delay (instance method)">- (Object) <strong>no_delay</strong> </a>
+
- <div class="method-description">
-
- <p>Buffers multiple writes into a single segment if true. The segment is sent
-once the cork flag is disabled, the upper limit on the size of a segment is
-reached, the socket is closed, or 200ms elapses from the time the first
-corked byte is written. See <a
-href="Socket.html#method-i-recork">recork</a>. Linux only. ( TCP_CORK )</p>
-
-
+
+ (also: #no_delay?)
+
+ </span>
+
+
+
+
+
+
+
-
- <div class="method-source-code" id="cork-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 96</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">cork=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if the Nagle algorithm is disabled.</p>
+</div></span>
+
+</li>
-
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#no_delay%3D-instance_method" title="#no_delay= (instance method)">- (Object) <strong>no_delay=</strong>(value) </a>
+
-
- </div>
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Disables the Nagle algorithm if true.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <div id="method-i-cork-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">cork?</span><span
- class="method-args">()</span>
-
- </div>
-
+ <a href="#recork-instance_method" title="#recork (instance method)">- (Object) <strong>recork</strong> </a>
+
- <div class="method-description">
-
-
-
-
+
+ </span>
+
+
+
+
+
+
+
-
- </div>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Unsets cork to transmit data, then reapplies cork.</p>
+</div></span>
+
+</li>
-
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#reuse_addr-instance_method" title="#reuse_addr (instance method)">- (Object) <strong>reuse_addr</strong> </a>
+
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-cork">cork</a>
- </div>
-
- </div>
+
+ (also: #reuse_addr?)
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns true if local address reuse is allowed.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <div id="method-i-initialize_ionian_socket" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">initialize_ionian_socket</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <a href="#reuse_addr%3D-instance_method" title="#reuse_addr= (instance method)">- (Object) <strong>reuse_addr=</strong>(value) </a>
+
- <div class="method-description">
-
- <p>Initialize the <a href="../../Ionian.html">Ionian</a> <a
-href="Socket.html">Socket</a> variables. This is called automatically if
-extend is called on an object.</p>
-
-
+
+ </span>
+
+
+
+
+
+
+
-
- <div class="method-source-code" id="initialize_ionian_socket-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 24</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize_ionian_socket</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+ <span class="summary_desc"><div class='inline'>
+<p>Allows local address reuse if true.</p>
+</div></span>
+
+</li>
-
+
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#ttl-instance_method" title="#ttl (instance method)">- (Object) <strong>ttl</strong> </a>
+
-
- </div>
+
+ (also: #ttl?)
+
+ </span>
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns the time to live (hop limit).</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
- <div id="method-i-ip_add_membership" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_add_membership</span><span
- class="method-args">(address = nil, interface = nil)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <a href="#ttl%3D-instance_method" title="#ttl= (instance method)">- (Object) <strong>ttl=</strong>(value) </a>
+
- <div class="method-description">
-
- <p>Join a multicast group. Address is the class D multicast address (uses
+
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Sets the time to live (hop limit).</p>
+</div></span>
+
+</li>
+
+
+ </ul>
+
+
+
+
+ <div id="class_method_details" class="method_details_list">
+ <h2>Class Method Details</h2>
+
+
+ <div class="method_details first">
+ <h3 class="signature first" id="extended-class_method">
+
+ + (<tt>Object</tt>) <strong>extended</strong>(obj)
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Called automaticallly when the object is extended with #extend.</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+17
+18
+19
+20</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 17</span>
+
+<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_extended'>extended</span><span class='lparen'>(</span><span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_extend'>extend</span> <span class='const'>Ionian</span><span class='op'>::</span><span class='const'>Extension</span><span class='op'>::</span><span class='const'>IO</span>
+ <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_initialize_ionian_socket'>initialize_ionian_socket</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="multicast-class_method">
+
+ + (<tt>Object</tt>) <strong>multicast</strong>(address)
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns true if the given address is within the multicast range.</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+238
+239
+240</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 238</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>224.0.0.0</span><span class='tstring_end'>'</span></span> <span class='kw'>and</span> <span class='id identifier rubyid_address'>address</span> <span class='op'><=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>239.255.255.255</span><span class='tstring_end'>'</span></span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="multicast?-class_method">
+
+ + (<tt>Object</tt>) <strong>multicast?</strong>
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns true if the given address is within the multicast range.</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+242
+243
+244</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 242</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>224.0.0.0</span><span class='tstring_end'>'</span></span> <span class='kw'>and</span> <span class='id identifier rubyid_address'>address</span> <span class='op'><=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>239.255.255.255</span><span class='tstring_end'>'</span></span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ </div>
+
+ <div id="instance_method_details" class="method_details_list">
+ <h2>Instance Method Details</h2>
+
+
+ <div class="method_details first">
+ <h3 class="signature first" id="cork-instance_method">
+
+ - (<tt>Object</tt>) <strong>cork</strong>
+
+
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='cork?-instance_method'>cork?</span></span>
+ </span>
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns true if multiple writes are buffered into a single segment. See
+#recork. Linux only. ( TCP_CORK )</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+80
+81
+82
+83
+84</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 80</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_cork'>cork</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>></span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="cork=-instance_method">
+
+ - (<tt>Object</tt>) <strong>cork=</strong>(value)
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Buffers multiple writes into a single segment if true. The segment is sent
+once the cork flag is disabled, the upper limit on the size of a segment is
+reached, the socket is closed, or 200ms elapses from the time the first
+corked byte is written. See #recork. Linux only. ( TCP_CORK )</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+96
+97
+98
+99</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 96</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_cork='>cork=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="initialize_ionian_socket-instance_method">
+
+ - (<tt>Object</tt>) <strong>initialize_ionian_socket</strong>
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Initialize the Ionian Socket variables. This is called automatically if
+#extend is called on an object.</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+24
+25</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 24</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_initialize_ionian_socket'>initialize_ionian_socket</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ip_add_membership-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_add_membership</strong>(address = nil, interface = nil)
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Join a multicast group. Address is the class D multicast address (uses
remote address if not specified). Interface is the local network interface
to receive the multicast traffic on (all interfaces if not specified). (
IP_ADD_MEMBERSHIP )</p>
-
-
-
- <div class="method-source-code" id="ip_add_membership-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 114</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_add_membership</span>(<span class="ruby-identifier">address</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
- <span class="ruby-identifier">address</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">remote_address</span>.<span class="ruby-identifier">ip_address</span>
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">'0.0.0.0'</span>
-
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_ADD_MEMBERSHIP</span>,
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>).<span class="ruby-identifier">hton</span> <span class="ruby-operator">+</span> <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
- <span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
+ </div>
+</div>
+<div class="tags">
+
-
- </div>
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+114
+115
+116
+117
+118
+119
+120
+121
+122</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 114</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_add_membership'>ip_add_membership</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>||=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>'</span></span>
+
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_ADD_MEMBERSHIP</span><span class='comma'>,</span>
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span> <span class='op'>+</span> <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_drop_membership" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_drop_membership</span><span
- class="method-args">(address = nil, interface = nil)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_drop_membership-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_drop_membership</strong>(address = nil, interface = nil)
+
- <div class="method-description">
-
- <p>Leave a multicast group. Address is the class D multicast address (uses
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Leave a multicast group. Address is the class D multicast address (uses
remote address if not specified). Interface is the local network interface
the multicast traffic is received on (all interfaces if not specified). (
IP_DROP_MEMBERSHIP )</p>
-
-
-
- <div class="method-source-code" id="ip_drop_membership-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 130</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_drop_membership</span>(<span class="ruby-identifier">address</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
- <span class="ruby-identifier">address</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">remote_address</span>.<span class="ruby-identifier">ip_address</span>
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">'0.0.0.0'</span>
+
+ </div>
+</div>
+<div class="tags">
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_DROP_MEMBERSHIP</span>,
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>).<span class="ruby-identifier">hton</span> <span class="ruby-operator">+</span> <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+130
+131
+132
+133
+134
+135
+136
+137
+138</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 130</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_drop_membership'>ip_drop_membership</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>||=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>'</span></span>
+
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_DROP_MEMBERSHIP</span><span class='comma'>,</span>
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span> <span class='op'>+</span> <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_multicast_if" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_if</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_if-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_if</strong>
+
- <div class="method-description">
-
- <p>Returns the default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
-
-
+
-
- <div class="method-source-code" id="ip_multicast_if-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 142</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_if</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_IF</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'CCCC'</span>).<span class="ruby-identifier">join</span>(<span class="ruby-string">'.'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns the default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+142
+143
+144
+145</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 142</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_if'>ip_multicast_if</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_IF</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>CCCC</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>.</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_multicast_if-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_if=</span><span
- class="method-args">(interface = nil)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_if=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_if=</strong>(interface = nil)
+
- <div class="method-description">
-
- <p>Specify default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
-
-
+
-
- <div class="method-source-code" id="ip_multicast_if-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 149</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_if=</span>(<span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">'0.0.0.0'</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_IF</span>,
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Specify default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-ip_multicast_loop" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_loop</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
- <p>Returns true if loopback of outgoing multicasts is enabled. (
-IP_MULTICAST_LOOP )</p>
-
-
-
- <div class="method-source-code" id="ip_multicast_loop-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 173</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_loop</span>
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_LOOP</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'C'</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-identifier">param</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+149
+150
+151
+152
+153
+154
+155
+156</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 149</span>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-ip_multicast_loop-3F">ip_multicast_loop?</a>
- </div>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_if='>ip_multicast_if=</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>'</span></span>
+
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_IF</span><span class='comma'>,</span>
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_loop-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_loop</strong>
+
-
- </div>
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='ip_multicast_loop?-instance_method'>ip_multicast_loop?</span></span>
+ </span>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-ip_multicast_loop-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_loop=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+<p>Returns true if loopback of outgoing multicasts is enabled. (
+IP_MULTICAST_LOOP )</p>
- <div class="method-description">
-
- <p>Enables loopback of outgoing multicasts if true. ( IP_MULTICAST_LOOP )</p>
-
-
-
- <div class="method-source-code" id="ip_multicast_loop-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 183</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_loop=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_LOOP</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'C'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+173
+174
+175
+176
+177</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 173</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_loop'>ip_multicast_loop</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_LOOP</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>C</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>></span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_multicast_loop-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_loop?</span><span
- class="method-args">()</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_loop=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_loop=</strong>(value)
+
- <div class="method-description">
-
-
-
-
+
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Enables loopback of outgoing multicasts if true. ( IP_MULTICAST_LOOP )</p>
-
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-ip_multicast_loop">ip_multicast_loop</a>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+183
+184
+185
+186</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 183</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_loop='>ip_multicast_loop=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_LOOP</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>C</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_multicast_ttl" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_ttl</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_ttl-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_ttl</strong>
+
- <div class="method-description">
-
- <p>Returns the time to live (hop limit) for outgoing multicasts. (
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns the time to live (hop limit) for outgoing multicasts. (
IP_MULTICAST_TTL )</p>
-
-
-
- <div class="method-source-code" id="ip_multicast_ttl-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 160</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_ttl</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_TTL</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'C'</span>).<span class="ruby-identifier">first</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
+ </div>
+</div>
+<div class="tags">
+
-
- </div>
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+160
+161
+162
+163</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 160</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_ttl'>ip_multicast_ttl</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_TTL</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>C</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ip_multicast_ttl-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ip_multicast_ttl=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ip_multicast_ttl=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ip_multicast_ttl=</strong>(value)
+
- <div class="method-description">
-
- <p>Set the time to live (hop limit) for outgoing multicasts. (
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Set the time to live (hop limit) for outgoing multicasts. (
IP_MULTICAST_TTL )</p>
-
-
-
- <div class="method-source-code" id="ip_multicast_ttl-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 167</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_ttl=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_TTL</span>, [<span class="ruby-identifier">value</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'C'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
+ </div>
+</div>
+<div class="tags">
+
-
- </div>
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+167
+168
+169</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 167</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_ttl='>ip_multicast_ttl=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_TTL</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>C</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ipv6_add_membership" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_add_membership</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_add_membership-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_add_membership</strong>
+
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
+
-
- <div class="method-source-code" id="ipv6_add_membership-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 189</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_add_membership</span>
- <span class="ruby-comment"># TODO: Implement</span>
- <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Not yet implemented.</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-ipv6_drop_membership" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_drop_membership</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
-
- <div class="method-source-code" id="ipv6_drop_membership-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 195</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_drop_membership</span>
- <span class="ruby-comment"># TODO: Implement</span>
- <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+189
+190
+191
+192</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 189</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_add_membership'>ipv6_add_membership</span>
+ <span class='comment'># TODO: Implement
+</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_drop_membership-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_drop_membership</strong>
+
-
- </div>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-ipv6_multicast_hops" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_hops</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+<p>Not yet implemented.</p>
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
-
- <div class="method-source-code" id="ipv6_multicast_hops-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 212</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_hops</span>
- <span class="ruby-comment"># TODO: Implement</span>
- <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+195
+196
+197
+198</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 195</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_drop_membership'>ipv6_drop_membership</span>
+ <span class='comment'># TODO: Implement
+</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ipv6_multicast_hops-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_hops=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_hops-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_hops</strong>
+
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
+
-
- <div class="method-source-code" id="ipv6_multicast_hops-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 218</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_hops=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-comment"># TODO: Implement</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Not yet implemented.</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-ipv6_multicast_if" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_if</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
-
- <div class="method-source-code" id="ipv6_multicast_if-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 201</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_if</span>
- <span class="ruby-comment"># TODO: Implement</span>
- <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+212
+213
+214
+215</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 212</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_hops'>ipv6_multicast_hops</span>
+ <span class='comment'># TODO: Implement
+</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_hops=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_hops=</strong>(value)
+
-
- </div>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-ipv6_multicast_if-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_if=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+<p>Not yet implemented.</p>
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
-
- <div class="method-source-code" id="ipv6_multicast_if-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 207</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_if=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-comment"># TODO: Implement</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+218
+219
+220</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 218</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_hops='>ipv6_multicast_hops=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='comment'># TODO: Implement
+</span><span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ipv6_multicast_loop" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_loop</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_if-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_if</strong>
+
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
+
-
- <div class="method-source-code" id="ipv6_multicast_loop-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 223</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_loop</span>
- <span class="ruby-comment"># TODO: Implement</span>
- <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Not yet implemented.</p>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-ipv6_multicast_loop-3F">ipv6_multicast_loop?</a>
- </div>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-ipv6_multicast_loop-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_loop=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
- <p>Not yet implemented.</p>
-
-
-
- <div class="method-source-code" id="ipv6_multicast_loop-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 231</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_loop=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-comment"># TODO: Implement</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+201
+202
+203
+204</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 201</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_if'>ipv6_multicast_if</span>
+ <span class='comment'># TODO: Implement
+</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_if=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_if=</strong>(value)
+
-
- </div>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-ipv6_multicast_loop-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">ipv6_multicast_loop?</span><span
- class="method-args">()</span>
-
- </div>
-
+<p>Not yet implemented.</p>
- <div class="method-description">
-
-
-
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-ipv6_multicast_loop">ipv6_multicast_loop</a>
- </div>
-
- </div>
+207
+208
+209</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 207</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_if='>ipv6_multicast_if=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='comment'># TODO: Implement
+</span><span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-multicast" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">multicast</span><span
- class="method-args">(address)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_loop-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_loop</strong>
+
- <div class="method-description">
-
- <p>Returns true if the given address is within the multicast range.</p>
-
-
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='ipv6_multicast_loop?-instance_method'>ipv6_multicast_loop?</span></span>
+ </span>
+
-
- <div class="method-source-code" id="multicast-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 238</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">multicast</span>(<span class="ruby-identifier">address</span>)
- <span class="ruby-identifier">address</span> <span class="ruby-operator">>=</span> <span class="ruby-string">'224.0.0.0'</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">address</span> <span class="ruby-operator"><=</span> <span class="ruby-string">'239.255.255.255'</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Not yet implemented.</p>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-multicast-3F">multicast?</a>
- </div>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-multicast-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">multicast?</span><span
- class="method-args">(address)</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
-
-
-
-
- </div>
+223
+224
+225
+226</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 223</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_loop'>ipv6_multicast_loop</span>
+ <span class='comment'># TODO: Implement
+</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="ipv6_multicast_loop=-instance_method">
+
+ - (<tt>Object</tt>) <strong>ipv6_multicast_loop=</strong>(value)
+
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-multicast">multicast</a>
- </div>
-
- </div>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-no_delay" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">no_delay</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+<p>Not yet implemented.</p>
- <div class="method-description">
-
- <p>Returns true if the Nagle algorithm is disabled. ( TCP_NODELAY )</p>
-
-
-
- <div class="method-source-code" id="no_delay-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 61</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">no_delay</span>
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_NODELAY</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'i'</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-identifier">param</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-no_delay-3F">no_delay?</a>
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+231
+232
+233</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 231</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_loop='>ipv6_multicast_loop=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='comment'># TODO: Implement
+</span><span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-no_delay-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">no_delay=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="multicast-instance_method">
+
+ - (<tt>Object</tt>) <strong>multicast</strong>
+
- <div class="method-description">
-
- <p>Disables the Nagle algorithm if true. ( TCP_NODELAY )</p>
-
-
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='multicast?-instance_method'>multicast?</span></span>
+ </span>
+
-
- <div class="method-source-code" id="no_delay-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 71</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">no_delay=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_NODELAY</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns true if the socket's address is in the multicast range.</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-no_delay-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">no_delay?</span><span
- class="method-args">()</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
-
-
-
-
- </div>
+246
+247
+248</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 246</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</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='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="no_delay-instance_method">
+
+ - (<tt>Object</tt>) <strong>no_delay</strong>
+
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-no_delay">no_delay</a>
- </div>
-
- </div>
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='no_delay?-instance_method'>no_delay?</span></span>
+ </span>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-recork" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">recork</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+<p>Returns true if the Nagle algorithm is disabled. ( TCP_NODELAY )</p>
- <div class="method-description">
-
- <p>Unsets cork to transmit data, then reapplies cork. ( TCP_CORK )</p>
-
-
-
- <div class="method-source-code" id="recork-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 103</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">recork</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-value">0</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-value">1</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- </div>
+61
+62
+63
+64
+65</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 61</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_no_delay'>no_delay</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_NODELAY</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>></span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-reuse_addr" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">reuse_addr</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="no_delay=-instance_method">
+
+ - (<tt>Object</tt>) <strong>no_delay=</strong>(value)
+
- <div class="method-description">
-
- <p>Returns true if local address reuse is allowed. ( SO_REUSEADDR )</p>
-
-
+
-
- <div class="method-source-code" id="reuse_addr-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 29</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">reuse_addr</span>
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SOL_SOCKET</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SO_REUSEADDR</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'i'</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-identifier">param</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Disables the Nagle algorithm if true. ( TCP_NODELAY )</p>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-reuse_addr-3F">reuse_addr?</a>
- </div>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
- <div id="method-i-reuse_addr-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">reuse_addr=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
- <div class="method-description">
-
- <p>Allows local address reuse if true. ( SO_REUSEADDR )</p>
-
-
-
- <div class="method-source-code" id="reuse_addr-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 39</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">reuse_addr=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SOL_SOCKET</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SO_REUSEADDR</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+71
+72
+73
+74</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 71</span>
-
+<span class='kw'>def</span> <span class='id identifier rubyid_no_delay='>no_delay=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_NODELAY</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="recork-instance_method">
+
+ - (<tt>Object</tt>) <strong>recork</strong>
+
-
- </div>
+
+
+</h3><div class="docstring">
+ <div class="discussion">
- <div id="method-i-reuse_addr-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">reuse_addr?</span><span
- class="method-args">()</span>
-
- </div>
-
+<p>Unsets cork to transmit data, then reapplies cork. ( TCP_CORK )</p>
- <div class="method-description">
-
-
-
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
-
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-reuse_addr">reuse_addr</a>
- </div>
-
- </div>
+103
+104
+105
+106</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 103</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_recork'>recork</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ttl" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ttl</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="reuse_addr-instance_method">
+
+ - (<tt>Object</tt>) <strong>reuse_addr</strong>
+
- <div class="method-description">
-
- <p>Returns the time to live (hop limit). ( IP_TTL )</p>
-
-
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='reuse_addr?-instance_method'>reuse_addr?</span></span>
+ </span>
+
-
- <div class="method-source-code" id="ttl-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 46</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ttl</span>
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_TTL</span>)
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'i'</span>).<span class="ruby-identifier">first</span>
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns true if local address reuse is allowed. ( SO_REUSEADDR )</p>
-
- <div class="aliases">
- Also aliased as: <a href="Socket.html#method-i-ttl-3F">ttl?</a>
- </div>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+29
+30
+31
+32
+33</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 29</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_reuse_addr'>reuse_addr</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SOL_SOCKET</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SO_REUSEADDR</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>></span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ttl-3D" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">ttl=</span><span
- class="method-args">(value)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="reuse_addr=-instance_method">
+
+ - (<tt>Object</tt>) <strong>reuse_addr=</strong>(value)
+
- <div class="method-description">
-
- <p>Sets the time to live (hop limit). ( IP_TTL )</p>
-
-
+
-
- <div class="method-source-code" id="ttl-3D-source">
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 55</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">ttl=</span>(<span class="ruby-identifier">value</span>)
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_TTL</span>, [<span class="ruby-identifier">value</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'i'</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Allows local address reuse if true. ( SO_REUSEADDR )</p>
-
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+39
+40
+41
+42</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 39</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_reuse_addr='>reuse_addr=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SOL_SOCKET</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SO_REUSEADDR</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- <div id="method-i-ttl-3F" class="method-detail method-alias">
-
- <div class="method-heading">
- <span class="method-name">ttl?</span><span
- class="method-args">()</span>
-
- </div>
-
+ <div class="method_details ">
+ <h3 class="signature " id="ttl-instance_method">
+
+ - (<tt>Object</tt>) <strong>ttl</strong>
+
- <div class="method-description">
-
-
-
-
+
+ <span class="aliases">Also known as:
+ <span class="names"><span id='ttl?-instance_method'>ttl?</span></span>
+ </span>
+
-
- </div>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns the time to live (hop limit). ( IP_TTL )</p>
-
-
- <div class="aliases">
- Alias for: <a href="Socket.html#method-i-ttl">ttl</a>
- </div>
-
- </div>
+ </div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+46
+47
+48
+49</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 46</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ttl'>ttl</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_TTL</span><span class='rparen'>)</span><span class='period'>
+</span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
- </section>
+ <div class="method_details ">
+ <h3 class="signature " id="ttl=-instance_method">
- </section>
-</main>
+ - (<tt>Object</tt>) <strong>ttl=</strong>(value)
+
+
-<footer id="validator-badges" role="contentinfo">
- <p><a href="http://validator.w3.org/check/referer">Validate</a>
- <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.1.
- <p>Based on <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
-</footer>
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Sets the time to live (hop limit). ( IP_TTL )</p>
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+55
+56
+57</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 55</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_ttl='>ttl=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_TTL</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>i</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ </div>
+
+</div>
+
+ <div id="footer">
+ Generated on Sat Mar 15 21:04:54 2014 by
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
+ 0.8.7.3 (ruby-2.1.1).
+</div>
+
+ </body>
+</html>
\ No newline at end of file