is AssociationProxy a subclass or a module of Association?

In the Rails documentation, it shows Association::AssociationProxy,
and I know that in ruby :: operator is a reference to a constant, and
a constant can either be a module or a class. So I ask because I'm
just curious how the two behave together. Thanks for response.