public object Evaluate( EventBean[] eventsPerStream, bool isNewData, ExprEvaluatorContext context) { EventBean @event = eventsPerStream[forge.StreamNum]; if (@event == null) { return null; } object index = exprEvaluator.Evaluate(eventsPerStream, isNewData, context); if (index == null || !index.IsInt()) { Log.Warn(forge.GetWarningText("integer", index)); return null; } return forge.IndexedGetter.Get(@event, index.AsInt32()); }
public object Evaluate( EventBean[] eventsPerStream, bool isNewData, ExprEvaluatorContext context) { var @event = eventsPerStream[forge.StreamNum]; if (@event == null) { return null; } var result = exprEvaluator.Evaluate(eventsPerStream, isNewData, context); if (result != null && !(result is string)) { Log.Warn(forge.GetWarningText("string", result)); return null; } return forge.MappedGetter.Get(@event, (string) result); }