**Problem Statement:**
There is an integer array `nums` sorted in ascending order (with distinct values). Prior to being passed to your function, `nums` is possibly rotated. Given the array `nums` after the possible rotation and an integer `target`, return the index of `target` if it is in `nums`, or `-1` if it is not in `nums`.
**Hint / Expected Approach:**
Modified binary search with sorted half detection
**Edge Cases to Consider:**
- (1) Target not in array
- (2) No rotation
- (3) Array of one element