1# /* 2# * Copyright (C) 2015 The Android Open Source Project 3# * 4# * Licensed under the Apache License, Version 2.0 (the "License"); 5# * you may not use this file except in compliance with the License. 6# * You may obtain a copy of the License at 7# * 8# * http://www.apache.org/licenses/LICENSE-2.0 9# * 10# * Unless required by applicable law or agreed to in writing, software 11# * distributed under the License is distributed on an "AS IS" BASIS, 12# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# * See the License for the specific language governing permissions and 14# * limitations under the License. 15# */ 16# 17# // Methods are sorted in alphabetical order in dex file. We need 10 padding 18# // methods to ensure the 11'th target lines up to the same vtable slot as the 19# // first Subtype virtual method (the other 10 are the java/lang/Object; 20# // methods). 21# interface Iface { 22# public default void fakeMethod_A() {} 23# public default void fakeMethod_B() {} 24# public default void fakeMethod_C() {} 25# public default void fakeMethod_D() {} 26# public default void fakeMethod_E() {} 27# public default void fakeMethod_F() {} 28# public default void fakeMethod_G() {} 29# public default void fakeMethod_H() {} 30# public default void fakeMethod_I() {} 31# public default void fakeMethod_J() {} 32# public default void fakeMethod_K() {} 33# public default void fakeMethod_Target() {} 34# } 35 36.class public abstract interface LIface; 37 38.super Ljava/lang/Object; 39 40# // 1 41.method public fakeMethod_A()V 42 .locals 0 43 return-void 44.end method 45 46# // 2 47.method public fakeMethod_B()V 48 .locals 0 49 return-void 50.end method 51 52# // 3 53.method public fakeMethod_C()V 54 .locals 0 55 return-void 56.end method 57 58# // 4 59.method public fakeMethod_D()V 60 .locals 0 61 return-void 62.end method 63 64# // 5 65.method public fakeMethod_E()V 66 .locals 0 67 return-void 68.end method 69 70# // 5 71.method public fakeMethod_F()V 72 .locals 0 73 return-void 74.end method 75 76# // 6 77.method public fakeMethod_G()V 78 .locals 0 79 return-void 80.end method 81 82# // 7 83.method public fakeMethod_H()V 84 .locals 0 85 return-void 86.end method 87 88# // 8 89.method public fakeMethod_I()V 90 .locals 0 91 return-void 92.end method 93 94# // 9 95.method public fakeMethod_J()V 96 .locals 0 97 return-void 98.end method 99 100# // 10 101.method public fakeMethod_K()V 102 .locals 0 103 return-void 104.end method 105 106# // 11 107.method public fakeMethod_Target()V 108 .locals 0 109 return-void 110.end method 111