summaryrefslogtreecommitdiffstats
path: root/xpcom/reflect/xptinfo/xptcodegen.py
diff options
context:
space:
mode:
Diffstat (limited to 'xpcom/reflect/xptinfo/xptcodegen.py')
-rw-r--r--xpcom/reflect/xptinfo/xptcodegen.py21
1 files changed, 1 insertions, 20 deletions
diff --git a/xpcom/reflect/xptinfo/xptcodegen.py b/xpcom/reflect/xptinfo/xptcodegen.py
index 9dd54a6f07..67860ca1f2 100644
--- a/xpcom/reflect/xptinfo/xptcodegen.py
+++ b/xpcom/reflect/xptinfo/xptcodegen.py
@@ -330,30 +330,11 @@ def link_to_cpp(interfaces, fd, header_fd):
)
)
- def is_type_reflectable(type):
- # All native types end up getting tagged as void*, or as wrapper types around void*
- if type["tag"] == "TD_VOID":
- return False
- if type["tag"] in ("TD_ARRAY", "TD_LEGACY_ARRAY"):
- return is_type_reflectable(type["element"])
- return True
-
- def is_method_reflectable(method):
- if "hidden" in method["flags"]:
- return False
-
- for param in method["params"]:
- # Reflected methods can't use non-reflectable types.
- if not is_type_reflectable(param["type"]):
- return False
-
- return True
-
def lower_method(method, ifacename, builtinclass):
methodname = "%s::%s" % (ifacename, method["name"])
isSymbol = "symbol" in method["flags"]
- reflectable = is_method_reflectable(method)
+ reflectable = "hidden" not in method["flags"]
if not reflectable and builtinclass:
# Hide the parameters of methods that can't be called from JS and