Add support for autogenerating synchronous message handlers
Created attachment 68964 [details] Patch
Comment on attachment 68964 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=68964&action=review > WebKit2/Scripts/webkit2/messages.py:384 > + if async_messages: > + result.append('void %s::didReceive%sMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments)\n' % (receiver.name, receiver.name)) > + result.append('{\n') > + result.append(' switch (messageID.get<Messages::%s::Kind>()) {\n' % receiver.name) > + result += [async_case_statement(receiver, message) for message in async_messages] > + result.append(' default:\n') > + result.append(' break;\n') > + result.append(' }\n\n') > + result.append(' ASSERT_NOT_REACHED();\n') > + result.append('}\n') > + > + if sync_messages: > + result.append('\n') > + result.append('CoreIPC::SyncReplyMode %s::didReceiveSync%sMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments, CoreIPC::ArgumentEncoder* reply)\n' % (receiver.name, receiver.name)) > + result.append('{\n') > + result.append(' switch (messageID.get<Messages::%s::Kind>()) {\n' % receiver.name) > + result += [sync_case_statement(receiver, message) for message in sync_messages] > + result.append(' default:\n') > + result.append(' break;\n') > + result.append(' }\n\n') > + result.append(' ASSERT_NOT_REACHED();\n') > + result.append(' return CoreIPC::AutomaticReply;\n') > + result.append('}\n') It would be nice not to duplicate so much code.
Committed r68428: <http://trac.webkit.org/changeset/68428>