**fig4_56.txt** /* 1*/ // Splay returns zero only if the node to splay is NULL. /* 2*/ template /* 3*/ int /* 4*/ Splay_Tree:: /* 5*/ Splay( Splay_Node * const Current ) /* 6*/ { /* 7*/ Splay_Node *The_Parent; /* 8*/ if( Current == NULL ) /* 9*/ return 0; /*10*/ while( ( The_Parent = Current->Parent ) != NULL ) /*11*/ if( The_Parent->Parent ) /*12*/ Current->Double_Rotate( ); /*13*/ else /*14*/ Current->Single_Rotate( ); /*15*/ return 1; /*16*/ }