static TargetKind DecomposeTargetKind (string marker) { switch (marker [marker.Length - 1]) { case 'T': return TargetKind.Type; case 'M': return TargetKind.Method; default: throw new ArgumentException (); } }