CustomElementTypes.ipdlh (963B)
1 /* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */ 2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */ 3 /* This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 include "mozilla/dom/IPCBlobUtils.h"; 8 9 [RefCounted] using class mozilla::dom::BlobImpl from "mozilla/dom/BlobImpl.h"; 10 using struct mozilla::void_t from "mozilla/ipc/IPCCore.h"; 11 12 namespace mozilla { 13 namespace dom { 14 15 // Types used to store form-associated custom element state. 16 union IPCFormDataValue { 17 BlobImpl; 18 nsString; 19 }; 20 21 struct FormDataTuple { 22 nsString name; 23 IPCFormDataValue value; 24 }; 25 26 union CustomElementFormValue { 27 void_t; 28 nullable BlobImpl; 29 nsString; 30 FormDataTuple[]; 31 }; 32 33 struct CustomElementTuple { 34 CustomElementFormValue value; 35 CustomElementFormValue state; 36 }; 37 38 } // namespace dom 39 } // namespace mozilla