def uptime
      @uptime ||= if (uptime = @node.at_xpath('uptime'))
                    Uptime.new(
                      uptime['seconds'].to_i,
                      Time.parse(uptime['lastboot'])
                    )
                  end

      yield @uptime if (@uptime && block_given?)
      return @uptime
    end
def uptime
      @uptime ||= if (uptime = @node.at_xpath('uptime'))
                    Uptime.new(
                      uptime['seconds'].to_i,
                      Time.parse(uptime['lastboot'])
                    )
                  end

      yield @uptime if (@uptime && block_given?)
      return @uptime
    end
Parses the Uptime analysis of the host.

 @yield [uptime]
   If a block is given, it will be passed the resulting object

 @yieldparam [Uptime]
   Uptime value.

 @return [Uptime]
   The parsed object.

 @since 0.7.0