reviewboard.diffviewer.opcode_generator¶
- class MoveRange(start, end, groups=[])[source]¶
Bases:
object
Stores information on a move range.
This will store the start and end of the range, and all groups that are a part of it.
- class DiffOpcodeGenerator(differ, diff=None, interdiff=None, request=None, **kwargs)[source]¶
Bases:
object
- __init__(differ, diff=None, interdiff=None, request=None, **kwargs)[source]¶
Initialize the opcode generator.
Changed in version 3.0.18: Added the
request
and**kwargs
parameters.- Parameters:
differ (
reviewboard.diffviewer.differ.Differ
) – The differ being used to generate the diff.diff (
bytes
, optional) – The raw contents for the diff.interdiff (
bytes
, optional) – The raw contents for the diff on the other end of an interdiff range, if generating an interdiff.request (
django.http.HttpRequest
) – The HTTP request from the client.**kwargs (
dict
) – Additional keyword arguments, for future expansion.
- __iter__()[source]¶
Returns opcodes from the differ with extra metadata.
This is a wrapper around a differ’s get_opcodes function, which returns extra metadata along with each range. That metadata includes information on moved blocks of code and whitespace-only lines.
This returns a list of opcodes as tuples in the form of (tag, i1, i2, j1, j2, meta).
- get_diff_opcode_generator_class()[source]¶
Returns the DiffOpcodeGenerator class used for generating opcodes.