summaryrefslogtreecommitdiffstats
path: root/browser/components/translation/cld2/cld.idl
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /browser/components/translation/cld2/cld.idl
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'browser/components/translation/cld2/cld.idl')
-rw-r--r--browser/components/translation/cld2/cld.idl47
1 files changed, 47 insertions, 0 deletions
diff --git a/browser/components/translation/cld2/cld.idl b/browser/components/translation/cld2/cld.idl
new file mode 100644
index 000000000..e426dd303
--- /dev/null
+++ b/browser/components/translation/cld2/cld.idl
@@ -0,0 +1,47 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ * You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+// Note: This is a variant of WebIDL, but its semantics differ from our
+// internal WebIDL implementation. Some particular differences that are
+// relevent here include:
+//
+// - Attribute declarations refer directly to member variables of the
+// underlying class, and are not forwarded to explicit getter methods.
+//
+// - Attribute declarations also do not create getters on the JavaScript
+// wrapper object, but instead generate "get_foo()" and "set_foo()"
+// methods, which must be called in order to access the value. In the case
+// of array attributes, the callers must also pass the index they wish to
+// access.
+//
+// - Method overloading is fairly crude. Only explicitly declared variants
+// are supported, and selection is based entirely on index of the first
+// parameter whose value is undefined.
+//
+// - DOMString attributes are nullable by default. Null values are not
+// converted to empty strings, and non-null values are converted to
+// null-terminated, UTF-8 byte arrays.
+
+interface Language {
+ [Const] DOMString getLanguageCode();
+};
+
+interface LanguageGuess {
+ byte getPercent();
+};
+
+interface LanguageInfo {
+ static LanguageInfo detectLanguage(DOMString buffer, boolean isPlainText);
+
+ static LanguageInfo detectLanguage(DOMString buffer, boolean isPlainText,
+ DOMString? tldHint, long encodingHint,
+ DOMString? languageHint);
+
+ boolean getIsReliable();
+
+ [BoundsChecked,Const] readonly attribute LanguageGuess[] languages;
+};
+
+LanguageGuess implements Language;
+LanguageInfo implements Language;