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;
}