dope2/interfaces/serializable.js

16 lines
541 B
JavaScript

import { fnType, lsType } from "../type_registry.js";
import {Type, Function} from "../metacircular.js";
import { Byte } from "../primitives/symbols.js";
export const Serializable = Symbol('Serializable');
const ListOfByte = lsType(Byte);
const serializeFnType = fnType({in: Serializable, out: ListOfByte});
const deserializeFnType = fnType({in: ListOfByte, out: Serializable});
export const ModuleSerializable = {l:[
{i: Serializable , t: Type},
{i: serializeFnType , t: Function},
{i: deserializeFnType, t: Function},
]};