isUsedAsMutable method
Implementation
bool isUsedAsMutable(TransactionBlockDataBuilder transactionData, int index) {
var usedAsMutable = false;
transactionData.getInputUses(index, (arg, tx) {
if (tx["MoveCall"]?["_argumentTypes"] != null) {
final arguments = tx["MoveCall"]["arguments"].toList();
final argIndex =
arguments.indexWhere((element) => DeepCollectionEquality().equals(element, arg));
if (argIndex != -1) {
usedAsMutable = tx["MoveCall"]["_argumentTypes"][argIndex]["ref"] != '&' || usedAsMutable;
}
} else if (tx["MakeMoveVec"] != null ||
tx["MergeCoins"] == null ||
tx["SplitCoins"] == null) {
usedAsMutable = true;
}
});
return usedAsMutable;
}