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
|
header = """/* 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/. */
/* The MozURL type is implemented in Rust code, and uses extern "C" FFI calls to
* operate on the internal data structure. This file contains C declarations of
* these files.
* WARNING: DO NOT CALL ANY OF THESE FUNCTIONS. USE |MozURL| INSTEAD! */
"""
autogen_warning = """/* DO NOT MODIFY THIS MANUALLY! This file was generated using cbindgen. */
namespace mozilla {
namespace net {
class MozURL;
} // namespace net
} // namespace mozilla
extern "C" {
// FFI-compatible string slice struct used internally by MozURL.
// Coerces to nsDependentCSubstring.
struct MozURLSpecSlice {
char* mData;
uint32_t mLen;
operator nsDependentCSubstring() {
return nsDependentCSubstring(mData, mLen);
}
};
nsresult mozurl_new(mozilla::net::MozURL** aResult, const nsACString* aSpec,
/* optional */ const mozilla::net::MozURL* aBase);
void mozurl_clone(const mozilla::net::MozURL* aThis,
mozilla::net::MozURL** aResult);
nsresult mozurl_common_base(const mozilla::net::MozURL* aUrl1,
const mozilla::net::MozURL* aUrl2,
mozilla::net::MozURL** aResult);
}
"""
include_guard = "mozilla_net_MozURL_ffi_h"
include_version = true
braces = "SameLine"
line_length = 100
tab_width = 2
language = "C++"
namespaces = []
includes = ["nsError.h", "nsString.h"]
[export]
exclude = ["Gecko_StrictFileOriginPolicy", "MozURL", "SpecSlice", "mozurl_new", "mozurl_clone", "mozurl_common_base"]
item_types = ["globals", "enums", "structs", "unions", "typedefs", "opaque", "functions", "constants"]
[export.rename]
"SpecSlice" = "MozURLSpecSlice"
"MozURL" = "mozilla::net::MozURL"
|