# Mode on a Channel\r
#\r
class Mode\r
+ attr_reader :channel\r
def initialize(ch)\r
@channel = ch\r
end\r
# Example: b (banlist)\r
#\r
class ModeTypeA < Mode\r
+ attr_reader :list\r
def initialize(ch)\r
super\r
@list = NetmaskList.new\r
@arg = nil\r
end\r
\r
+ def status\r
+ @arg\r
+ end\r
+ alias :value :status\r
+\r
def set(val)\r
@arg = val\r
end\r
# modes of type A\r
#\r
class UserMode < ModeTypeB\r
+ attr_reader :list\r
+ alias :users :list\r
def initialize(ch)\r
super\r
@list = UserList.new\r
class ModeTypeC < Mode\r
def initialize(ch)\r
super\r
- @arg = false\r
+ @arg = nil\r
end\r
\r
def status\r
@arg\r
end\r
+ alias :value :status\r
\r
def set(val)\r
@arg = val\r
end\r
\r
def reset\r
- @arg = false\r
+ @arg = nil\r
end\r
\r
end\r