class Copper::DataTypes::IPAddress
Public Class Methods
new(value)
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 7 def initialize(value) if value.is_a? ::String @value = ::IPAddress.parse(value) elsif value.is_a?(::IPAddress::IPv4) @value = value elsif value.is_a?(::IPAddress::IPv6) @value = value else raise ::Copper::RuntimeError, "cannot convert #{value} to IPAddress" end rescue ArgumentError => exc raise ::Copper::RuntimeError, exc.message end
Public Instance Methods
address()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 45 def address @value.address end
first()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 21 def first @value.first end
full_address()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 41 def full_address @value.to_string end
in(value)
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 29 def in(value) if value.is_a?(::Copper::DataTypes::IPAddress) to_check = value.ip_address elsif value.is_a?(::IPAddress) to_check = value else raise ::Copper::RuntimeError, "#{value} is not an IP address" end (@value.first.to_i <= to_check.to_i) && (@value.last.to_i >= to_check.to_i) end
ip_address()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 85 def ip_address @value end
is_class_a()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 73 def is_class_a @value.a? end
is_class_b()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 77 def is_class_b @value.b? end
is_class_c()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 81 def is_class_c @value.c? end
is_loopback()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 65 def is_loopback @value.loopback? end
is_multicast()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 69 def is_multicast @value.multicast? end
is_network()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 61 def is_network @value.network? end
last()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 25 def last @value.last end
netmask()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 49 def netmask @value.netmask end
octets()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 53 def octets @value.octets end
prefix()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 57 def prefix @value.prefix.to_i end
to_s()
click to toggle source
# File lib/copper/data_types/ip_addr.rb, line 89 def to_s @value.to_string end