I have a problem with access control. Here's what I want to do:

I'm writing a class C that needs support of a helper class H. 
Because H is used only in the context of C, I defined H as an inner 
class of C, so it's named C::H.

  class C
    class H
    end
  end

Users of class C also should have access to instances of C::H.

The problem is: some methods of C::H should only be accessible 
to methods of C, but not to the users of C and C::H.

I could not find a solution yet. How would you do this?

TIA
Pit