diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:32:43 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:32:43 +0000 |
commit | 6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch) | |
tree | a68f146d7fa01f0134297619fbe7e33db084e0aa /toolkit/components/translation/cld2/cld.idl | |
parent | Initial commit. (diff) | |
download | thunderbird-upstream.tar.xz thunderbird-upstream.zip |
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/components/translation/cld2/cld.idl')
-rw-r--r-- | toolkit/components/translation/cld2/cld.idl | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/toolkit/components/translation/cld2/cld.idl b/toolkit/components/translation/cld2/cld.idl new file mode 100644 index 0000000000..e426dd3034 --- /dev/null +++ b/toolkit/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; |