1*f585d8a3SJacky Wang /* 2*f585d8a3SJacky Wang * Copyright (C) 2015 The Dagger Authors. 3*f585d8a3SJacky Wang * 4*f585d8a3SJacky Wang * Licensed under the Apache License, Version 2.0 (the "License"); 5*f585d8a3SJacky Wang * you may not use this file except in compliance with the License. 6*f585d8a3SJacky Wang * You may obtain a copy of the License at 7*f585d8a3SJacky Wang * 8*f585d8a3SJacky Wang * http://www.apache.org/licenses/LICENSE-2.0 9*f585d8a3SJacky Wang * 10*f585d8a3SJacky Wang * Unless required by applicable law or agreed to in writing, software 11*f585d8a3SJacky Wang * distributed under the License is distributed on an "AS IS" BASIS, 12*f585d8a3SJacky Wang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*f585d8a3SJacky Wang * See the License for the specific language governing permissions and 14*f585d8a3SJacky Wang * limitations under the License. 15*f585d8a3SJacky Wang */ 16*f585d8a3SJacky Wang 17*f585d8a3SJacky Wang package dagger.functional.basic; 18*f585d8a3SJacky Wang 19*f585d8a3SJacky Wang import dagger.Lazy; 20*f585d8a3SJacky Wang import dagger.MembersInjector; 21*f585d8a3SJacky Wang import javax.inject.Inject; 22*f585d8a3SJacky Wang import javax.inject.Provider; 23*f585d8a3SJacky Wang 24*f585d8a3SJacky Wang @SuppressWarnings("unused") 25*f585d8a3SJacky Wang final class InjectedThing { 26*f585d8a3SJacky Wang @Inject byte primitiveByte; 27*f585d8a3SJacky Wang @Inject char primitiveChar; 28*f585d8a3SJacky Wang @Inject short primitiveShort; 29*f585d8a3SJacky Wang @Inject int primitiveInt; 30*f585d8a3SJacky Wang @Inject long primitiveLong; 31*f585d8a3SJacky Wang @Inject boolean primitiveBoolean; 32*f585d8a3SJacky Wang @Inject float primitiveFloat; 33*f585d8a3SJacky Wang @Inject double primitiveDouble; 34*f585d8a3SJacky Wang 35*f585d8a3SJacky Wang @Inject Provider<Byte> byteProvider; 36*f585d8a3SJacky Wang @Inject Provider<Character> charProvider; 37*f585d8a3SJacky Wang @Inject Provider<Short> shortProvider; 38*f585d8a3SJacky Wang @Inject Provider<Integer> intProvider; 39*f585d8a3SJacky Wang @Inject Provider<Long> longProvider; 40*f585d8a3SJacky Wang @Inject Provider<Boolean> booleanProvider; 41*f585d8a3SJacky Wang @Inject Provider<Float> floatProvider; 42*f585d8a3SJacky Wang @Inject Provider<Double> doubleProvider; 43*f585d8a3SJacky Wang 44*f585d8a3SJacky Wang @Inject Lazy<Byte> lazyByte; 45*f585d8a3SJacky Wang @Inject Lazy<Character> lazyChar; 46*f585d8a3SJacky Wang @Inject Lazy<Short> lazyShort; 47*f585d8a3SJacky Wang @Inject Lazy<Integer> lazyInt; 48*f585d8a3SJacky Wang @Inject Lazy<Long> lazyLong; 49*f585d8a3SJacky Wang @Inject Lazy<Boolean> lazyBoolean; 50*f585d8a3SJacky Wang @Inject Lazy<Float> lazyFloat; 51*f585d8a3SJacky Wang @Inject Lazy<Double> lazyDouble; 52*f585d8a3SJacky Wang 53*f585d8a3SJacky Wang @Inject Byte boxedBype; 54*f585d8a3SJacky Wang @Inject Character boxedChar; 55*f585d8a3SJacky Wang @Inject Short boxedShort; 56*f585d8a3SJacky Wang @Inject Integer boxedInt; 57*f585d8a3SJacky Wang @Inject Long boxedLong; 58*f585d8a3SJacky Wang @Inject Boolean boxedBoolean; 59*f585d8a3SJacky Wang @Inject Float boxedFloat; 60*f585d8a3SJacky Wang @Inject Double boxedDouble; 61*f585d8a3SJacky Wang 62*f585d8a3SJacky Wang @Inject byte[] byteArray; 63*f585d8a3SJacky Wang @Inject char[] charArray; 64*f585d8a3SJacky Wang @Inject short[] shortArray; 65*f585d8a3SJacky Wang @Inject int[] intArray; 66*f585d8a3SJacky Wang @Inject long[] longArray; 67*f585d8a3SJacky Wang @Inject boolean[] booleanArray; 68*f585d8a3SJacky Wang @Inject float[] floatArray; 69*f585d8a3SJacky Wang @Inject double[] doubleArray; 70*f585d8a3SJacky Wang 71*f585d8a3SJacky Wang @Inject Provider<byte[]> byteArrayProvider; 72*f585d8a3SJacky Wang @Inject Provider<char[]> charArrayProvider; 73*f585d8a3SJacky Wang @Inject Provider<short[]> shortArrayProvider; 74*f585d8a3SJacky Wang @Inject Provider<int[]> intArrayProvider; 75*f585d8a3SJacky Wang @Inject Provider<long[]> longArrayProvider; 76*f585d8a3SJacky Wang @Inject Provider<boolean[]> booleanArrayProvider; 77*f585d8a3SJacky Wang @Inject Provider<float[]> floatArrayProvider; 78*f585d8a3SJacky Wang @Inject Provider<double[]> doubleArrayProvider; 79*f585d8a3SJacky Wang 80*f585d8a3SJacky Wang @Inject Lazy<byte[]> lazyByteArray; 81*f585d8a3SJacky Wang @Inject Lazy<char[]> lazyCharArray; 82*f585d8a3SJacky Wang @Inject Lazy<short[]> lazyShortArray; 83*f585d8a3SJacky Wang @Inject Lazy<int[]> lazyIntArray; 84*f585d8a3SJacky Wang @Inject Lazy<long[]> lazyLongArray; 85*f585d8a3SJacky Wang @Inject Lazy<boolean[]> lazyBooleanArray; 86*f585d8a3SJacky Wang @Inject Lazy<float[]> lazy; 87*f585d8a3SJacky Wang @Inject Lazy<double[]> lazyDoubleArray; 88*f585d8a3SJacky Wang 89*f585d8a3SJacky Wang @Inject Thing thing; 90*f585d8a3SJacky Wang @Inject Provider<Thing> thingProvider; 91*f585d8a3SJacky Wang @Inject Lazy<Thing> lazyThing; 92*f585d8a3SJacky Wang @Inject Provider<Lazy<Thing>> lazyThingProvider; 93*f585d8a3SJacky Wang @Inject MembersInjector<Thing> thingMembersInjector; 94*f585d8a3SJacky Wang InjectedThing( byte primitiveByte, char primitiveChar, short primitiveShort, int primitiveInt, long primitiveLong, boolean primitiveBoolean, float primitiveFloat, double primitiveDouble, Provider<Byte> byteProvider, Provider<Character> charProvider, Provider<Short> shortProvider, Provider<Integer> intProvider, Provider<Long> longProvider, Provider<Boolean> booleanProvider, Provider<Float> floatProvider, Provider<Double> doubleProvider, Lazy<Byte> lazyByte, Lazy<Character> lazyChar, Lazy<Short> lazyShort, Lazy<Integer> lazyInt, Lazy<Long> lazyLong, Lazy<Boolean> lazyBoolean, Lazy<Float> lazyFloat, Lazy<Double> lazyDouble, Byte boxedBype, Character boxedChar, Short boxedShort, Integer boxedInt, Long boxedLong, Boolean boxedBoolean, Float boxedFloat, Double boxedDouble, byte[] byteArray, char[] charArray, short[] shortArray, int[] intArray, long[] longArray, boolean[] booleanArray, float[] floatArray, double[] doubleArray, Provider<byte[]> byteArrayProvider, Provider<char[]> charArrayProvider, Provider<short[]> shortArrayProvider, Provider<int[]> intArrayProvider, Provider<long[]> longArrayProvider, Provider<boolean[]> booleanArrayProvider, Provider<float[]> floatArrayProvider, Provider<double[]> doubleArrayProvider, Lazy<byte[]> lazyByteArray, Lazy<char[]> lazyCharArray, Lazy<short[]> lazyShortArray, Lazy<int[]> lazyIntArray, Lazy<long[]> lazyLongArray, Lazy<boolean[]> lazyBooleanArray, Lazy<float[]> lazy, Lazy<double[]> lazyDoubleArray, Thing thing, Provider<Thing> thingProvider, Lazy<Thing> lazyThing, Provider<Lazy<Thing>> lazyThingProvider, MembersInjector<Thing> thingMembersInjector)95*f585d8a3SJacky Wang @Inject InjectedThing( 96*f585d8a3SJacky Wang byte primitiveByte, 97*f585d8a3SJacky Wang char primitiveChar, 98*f585d8a3SJacky Wang short primitiveShort, 99*f585d8a3SJacky Wang int primitiveInt, 100*f585d8a3SJacky Wang long primitiveLong, 101*f585d8a3SJacky Wang boolean primitiveBoolean, 102*f585d8a3SJacky Wang float primitiveFloat, 103*f585d8a3SJacky Wang double primitiveDouble, 104*f585d8a3SJacky Wang 105*f585d8a3SJacky Wang Provider<Byte> byteProvider, 106*f585d8a3SJacky Wang Provider<Character> charProvider, 107*f585d8a3SJacky Wang Provider<Short> shortProvider, 108*f585d8a3SJacky Wang Provider<Integer> intProvider, 109*f585d8a3SJacky Wang Provider<Long> longProvider, 110*f585d8a3SJacky Wang Provider<Boolean> booleanProvider, 111*f585d8a3SJacky Wang Provider<Float> floatProvider, 112*f585d8a3SJacky Wang Provider<Double> doubleProvider, 113*f585d8a3SJacky Wang 114*f585d8a3SJacky Wang Lazy<Byte> lazyByte, 115*f585d8a3SJacky Wang Lazy<Character> lazyChar, 116*f585d8a3SJacky Wang Lazy<Short> lazyShort, 117*f585d8a3SJacky Wang Lazy<Integer> lazyInt, 118*f585d8a3SJacky Wang Lazy<Long> lazyLong, 119*f585d8a3SJacky Wang Lazy<Boolean> lazyBoolean, 120*f585d8a3SJacky Wang Lazy<Float> lazyFloat, 121*f585d8a3SJacky Wang Lazy<Double> lazyDouble, 122*f585d8a3SJacky Wang 123*f585d8a3SJacky Wang Byte boxedBype, 124*f585d8a3SJacky Wang Character boxedChar, 125*f585d8a3SJacky Wang Short boxedShort, 126*f585d8a3SJacky Wang Integer boxedInt, 127*f585d8a3SJacky Wang Long boxedLong, 128*f585d8a3SJacky Wang Boolean boxedBoolean, 129*f585d8a3SJacky Wang Float boxedFloat, 130*f585d8a3SJacky Wang Double boxedDouble, 131*f585d8a3SJacky Wang 132*f585d8a3SJacky Wang byte[] byteArray, 133*f585d8a3SJacky Wang char[] charArray, 134*f585d8a3SJacky Wang short[] shortArray, 135*f585d8a3SJacky Wang int[] intArray, 136*f585d8a3SJacky Wang long[] longArray, 137*f585d8a3SJacky Wang boolean[] booleanArray, 138*f585d8a3SJacky Wang float[] floatArray, 139*f585d8a3SJacky Wang double[] doubleArray, 140*f585d8a3SJacky Wang 141*f585d8a3SJacky Wang Provider<byte[]> byteArrayProvider, 142*f585d8a3SJacky Wang Provider<char[]> charArrayProvider, 143*f585d8a3SJacky Wang Provider<short[]> shortArrayProvider, 144*f585d8a3SJacky Wang Provider<int[]> intArrayProvider, 145*f585d8a3SJacky Wang Provider<long[]> longArrayProvider, 146*f585d8a3SJacky Wang Provider<boolean[]> booleanArrayProvider, 147*f585d8a3SJacky Wang Provider<float[]> floatArrayProvider, 148*f585d8a3SJacky Wang Provider<double[]> doubleArrayProvider, 149*f585d8a3SJacky Wang 150*f585d8a3SJacky Wang Lazy<byte[]> lazyByteArray, 151*f585d8a3SJacky Wang Lazy<char[]> lazyCharArray, 152*f585d8a3SJacky Wang Lazy<short[]> lazyShortArray, 153*f585d8a3SJacky Wang Lazy<int[]> lazyIntArray, 154*f585d8a3SJacky Wang Lazy<long[]> lazyLongArray, 155*f585d8a3SJacky Wang Lazy<boolean[]> lazyBooleanArray, 156*f585d8a3SJacky Wang Lazy<float[]> lazy, 157*f585d8a3SJacky Wang Lazy<double[]> lazyDoubleArray, 158*f585d8a3SJacky Wang 159*f585d8a3SJacky Wang Thing thing, 160*f585d8a3SJacky Wang Provider<Thing> thingProvider, 161*f585d8a3SJacky Wang Lazy<Thing> lazyThing, 162*f585d8a3SJacky Wang Provider<Lazy<Thing>> lazyThingProvider, 163*f585d8a3SJacky Wang MembersInjector<Thing> thingMembersInjector) {} 164*f585d8a3SJacky Wang primitiveByte(byte primitiveByte)165*f585d8a3SJacky Wang @Inject void primitiveByte(byte primitiveByte) {} primitiveChar(char primitiveChar)166*f585d8a3SJacky Wang @Inject void primitiveChar(char primitiveChar) {} primitiveShort(short primitiveShort)167*f585d8a3SJacky Wang @Inject void primitiveShort(short primitiveShort) {} primitiveInt(int primitiveInt)168*f585d8a3SJacky Wang @Inject void primitiveInt(int primitiveInt) {} primitiveLong(long primitiveLong)169*f585d8a3SJacky Wang @Inject void primitiveLong(long primitiveLong) {} primitiveBoolean(boolean primitiveBoolean)170*f585d8a3SJacky Wang @Inject void primitiveBoolean(boolean primitiveBoolean) {} primitiveFloat(float primitiveFloat)171*f585d8a3SJacky Wang @Inject void primitiveFloat(float primitiveFloat) {} primitiveDouble(double primitiveDouble)172*f585d8a3SJacky Wang @Inject void primitiveDouble(double primitiveDouble) {} 173*f585d8a3SJacky Wang byteProvider(Provider<Byte> byteProvider)174*f585d8a3SJacky Wang @Inject void byteProvider(Provider<Byte> byteProvider) {} charProvider(Provider<Character> charProvider)175*f585d8a3SJacky Wang @Inject void charProvider(Provider<Character> charProvider) {} shortProvider(Provider<Short> shortProvider)176*f585d8a3SJacky Wang @Inject void shortProvider(Provider<Short> shortProvider) {} intProvider(Provider<Integer> intProvider)177*f585d8a3SJacky Wang @Inject void intProvider(Provider<Integer> intProvider) {} longProvider(Provider<Long> longProvider)178*f585d8a3SJacky Wang @Inject void longProvider(Provider<Long> longProvider) {} booleanProvider(Provider<Boolean> booleanProvider)179*f585d8a3SJacky Wang @Inject void booleanProvider(Provider<Boolean> booleanProvider) {} floatProvider(Provider<Float> floatProvider)180*f585d8a3SJacky Wang @Inject void floatProvider(Provider<Float> floatProvider) {} doubleProvider(Provider<Double> doubleProvider)181*f585d8a3SJacky Wang @Inject void doubleProvider(Provider<Double> doubleProvider) {} 182*f585d8a3SJacky Wang lazyByte(Lazy<Byte> lazyByte)183*f585d8a3SJacky Wang @Inject void lazyByte(Lazy<Byte> lazyByte) {} lazyChar(Lazy<Character> lazyChar)184*f585d8a3SJacky Wang @Inject void lazyChar(Lazy<Character> lazyChar) {} lazyShort(Lazy<Short> lazyShort)185*f585d8a3SJacky Wang @Inject void lazyShort(Lazy<Short> lazyShort) {} lazyInt(Lazy<Integer> lazyInt)186*f585d8a3SJacky Wang @Inject void lazyInt(Lazy<Integer> lazyInt) {} lazyLong(Lazy<Long> lazyLong)187*f585d8a3SJacky Wang @Inject void lazyLong(Lazy<Long> lazyLong) {} lazyBoolean(Lazy<Boolean> lazyBoolean)188*f585d8a3SJacky Wang @Inject void lazyBoolean(Lazy<Boolean> lazyBoolean) {} lazyFloat(Lazy<Float> lazyFloat)189*f585d8a3SJacky Wang @Inject void lazyFloat(Lazy<Float> lazyFloat) {} lazyDouble(Lazy<Double> lazyDouble)190*f585d8a3SJacky Wang @Inject void lazyDouble(Lazy<Double> lazyDouble) {} 191*f585d8a3SJacky Wang boxedBype(Byte boxedBype)192*f585d8a3SJacky Wang @Inject void boxedBype(Byte boxedBype) {} boxedChar(Character boxedChar)193*f585d8a3SJacky Wang @Inject void boxedChar(Character boxedChar) {} boxedShort(Short boxedShort)194*f585d8a3SJacky Wang @Inject void boxedShort(Short boxedShort) {} boxedInt(Integer boxedInt)195*f585d8a3SJacky Wang @Inject void boxedInt(Integer boxedInt) {} boxedLong(Long boxedLong)196*f585d8a3SJacky Wang @Inject void boxedLong(Long boxedLong) {} boxedBoolean(Boolean boxedBoolean)197*f585d8a3SJacky Wang @Inject void boxedBoolean(Boolean boxedBoolean) {} boxedFloat(Float boxedFloat)198*f585d8a3SJacky Wang @Inject void boxedFloat(Float boxedFloat) {} boxedDouble(Double boxedDouble)199*f585d8a3SJacky Wang @Inject void boxedDouble(Double boxedDouble) {} 200*f585d8a3SJacky Wang byteArray(byte[] byteArray)201*f585d8a3SJacky Wang @Inject void byteArray(byte[] byteArray) {} charArray(char[] charArray)202*f585d8a3SJacky Wang @Inject void charArray(char[] charArray) {} shortArray(short[] shortArray)203*f585d8a3SJacky Wang @Inject void shortArray(short[] shortArray) {} intArray(int[] intArray)204*f585d8a3SJacky Wang @Inject void intArray(int[] intArray) {} longArray(long[] longArray)205*f585d8a3SJacky Wang @Inject void longArray(long[] longArray) {} booleanArray(boolean[] booleanArray)206*f585d8a3SJacky Wang @Inject void booleanArray(boolean[] booleanArray) {} floatArray(float[] floatArray)207*f585d8a3SJacky Wang @Inject void floatArray(float[] floatArray) {} doubleArray(double[] doubleArray)208*f585d8a3SJacky Wang @Inject void doubleArray(double[] doubleArray) {} 209*f585d8a3SJacky Wang byteArrayProvider(Provider<byte[]> byteArrayProvider)210*f585d8a3SJacky Wang @Inject void byteArrayProvider(Provider<byte[]> byteArrayProvider) {} charArrayProvider(Provider<char[]> charArrayProvider)211*f585d8a3SJacky Wang @Inject void charArrayProvider(Provider<char[]> charArrayProvider) {} shortArrayProvider(Provider<short[]> shortArrayProvider)212*f585d8a3SJacky Wang @Inject void shortArrayProvider(Provider<short[]> shortArrayProvider) {} intArrayProvider(Provider<int[]> intArrayProvider)213*f585d8a3SJacky Wang @Inject void intArrayProvider(Provider<int[]> intArrayProvider) {} longArrayProvider(Provider<long[]> longArrayProvider)214*f585d8a3SJacky Wang @Inject void longArrayProvider(Provider<long[]> longArrayProvider) {} booleanArrayProvider(Provider<boolean[]> booleanArrayProvider)215*f585d8a3SJacky Wang @Inject void booleanArrayProvider(Provider<boolean[]> booleanArrayProvider) {} floatArrayProvider(Provider<float[]> floatArrayProvider)216*f585d8a3SJacky Wang @Inject void floatArrayProvider(Provider<float[]> floatArrayProvider) {} doubleArrayProvider(Provider<double[]> doubleArrayProvider)217*f585d8a3SJacky Wang @Inject void doubleArrayProvider(Provider<double[]> doubleArrayProvider) {} 218*f585d8a3SJacky Wang lazyByteArray(Lazy<byte[]> lazyByteArray)219*f585d8a3SJacky Wang @Inject void lazyByteArray(Lazy<byte[]> lazyByteArray) {} lazyCharArray(Lazy<char[]> lazyCharArray)220*f585d8a3SJacky Wang @Inject void lazyCharArray(Lazy<char[]> lazyCharArray) {} lazyShortArray(Lazy<short[]> lazyShortArray)221*f585d8a3SJacky Wang @Inject void lazyShortArray(Lazy<short[]> lazyShortArray) {} lazyIntArray(Lazy<int[]> lazyIntArray)222*f585d8a3SJacky Wang @Inject void lazyIntArray(Lazy<int[]> lazyIntArray) {} lazyLongArray(Lazy<long[]> lazyLongArray)223*f585d8a3SJacky Wang @Inject void lazyLongArray(Lazy<long[]> lazyLongArray) {} lazyBooleanArray(Lazy<boolean[]> lazyBooleanArray)224*f585d8a3SJacky Wang @Inject void lazyBooleanArray(Lazy<boolean[]> lazyBooleanArray) {} lazy(Lazy<float[]> lazy)225*f585d8a3SJacky Wang @Inject void lazy(Lazy<float[]> lazy) {} lazyThingProvider(Provider<Lazy<Thing>> lazyThingProvider)226*f585d8a3SJacky Wang @Inject void lazyThingProvider(Provider<Lazy<Thing>> lazyThingProvider) {} lazyDoubleArray(Lazy<double[]> lazyDoubleArray)227*f585d8a3SJacky Wang @Inject void lazyDoubleArray(Lazy<double[]> lazyDoubleArray) {} 228*f585d8a3SJacky Wang thing(Thing thing)229*f585d8a3SJacky Wang @Inject void thing(Thing thing) {} thingProvider(Provider<Thing> thingProvider)230*f585d8a3SJacky Wang @Inject void thingProvider(Provider<Thing> thingProvider) {} lazyThing(Lazy<Thing> lazyThing)231*f585d8a3SJacky Wang @Inject void lazyThing(Lazy<Thing> lazyThing) {} thingMembersInjector(MembersInjector<Thing> thingMembersInjector)232*f585d8a3SJacky Wang @Inject void thingMembersInjector(MembersInjector<Thing> thingMembersInjector) {} 233*f585d8a3SJacky Wang } 234