1 # The language to output bindings in
3 # possible values: "C", "C++"
9 # Options for wrapping the contents of the header:
11 # An optional string of text to output at the beginning of the generated file
12 # default: doesn't emit anything
13 header = """/* Copyright (C) 2019 Open Information Security Foundation
15 * You can copy, redistribute or modify this Program under the terms of
16 * the GNU General Public License version 2 as published by the Free
17 * Software Foundation.
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
24 * You should have received a copy of the GNU General Public License
25 * version 2 along with this program; if not, write to the Free Software
26 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
30 # An optional name to use as an include guard
31 # default: doesn't emit an include guard
32 include_guard = "__RUST_BINDINGS_GEN_H_"
34 # An optional string of text to output between major sections of the generated
35 # file as a warning against manual editing
37 # default: doesn't emit anything
38 autogen_warning = "/* DO NOT EDIT This file is autogenerated by cbindgen. Don't modify this manually. */"
40 # Whether to include a comment with the version of cbindgen used to generate the file
42 include_version = true
44 # A list of headers to #include (with quotes)
48 # The desired length of a line to use when formatting lines
52 # The amount of spaces to indent by
56 # How the generated documentation should be commented.
59 # * "c": /* like this */
60 # * "c99": // like this
61 # * "c++": /// like this
62 # * "doxy": like C, but with leading *'s on each line
63 # * "auto": "c++" if that's the language, "doxy" otherwise
66 documentation_style = "doxy"
70 # A list of additional items to always include in the generated bindings if they're
71 # found but otherwise don't appear to be used by the public API.
74 include = ["AppLayerGetTxIterTuple"]
76 # A list of items to not include in the generated bindings
79 "AppLayerDecoderEvents",
80 "AppLayerParserState",
95 "SuricataFileContext",
101 # Types of items that we'll generate. If empty, then all types of item are emitted.
103 # possible items: (TODO: explain these in detail)
114 item_types = ["enums","structs","opaque","functions"]
116 # Whether applying rules in export.rename prevents export.prefix from applying.
118 # e.g. given this toml:
123 "DNSTransaction" = "RSDNSTransaction"
125 "CLuaState" = "lua_State"
128 # You get the following results:
130 # renaming_overrides_prefixing = true:
131 # "MyType" => "my_cool_type"
133 # renaming_overrides_prefixing = false:
134 # "MyType => capi_my_cool_type"
137 renaming_overrides_prefixing = "true"
140 # A black list of crate names that are not allowed to be parsed.
145 # A list of feature names that should be used when running `cargo expand`. This
146 # combines with `default_features` like in your `Cargo.toml`. Note that the features
147 # listed here are features for the current crate being built, *not* the crates
148 # being expanded. The crate's `Cargo.toml` must take care of enabling the
149 # appropriate features in its dependencies
152 features = ["cbindgen"]