def handle_nested_relation(self, line: str, position: int, tokens: ParseResults):
        """Handle nested statements.

        If :code:`allow_nested` is False, raises a ``NestedRelationWarning``.

        :raises: NestedRelationWarning
        """
        if not self.allow_nested:
            raise NestedRelationWarning(self.get_line_number(), line, position)

        self._handle_relation_harness(line, position, {
            SUBJECT: tokens[SUBJECT],
            RELATION: tokens[RELATION],
            OBJECT: tokens[OBJECT][SUBJECT],
        })

        self._handle_relation_harness(line, position, {
            SUBJECT: tokens[OBJECT][SUBJECT],
            RELATION: tokens[OBJECT][RELATION],
            OBJECT: tokens[OBJECT][OBJECT],
        })
        return tokens
def handle_nested_relation ( self , line : str , position : int , tokens : ParseResults ) : if not self . allow_nested : raise NestedRelationWarning ( self . get_line_number ( ) , line , position ) self . _handle_relation_harness ( line , position , { SUBJECT : tokens [ SUBJECT ] , RELATION : tokens [ RELATION ] , OBJECT : tokens [ OBJECT ] [ SUBJECT ] , } ) self . _handle_relation_harness ( line , position , { SUBJECT : tokens [ OBJECT ] [ SUBJECT ] , RELATION : tokens [ OBJECT ] [ RELATION ] , OBJECT : tokens [ OBJECT ] [ OBJECT ] , } ) return tokens
Handle nested statements.

        If :code:`allow_nested` is False, raises a ``NestedRelationWarning``.

        :raises: NestedRelationWarning