ClrPlus.Scripting.Languages.PropertySheetV3.Mapping.View.AcceptFirstAnswer C# (CSharp) Метод

AcceptFirstAnswer() приватный Метод

private AcceptFirstAnswer ( GetMacroValueDelegate getMacroDelegate, string innerMacro, IValueContext originalContext ) : IEnumerable
getMacroDelegate GetMacroValueDelegate
innerMacro string
originalContext IValueContext
Результат IEnumerable
        private IEnumerable<string> AcceptFirstAnswer(GetMacroValueDelegate getMacroDelegate, string innerMacro, IValueContext originalContext)
        {
            if(getMacroDelegate == null) {
                return null;
            }
            var delegates = getMacroDelegate.GetInvocationList();
            return delegates.Count() > 1 ? delegates.Reverse().Select(each => AcceptFirstAnswer(each as GetMacroValueDelegate, innerMacro, originalContext)).FirstOrDefault(each => each != null) : getMacroDelegate(innerMacro, originalContext);
        }