gecko-dev/ipc/glue/URIParams.ipdlh
Matt Woodrow 99374f0571 Bug 1578624 - P1: Serialize SubstitutingURL fully. r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D44757

--HG--
extra : moz-landing-system : lando
2019-10-11 02:25:54 +00:00

104 lines
1.8 KiB
Plaintext

/* 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/. */
using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
include PBackgroundSharedTypes;
namespace mozilla {
namespace ipc {
struct SimpleURIParams
{
nsCString scheme;
nsCString path;
nsCString ref;
nsCString query;
};
struct StandardURLSegment
{
uint32_t position;
int32_t length;
};
struct StandardURLParams
{
uint32_t urlType;
int32_t port;
int32_t defaultPort;
nsCString spec;
StandardURLSegment scheme;
StandardURLSegment authority;
StandardURLSegment username;
StandardURLSegment password;
StandardURLSegment host;
StandardURLSegment path;
StandardURLSegment filePath;
StandardURLSegment directory;
StandardURLSegment baseName;
StandardURLSegment extension;
StandardURLSegment query;
StandardURLSegment ref;
bool supportsFileURL;
bool isSubstituting;
};
struct JARURIParams
{
URIParams jarFile;
URIParams jarEntry;
nsCString charset;
};
struct IconURIParams
{
URIParams? uri;
uint32_t size;
nsCString contentType;
nsCString fileName;
nsCString stockIcon;
int32_t iconSize;
int32_t iconState;
};
struct NullPrincipalURIParams
{
// Purposefully empty. Null principal URIs do not round-trip.
};
struct HostObjectURIParams
{
SimpleURIParams simpleParams;
bool revoked;
};
union URIParams
{
SimpleURIParams;
StandardURLParams;
JARURIParams;
IconURIParams;
NullPrincipalURIParams;
JSURIParams;
SimpleNestedURIParams;
HostObjectURIParams;
};
struct JSURIParams
{
SimpleURIParams simpleParams;
URIParams? baseURI;
};
struct SimpleNestedURIParams
{
SimpleURIParams simpleParams;
URIParams innerURI;
};
} // namespace ipc
} // namespace mozilla