Exemplo n.º 1
0
        public static async System.Threading.Tasks.Task <R> MatchAsync <R>(this PostNewQuestionResult self, System.Func <QuestionPosted, System.Threading.Tasks.Task <R> > whenQuestionPosted, System.Func <QuestionNotPosted, System.Threading.Tasks.Task <R> > whenQuestionNotPosted, System.Func <QuestionValidationFailed, System.Threading.Tasks.Task <R> > whenQuestionValidationFailed)
        {
            switch ((self))
            {
            case QuestionPosted questionposted:
                return(await whenQuestionPosted(questionposted));

            case QuestionNotPosted questionnotposted:
                return(await whenQuestionNotPosted(questionnotposted));

            case QuestionValidationFailed questionvalidationfailed:
                return(await whenQuestionValidationFailed(questionvalidationfailed));

            default:
                throw new System.NotSupportedException("This switch statement should be exhaustive");
            }
        }
Exemplo n.º 2
0
        public static PostNewQuestionResult Match(this PostNewQuestionResult self, System.Func <QuestionPosted, PostNewQuestionResult> whenQuestionPosted, System.Func <QuestionNotPosted, PostNewQuestionResult> whenQuestionNotPosted, System.Func <QuestionValidationFailed, PostNewQuestionResult> whenQuestionValidationFailed)
        {
            switch ((self))
            {
            case QuestionPosted questionposted:
                return(whenQuestionPosted(questionposted));

            case QuestionNotPosted questionnotposted:
                return(whenQuestionNotPosted(questionnotposted));

            case QuestionValidationFailed questionvalidationfailed:
                return(whenQuestionValidationFailed(questionvalidationfailed));

            default:
                throw new System.NotSupportedException("This switch statement should be exhaustive");
            }
        }