Ejemplo n.º 1
0
    public ProcessState MoveNext(Command command)
    {
        ProcessState nextState = GetNext(command);

        if (nextState.GetHashCode() == CurrentState.GetHashCode())
        {
            return(CurrentState);
        }

        CurrentState.Exit(this);

        CurrentState = GetNext(command);
        CurrentState.Enter(this);
        return(CurrentState);
    }
Ejemplo n.º 2
0
 public override int GetHashCode()
 {
     return(17 + 32 * CurrentState.GetHashCode() + 31 * Command.GetHashCode());
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 哈希数
 /// </summary>
 /// <returns></returns>
 public override int GetHashCode()
 {
     return(ProcessState.GetHashCode() * 5 + Message.GetHashCode() * 13);
 }
Ejemplo n.º 4
0
 public override int GetHashCode() => 19 + 32 *CurrentState.GetHashCode() + 32 *Transitions.GetHashCode();
Ejemplo n.º 5
0
 public override int GetHashCode()
 {
     return(CurrentState.GetHashCode() + Command.GetHashCode());
 }
Ejemplo n.º 6
0
 public override int GetHashCode()
 {
     return(17 + 31 * CurrentState.GetHashCode() + 31 * Condition.GetHashCode());
 }