cbindgen.toml (1423B)
1 header = """/* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */""" 4 autogen_warning = """/* DO NOT MODIFY THIS MANUALLY! This file was generated using cbindgen. See RunCbindgen.py */ 5 """ 6 include_guard = "mozilla_dom_MlsGkFFI_h" 7 include_version = true 8 braces = "SameLine" 9 line_length = 100 10 tab_width = 2 11 language = "C++" 12 includes = ["nsStringFwd.h", "nsTArrayForwardDeclare.h"] 13 # Put FFI calls in the `mozilla::security::mls` namespace. 14 namespaces = ["mozilla", "security", "mls"] 15 16 [enum] 17 derive_const_casts = true 18 derive_tagged_enum_destructor = true 19 cast_assert_name = "MOZ_DIAGNOSTIC_ASSERT" 20 21 [export.body] 22 "GkReceived" = """ 23 GkReceived() : tag(Tag::None) {} 24 GkReceived(GkReceived&& other) : tag(other.tag) { 25 switch (tag) { 26 case Tag::ApplicationMessage: 27 new (&application_message) ApplicationMessage_Body(std::move(other.application_message)); 28 break; 29 case Tag::GroupIdEpoch: 30 new (&group_id_epoch) GroupIdEpoch_Body(std::move(other.group_id_epoch)); 31 break; 32 case Tag::CommitOutput: 33 new (&commit_output) CommitOutput_Body(std::move(other.commit_output)); 34 break; 35 case Tag::None: 36 break; 37 } 38 } 39 """ 40 41 # Export `ThinVec` references as `nsTArray`. 42 [export.rename] 43 "ThinVec" = "nsTArray"