def length_change(self, on_error_raise=True):
try:<EOL><INDENT>ilen = self.pos._length()<EOL>(del_len, ins_len) = self.edit._del_ins_lengths(ilen)<EOL>return ins_len - del_len<EOL><DEDENT>except HGVSUnsupportedOperationError:<EOL><INDENT>if on_error_raise:<EOL><INDENT>raise<EOL><DEDENT>return None<EOL><DEDENT>
Returns the net length change for this posedit.

        The method for computing the net length change depends on the
        type of variant (dup, del, ins, etc).  The length_change
        method hides this complexity from callers.

        :param hgvs.posedit.PosEdit self: a PosEdit instance
        :param bool on_error_raise: whether to raise an exception on errors 

        :returns: A signed int for the net change in length.  Negative \
        values imply net deletions, 0 implies a balanced insertion and \
        deletion (e.g., SNV), and positive values imply a net \
        insertion.

        :raises HGVSUnsupportedOperationError: When determining the \
        length for this variant type is ill-defined or unsupported.

        There are many circumstances in which the net length change
        cannot be determined, is ill-defined, or is unsupported.  In
        these cases, the result depends on the value of
        `on_error_raise`: when `on_error_raise` is True, an exception
        is raised; when False, the exception is caught and `None` is
        returned.  Callers might wish to pass `on_error_raise=False`
        in list comprehensions to avoid dealing with exceptions.