Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(22)

Issue 6410007: Make the implementation .cc files go away, instead have the authors give us a... (Closed)

Created:
9 years, 10 months ago by Tom Sepez
Modified:
9 years, 7 months ago
CC:
chromium-reviews, darin-cc_chromium.org
Visibility:
Public.

Description

Make the implementation .cc files go away, instead have the authors give us a header only. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=74637

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Total comments: 1

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Patch Set 10 : '' #

Patch Set 11 : '' #

Patch Set 12 : '' #

Patch Set 13 : '' #

Patch Set 14 : '' #

Patch Set 15 : '' #

Total comments: 4

Patch Set 16 : '' #

Patch Set 17 : '' #

Patch Set 18 : '' #

Total comments: 9

Patch Set 19 : '' #

Patch Set 20 : '' #

Total comments: 2

Patch Set 21 : '' #

Total comments: 3

Patch Set 22 : '' #

Patch Set 23 : '' #

Total comments: 2

Patch Set 24 : '' #

Total comments: 1

Patch Set 25 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+598 lines, -17 lines) Patch
M chrome/chrome_common.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 22 23 24 1 chunk +1 line, -0 lines 0 comments Download
A chrome/common/common_message_generator.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1 chunk +28 lines, -0 lines 0 comments Download
A chrome/common/common_message_generator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +33 lines, -0 lines 0 comments Download
M ipc/ipc.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +6 lines, -0 lines 0 comments Download
M ipc/ipc_message_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 7 chunks +161 lines, -17 lines 0 comments Download
A ipc/ipc_message_null_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +167 lines, -0 lines 0 comments Download
M ipc/ipc_message_utils.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +6 lines, -0 lines 0 comments Download
A ipc/param_traits_log_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +45 lines, -0 lines 0 comments Download
A ipc/param_traits_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +38 lines, -0 lines 0 comments Download
A ipc/param_traits_read_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +42 lines, -0 lines 0 comments Download
A ipc/param_traits_write_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +35 lines, -0 lines 0 comments Download
A ipc/struct_constructor_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +20 lines, -0 lines 0 comments Download
A ipc/struct_destructor_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +16 lines, -0 lines 0 comments Download

Messages

Total messages: 63 (0 generated)
darin (slow to review)
http://codereview.chromium.org/6410007/diff/6003/chrome/common/indexed_db_messages.h File chrome/common/indexed_db_messages.h (right): http://codereview.chromium.org/6410007/diff/6003/chrome/common/indexed_db_messages.h#newcode53 chrome/common/indexed_db_messages.h:53: #define IPC_STRUCT_NAME IndexedDBHostMsg_IndexOpenCursor_Params it might be nice to use ...
9 years, 10 months ago (2011-02-01 22:20:45 UTC) #1
Tom Sepez
Latest patchset implements these ideas. - Name of struct passed as begin parameter - No ...
9 years, 10 months ago (2011-02-02 20:47:05 UTC) #2
Tom Sepez
Note the need to apply the same tricks to the _param_traits.cc/h files. When the struct/class ...
9 years, 10 months ago (2011-02-02 21:54:31 UTC) #3
jam
this looks very good. if we don't need the INIT stuff, can we take it ...
9 years, 10 months ago (2011-02-02 22:00:47 UTC) #4
Tom Sepez
INIT controls whether we get a name = type(0); shoved into the constructor body. I'm ...
9 years, 10 months ago (2011-02-02 22:11:36 UTC) #5
darin (slow to review)
On Wed, Feb 2, 2011 at 2:11 PM, <tsepez@chromium.org> wrote: > INIT controls whether we ...
9 years, 10 months ago (2011-02-02 22:14:50 UTC) #6
Tom Sepez
Ah, the problem with the initializer list is its syntax, and how it doesn't tolerate ...
9 years, 10 months ago (2011-02-02 22:28:41 UTC) #7
jam
how about Foo::Foo() { member1_ = type1(); member2_ = type2(); } On Wed, Feb 2, ...
9 years, 10 months ago (2011-02-02 22:47:45 UTC) #8
Tom Sepez
Yes, that kind of constructor ought to do it. Now to make it actually work.
9 years, 10 months ago (2011-02-02 23:06:47 UTC) #9
Tom Sepez
Could one of you enlighten me about what this might mean: http://build.chromium.org/p/tryserver.chromium/builders/mac/builds/11298/steps/check%20deps/logs/stdio
9 years, 10 months ago (2011-02-02 23:29:23 UTC) #10
jam
There are automated dependency checks to enforce the layering between the different modules. i.e. code ...
9 years, 10 months ago (2011-02-02 23:31:32 UTC) #11
Tom Sepez
So the question becomes, what's the right place for these generator files? They're going to ...
9 years, 10 months ago (2011-02-02 23:48:40 UTC) #12
jam
On Wed, Feb 2, 2011 at 3:48 PM, <tsepez@chromium.org> wrote: > So the question becomes, ...
9 years, 10 months ago (2011-02-03 00:32:09 UTC) #13
Tom Sepez
Sure, but it gets a little more complicated. Defines can't define other defines, and defines ...
9 years, 10 months ago (2011-02-03 01:22:38 UTC) #14
darin (slow to review)
You could make all param structs inherit from a dummy struct, and then make the ...
9 years, 10 months ago (2011-02-03 05:41:26 UTC) #15
Tom Sepez
Clever. I'll try it.
9 years, 10 months ago (2011-02-03 17:25:46 UTC) #16
Tom Sepez
Actually, the NoParams() initializer has to come first; no matter, every subsequent macro generates a ...
9 years, 10 months ago (2011-02-03 17:57:20 UTC) #17
darin (slow to review)
On Thu, Feb 3, 2011 at 9:57 AM, <tsepez@chromium.org> wrote: > Actually, the NoParams() initializer ...
9 years, 10 months ago (2011-02-03 18:29:56 UTC) #18
Tom Sepez
> Another option is to have IPC_STRUCT_MEMBER*N*, but > that is probably less fun. I ...
9 years, 10 months ago (2011-02-03 18:35:08 UTC) #19
darin (slow to review)
One final option is to have just two macros, one that supports an initializer and ...
9 years, 10 months ago (2011-02-03 18:56:03 UTC) #20
Tom Sepez
> IPC_STRUCT_MEMBER(Foo, foo) > IPC_STRUCT_MEMBER_INIT(Bar, bar, (1, 2)) > ... Makes sense. Esp. since the ...
9 years, 10 months ago (2011-02-03 19:11:49 UTC) #21
jam
btw, i really wonder why we need the init case. if someone is sending a ...
9 years, 10 months ago (2011-02-03 19:15:30 UTC) #22
darin (slow to review)
Agreed, but we've had bugs in the past where people sent uninitialized memory. I think ...
9 years, 10 months ago (2011-02-03 19:46:03 UTC) #23
Tom Sepez
Counter-example: use of -1 in the following: PluginMsg_Init_Params::PluginMsg_Init_Params() : containing_window(0), load_manually(false), host_render_view_routing_id(-1) { }
9 years, 10 months ago (2011-02-03 21:17:06 UTC) #24
Tom Sepez
Spent some time converting a good hunk of chrome/common over to this to ensure that ...
9 years, 10 months ago (2011-02-04 19:54:29 UTC) #25
jam
I've looked through all the messages in indexed_db_messages.h as an example. All the members that ...
9 years, 10 months ago (2011-02-04 22:02:30 UTC) #26
Tom Sepez
Alternatively, we could just leave the struct declarations as-is, and provide only the param traits ...
9 years, 10 months ago (2011-02-04 23:19:25 UTC) #27
Tom Sepez
Anyways, here's the state of the world: $ ls -l chrome/common/*messages.cc -rw-r----- 1 tsepez eng ...
9 years, 10 months ago (2011-02-04 23:23:20 UTC) #28
jam
I really like doing everything with the the macros, otherwise it's confusing to list everything ...
9 years, 10 months ago (2011-02-04 23:34:32 UTC) #29
Tom Sepez
Latest patch set removes the _INIT() macros.
9 years, 10 months ago (2011-02-07 18:29:40 UTC) #30
Tom Sepez
Patch set #13 removes the indexed db files I was using as a test. This ...
9 years, 10 months ago (2011-02-07 18:39:39 UTC) #31
jam
this is looking very good, can't wait to see all of our code using it ...
9 years, 10 months ago (2011-02-07 20:17:01 UTC) #32
Tom Sepez
reworked the comments in ipc_message_macros in patch #16
9 years, 10 months ago (2011-02-07 20:36:37 UTC) #33
tsepez (do not use)
On Mon, Feb 7, 2011 at 12:17 PM, <jam@chromium.org> wrote: > this is looking very ...
9 years, 10 months ago (2011-02-07 20:47:35 UTC) #34
jam
On Mon, Feb 7, 2011 at 12:28 PM, Thomas Sepez <tsepez@google.com> wrote: > > > ...
9 years, 10 months ago (2011-02-07 20:49:59 UTC) #35
darin (slow to review)
On Mon, Feb 7, 2011 at 12:49 PM, John Abd-El-Malek <jam@chromium.org> wrote: > > > ...
9 years, 10 months ago (2011-02-07 21:33:07 UTC) #36
jam
On Mon, Feb 7, 2011 at 1:09 PM, Thomas Sepez <tsepez@google.com> wrote: > > > ...
9 years, 10 months ago (2011-02-07 21:35:50 UTC) #37
Tom Sepez
Ok. With the externally defined structs, yes we have to repeat the members in an ...
9 years, 10 months ago (2011-02-07 21:41:51 UTC) #38
Tom Sepez
John, you're absolutely sure that the folks who spent the time implementing those hand-coded loggers ...
9 years, 10 months ago (2011-02-07 21:49:59 UTC) #39
jam
On Mon, Feb 7, 2011 at 1:41 PM, <tsepez@chromium.org> wrote: > Ok. With the externally ...
9 years, 10 months ago (2011-02-07 21:51:28 UTC) #40
jam
On Mon, Feb 7, 2011 at 1:49 PM, <tsepez@chromium.org> wrote: > John, you're absolutely sure ...
9 years, 10 months ago (2011-02-07 21:59:53 UTC) #41
Tom Sepez
Ok, one more look. Fixed a few typos. Thanks.
9 years, 10 months ago (2011-02-07 22:13:19 UTC) #42
jam
http://codereview.chromium.org/6410007/diff/3052/chrome/common/common_message_tree.h File chrome/common/common_message_tree.h (right): http://codereview.chromium.org/6410007/diff/3052/chrome/common/common_message_tree.h#newcode1 chrome/common/common_message_tree.h:1: // Copyright (c) 2010 The Chromium Authors. All rights ...
9 years, 10 months ago (2011-02-07 23:34:55 UTC) #43
Tom Sepez
On 2011/02/07 23:34:55, John Abd-El-Malek wrote: > http://codereview.chromium.org/6410007/diff/3052/chrome/common/common_message_tree.h > File chrome/common/common_message_tree.h (right): > > http://codereview.chromium.org/6410007/diff/3052/chrome/common/common_message_tree.h#newcode1 ...
9 years, 10 months ago (2011-02-08 00:35:19 UTC) #44
jam
On Mon, Feb 7, 2011 at 4:35 PM, <tsepez@chromium.org> wrote: > On 2011/02/07 23:34:55, John ...
9 years, 10 months ago (2011-02-08 00:52:10 UTC) #45
Tom Sepez
Here's another set. But did you want struct_constructor_macros.h or ipc_struct_constructor_macros.h as the new file name? ...
9 years, 10 months ago (2011-02-08 01:14:05 UTC) #46
jam
On Mon, Feb 7, 2011 at 5:14 PM, <tsepez@chromium.org> wrote: > Here's another set. But ...
9 years, 10 months ago (2011-02-08 19:08:07 UTC) #47
Tom Sepez
One more cut at this in change set #20 ... fire away, my friends. Thanks.
9 years, 10 months ago (2011-02-09 22:20:12 UTC) #48
jam
this is looking very good (i.e. lgtm at this point). can you convert the indexed ...
9 years, 10 months ago (2011-02-09 23:06:14 UTC) #49
Tom Sepez
I've fixed the "evaluated" (finally). I've changed the comment about cleanup IPC_MESSAGE_START to make it ...
9 years, 10 months ago (2011-02-09 23:18:07 UTC) #50
jam
On Wed, Feb 9, 2011 at 3:18 PM, <tsepez@chromium.org> wrote: > I've fixed the "evaluated" ...
9 years, 10 months ago (2011-02-09 23:28:07 UTC) #51
jam
indexed_db_messages looks great :) http://codereview.chromium.org/6410007/diff/12020/chrome/common/indexed_db_messages.h File chrome/common/indexed_db_messages.h (right): http://codereview.chromium.org/6410007/diff/12020/chrome/common/indexed_db_messages.h#newcode6 chrome/common/indexed_db_messages.h:6: #define CHROME_COMMON_INDEXED_DB_MESSAGES_H_ we don't need ...
9 years, 10 months ago (2011-02-10 00:22:19 UTC) #52
tsepez (do not use)
On Wed, Feb 9, 2011 at 4:22 PM, <jam@chromium.org> wrote: > indexed_db_messages looks great :) ...
9 years, 10 months ago (2011-02-10 00:26:42 UTC) #53
jam
On Wed, Feb 9, 2011 at 4:26 PM, Thomas Sepez <tsepez@google.com> wrote: > > > ...
9 years, 10 months ago (2011-02-10 02:06:14 UTC) #54
Tom Sepez
Ok. We'll do it your way on the #undef IPC_MESSAGE_START. It just doesn't matter. When ...
9 years, 10 months ago (2011-02-10 02:52:20 UTC) #55
Tom Sepez
Yet another patch set. No include guards. You may want to proof the language in ...
9 years, 10 months ago (2011-02-10 17:31:39 UTC) #56
jam
On Wed, Feb 9, 2011 at 6:52 PM, <tsepez@chromium.org> wrote: > Ok. We'll do it ...
9 years, 10 months ago (2011-02-10 18:26:44 UTC) #57
Tom Sepez
> Why would we convert part of a file at a time? It seems easier ...
9 years, 10 months ago (2011-02-10 18:32:31 UTC) #58
jam
lgtm http://codereview.chromium.org/6410007/diff/20001/ipc/ipc_message_macros.h File ipc/ipc_message_macros.h (right): http://codereview.chromium.org/6410007/diff/20001/ipc/ipc_message_macros.h#newcode79 ipc/ipc_message_macros.h:79: // definitions present in your XXX_messages.h file. Ideally, ...
9 years, 10 months ago (2011-02-10 18:43:33 UTC) #59
Tom Sepez
On 2011/02/10 18:43:33, John Abd-El-Malek wrote: > lgtm > > http://codereview.chromium.org/6410007/diff/20001/ipc/ipc_message_macros.h > File ipc/ipc_message_macros.h (right): ...
9 years, 10 months ago (2011-02-10 18:55:54 UTC) #60
Tom Sepez
New wording in ipc-message_macros discouraging type declarations.
9 years, 10 months ago (2011-02-10 19:29:56 UTC) #61
jam
lgtm On Thu, Feb 10, 2011 at 11:29 AM, <tsepez@chromium.org> wrote: > New wording in ...
9 years, 10 months ago (2011-02-10 21:24:27 UTC) #62
darin (slow to review)
9 years, 10 months ago (2011-02-10 21:33:24 UTC) #63
http://codereview.chromium.org/6410007/diff/22006/chrome/common/indexed_db_me...
File chrome/common/indexed_db_messages.h (right):

http://codereview.chromium.org/6410007/diff/22006/chrome/common/indexed_db_me...
chrome/common/indexed_db_messages.h:120: IPC_STRUCT_MEMBER(int, transaction_id)
indentation nit

Powered by Google App Engine
This is Rietveld 408576698