class Atheme::Service::Command

Attributes

block[R]
name[R]

Public Class Methods

new(name, opts, &block) click to toggle source
# File lib/atheme/service.rb, line 23
def initialize(name, opts, &block)
  @name = name
  @block = block
  @opts = opts
end

Public Instance Methods

call(session, raw_output) click to toggle source
# File lib/atheme/service.rb, line 29
def call(session, raw_output)
  @raw_output = raw_output
  @session = session
  value = self.instance_eval(&@block)
  return value if !@opts[:as] || value.nil?
  @opts[:as].new(@session, value)
end

Private Instance Methods

match(expression) click to toggle source
# File lib/atheme/service.rb, line 46
def match(expression)
  raw_output[expression, 1]
end
raw_output() click to toggle source
# File lib/atheme/service.rb, line 38
def raw_output
  @raw_output
end
session() click to toggle source
# File lib/atheme/service.rb, line 42
def session
  @session
end