visitIndex method
dynamic
visitIndex(
- IndexExpression node, {
- bool computeAsPattern = false,
})
Implementation
@override
visitIndex(IndexExpression node, {bool computeAsPattern = false}) {
dynamic val;
try {
if (node.optional) {
final obj = getValueFromExpression(node.object);
if (_isNullish(obj)) return computeAsPattern ? null : jsUndefined;
final property = getValueFromExpression(node.property);
return _getObjectPropertyValue(obj, property,
computeAsPattern: computeAsPattern);
}
val = visitObjectPropertyExpression(
node.object, getValueFromExpression(node.property),
computeAsPattern: computeAsPattern);
} on InvalidPropertyException {
//ignore since obj['prop'] is fine even when prop does not exist. We just return null in that case
}
return val;
}