def update(self, text, revision=None):
        """
        Modifies the internal state based a change to the content and returns
        the sets of words added and removed.

        :Parameters:
            text : str
                The text content of a revision
            revision : `mixed`
                Revision metadata

        :Returns:
            A triple of lists:

            current_tokens : `list` ( :class:`~mwpersistence.Token` )
                A sequence of Tokens representing the revision that was just
                processed.
            tokens_added : `list` ( :class:`~mwpersistence.Token` )
                Tokens that were added while updating state.
            tokens_removed : `list` ( :class:`~mwpersistence.Token` )
                Tokens that were removed while updating state.
        """
        return self._update(text=text, revision=revision)