# File lib/rye/hop.rb, line 161
161:     def via_hop(*hops)
162:       hops = hops.flatten.compact 
163:       if hops.first.nil?
164:         return @rye_via
165:       elsif hops.first.is_a?(Rye::Hop)
166:         @rye_via = hops.first
167:       elsif hops.first.is_a?(String)
168:         hop = hops.shift
169:         if hops.first.is_a?(Hash)
170:           @rye_via = Rye::Hop.new(hop, hops.first)
171:         else
172:           @rye_via = Rye::Hop.new(hop)
173:         end
174:       end
175:       disconnect
176:       self
177:     end