processScript method
Implementation
dynamic processScript(String data, List<int> script) {
List<dynamic> radScript = cborToRad(script);
RadString root = RadString(data);
List<dynamic> opStack = [];
opStack.add([root.runtimeType.toString(), root]);
if (radScript[0] == OP.STRING_PARSE_JSON_MAP) {
opStack.add(['RadonMap', RadMap.fromJson(json.decode(data))]);
}
for (int i = 1; i < radScript.length; i++) {
var lastOp = opStack.last[1];
var _op = radScript[i];
var currentOp;
if (_op.runtimeType == int) {
currentOp = lastOp.op(_op);
} else {
currentOp = lastOp.op(_op[0], _op[1]);
}
opStack.add([currentOp.runtimeType.toString(), currentOp]);
}
return {'trace': opStack, 'script': radScript};
}