Class: ResolvFiber::LOC::Alt
- Inherits:
-
Object
- Object
- ResolvFiber::LOC::Alt
- Defined in:
- lib/resolv_fiber.rb
Overview
A Resolv::LOC::Alt
Constant Summary collapse
- Regex =
/^([+-]*\d+\.*\d*)[m]$/
Instance Attribute Summary collapse
-
#altitude ⇒ Object
readonly
The raw altitude.
Class Method Summary collapse
-
.create(arg) ⇒ Object
Creates a new LOC::Alt from
argwhich may be:.
Instance Method Summary collapse
-
#==(other) ⇒ Object
:nodoc:.
-
#eql?(other) ⇒ Boolean
:nodoc:.
-
#hash ⇒ Object
:nodoc:.
-
#initialize(altitude) ⇒ Alt
constructor
A new instance of Alt.
-
#inspect ⇒ Object
:nodoc:.
-
#to_s ⇒ Object
:nodoc:.
Constructor Details
#initialize(altitude) ⇒ Alt
Returns a new instance of Alt.
2878 2879 2880 |
# File 'lib/resolv_fiber.rb', line 2878 def initialize(altitude) @altitude = altitude end |
Instance Attribute Details
#altitude ⇒ Object (readonly)
The raw altitude
2885 2886 2887 |
# File 'lib/resolv_fiber.rb', line 2885 def altitude @altitude end |
Class Method Details
.create(arg) ⇒ Object
Creates a new LOC::Alt from arg which may be:
- LOC::Alt
-
returns
arg. - String
-
argmust match the LOC::Alt::Regex constant
2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 |
# File 'lib/resolv_fiber.rb', line 2861 def self.create(arg) case arg when Alt return arg when String altitude = '' if Regex =~ arg altitude = [($1.to_f*(1e2))+(1e7)].pack("N") else raise ArgumentError.new("not a properly formed Alt string: " + arg) end return Alt.new(altitude) else raise ArgumentError.new("cannot interpret as Alt: #{arg.inspect}") end end |
Instance Method Details
#==(other) ⇒ Object
:nodoc:
2896 2897 2898 |
# File 'lib/resolv_fiber.rb', line 2896 def ==(other) # :nodoc: return @altitude == other.altitude end |
#eql?(other) ⇒ Boolean
:nodoc:
2900 2901 2902 |
# File 'lib/resolv_fiber.rb', line 2900 def eql?(other) # :nodoc: return self == other end |
#hash ⇒ Object
:nodoc:
2904 2905 2906 |
# File 'lib/resolv_fiber.rb', line 2904 def hash # :nodoc: return @altitude.hash end |
#inspect ⇒ Object
:nodoc:
2892 2893 2894 |
# File 'lib/resolv_fiber.rb', line 2892 def inspect # :nodoc: return "#<#{self.class} #{self}>" end |
#to_s ⇒ Object
:nodoc:
2887 2888 2889 2890 |
# File 'lib/resolv_fiber.rb', line 2887 def to_s # :nodoc: a = @altitude.unpack("N").join.to_i return ((a.to_f/1e2)-1e5).to_s + "m" end |