Object
Helper class to parse a type signature in the protocol.
Returns the next character from the signature.
# File lib/dbus/type.rb, line 164 def nextchar c = @signature[@idx] @idx += 1 c end
Parse the entire signature, return a DBus::Type object.
# File lib/dbus/type.rb, line 197 def parse @idx = 0 ret = Array.new while (c = nextchar) ret << parse_one(c) end ret end
Parse one character c of the signature.
# File lib/dbus/type.rb, line 171 def parse_one(c) res = nil case c when aa res = Type.new(ARRAY) child = parse_one(nextchar) res << child when (( res = Type.new(STRUCT) while (c = nextchar) != nil and c != )) res << parse_one(c) end raise SignatureException, "Parse error in #{@signature}" if c == nil when {{ res = Type.new(DICT_ENTRY) while (c = nextchar) != nil and c != }} res << parse_one(c) end raise SignatureException, "Parse error in #{@signature}" if c == nil else res = Type.new(c) end res end
Generated with the Darkfish Rdoc Generator 2.