This is a class representing methods that are part of an interface.
Add a return value name and signature.
# File lib/dbus/introspect.rb, line 150 def add_return(name, signature) @rets << FormalParameter.new(name, signature) end
Add parameter types by parsing the given prototype.
# File lib/dbus/introspect.rb, line 155 def from_prototype(prototype) prototype.split(/, */).each do |arg| arg = arg.split(" ") raise InvalidClassDefinition if arg.size != 2 dir, arg = arg if arg =~ /:/ arg = arg.split(":") name, sig = arg else sig = arg end case dir when "in" add_fparam(name, sig) when "out" add_return(name, sig) end end self end
Return an XML string representation of the method interface elment.
# File lib/dbus/introspect.rb, line 177 def to_xml xml = %{<method name="#{@name}">\n} @params.each do |param| name = param.name ? %{name="#{param.name}" } : "" xml += %{<arg #{name}direction="in" type="#{param.type}"/>\n} end @rets.each do |param| name = param.name ? %{name="#{param.name}" } : "" xml += %{<arg #{name}direction="out" type="#{param.type}"/>\n} end xml += %{</method>\n} xml end
Generated with the Darkfish Rdoc Generator 2.