class Tapioca::Dsl::Compilers::ActiveRecordAssociations

def populate_associations(mod)

def populate_associations(mod)
  constant.reflections.each do |association_name, reflection|
    if reflection.collection?
      populate_collection_assoc_getter_setter(mod, association_name, reflection)
    else
      populate_single_assoc_getter_setter(mod, association_name, reflection)
    end
  rescue SourceReflectionError
    add_error(<<~MSG.strip)
      Cannot generate association `#{reflection.name}` on `#{constant}` since the source of the through association is missing.
    MSG
  rescue MissingConstantError => error
    add_error(<<~MSG.strip)
      Cannot generate association `#{declaration(reflection)}` on `#{constant}` since the constant `#{error.class_name}` does not exist.
    MSG
  end
end