There's no documentation for this item.
Source Code
# File qt/qtruby4.rb, line 2436 def Internal.makeMetaData(classname, classinfos, dbus, signals, slots) # Each entry in 'stringdata' corresponds to a string in the # qt_meta_stringdata_<classname> structure. # 'pack_string' is used to convert 'stringdata' into the # binary sequence of null terminated strings for the metaObject stringdata = [] pack_string = "" string_table = string_table_handler(stringdata, pack_string) # This is used to create the array of uints that make up the # qt_meta_data_<classname> structure in the metaObject data = [1, # revision string_table.call(classname), # classname classinfos.length, classinfos.length > 0 ? 10 : 0, # classinfo signals.length + slots.length, 10 + (2*classinfos.length), # methods 0, 0, # properties 0, 0] # enums/sets classinfos.each do |entry| data.push string_table.call(entry[0]) # key data.push string_table.call(entry[1]) # value end signals.each do |entry| data.push string_table.call(entry.full_name) # signature data.push string_table.call(entry.full_name.delete("^,")) # parameters data.push string_table.call(entry.reply_type) # type, "" means void data.push string_table.call("") # tag if dbus data.push MethodScriptable | MethodSignal | AccessPublic else data.push MethodSignal | AccessProtected # flags, always protected for now end end slots.each do |entry| data.push string_table.call(entry.full_name) # signature data.push string_table.call(entry.full_name.delete("^,")) # parameters data.push string_table.call(entry.reply_type) # type, "" means void data.push string_table.call("") # tag if dbus data.push MethodScriptable | MethodSlot | AccessPublic # flags, always public for now else data.push MethodSlot | AccessPublic # flags, always public for now end end data.push 0 # eod return [stringdata.pack(pack_string), data] end
<code/>and<pre/>for code samples.