diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /ipc/ipdl/ipdl/builtin.py | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ipc/ipdl/ipdl/builtin.py')
-rw-r--r-- | ipc/ipdl/ipdl/builtin.py | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/ipc/ipdl/ipdl/builtin.py b/ipc/ipdl/ipdl/builtin.py new file mode 100644 index 0000000000..b1bab64af8 --- /dev/null +++ b/ipc/ipdl/ipdl/builtin.py @@ -0,0 +1,76 @@ +# 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/. + +# WARNING: the syntax of the builtin types is not checked, so please +# don't add something syntactically invalid. It will not be fun to +# track down the bug. + +# C types +# These types don't live in any namespace, so can't be imported with `using` +# statements like normal C++ types. +CTypes = ( + "bool", + "char", + "short", + "int", + "long", + "float", + "double", +) + +# C++ types +# These types must be fully qualified, and will be `typedef`-ed into IPDL +# structs to make them readily available when used. +Types = ( + # stdint types + "int8_t", + "uint8_t", + "int16_t", + "uint16_t", + "int32_t", + "uint32_t", + "int64_t", + "uint64_t", + "intptr_t", + "uintptr_t", + # You may be tempted to add size_t. Do not! See bug 1525199. + # Mozilla types: "less" standard things we know how serialize/deserialize + "nsresult", + "nsString", + "nsCString", + "mozilla::ipc::Shmem", + "mozilla::ipc::ByteBuf", + "mozilla::UniquePtr", + "mozilla::ipc::FileDescriptor", +) + + +# XXX(Bug 1677487) Can we restrict including ByteBuf.h, FileDescriptor.h, +# MozPromise.h and Shmem.h to those protocols that really use them? +HeaderIncludes = ( + "mozilla/Attributes.h", + "IPCMessageStart.h", + "mozilla/RefPtr.h", + "nsString.h", + "nsTArray.h", + "nsTHashtable.h", + "mozilla/MozPromise.h", + "mozilla/OperatorNewExtensions.h", + "mozilla/UniquePtr.h", + "mozilla/ipc/ByteBuf.h", + "mozilla/ipc/FileDescriptor.h", + "mozilla/ipc/IPCForwards.h", + "mozilla/ipc/Shmem.h", +) + +CppIncludes = ( + "ipc/IPCMessageUtils.h", + "ipc/IPCMessageUtilsSpecializations.h", + "nsIFile.h", + "mozilla/ipc/Endpoint.h", + "mozilla/ipc/ProtocolMessageUtils.h", + "mozilla/ipc/ProtocolUtils.h", + "mozilla/ipc/ShmemMessageUtils.h", + "mozilla/ipc/TaintingIPCUtils.h", +) |