def _get_next_line_indent_delta(self, newline_token):
assert newline_token.type == '<STR_LIT>','<STR_LIT>'<EOL>next_line_pos = newline_token.lexpos + len(newline_token.value)<EOL>if next_line_pos == len(newline_token.lexer.lexdata):<EOL><INDENT>return None<EOL><DEDENT>line = newline_token.lexer.lexdata[next_line_pos:].split(os.linesep, <NUM_LIT:1>)[<NUM_LIT:0>]<EOL>if not line:<EOL><INDENT>return None<EOL><DEDENT>lstripped_line = line.lstrip()<EOL>lstripped_line_length = len(lstripped_line)<EOL>if lstripped_line_length == <NUM_LIT:0>:<EOL><INDENT>return None<EOL><DEDENT>if lstripped_line[<NUM_LIT:0>] == '<STR_LIT:#>':<EOL><INDENT>return None<EOL><DEDENT>indent = len(line) - lstripped_line_length<EOL>if indent % <NUM_LIT:4> > <NUM_LIT:0>:<EOL><INDENT>self.errors.append(<EOL>('<STR_LIT>', newline_token.lexer.lineno))<EOL>return None<EOL><DEDENT>indent_delta = indent - _indent_level_to_spaces_count(self.cur_indent)<EOL>return indent_delta // <NUM_LIT:4><EOL>
Returns the change in indentation. The return units are in
indentations rather than spaces/tabs.

If the next line's indent isn't relevant (e.g. it's a comment),
returns None. Since the return value might be 0, the caller should
explicitly check the return type, rather than rely on truthiness.