/// <summary> /// 新增一個單元運算子 /// </summary> /// <param name="unary">單元運算子</param> /// <returns>單元運算子響應</returns> public FrameUpdate AddUnary(char unary) { Feature CurrentFeature = Feature.UNARY; return(ThrowOrderException <FrameUpdate>(CurrentFeature, () => { FrameUpdate frameUpdate; //如果單元連按會有迭代的表現方式 if (PreviousFeature == Feature.UNARY) { frameUpdate = NumberMachine.AddUnaryCombo(unary); } else { //非迭代的case frameUpdate = NumberMachine.AddUnary(unary); } //執行成功時記錄下這次的Cast PreviousFeature = Feature.UNARY; return frameUpdate; })); }
/// <summary> /// 新增一個單元運算子 /// </summary> /// <param name="unary">單元運算子</param> /// <returns>單元運算子響應</returns> public UnaryUpdate AddUnary(char unary) { Feature CurrentCast = Feature.UNARY; return(CheckOrder <UnaryUpdate>(CurrentCast, () => { UnaryUpdate successResponse; //如果單元連按會有迭代的表現方式 if (PreviousCast == Feature.UNARY) { successResponse = NumberMachine.AddUnaryCombo(unary); } else { //非迭代的case successResponse = NumberMachine.AddUnary(unary); } //執行成功時記錄下這次的Cast PreviousCast = Feature.UNARY; return successResponse; })); }