def _classify_segment(self, address, length):
        """Determine how a new data segment fits into our existing world

        Params:
            address (int): The address we wish to classify
            length (int): The length of the segment

        Returns:
            int: One of SparseMemoryMap.prepended
        """

        end_address = address + length - 1

        _, start_seg = self._find_address(address)
        _, end_seg = self._find_address(end_address)

        if start_seg is not None or end_seg is not None:
            raise ArgumentError("Overlapping segments are not yet supported", address=address, length=length)

        return DisjointSegment()
Determine how a new data segment fits into our existing world

        Params:
            address (int): The address we wish to classify
            length (int): The length of the segment

        Returns:
            int: One of SparseMemoryMap.prepended