TestEnhancer |  | 0% |  | 0% | 99 | 99 | 606 | 606 | 65 | 65 | 1 | 1 |
Enhancer |   | 70% |   | 41% | 102 | 148 | 144 | 521 | 21 | 58 | 0 | 1 |
TestMixin |  | 0% |  | 0% | 22 | 22 | 74 | 74 | 15 | 15 | 1 | 1 |
TestProxy |  | 0% |  | 0% | 14 | 14 | 64 | 64 | 12 | 12 | 1 | 1 |
Mixin.Generator |  | 0% |  | 0% | 25 | 25 | 43 | 43 | 11 | 11 | 1 | 1 |
CallbackHelper |  | 0% |  | 0% | 19 | 19 | 40 | 40 | 6 | 6 | 1 | 1 |
MixinEmitter |  | 0% |  | 0% | 9 | 9 | 41 | 41 | 4 | 4 | 1 | 1 |
TestProxyRefDispatcher |  | 0% | | n/a | 6 | 6 | 26 | 26 | 6 | 6 | 1 | 1 |
LazyLoaderGenerator |  | 9% |  | 0% | 6 | 8 | 40 | 46 | 3 | 5 | 0 | 1 |
TestInterfaceMaker |  | 0% |  | 0% | 12 | 12 | 27 | 27 | 7 | 7 | 1 | 1 |
InterfaceMaker |  | 0% |  | 0% | 13 | 13 | 31 | 31 | 10 | 10 | 1 | 1 |
TestDispatcher |  | 0% | | n/a | 6 | 6 | 19 | 19 | 6 | 6 | 1 | 1 |
Proxy |  | 0% |  | 0% | 7 | 7 | 22 | 22 | 6 | 6 | 1 | 1 |
MethodProxy |   | 57% |   | 50% | 9 | 15 | 27 | 58 | 7 | 12 | 0 | 1 |
Mixin.Route |  | 0% |  | 0% | 5 | 5 | 22 | 22 | 1 | 1 | 1 | 1 |
InvocationHandlerGenerator |  | 18% |  | 0% | 4 | 6 | 24 | 34 | 2 | 4 | 0 | 1 |
Source |  | 0% | | n/a | 23 | 23 | 36 | 36 | 23 | 23 | 1 | 1 |
Mixin |  | 0% |  | 0% | 9 | 9 | 23 | 23 | 8 | 8 | 1 | 1 |
Enhancer.new CallbackGenerator.Context() {...} |   | 45% |   | 16% | 8 | 14 | 22 | 35 | 2 | 8 | 0 | 1 |
TestInterceptor |  | 0% |  | 0% | 9 | 9 | 22 | 22 | 6 | 6 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} |  | 0% |  | 0% | 6 | 6 | 11 | 11 | 3 | 3 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} |  | 0% |  | 0% | 6 | 6 | 11 | 11 | 3 | 3 | 1 | 1 |
DispatcherGenerator |   | 34% |  | 0% | 5 | 7 | 17 | 30 | 2 | 4 | 0 | 1 |
MixinEverythingEmitter |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 3 | 3 | 1 | 1 |
CallbackInfo |   | 78% |   | 72% | 7 | 21 | 9 | 42 | 2 | 10 | 0 | 1 |
BridgeMethodResolver.BridgedFinder.new MethodVisitor() {...} |  | 0% |  | 0% | 7 | 7 | 7 | 7 | 2 | 2 | 1 | 1 |
BridgeMethodResolver |  | 35% |  | 25% | 2 | 4 | 11 | 18 | 0 | 2 | 0 | 1 |
NoOpGenerator |  | 16% |  | 0% | 6 | 8 | 13 | 15 | 2 | 4 | 0 | 1 |
Enhancer.EnhancerFactoryData |   | 57% |   | 33% | 3 | 6 | 10 | 25 | 0 | 3 | 0 | 1 |
TestEnhancer.Interceptor |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 3 | 3 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 2 | 2 | 1 | 1 |
BridgeMethodResolver.BridgedFinder |  | 0% |  | 0% | 4 | 4 | 11 | 11 | 3 | 3 | 1 | 1 |
TestProxy.SimpleInvocationHandler |  | 0% | | n/a | 2 | 2 | 8 | 8 | 2 | 2 | 1 | 1 |
TestEnhancer.new TestInterceptor() {...} |  | 0% |  | 0% | 6 | 6 | 9 | 9 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 2 | 2 | 1 | 1 |
TestLazyLoader |  | 0% | | n/a | 6 | 6 | 11 | 11 | 6 | 6 | 1 | 1 |
Proxy.new CallbackFilter() {...} |  | 0% |  | 0% | 6 | 6 | 8 | 8 | 2 | 2 | 1 | 1 |
TestEnhancer.EqualsInterceptor |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 4 | 4 | 1 | 1 |
TestEnhancer.new NamingPolicy() {...} |  | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 2 | 2 | 1 | 1 |
TestProxy.new InvocationHandler() {...} |  | 0% |  | 0% | 4 | 4 | 4 | 4 | 2 | 2 | 1 | 1 |
TestNoOp |  | 0% | | n/a | 6 | 6 | 10 | 10 | 6 | 6 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% |  | 0% | 3 | 3 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.TestFilter | | 0% |  | 0% | 6 | 6 | 6 | 6 | 4 | 4 | 1 | 1 |
TestProxyRefDispatcher.new ProxyRefDispatcher() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
TestProxyRefDispatcher.new ProxyRefDispatcher() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
EA | | 0% | | n/a | 8 | 8 | 10 | 10 | 8 | 8 | 1 | 1 |
TestEnhancer.new InvocationHandler() {...} | | 0% |  | 0% | 4 | 4 | 5 | 5 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
Enhancer.new ObjectSwitchCallback() {...} |  | 69% | | 50% | 1 | 4 | 4 | 13 | 0 | 3 | 0 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% |  | 0% | 3 | 3 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% |  | 0% | 3 | 3 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% |  | 0% | 4 | 4 | 3 | 3 | 2 | 2 | 1 | 1 |
EC1 | | 0% | | n/a | 5 | 5 | 7 | 7 | 5 | 5 | 1 | 1 |
TestEnhancer.new Thread() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
ED | | 0% | | n/a | 5 | 5 | 7 | 7 | 5 | 5 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
TestProxyRefDispatcher.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.DelegateInterceptor | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
MixinBeanEmitter | | 0% | | n/a | 3 | 3 | 4 | 4 | 3 | 3 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.24.new FixedValue() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackHelper() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new Dispatcher() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new Dispatcher() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% |  | 0% | 3 | 3 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% | | n/a | 4 | 4 | 4 | 4 | 4 | 4 | 1 | 1 |
TestEnhancer.CastTestInterceptor | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestLazyLoader.new LazyLoader() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new DefaultNamingPolicy() {...} | | 0% | | n/a | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 1 |
EB | | 0% | | n/a | 4 | 4 | 5 | 5 | 4 | 4 | 1 | 1 |
TestProxy.new InvocationHandler() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestProxy.new InvocationHandler() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestProxy.new InvocationHandler() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
DBean3 | | 0% | | n/a | 3 | 3 | 4 | 4 | 3 | 3 | 1 | 1 |
TestEnhancer.Superclass | | 0% | | n/a | 5 | 5 | 5 | 5 | 5 | 5 | 1 | 1 |
EC2 | | 0% | | n/a | 3 | 3 | 4 | 4 | 3 | 3 | 1 | 1 |
EnhancerITCase | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.StringValue | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
TestEnhancer.ConstructorCall | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
ArgInit | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
D4 | | 0% | | n/a | 4 | 4 | 4 | 4 | 4 | 4 | 1 | 1 |
TestProxyRefDispatcher.new TestProxyRefDispatcher.Bar() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestProxyRefDispatcher.new TestProxyRefDispatcher.Foo() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestProxyRefDispatcher.new TestProxyRefDispatcher.Foo() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestInterfaceMaker.new MethodInterceptor() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new NamingPolicy() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new MethodInterceptor() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new NamingPolicy() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new DI1() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new FixedValue() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new TestDispatcher.Foo() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.new CallbackFilter() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new TestDispatcher.Bar() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestDispatcher.new TestDispatcher.Foo() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
MethodInterceptorGenerator |  | 98% |  | 91% | 1 | 14 | 1 | 126 | 0 | 8 | 0 | 1 |
TestEnhancer.AroundDemo | | 0% | | n/a | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 1 |
DBean1 | | 0% | | n/a | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 1 |
TestEnhancer.ReverseImpl | | 0% | | n/a | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 1 |
TestProxy.FakeProxy | | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
UndeclaredThrowableException | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.new ClassLoader() {...} | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Enhancer.new Transformer() {...} |  | 84% | | 50% | 1 | 3 | 1 | 7 | 0 | 2 | 0 | 1 |
TestEnhancer.new ClassLoader() {...} | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.TestCloneImpl | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
D5 | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.ReverseSuper | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
DBean2 | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.Impl | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.AbstractMethodCallInConstructor | | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 1 | 1 |
NoOp | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestNoOp.Foo | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.Signature | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
D2 | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
D1 | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
D3 | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.FinalB | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
Proxy.ProxyImpl | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |
TestEnhancer.PackageViz | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
TestEnhancer.ErasedType | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.Foo | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.MethDecImpl | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.NamingPolicyDummy | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
NoOp.new NoOp() {...} | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.PublicViz | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Source.UndeclaredException | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Source.CheckedException | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.Concrete | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.Refined | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.RetType | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestEnhancer.CastTest | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TestProxy.ReturnNullHandler | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
FixedValueGenerator |  | 100% |  | 100% | 0 | 5 | 0 | 17 | 0 | 4 | 0 | 1 |
Enhancer.new ProcessSwitchCallback() {...} |  | 100% | | n/a | 0 | 3 | 0 | 8 | 0 | 3 | 0 | 1 |
MethodInterceptorGenerator.new ObjectSwitchCallback() {...} |  | 100% | | n/a | 0 | 3 | 0 | 7 | 0 | 3 | 0 | 1 |
Enhancer.new ProcessSwitchCallback() {...} |  | 100% | | n/a | 0 | 3 | 0 | 7 | 0 | 3 | 0 | 1 |
MethodProxy.CreateInfo |  | 100% | | 50% | 1 | 2 | 0 | 9 | 0 | 1 | 0 | 1 |
MethodInterceptorGenerator.new Transformer() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
Enhancer.new CallbackFilter() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |