summaryrefslogtreecommitdiffstats
path: root/application/basilisk/components/translation/cld2/cld.idl
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-07-18 08:24:24 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-07-18 08:24:24 +0200
commitfc61780b35af913801d72086456f493f63197da6 (patch)
treef85891288a7bd988da9f0f15ae64e5c63f00d493 /application/basilisk/components/translation/cld2/cld.idl
parent69f7f9e5f1475891ce11cc4f431692f965b0cd30 (diff)
parent50d3e596bbe89c95615f96eb71f6bc5be737a1db (diff)
downloadUXP-2018.07.18.tar
UXP-2018.07.18.tar.gz
UXP-2018.07.18.tar.lz
UXP-2018.07.18.tar.xz
UXP-2018.07.18.zip
Merge commit '50d3e596bbe89c95615f96eb71f6bc5be737a1db' into Basilisk-releasev2018.07.18
# Conflicts: # browser/app/profile/firefox.js # browser/components/preferences/jar.mn
Diffstat (limited to 'application/basilisk/components/translation/cld2/cld.idl')
-rw-r--r--application/basilisk/components/translation/cld2/cld.idl47
1 files changed, 47 insertions, 0 deletions
diff --git a/application/basilisk/components/translation/cld2/cld.idl b/application/basilisk/components/translation/cld2/cld.idl
new file mode 100644
index 000000000..e426dd303
--- /dev/null
+++ b/application/basilisk/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;