New file |
| | |
| | | package com.hdl.sdk.link.common.utils.gson;
|
| | |
|
| | |
|
| | | import androidx.annotation.NonNull;
|
| | |
|
| | | import java.lang.reflect.ParameterizedType;
|
| | | import java.lang.reflect.Type;
|
| | |
|
| | | /**
|
| | | * Created by Tong on 2021/9/17.
|
| | | */
|
| | | public class ParameterizedTypeImpl implements ParameterizedType {
|
| | |
|
| | | private final Type[] actualTypeArguments;
|
| | | private final Type rawType;
|
| | | private final Type ownerType;
|
| | |
|
| | | public ParameterizedTypeImpl(Type rawType, Type[] actualTypeArguments, Type ownerType) {
|
| | | this.ownerType = ownerType;
|
| | | this.rawType = rawType;
|
| | | this.actualTypeArguments = actualTypeArguments;
|
| | | }
|
| | |
|
| | | public static Type getType(Type rawType, Type[] actualTypeArguments) {
|
| | | return new ParameterizedTypeImpl(rawType, actualTypeArguments, null);
|
| | | }
|
| | |
|
| | | @NonNull
|
| | | @Override
|
| | | public Type[] getActualTypeArguments() {
|
| | | return actualTypeArguments;
|
| | | }
|
| | |
|
| | |
|
| | | @NonNull
|
| | | @Override
|
| | | public Type getRawType() {
|
| | | return rawType;
|
| | | }
|
| | |
|
| | |
|
| | | @Override
|
| | | public Type getOwnerType() {
|
| | | return ownerType;
|
| | | }
|
| | | }
|