Package org.jruby.runtime.profile
Interface MethodEnhancer
public interface MethodEnhancer
Implementations of this interface will be used to enhance methods with profiling information/ callbacks.
TODO This can be moved, I think it's also useful outside the profile package.
- Author:
- Andre Kullmann
-
Method Summary
Modifier and TypeMethodDescriptionenhance
(String id, DynamicMethod delegate) Will be called with a method which should be enhanced.
-
Method Details
-
enhance
Will be called with a method which should be enhanced. e.g. with information or callback invocations required by the profiling. In most cases you don't want to profile all methods, just the methods of your own code. So you can add a simple filter hereif( isMyCode( delegate ) ) { return new ProfilingDynamicMethod( delegate ); } else { return delegate; }
- Parameters:
id
- the name of the given delegatedelegate
- the method to enhance- Returns:
- the enhanced method. if nothing is to be done, the delegate itself can be returned
-