Example #1
0
        public ResultType GetResult(bool hypothetical = false)
        {
            checkProducer.ProduceCheck(this);
            dcProducer.ProduceDcInCheck(this);
            ResultType ret = ResultType.FAILURE;

            if (!hypothetical)
            {
                checkProducer.AboutToResolveCheck(this);
                dcProducer.AboutToResolveDcInCheck(this);

                ret = CalculateResult(checkValue, DC);

                checkProducer.DidResolveCheck(this);
                dcProducer.DidResolveDcInCheck(this);
            }

            return(ret);
        }