public class org.eclipse.yasson.internal.serializer.NullSerializer extends java.lang.Object implements org.eclipse.yasson.internal.serializer.ModelSerializer
{
private final org.eclipse.yasson.internal.serializer.ModelSerializer delegate;
private final org.eclipse.yasson.internal.serializer.ModelSerializer nullSerializer;
private final org.eclipse.yasson.internal.serializer.ModelSerializer rootNullSerializer;
public void <init>(org.eclipse.yasson.internal.serializer.ModelSerializer, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.JsonbContext)
{
org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingEnabled v;
org.eclipse.yasson.internal.serializer.NullSerializer v;
jakarta.json.bind.serializer.JsonbSerializer v;
org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingDisabled v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
org.eclipse.yasson.internal.model.customization.Customization v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.serializer.ModelSerializer v, v, v;
boolean v;
v := @this: org.eclipse.yasson.internal.serializer.NullSerializer;
v := @parameter: org.eclipse.yasson.internal.serializer.ModelSerializer;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.JsonbContext;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer delegate> = v;
v = interfaceinvoke v.<org.eclipse.yasson.internal.model.customization.Customization: boolean isNillable()>();
if v == 0 goto label;
v = new org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingEnabled;
specialinvoke v.<org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingEnabled: void <init>()>();
v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer nullSerializer> = v;
goto label;
label:
v = new org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingDisabled;
specialinvoke v.<org.eclipse.yasson.internal.serializer.NullSerializer$NullWritingDisabled: void <init>()>();
v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer nullSerializer> = v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: jakarta.json.bind.serializer.JsonbSerializer getNullSerializer()>();
if v == null goto label;
v = staticinvoke <org.eclipse.yasson.internal.serializer.NullSerializer$lambda_new_0__389: org.eclipse.yasson.internal.serializer.ModelSerializer bootstrap$(jakarta.json.bind.serializer.JsonbSerializer)>(v);
v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer rootNullSerializer> = v;
goto label;
label:
v = v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer nullSerializer>;
v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer rootNullSerializer> = v;
label:
return;
}
public void serialize(java.lang.Object, jakarta.json.stream.JsonGenerator, org.eclipse.yasson.internal.SerializationContextImpl)
{
jakarta.json.stream.JsonGenerator v;
org.eclipse.yasson.internal.serializer.NullSerializer v;
org.eclipse.yasson.internal.SerializationContextImpl v;
java.lang.Object v;
org.eclipse.yasson.internal.serializer.ModelSerializer v, v, v;
boolean v;
v := @this: org.eclipse.yasson.internal.serializer.NullSerializer;
v := @parameter: java.lang.Object;
v := @parameter: jakarta.json.stream.JsonGenerator;
v := @parameter: org.eclipse.yasson.internal.SerializationContextImpl;
if v != null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.SerializationContextImpl: boolean isRoot()>();
if v == 0 goto label;
virtualinvoke v.<org.eclipse.yasson.internal.SerializationContextImpl: void setRoot(boolean)>(0);
v = v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer rootNullSerializer>;
interfaceinvoke v.<org.eclipse.yasson.internal.serializer.ModelSerializer: void serialize(java.lang.Object,jakarta.json.stream.JsonGenerator,org.eclipse.yasson.internal.SerializationContextImpl)>(null, v, v);
goto label;
label:
v = v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer nullSerializer>;
interfaceinvoke v.<org.eclipse.yasson.internal.serializer.ModelSerializer: void serialize(java.lang.Object,jakarta.json.stream.JsonGenerator,org.eclipse.yasson.internal.SerializationContextImpl)>(null, v, v);
label:
virtualinvoke v.<org.eclipse.yasson.internal.SerializationContextImpl: void setKey(java.lang.String)>(null);
goto label;
label:
virtualinvoke v.<org.eclipse.yasson.internal.SerializationContextImpl: void setRoot(boolean)>(0);
v = v.<org.eclipse.yasson.internal.serializer.NullSerializer: org.eclipse.yasson.internal.serializer.ModelSerializer delegate>;
interfaceinvoke v.<org.eclipse.yasson.internal.serializer.ModelSerializer: void serialize(java.lang.Object,jakarta.json.stream.JsonGenerator,org.eclipse.yasson.internal.SerializationContextImpl)>(v, v, v);
label:
return;
}
}