# File lib/dig_rb/ostruct.rb, line 13
    def dig(name, *args)
      begin
        name = name.to_sym
      rescue NoMethodError
        raise TypeError, "#{name} is not a symbol nor a string"
      end
      return nil unless self.respond_to?(name)
      value = self.send(name)
      return value if args.length == 0 || value.nil?
      DigRb.guard_dig(value)
      value.dig(*args)
    end