Copy as Markdown
Other Tools
//
// Automatically generated by ipdlc.
// Edit at your own risk
//
#ifndef IPCIdentityCredential_h
#define IPCIdentityCredential_h
#include "mozilla/Attributes.h"
#include "IPCMessageStart.h"
#include "mozilla/RefPtr.h"
#include "nsString.h"
#include "nsTArray.h"
#include "nsTHashtable.h"
#include "mozilla/MozPromise.h"
#include "mozilla/OperatorNewExtensions.h"
#include "mozilla/UniquePtr.h"
#include "mozilla/ipc/ByteBuf.h"
#include "mozilla/ipc/FileDescriptor.h"
#include "mozilla/ipc/IPCForwards.h"
#include "mozilla/ipc/Shmem.h"
// Headers for typedefs
#include "mozilla/ipc/IPDLStructMember.h"
#include "nsIPrincipal.h"
//-----------------------------------------------------------------------------
// Declaration of the IPDL type |struct IPCIdentityCredential|
//
namespace mozilla {
namespace dom {
class IPCIdentityCredential final
{
private:
typedef ::nsString nsString;
typedef ::nsCString nsCString;
typedef ::uint64_t uint64_t;
typedef ::nsIPrincipal nsIPrincipal;
public:
#ifdef __clang__
# pragma clang diagnostic push
# if __has_warning("-Wdefaulted-function-deleted")
# pragma clang diagnostic ignored "-Wdefaulted-function-deleted"
# endif
#endif
IPCIdentityCredential() = default;
#ifdef __clang__
# pragma clang diagnostic pop
#endif
MOZ_IMPLICIT IPCIdentityCredential(
const nsString& _id,
const mozilla::Maybe<nsString>& _token,
const mozilla::Maybe<nsCString>& _name,
const mozilla::Maybe<nsCString>& _iconURL,
const nsTArray<nsCString>& _effectiveOrigins,
const mozilla::Maybe<nsCString>& _effectiveQueryURL,
const mozilla::Maybe<nsCString>& _effectiveType,
const mozilla::Maybe<uint64_t>& _infoExpiresAt,
nsIPrincipal* _identityProvider) :
id_(_id),
token_(_token),
name_(_name),
iconURL_(_iconURL),
effectiveOrigins_(_effectiveOrigins),
effectiveQueryURL_(_effectiveQueryURL),
effectiveType_(_effectiveType),
infoExpiresAt_(_infoExpiresAt),
identityProvider_(_identityProvider)
{
}
MOZ_IMPLICIT IPCIdentityCredential(
nsString&& _id,
mozilla::Maybe<nsString>&& _token,
mozilla::Maybe<nsCString>&& _name,
mozilla::Maybe<nsCString>&& _iconURL,
nsTArray<nsCString>&& _effectiveOrigins,
mozilla::Maybe<nsCString>&& _effectiveQueryURL,
mozilla::Maybe<nsCString>&& _effectiveType,
mozilla::Maybe<uint64_t>&& _infoExpiresAt,
RefPtr<nsIPrincipal>&& _identityProvider) :
id_(std::move(_id)),
token_(std::move(_token)),
name_(std::move(_name)),
iconURL_(std::move(_iconURL)),
effectiveOrigins_(std::move(_effectiveOrigins)),
effectiveQueryURL_(std::move(_effectiveQueryURL)),
effectiveType_(std::move(_effectiveType)),
infoExpiresAt_(std::move(_infoExpiresAt)),
identityProvider_(std::move(_identityProvider))
{
}
nsString&
id()
{
return id_;
}
const nsString&
id() const
{
return id_;
}
mozilla::Maybe<nsString>&
token()
{
return token_;
}
const mozilla::Maybe<nsString>&
token() const
{
return token_;
}
mozilla::Maybe<nsCString>&
name()
{
return name_;
}
const mozilla::Maybe<nsCString>&
name() const
{
return name_;
}
mozilla::Maybe<nsCString>&
iconURL()
{
return iconURL_;
}
const mozilla::Maybe<nsCString>&
iconURL() const
{
return iconURL_;
}
nsTArray<nsCString>&
effectiveOrigins()
{
return effectiveOrigins_;
}
const nsTArray<nsCString>&
effectiveOrigins() const
{
return effectiveOrigins_;
}
mozilla::Maybe<nsCString>&
effectiveQueryURL()
{
return effectiveQueryURL_;
}
const mozilla::Maybe<nsCString>&
effectiveQueryURL() const
{
return effectiveQueryURL_;
}
mozilla::Maybe<nsCString>&
effectiveType()
{
return effectiveType_;
}
const mozilla::Maybe<nsCString>&
effectiveType() const
{
return effectiveType_;
}
mozilla::Maybe<uint64_t>&
infoExpiresAt()
{
return infoExpiresAt_;
}
const mozilla::Maybe<uint64_t>&
infoExpiresAt() const
{
return infoExpiresAt_;
}
RefPtr<nsIPrincipal>&
identityProvider()
{
return identityProvider_;
}
nsIPrincipal*
identityProvider() const
{
return identityProvider_;
}
private:
::mozilla::ipc::IPDLStructMember<nsString> id_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<nsString>> token_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<nsCString>> name_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<nsCString>> iconURL_;
::mozilla::ipc::IPDLStructMember<CopyableTArray<nsCString>> effectiveOrigins_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<nsCString>> effectiveQueryURL_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<nsCString>> effectiveType_;
::mozilla::ipc::IPDLStructMember<mozilla::Maybe<uint64_t>> infoExpiresAt_;
::mozilla::ipc::IPDLStructMember<RefPtr<nsIPrincipal>> identityProvider_;
};
} // namespace dom
} // namespace mozilla
namespace IPC {
template<>
struct ParamTraits <::mozilla::dom::IPCIdentityCredential>
{
typedef ::mozilla::dom::IPCIdentityCredential paramType;
static void
Write(
IPC::MessageWriter* aWriter,
const paramType& aVar);
static IPC::ReadResult<paramType>
Read(IPC::MessageReader* aReader);
};
} // namespace IPC
#endif // ifndef IPCIdentityCredential_h