Функция or()
Tip
t.or
можно вкладывать друг в друга. Это может быть полезно при создании пользовательских типов.
{ age: t.or(t.str, t.or(t.int8, t.or(t.date, t.float64, t.none)))}
Tip
Вы можете передать в t.or
массив или объект используя t.schema()
{ age: t.or(t.schema([t.str]), t.int8)}
Подробнее о t.schema()
Информация
t.or(...types: TCustomType[]): TCustomType
- Функция
t.or()
используется для перечисления сериализуемых типов. t.or()
принимает не более 255 аргументов.- Вы не можете передать в
t.or
массив или объект напрямую. Только черезt.schema()
.
Примеры использования
import { Serializer, t } from "encodexx"
const serializer = new Serializer({ ages: [t.or(t.uint8, t.str)], message: t.or(t.str, t.none)})
serializer.encode({ ages: [12, "493", "not a number", 124, 200], message: null});
import { Serializer, t } from "encodexx"const serializer = new Serializer({ users: [ t.or( t.schema({ name: t.str }), t.schema({ content: t.str, age: t.uint8 }) ), ],});
serializer.encode({ users: [ { name: "ad" }, { content: "content", age: 15 }, { name: "another" }, ]});