public Atom rewriteWithTypeVariable ( Atom parentAtom ) { if ( parentAtom . getPredicateVariable ( ) . isReturned ( ) && ! this . getPredicateVariable ( ) . isReturned ( ) && this . getClass ( ) == parentAtom . getClass ( ) ) { return rewriteWithTypeVariable ( ) ; } return this ; }
rewrites the atom to user - defined type variable