Sha256: fa6c084605401bd3a0cd824058af957aaca8998029893bf2144bf2234d699068

Contents?: true

Size: 614 Bytes

Versions: 3

Compression:

Stored size: 614 Bytes

Contents

class Net::IRC::Message::ServerConfig
	attr_reader :mode_parser

	def initialize
		@config = {}
		@mode_parser = Net::IRC::Message::ModeParser.new
	end

	def set(arg)
		params = arg.kind_of?(Net::IRC::Message) ? arg.to_a : arg.split(/\s+/)

		params[1..-1].each do |s|
			case s
			when /^:?are supported by this server$/
				# Ignore
			when /^([^=]+)=(.*)$/
				key = Regexp.last_match[1].to_sym
				value = Regexp.last_match[2]
				@config[key] = value
				@mode_parser.set(key, value) if key == :CHANMODES || key == :PREFIX
			else
				@config[s] = true
			end
		end
	end

	def [](key)
		@config[key]
	end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
net-irc-0.0.7 lib/net/irc/message/serverconfig.rb
net-irc-0.0.5 lib/net/irc/message/serverconfig.rb
net-irc-0.0.6 lib/net/irc/message/serverconfig.rb