TransformCode: A Contrastive Learning Framework for Code Embedding via Subtree Transformation