Lines Matching refs:Args
150 template <typename ...Args> \
152 void ExecuteCallback(JNIEnv* jnienv, Args... args) const { \
155 DoExecute(jnienv, args...); \
159 template <typename ...Args> \
161 void ExecuteCallback(Args... args) const { \
164 DoExecute(args...); \
169 template <typename ...Args> \
171 inline void DoExecute(Args... args) const { \
172 static_assert(std::is_same<EventFnType, void(*)(jvmtiEnv*, Args...)>::value, \
174 fn_(env_, args...); \
190 template <ArtJvmtiEvent kEvent, typename ...Args>
192 Args... args) const {
196 if (ShouldDispatch<kEvent>(env, thread, args...)) {
267 // Our goal for DispatchEvent: Do not allow implicit type conversion. Types of ...args must match
270 template <ArtJvmtiEvent kEvent, typename ...Args>
271 inline void EventHandler::DispatchEvent(art::Thread* thread, Args... args) const {
275 std::tuple_element_t<0, std::tuple<Args..., nullptr_t>>>>::value,
278 std::vector<impl::EventHandlerFunc<kEvent>> events = CollectEvents<kEvent>(thread, args...);
280 ExecuteCallback<kEvent>(event, args...);
284 template <ArtJvmtiEvent kEvent, typename ...Args>
285 inline void EventHandler::DispatchEvent(art::Thread* thread, JNIEnv* jnienv, Args... args) const {
289 args...);
291 ExecuteCallback<kEvent>(event, jnienv, args...);
295 template <ArtJvmtiEvent kEvent, typename ...Args>
297 ArtJvmTiEnv* env, art::Thread* thread, JNIEnv* jnienv, Args... args) const {
299 if (ShouldDispatch<kEvent, JNIEnv*, Args...>(env, thread, jnienv, args...)) {
302 ExecuteCallback<kEvent>(func, jnienv, args...);
306 template <ArtJvmtiEvent kEvent, typename ...Args>
308 ArtJvmTiEnv* env, art::Thread* thread, Args... args) const {
311 std::tuple_element_t<0, std::tuple<Args..., nullptr_t>>>>::value,
314 if (ShouldDispatch<kEvent, Args...>(env, thread, args...)) {
317 ExecuteCallback<kEvent>(func, args...);
321 template <ArtJvmtiEvent kEvent, typename ...Args>
322 inline void EventHandler::ExecuteCallback(impl::EventHandlerFunc<kEvent> handler, Args... args) {
323 handler.ExecuteCallback(args...);
326 template <ArtJvmtiEvent kEvent, typename ...Args>
329 Args... args) {
330 handler.ExecuteCallback(jnienv, args...);
583 template <ArtJvmtiEvent kEvent, typename ...Args>
586 Args... args ATTRIBUTE_UNUSED) const {
588 void(*)(jvmtiEnv*, Args...)>::value,