public void WriteJson(Newtonsoft.Json.JsonWriter writer, GadgetUnion _o, Newtonsoft.Json.JsonSerializer serializer)
 {
     if (_o == null)
     {
         return;
     }
     serializer.Serialize(writer, _o.Value);
 }
    public static int Pack(FlatBuffers.FlatBufferBuilder builder, GadgetUnion _o)
    {
        switch (_o.Type)
        {
        default: return(0);

        case Gadget.FallingTub: return(FallingTub.Pack(builder, _o.AsFallingTub()).Value);

        case Gadget.HandFan: return(HandFan.Pack(builder, _o.AsHandFan()).Value);
        }
    }
    public GadgetUnion ReadJson(Newtonsoft.Json.JsonReader reader, GadgetUnion _o, Newtonsoft.Json.JsonSerializer serializer)
    {
        if (_o == null)
        {
            return(null);
        }
        switch (_o.Type)
        {
        default: break;

        case Gadget.FallingTub: _o.Value = serializer.Deserialize <FallingTubT>(reader); break;

        case Gadget.HandFan: _o.Value = serializer.Deserialize <HandFanT>(reader); break;
        }
        return(_o);
    }