package com.sora.util.akatsuki.app;

import android.accounts.Account;
import android.os.Binder;
import android.os.Bundle;
import android.os.Parcelable;
import android.util.Size;
import android.util.SizeF;
import android.util.SparseArray;

import com.sora.util.akatsuki.Retained;

import java.io.Serializable;
import java.util.ArrayList;

/**
 * Project: Akatsuki Created by tom91136 on 11/07/2015.
 */
public class LotsOfTypes {

	@Retained Account account;
	@Retained Account[] accounts;
	@Retained ArrayList<Account> accountList;

	@Retained Binder $$$A$binder;
	@Retained Binder 我我;

	@Retained Binder binder;

	@Retained Boolean bBoolean;
	@Retained boolean aBoolean;
	@Retained boolean[] booleans;
	@Retained Bundle bundle;
	@Retained Byte bByte;
	@Retained byte aByte;
	@Retained byte[] bytes;
	@Retained Character bChar;
	@Retained char aChar;
	@Retained char[] chars;
	@Retained CharSequence charSequence;
	@Retained CharSequence[] charSequences;
	@Retained ArrayList<CharSequence> charSequenceArrayList;
	@Retained Double bDouble;
	@Retained double aDouble;
	@Retained double[] doubles;
	@Retained Float bFloat;
	@Retained float aFloat;
	@Retained float[] floats;
	@Retained int anInt;
	@Retained int[] ints;
	@Retained ArrayList<Integer> integerArrayList;
	@Retained Long bLong;
	@Retained long aLong;
	@Retained long[] longs;
	@Retained Parcelable parcelable;
	@Retained Parcelable[] parcelables;
	@Retained ArrayList<Parcelable> parcelableArrayList;
	@Retained Serializable serializable;
	@Retained Short bShort;
	@Retained short aShort;
	@Retained short[] shorts;
	@Retained Size size;
	@Retained SizeF sizeF;
	@Retained SparseArray<Parcelable> sparseArray;
	@Retained SparseArray<Account> accountArray;
	@Retained String string;
	@Retained String[] strings;
	@Retained ArrayList<String> stringArrayList;

	// @Retained ArrayList<ArrayList<String>> stringArrayList2;
	// @Retained ArrayList<ArrayList<Boolean[]>> booleanArrList2;
	// @Retained Map<String, Map<Integer, Parcelable>> spacialMap;
	// @Retained Map<?, Map<? super Integer, ? extends Parcelable>> spacialMap2;
	// @Retained Map<List<String>, Map<? super Object, ? extends List<? extends
	// CharSequence>>>
	// spacialMap3;

//	static class Generic<T extends Parcelable> {
//
//		@Retained T t;
//
//	}
//
//	static class Generic2<A extends B, B extends C, C extends Parcelable & Serializable> {
//
//		@Retained A a;
//
//	}
//
//	static class GenericIntersection<T extends Parcelable & Serializable> {
//
//		@Retained T t;
//
//	}
//
//	static class GenericInheritance<T extends Serializable> extends Generic<Bundle> {
//		@Retained T t;
//	}

//	static class B extends A {
//		@Retained String b;
//		@Retained String c;
//		@Retained A retainedA;
//
//		static class C {
//			@Retained(skip = true) String c;
//
//			static class D extends C {
//				@Retained String c;
//
//				static class E extends B {
//					@Retained Account c;
//				}
//
//			}
//		}
//




//	}

}

package com.sora.util.akatsuki.app;

public class LotsOfTypes {

//	@Retained Account account;
//	@Retained Account[] accounts;
//	@Retained ArrayList<Account> accountList;
//
//	@Retained Binder $$$A$binder;
//	@Retained Binder 我我;
//
//	@Retained Binder binder;
//
//	@Retained Boolean bBoolean;
//	@Retained boolean aBoolean;
//	@Retained boolean[] booleans;
//	@Retained Bundle bundle;
//	@Retained Byte bByte;
//	@Retained byte aByte;
//	@Retained byte[] bytes;
//	@Retained Character bChar;
//	@Retained char aChar;
//	@Retained char[] chars;
//	@Retained CharSequence charSequence;
//	@Retained CharSequence[] charSequences;
//	@Retained ArrayList<CharSequence> charSequenceArrayList;
//	@Retained Double bDouble;
//	@Retained double aDouble;
//	@Retained double[] doubles;
//	@Retained Float bFloat;
//	@Retained float aFloat;
//	@Retained float[] floats;
//	@Retained int anInt;
//	@Retained int[] ints;
//	@Retained ArrayList<Integer> integerArrayList;
//	@Retained Long bLong;
//	@Retained long aLong;
//	@Retained long[] longs;
//	@Retained Parcelable parcelable;
//	@Retained Parcelable[] parcelables;
//	@Retained ArrayList<Parcelable> parcelableArrayList;
//	@Retained Serializable serializable;
//	@Retained Short bShort;
//	@Retained short aShort;
//	@Retained short[] shorts;
//	@Retained Size size;
//	@Retained SizeF sizeF;
//	@Retained SparseArray<Parcelable> sparseArray;
//	@Retained SparseArray<Account> accountArray;
//	@Retained String string;
//	@Retained String[] strings;
//	@Retained ArrayList<String> stringArrayList;

	// @Retained ArrayList<ArrayList<String>> stringArrayList2;
	// @Retained ArrayList<ArrayList<Boolean[]>> booleanArrList2;
	// @Retained Map<String, Map<Integer, Parcelable>> spacialMap;
	// @Retained Map<?, Map<? super Integer, ? extends Parcelable>> spacialMap2;
	// @Retained Map<List<String>, Map<? super Object, ? extends List<? extends
	// CharSequence>>>
	// spacialMap3;

//	static class Generic<T extends Parcelable> {
//
//		@Retained T t;
//
//	}
//
//	static class Generic2<A extends B, B extends C, C extends Parcelable & Serializable> {
//
//		@Retained A a;
//
//	}
//
//	static class GenericIntersection<T extends Parcelable & Serializable> {
//
//		@Retained T t;
//
//	}
//
//	static class GenericInheritance<T extends Serializable> extends Generic<Bundle> {
//		@Retained T t;
//	}

//	static class B extends A {
//		@Retained String b;
//		@Retained String c;
//		@Retained A retainedA;
//
//		static class C {
//			@Retained(skip = true) String c;
//
//			static class D extends C {
//				@Retained String c;
//
//				static class E extends B {
//					@Retained Account c;
//				}
//
//			}
//		}
//




//	}

}

Comment out unused debug fields