docs: protected Boolean _hasSideEffects(XBlockExpression expression, ISideEffectContext context) {
  		final List<XExpression> exprs = expression.getExpressions();
  		if (exprs != null && !exprs.isEmpty()) {
  			context.open();
  			for (final XExpression ex : exprs) {
  				if (hasSideEffects(ex, context)) {
  					return true;
  				}
  			}
  			context.close();
  		}
  		return false;
  	}