base class for Service Interface definitions, used by XMLRPC::BasicServer#add_handler
Methods
- A
- N
- P
Attributes
[R] | methods | |
[R] | prefix |
Class Public methods
new(prefix)
Link
Instance Public methods
add_method(sig, help=nil, meth_name=nil)
Link
# File ../ruby/lib/xmlrpc/utils.rb, line 71 def add_method(sig, help=nil, meth_name=nil) mname = nil sig = [sig] if sig.kind_of? String sig = sig.collect do |s| name, si = parse_sig(s) raise "Wrong signatures!" if mname != nil and name != mname mname = name si end @methods << [mname, meth_name || mname, sig, help] end
Instance Private methods
parse_sig(sig)
Link
# File ../ruby/lib/xmlrpc/utils.rb, line 87 def parse_sig(sig) # sig is a String if sig =~ /^\s*(\w+)\s+([^(]+)(\(([^)]*)\))?\s*$/ params = [$1] name = $2.strip $4.split(",").each {|i| params << i.strip} if $4 != nil return name, params else raise "Syntax error in signature" end end