java-commons/muscript-json/src/main/java/io/gitlab/jfronny/muscript/json/impl/typed/DBoolSerializer.java
JFronny 24aab51a4b
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
feat(muscript-gson): rename to muscript-json and port to commons-serialize-json
2024-04-12 21:19:36 +02:00

23 lines
1.0 KiB
Java

package io.gitlab.jfronny.muscript.json.impl.typed;
import io.gitlab.jfronny.commons.serialize.MalformedDataException;
import io.gitlab.jfronny.commons.serialize.SerializeReader;
import io.gitlab.jfronny.commons.serialize.SerializeWriter;
import io.gitlab.jfronny.commons.serialize.databind.SerializerFor;
import io.gitlab.jfronny.commons.serialize.databind.TypeAdapter;
import io.gitlab.jfronny.muscript.data.additional.DFinal;
import io.gitlab.jfronny.muscript.data.dynamic.DBool;
@SerializerFor(targets = DBool.class, hierarchical = true)
public class DBoolSerializer extends TypeAdapter<DBool> {
@Override
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(DBool value, Writer writer) throws TEx, MalformedDataException {
writer.value(value.getValue());
}
@Override
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> DBool deserialize(Reader reader) throws TEx, MalformedDataException {
return DFinal.of(reader.nextBoolean());
}
}