class SshConfig::Entry

Entry represents a single Host entry in an ssh_config(5)

Attributes

user[R]

Public Class Methods

new(*names) click to toggle source
# File lib/ssh_config/entry.rb, line 8
def initialize(*names)
  @names = Array(names).flatten.map { |name| String(name) }
end

Public Instance Methods

distinct_names() click to toggle source
# File lib/ssh_config/entry.rb, line 12
def distinct_names
  @distinct_names ||= begin
    no_ips = @names
      .sort_by(&:length)
      .reject { |name| name =~ /\A\d+\.\d+\.\d+\.\d+\Z/ }

    no_ips
      .reject do |name|
        parts = name.split('.')
        parts.count != 1 && no_ips.include?(parts.first)
      end
  end
end
user=(val) click to toggle source
# File lib/ssh_config/entry.rb, line 26
def user=(val)
  @user = String(val)
end