// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.codec.schema.metadata;

import com.hypixel.hytale.codec.schema.config.BooleanSchema;
import com.hypixel.hytale.codec.schema.config.NumberSchema;
import com.hypixel.hytale.codec.schema.config.IntegerSchema;
import com.hypixel.hytale.codec.schema.config.StringSchema;
import com.hypixel.hytale.codec.schema.config.Schema;

public class NoDefaultValue implements Metadata
{
    public static final NoDefaultValue INSTANCE;
    
    private NoDefaultValue() {
    }
    
    @Override
    public void modify(final Schema schema) {
        if (schema instanceof final StringSchema stringSchema) {
            stringSchema.setDefault(null);
        }
        else if (schema instanceof final IntegerSchema integerSchema) {
            integerSchema.setDefault(null);
        }
        else if (schema instanceof final NumberSchema numberSchema) {
            numberSchema.setDefault(null);
        }
        else if (schema instanceof final BooleanSchema booleanSchema) {
            booleanSchema.setDefault(null);
        }
    }
    
    static {
        INSTANCE = new NoDefaultValue();
    }
}
