1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#![allow(missing_copy_implementations)]
use libc::{c_char, c_int, c_double, c_void, size_t, uint16_t, int32_t};
use languages::Language;
#[repr(C)]
pub struct CLDHints {
pub content_language_hint: *const c_char,
pub tld_hint: *const c_char,
pub encoding_hint: c_int,
pub language_hint: Language,
}
#[derive(Debug)]
#[repr(C)]
pub struct ResultChunk {
pub offset: c_int,
pub bytes: int32_t,
pub lang1: uint16_t,
pub pad: uint16_t,
}
pub type ResultChunks = c_void;
extern "C" {
pub fn CLD2_ResultChunkVector_new() -> *mut ResultChunks;
pub fn CLD2_ResultChunkVector_data(chunks: *const ResultChunks)
-> *const ResultChunk;
pub fn CLD2_ResultChunkVector_size(chunks: *const ResultChunks) -> size_t;
pub fn CLD2_ResultChunkVector_delete(chunks: *mut ResultChunks);
pub fn CLD2_LanguageName(lang: Language) -> *const c_char;
pub fn CLD2_LanguageCode(lang: Language) -> *const c_char;
pub fn CLD2_LanguageDeclaredName(lang: Language) -> *const c_char;
pub fn CLD2_GetLanguageFromName(src: *const c_char) -> Language;
pub fn CLD2_DetectLanguage(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool, is_reliable: *mut bool)
-> Language;
pub fn CLD2_DetectLanguageSummary(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
language3: *mut Language,
percent3: *mut c_int,
text_bytes: *mut c_int,
is_reliable: *mut bool) -> Language;
pub fn CLD2_DetectLanguageSummary2(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
tld_hint: *const c_char,
encoding_hint: c_int,
language_hint: Language,
language3: *mut Language,
percent3: *mut c_int,
text_bytes: *mut c_int,
is_reliable: *mut bool) -> Language;
pub fn CLD2_ExtDetectLanguageSummary(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
language3: *mut Language,
percent3: *mut c_int,
text_bytes: *mut c_int,
is_reliable: *mut bool) -> Language;
pub fn CLD2_ExtDetectLanguageSummary2(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
tld_hint: *const c_char,
encoding_hint: c_int,
language_hint: Language,
language3: *mut Language,
percent3: *mut c_int,
text_bytes: *mut c_int,
is_reliable: *mut bool)
-> Language;
pub fn CLD2_ExtDetectLanguageSummary3(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
tld_hint: *const c_char,
encoding_hint: c_int,
language_hint: Language,
language3: *mut Language,
percent3: *mut c_int,
normalized_score3:
*mut c_double,
text_bytes: *mut c_int,
is_reliable: *mut bool)
-> Language;
pub fn CLD2_ExtDetectLanguageSummary4(buffer: *const c_char,
buffer_length: c_int,
is_plain_text: bool,
cld_hints: *const CLDHints,
flags: c_int,
language3: *mut Language,
percent3: *mut c_int,
normalized_score3:
*mut c_double,
resultchunkvector: *mut ResultChunks,
text_bytes: *mut c_int,
is_reliable: *mut bool)
-> Language;
pub fn CLD2_DetectLanguageVersion() -> *const c_char;
}