Maybe self._hooks to discourage using this from the outside?