Iterates the given block for each element with an index, which starts from offset
. If no block is given, returns a new Enumerator
that includes the index, starting from offset
offset
the starting index to use
Returns a new lazy enumerator with the concatenated results of running block
once for every element in the lazy enumerator.
["foo", "bar"].lazy.flat_map {|i| i.each_char.lazy}.force #=> ["f", "o", "o", "b", "a", "r"]
A value x
returned by block
is decomposed if either of the following conditions is true:
x
responds to both each and force, which means that x
is a lazy enumerator.
x
is an array or responds to to_ary.
Otherwise, x
is contained as-is in the return value.
[{a:1}, {b:2}].lazy.flat_map {|i| i}.force #=> [{:a=>1}, {:b=>2}]
Like Enumerable#select
, but chains operation to be lazy-evaluated.
Like Enumerable#take_while
, but chains operation to be lazy-evaluated.
Returns the Object#object_id
of the internal object.
Extracts addr from IPV6_PKTINFO ancillary data.
IPV6_PKTINFO is defined by RFC 3542.
addr = Addrinfo.ip("::1") ifindex = 0 ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex) p ancdata.ipv6_pktinfo_addr #=> #<Addrinfo: ::1>
Extracts ifindex from IPV6_PKTINFO ancillary data.
IPV6_PKTINFO is defined by RFC 3542.
addr = Addrinfo.ip("::1") ifindex = 0 ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex) p ancdata.ipv6_pktinfo_ifindex #=> 0
Creates a new Socket::Option
object for IP_MULTICAST_TTL.
The size is dependent on the platform.
p Socket::Option.ipv4_multicast_ttl(10) #=> #<Socket::Option: INET IP MULTICAST_TTL 10>
Returns the ipv4_multicast_ttl
data in sockopt as an integer.
sockopt = Socket::Option.ipv4_multicast_ttl(10) p sockopt.ipv4_multicast_ttl => 10
Load an iseq object from binary format String
object created by RubyVM::InstructionSequence.to_binary
.
This loader does not have a verifier, so that loading broken/modified binary causes critical problem.
You should not load binary data provided by others. You should use binary data translated by yourself.
Creates a regular expression to match IPv4 addresses
Set
the default value for the :argc_limit option.
See new(). The initial default value is 256.
Set
the default value for the :id_conv option.
See new(). The initial default value is a DRbIdConv
instance.
Check that a method is callable via dRuby.
obj
is the object we want to invoke the method on. msg_id
is the method name, as a Symbol
.
If the method is an insecure method (see insecure_method?
) a SecurityError
is thrown. If the method is private or undefined, a NameError
is thrown.
WARNING This method opens a serious security hole. Never use this method in production code.
Sets an output stream for debugging.
http = Net::HTTP.new(hostname) http.set_debug_output $stderr http.start { .... }