diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-03-30 18:58:51 +0200 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-03-30 18:58:51 +0200 |
commit | c4aadf04aa9c089c6251478f23e941bfa03b3cad (patch) | |
tree | 10081190e622456c1515d4a00f6f99cec52fe44e /toolkit/components/mozintl/MozIntl.cpp | |
parent | e25430117a67f5c898e5e9388ebd44b185d469ab (diff) | |
download | UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.gz UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.lz UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.xz UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.zip |
Bug 1287677 - Add mozIntl.getDisplayNames API
Diffstat (limited to 'toolkit/components/mozintl/MozIntl.cpp')
-rw-r--r-- | toolkit/components/mozintl/MozIntl.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/toolkit/components/mozintl/MozIntl.cpp b/toolkit/components/mozintl/MozIntl.cpp index 9c393c296..9c61c73a6 100644 --- a/toolkit/components/mozintl/MozIntl.cpp +++ b/toolkit/components/mozintl/MozIntl.cpp @@ -48,6 +48,32 @@ MozIntl::AddGetCalendarInfo(JS::Handle<JS::Value> val, JSContext* cx) return NS_OK; } +NS_IMETHODIMP +MozIntl::AddGetDisplayNames(JS::Handle<JS::Value> val, JSContext* cx) +{ + if (!val.isObject()) { + return NS_ERROR_INVALID_ARG; + } + + JS::Rooted<JSObject*> realIntlObj(cx, js::CheckedUnwrap(&val.toObject())); + if (!realIntlObj) { + return NS_ERROR_INVALID_ARG; + } + + JSAutoCompartment ac(cx, realIntlObj); + + static const JSFunctionSpec funcs[] = { + JS_SELF_HOSTED_FN("getDisplayNames", "Intl_getDisplayNames", 2, 0), + JS_FS_END + }; + + if (!JS_DefineFunctions(cx, realIntlObj, funcs)) { + return NS_ERROR_FAILURE; + } + + return NS_OK; +} + NS_GENERIC_FACTORY_CONSTRUCTOR(MozIntl) NS_DEFINE_NAMED_CID(MOZ_MOZINTL_CID); |