mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Gecko engine for Wine
09d73c6f20
The following command: grep -Ir "UnwrapArg<" $srcdir/* $objdir/dom/bindings/ | sed 's/^[^<]*<//' | sed 's/>.*//' | sort -u (with $srcdir and $objdir replaced by the relevant paths) produces this list: ${type} _clazz _interface imgINotificationObserver imgIRequest mozilla::dom::EventTarget mozilla::dom::IndirectlyImplementedInterface mozilla::dom::TestExternalInterface nsGenericHTMLElement nsIBrowserDOMWindow nsIChannel nsIDOMCSSRule nsIDOMDataChannel nsIDOMMozMmsMessage nsIDOMMozSmsMessage nsIDOMMozWakeLockListener nsIDOMWindow nsIDOMXPathNSResolver nsIFile nsIFrameRequestCallback nsIInputStream nsIInputStreamCallback nsIJSID nsIMenuBuilder nsIObserver nsIOutputStream nsIPrincipal nsISelectionListener nsISupports nsITreeView nsIURI The ${type} bit is part of codegen. The _clazz and _interface bits are the macros in js/xpconnect/src/nsDOMQS.h that are defining UnwrapArg methods. The nsGenericHTMLElement is only used in xpc_qsUnwrapArg_HTMLElement. Inspection of the above list indicates that none of the classes used with DEFINE_UNWRAP_CAST_HTML are in it, so all those specializations of UnwrapArg, and the xpc_qsUnwrapArg_HTMLElement method they call, are dead code. Moreover, almost all the specializations set up by DEFINE_UNWRAP_CAST are dead code as well; the only exception is the one for mozilla::dom::EventTarget. But since we no longer use Web IDL quickstubs for EventTarget, that one is only used in a few places for method arguments, and none of those should have our one remaining webidl event target passed to them. So it's safe to remove that specialization as well. |
||
---|---|---|
accessible | ||
addon-sdk | ||
b2g | ||
browser | ||
build | ||
caps | ||
chrome | ||
config | ||
content | ||
db/sqlite3 | ||
docshell | ||
dom | ||
editor | ||
embedding | ||
extensions | ||
gfx | ||
hal | ||
image | ||
intl | ||
ipc | ||
js | ||
layout | ||
media | ||
memory | ||
mfbt | ||
mobile | ||
modules | ||
mozglue | ||
netwerk | ||
nsprpub | ||
other-licenses | ||
parser | ||
probes | ||
profile | ||
python | ||
rdf | ||
security | ||
services | ||
startupcache | ||
storage | ||
testing | ||
toolkit | ||
tools | ||
uriloader | ||
view | ||
webapprt | ||
widget | ||
xpcom | ||
xpfe | ||
xulrunner | ||
.clang-format | ||
.clang-format-ignore | ||
.gdbinit | ||
.gitignore | ||
.hgignore | ||
.hgtags | ||
.lldbinit | ||
.reviewboardrc | ||
aclocal.m4 | ||
Android.mk | ||
AUTHORS | ||
client.mk | ||
client.py | ||
CLOBBER | ||
configure.in | ||
LEGAL | ||
LICENSE | ||
mach | ||
Makefile.in | ||
moz.build | ||
mozilla-config.h.in | ||
README.txt |
An explanation of the Mozilla Source Code Directory Structure and links to project pages with documentation can be found at: https://developer.mozilla.org/en/Mozilla_Source_Code_Directory_Structure For information on how to build Mozilla from the source code, see: http://developer.mozilla.org/en/docs/Build_Documentation To have your bug fix / feature added to Mozilla, you should create a patch and submit it to Bugzilla (https://bugzilla.mozilla.org). Instructions are at: http://developer.mozilla.org/en/docs/Creating_a_patch http://developer.mozilla.org/en/docs/Getting_your_patch_in_the_tree If you have a question about developing Mozilla, and can't find the solution on http://developer.mozilla.org, you can try asking your question in a mozilla.* Usenet group, or on IRC at irc.mozilla.org. [The Mozilla news groups are accessible on Google Groups, or news.mozilla.org with a NNTP reader.] You can download nightly development builds from the Mozilla FTP server. Keep in mind that nightly builds, which are used by Mozilla developers for testing, may be buggy. Firefox nightlies, for example, can be found at: ftp://ftp.mozilla.org/pub/firefox/nightly/latest-trunk/ - or - http://nightly.mozilla.org/