A discriminated union type which can be used as both a sd sink and source. Similar to std.variant.Variant and std.json.JSONValue.
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/.
Intermediary, abstract format for sd.