benchmarkstt.diff package¶
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#e7f2fa', 'lineColor': '#2980B9' }}}%%
classDiagram
Differ
class Differ {
<<abstract>>
+get_opcodes()
a
b
}
Responsible for calculating differences.
-
class
benchmarkstt.diff.
Differ
(a, b)[source]¶ Bases:
abc.ABC
-
abstract
get_opcodes
()[source]¶ Return list of 5-tuples describing how to turn a into b.
Each tuple is of the form (tag, i1, i2, j1, j2). The first tuple has i1 == j1 == 0, and remaining tuples have i1 equals the i2 from the tuple preceding it, and likewise for j1 equals the previous j2.
The tags are strings, with these meanings:
'replace': a[i1:i2] should be replaced by b[j1:j2]
'delete': a[i1:i2] should be deleted. Note that j1==j2 in this case.
'insert': b[j1:j2] should be inserted at a[i1:i1]. Note that i1==i2 in this case.
'equal': a[i1:i2] == b[j1:j2]
-
abstract