Closed Bug 912411 Opened 6 years ago Closed 6 years ago

Remove assorted jsapi.h includes

Categories

(Core :: General, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla26

People

(Reporter: njn, Assigned: njn)

References

Details

(Whiteboard: [js:t])

Attachments

(3 files)

No description provided.
I thought about doing this when I created Id.{h,cpp}, but deferred.  But now I
see that it will allow AccessCheck.h to not depend on jsapi.h.

I also moved them into the global namespace, because JS::JS_* is stoopid.
Attachment #799846 - Flags: review?(luke)
Attachment #799846 - Flags: review?(luke) → review+
After this, the only .h files within js/src/ that include jsapi.h are jsexn.h
and vm/String.h.  That's nice.
Attachment #799879 - Flags: review?(luke)
Comment on attachment 799370 [details] [diff] [review]
(part 1) - Removed some jsapi.h includes in Gecko.

r=me
Attachment #799370 - Flags: review?(bzbarsky) → review+
Comment on attachment 799879 [details] [diff] [review]
(part 3) - Remove lots of jsapi.h includes in SpiderMonkey.

ooc: does this mean all these .cpps (which no longer #include jsapi.h explicitly) don't include jsapi.h transitively at all?
Attachment #799879 - Flags: review?(luke) → review+
> ooc: does this mean all these .cpps (which no longer #include jsapi.h
> explicitly) don't include jsapi.h transitively at all?

Alas, no.  jsapi.h is included by vm/String.h, which is included by vm/ObjectImpl.h, which is included by jsobj.h and vm/Shape.h, which are both included all over the place.  #include is truly a ridiculous mechanism.  But we're heading in the right direction :)
You need to log in before you can comment on or make changes to this bug.