public static Selector getSelector ( MutableCallSite callSite , Class sender , String methodName , int callID , boolean safeNavigation , boolean thisCall , boolean spreadCall , Object [ ] arguments ) { CALL_TYPES callType = CALL_TYPES_VALUES [ callID ] ; switch ( callType ) { case INIT : return new InitSelector ( callSite , sender , methodName , callType , safeNavigation , thisCall , spreadCall , arguments ) ; case METHOD : return new MethodSelector ( callSite , sender , methodName , callType , safeNavigation , thisCall , spreadCall , arguments ) ; case GET : return new PropertySelector ( callSite , sender , methodName , callType , safeNavigation , thisCall , spreadCall , arguments ) ; case SET : throw new GroovyBugError ( "your call tried to do a property set, which is not supported." ) ; case CAST : return new CastSelector ( callSite , arguments ) ; default : throw new GroovyBugError ( "unexpected call type" ) ; } }
Returns the Selector