Package com.pulumi.core
Class TypeShape<T>
- java.lang.Object
-
- com.pulumi.core.TypeShape<T>
-
public final class TypeShape<T> extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TypeShape.Builder<T>
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
asString()
static <T> TypeShape.Builder<T>
builder(java.lang.Class<? super T> type)
static <L,R>
TypeShape<Either<L,R>>either(java.lang.Class<L> leftClass, java.lang.Class<R> rightClass)
static TypeShape<?>
extract(java.lang.reflect.Parameter parameter)
<A extends java.lang.annotation.Annotation>
java.lang.reflect.Constructor<?>getAnnotatedConstructor(java.lang.Class<A> constructorAnnotation)
<A extends java.lang.annotation.Annotation>
java.lang.reflect.MethodgetAnnotatedMethod(java.lang.Class<A> methodAnnotation)
<A extends java.lang.annotation.Annotation>
java.util.Optional<A>getAnnotation(java.lang.Class<A> annotationType)
java.util.Optional<TypeShape<?>>
getParameter(int index)
int
getParameterCount()
com.google.common.collect.ImmutableList<TypeShape<?>>
getParameters()
java.lang.Class<T>
getType()
java.lang.String
getTypeName()
boolean
hasParameters()
<U> boolean
isAssignableFrom(TypeShape<U> other)
Returns true if the type and all of the parameters are assignable from the given other shape.static <E> TypeShape<java.util.List<E>>
list(java.lang.Class<E> elementClass)
static <K,V>
TypeShape<java.util.Map<K,V>>map(java.lang.Class<K> keyClass, java.lang.Class<V> valueClass)
static <T> TypeShape<T>
of(java.lang.Class<T> type)
static <T> TypeShape<java.util.Optional<T>>
optional(java.lang.Class<T> valueClass)
com.google.gson.reflect.TypeToken<?>
toGSON()
java.lang.String
toString()
-
-
-
Field Detail
-
Empty
public static final TypeShape<java.lang.Void> Empty
-
-
Method Detail
-
getType
public java.lang.Class<T> getType()
-
getTypeName
public java.lang.String getTypeName()
-
getParameter
public java.util.Optional<TypeShape<?>> getParameter(int index)
-
getParameters
public com.google.common.collect.ImmutableList<TypeShape<?>> getParameters()
-
getParameterCount
public int getParameterCount()
-
hasParameters
public boolean hasParameters()
-
getAnnotation
public <A extends java.lang.annotation.Annotation> java.util.Optional<A> getAnnotation(java.lang.Class<A> annotationType)
-
getAnnotatedConstructor
public <A extends java.lang.annotation.Annotation> java.lang.reflect.Constructor<?> getAnnotatedConstructor(java.lang.Class<A> constructorAnnotation)
-
getAnnotatedMethod
public <A extends java.lang.annotation.Annotation> java.lang.reflect.Method getAnnotatedMethod(java.lang.Class<A> methodAnnotation)
-
isAssignableFrom
public <U> boolean isAssignableFrom(TypeShape<U> other)
Returns true if the type and all of the parameters are assignable from the given other shape.- See Also:
Class.isAssignableFrom(Class)
-
asString
public java.lang.String asString()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
extract
public static TypeShape<?> extract(java.lang.reflect.Parameter parameter)
-
toGSON
@InternalUse public com.google.gson.reflect.TypeToken<?> toGSON()
-
of
public static <T> TypeShape<T> of(java.lang.Class<T> type)
-
optional
public static <T> TypeShape<java.util.Optional<T>> optional(java.lang.Class<T> valueClass)
-
either
public static <L,R> TypeShape<Either<L,R>> either(java.lang.Class<L> leftClass, java.lang.Class<R> rightClass)
-
list
public static <E> TypeShape<java.util.List<E>> list(java.lang.Class<E> elementClass)
-
map
public static <K,V> TypeShape<java.util.Map<K,V>> map(java.lang.Class<K> keyClass, java.lang.Class<V> valueClass)
-
builder
public static <T> TypeShape.Builder<T> builder(java.lang.Class<? super T> type)
-
-