Closed Bug 330420 Opened 19 years ago Closed 19 years ago

Remove unnecessary nsIClassInfo dependencies

Categories

(Core :: XPCOM, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: bryner, Assigned: bryner)

Details

Attachments

(1 file, 1 obsolete file)

Currently, pretty much file in the source base includes nsIClassInfo.h via nsISupportsImpl.h. We should factor the nsIClassInfo implementation macros out into a new header and remove that dependency, since most consumers don't need it. My testing shows that with this change, about 2/3 of object files no longer include nsIClassInfo.h via any code path (tested by examining .deps/*.pp files). While we're at it, nsIClassInfo.idl unnecessarily includes nsIProgrammingLanguage.idl. Very few consumers need this, really only objects which implement nsIClassInfo themselves.
Attached patch patch (obsolete) — Splinter Review
Attachment #214969 - Flags: review?(darin)
Over IM, I objected to including nsIClassInfoImpl.h from nsIClassInfo.h on the basis of wanting to keep frozen interfaces clean. Will it just be too painful to include it manually everywhere?
(In reply to comment #2) > Over IM, I objected to including nsIClassInfoImpl.h from nsIClassInfo.h on the > basis of wanting to keep frozen interfaces clean. Will it just be too painful > to include it manually everywhere? > Oh, I misunderstood what you said. I thought you were just suggesting that we have the implementation macros factored out into a separate file, rather than inside a %{C++ section of nsIClassInfo.idl. I can make that change if you'd like, it should be pretty straightforward.
Attached patch patch rev 2Splinter Review
Attachment #214969 - Attachment is obsolete: true
Attachment #215065 - Flags: review?(darin)
Attachment #214969 - Flags: review?(darin)
Comment on attachment 215065 [details] [diff] [review] patch rev 2 r=darin
Attachment #215065 - Flags: review?(darin) → review+
checked in
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: