     """
 
     @type t :: %Union{name: String.t, fields: %{String.t => %Field{}}}
+
+    @enforce_keys [:name, :fields]
     defstruct name: nil, fields: %{}
 
     import Thrift.Parser.Conversions


    @type enum_value :: bitstring | integer
    @type t :: %TEnum{name: String.t, values: %{String.t => enum_value}}
    defstruct name: nil, values: []

    import Thrift.Parser.Conversions

    """

    @type t :: %Exception{name: String.t, fields: [%Field{}]}

    @enforce_keys [:name, :fields]
    defstruct fields: %{}, name: nil

    import Thrift.Parser.Conversions
