Python: implement ToString on mappings

This commit is contained in:
Rasmus Lerchedahl Petersen
2020-10-14 17:31:13 +02:00
parent dc7e7890f0
commit d2b90662a3

View File

@@ -372,13 +372,15 @@ private module ArgumentPassing {
abstract int getParamN(int argN);
/** Gets a textual representation of this element. */
string toString() { result = "ArgParamMapping" }
abstract string toString();
}
/** A mapping that passes argument `n` to parameter `n`. */
class NoShift extends ArgParamMapping, TNoShift {
NoShift() { this = TNoShift() }
override string toString() { result = "NoShift [n -> n]" }
bindingset[argN]
override int getParamN(int argN) { result = argN }
}
@@ -387,6 +389,8 @@ private module ArgumentPassing {
class ShiftOneUp extends ArgParamMapping, TShiftOneUp {
ShiftOneUp() { this = TShiftOneUp() }
override string toString() { result = "ShiftOneUp [n -> n+1]" }
bindingset[argN]
override int getParamN(int argN) { result = argN + 1 }
}