예제 #1
0
        /// <summary>
        /// Accepts a visitor at the deck.
        /// </summary>
        /// <param name="visitor">The visitor to this deck.</param>
        void IDeckVisitable <TElement> .Accept(IDeckVisitor <TElement> visitor)
        {
            visitor.Visit(this);

            var me = (IDeckInternal <TElement>) this;

            visitor.Visit(me.DrawPileStack);
            visitor.Visit(me.DiscardPileStack);
            visitor.Visit(me.TableStack);
            visitor.Visit(me.TableauStack);
            visitor.Visit(Hands);
            foreach (IHandInternal <TElement> hand in Hands)
            {
                visitor.Visit(hand);
            }
        }
예제 #2
0
 /// <summary>
 /// Accepts a visitor at this stack.
 /// </summary>
 /// <param name="visitor">The visitor to accept.</param>
 void IDeckVisitable <TElement> .Accept(IDeckVisitor <TElement> visitor)
 {
 }
예제 #3
0
 /// <summary>
 /// Accepts a visitor at this table.
 /// </summary>
 /// <param name="visitor">The visitor to accept.</param>
 void IDeckVisitable <TElement> .Accept(IDeckVisitor <TElement> visitor)
 {
     visitor.Visit(this);
 }