According to the documentation unset attributes of Struct are set to nil:
nil
unset parameters default to nil.
Is it po
Just add another variation:
class Result < Struct.new(:success, :errors) def initialize(*) super self.errors ||= [] end end