This method is internal and should be `#:nodoc:`ed.