getValueFromNode method
dynamic
getValueFromNode(
- Node node
Implementation
dynamic getValueFromNode(Node node) {
dynamic value = node.visitBy(this);
if (value is List) {
List<dynamic> arr = [];
value.forEach((element) {
if (element is Node) {
arr.add(getValueFromNode(element));
} else {
arr.add(element);
}
});
//we must not assign the array to a new array as it will be disconnected from the original.
//Take the nested array case when you are changing value within the nested array.
//see 2darrayissue in unit tests
//value = arr;
for (int i = 0; i < value.length; i++) {
value[i] = arr[i];
}
} else if (value is Name) {
value = getValue(value);
} else if (node is ThisExpression) {
value = getValueFromString(value);
}
return value;
}