Called after parsing title and target text, and creating the reference
        node. Alter the reference node and return it with chapel module and
        class information, if relevant.

def process_link(self, env, refnode, has_explicit_title, title, target):
        """Called after parsing title and target text, and creating the reference
        node. Alter the reference node and return it with chapel module and
        class information, if relevant.
        """
        refnode['chpl:module'] = env.temp_data.get('chpl:module')
        refnode['chpl:class'] = env.temp_data.get('chpl:class')
        if not has_explicit_title:
            # Only has a meaning for the target.
            title = title.lstrip('.')

            # Only has a meaning for the title.
            target = target.lstrip('~')

            if title[0:1] == '~':
                title = title[1:]
                dot = title.rfind('.')
                if dot != -1:
                    title = title[dot+1:]

        # IF the first character is a dot, search more specific names
        # first. Else, search builtins first.
        if target[0:1] == '.':
            target = target[1:]
            refnode['refspecific'] = True

        return title, target