com.fasterxml.jackson.databind.deser.impl

## Class CreatorCollector.StdTypeConstructor

- java.lang.Object
- - com.fasterxml.jackson.databind.introspect.Annotated
  - - com.fasterxml.jackson.databind.introspect.AnnotatedMember
    - - com.fasterxml.jackson.databind.introspect.AnnotatedWithParams
      - - com.fasterxml.jackson.databind.deser.impl.CreatorCollector.StdTypeConstructor

All Implemented Interfaces:
  Serializable

Enclosing class:
  CreatorCollector

    protected static final class CreatorCollector.StdTypeConstructor
    extends AnnotatedWithParams
    implements Serializable

Replacement for default constructor to use for a small set of "well-known" types.

Note: replaces earlier `Vanilla` `ValueInstantiator` implementation

Since:
  2.8.1 (replacing earlier `Vanilla` instantiator
See Also:
  Serialized Form

### Field Summary

Fields
`static int` `TYPE_ARRAY_LIST`
`static int` `TYPE_HASH_MAP`
`static int` `TYPE_LINKED_HASH_MAP`

### Fields inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedWithParams

`_paramAnnotations`

### Fields inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedMember

`_annotations, _typeContext`

### Constructor Summary

Constructors
Constructor and Description
`CreatorCollector.StdTypeConstructor(AnnotatedWithParams base, int t)`

### Method Summary

Methods
`protected Object` `_construct()`
`Object` `call()` Method that can be used to (try to) call this object without arguments.
`Object` `call(Object[] args)` Method that can be used to (try to) call this object with specified arguments.
`Object` `call1(Object arg)` Method that can be used to (try to) call this object with single arguments.
`boolean` `equals(Object o)`
`AnnotatedElement` `getAnnotated()` Method that can be used to find actual JDK element that this instance represents.
`Class<?>` `getDeclaringClass()` Actual physical class in which this memmber was declared.
`Type` `getGenericParameterType(int index)` Deprecated.
`Member` `getMember()`
`protected int` `getModifiers()`
`String` `getName()`
`int` `getParameterCount()`
`JavaType` `getParameterType(int index)`
`Class<?>` `getRawParameterType(int index)`
`Class<?>` `getRawType()` "Raw" type (type-erased class) of the annotated element; definition of what exactly this means depends on sub-class.
`JavaType` `getType()` Full generic type of the annotated element; definition of what exactly this means depends on sub-class.
`Object` `getValue(Object pojo)` Optional method that can be used to access the value of this member on given object, if this is a supported operation for member type.
`int` `hashCode()`
`void` `setValue(Object pojo, Object value)` Optional method that can be used to assign value of this member on given object, if this is a supported operation for member type.
`String` `toString()`
`static AnnotatedWithParams` `tryToOptimize(AnnotatedWithParams src)`
`Annotated` `withAnnotations(AnnotationMap fallback)` Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.

### Methods inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedWithParams

`addOrOverrideParam, getAnnotationCount, getParameter, getParameterAnnotations, replaceParameterAnnotations`

### Methods inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedMember

`addIfNotPresent, addOrOverride, annotations, fixAccess, fixAccess, getAllAnnotations, getAnnotation, getTypeContext, hasAnnotation, hasOneOf`

### Methods inherited from class com.fasterxml.jackson.databind.introspect.Annotated

`getGenericType, getType, isPublic, withFallBackAnnotationsFrom`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### TYPE_ARRAY_LIST

    public static final int TYPE_ARRAY_LIST

See Also:
  Constant Field Values

#### TYPE_HASH_MAP

    public static final int TYPE_HASH_MAP

See Also:
  Constant Field Values

#### TYPE_LINKED_HASH_MAP

    public static final int TYPE_LINKED_HASH_MAP

See Also:
  Constant Field Values

### Constructor Detail

#### CreatorCollector.StdTypeConstructor

    public CreatorCollector.StdTypeConstructor(AnnotatedWithParams base,
                                       int t)

### Method Detail

#### tryToOptimize

    public static AnnotatedWithParams tryToOptimize(AnnotatedWithParams src)

#### _construct

    protected final Object _construct()

#### getParameterCount

    public int getParameterCount()

Specified by:
  `getParameterCount` in class `AnnotatedWithParams`

#### getRawParameterType

    public Class<?> getRawParameterType(int index)

Specified by:
  `getRawParameterType` in class `AnnotatedWithParams`

#### getParameterType

    public JavaType getParameterType(int index)

Specified by:
  `getParameterType` in class `AnnotatedWithParams`

#### getGenericParameterType

    @Deprecated
    public Type getGenericParameterType(int index)

Deprecated.

Specified by:
  `getGenericParameterType` in class `AnnotatedWithParams`

#### call

    public Object call()
                throws Exception

Description copied from class: `AnnotatedWithParams`
Method that can be used to (try to) call this object without arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

Note: only works for constructors and static methods.

Specified by:
  `call` in class `AnnotatedWithParams`
Throws:
  `Exception`

#### call

    public Object call(Object[] args)
                throws Exception

Description copied from class: `AnnotatedWithParams`
Method that can be used to (try to) call this object with specified arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

Note: only works for constructors and static methods.

Specified by:
  `call` in class `AnnotatedWithParams`
Throws:
  `Exception`

#### call1

    public Object call1(Object arg)
                 throws Exception

Description copied from class: `AnnotatedWithParams`
Method that can be used to (try to) call this object with single arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

Note: only works for constructors and static methods.

Specified by:
  `call1` in class `AnnotatedWithParams`
Throws:
  `Exception`

#### getDeclaringClass

    public Class<?> getDeclaringClass()

Description copied from class: `AnnotatedMember`
Actual physical class in which this memmber was declared.

Specified by:
  `getDeclaringClass` in class `AnnotatedMember`

#### getMember

    public Member getMember()

Specified by:
  `getMember` in class `AnnotatedMember`

#### setValue

    public void setValue(Object pojo,
                Object value)
                  throws UnsupportedOperationException,
                         IllegalArgumentException

Description copied from class: `AnnotatedMember`
Optional method that can be used to assign value of this member on given object, if this is a supported operation for member type.

This is implemented for fields and single-argument member methods; but not for constructor parameters or other types of methods (like static methods)

Specified by:
  `setValue` in class `AnnotatedMember`
Throws:
  `UnsupportedOperationException`
  `IllegalArgumentException`

#### getValue

    public Object getValue(Object pojo)
                    throws UnsupportedOperationException,
                           IllegalArgumentException

Description copied from class: `AnnotatedMember`
Optional method that can be used to access the value of this member on given object, if this is a supported operation for member type.

This is implemented for fields and no-argument member methods; but not for constructor parameters or other types of methods (like static methods)

Specified by:
  `getValue` in class `AnnotatedMember`
Throws:
  `UnsupportedOperationException`
  `IllegalArgumentException`

#### withAnnotations

    public Annotated withAnnotations(AnnotationMap fallback)

Description copied from class: `Annotated`
Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.

Specified by:
  `withAnnotations` in class `Annotated`

#### getAnnotated

    public AnnotatedElement getAnnotated()

Description copied from class: `Annotated`
Method that can be used to find actual JDK element that this instance represents. It is non-null, except for method/constructor parameters which do not have a JDK counterpart.

Specified by:
  `getAnnotated` in class `Annotated`

#### getModifiers

    protected int getModifiers()

Specified by:
  `getModifiers` in class `Annotated`

#### getName

    public String getName()

Specified by:
  `getName` in class `Annotated`

#### getType

    public JavaType getType()

Description copied from class: `Annotated`
Full generic type of the annotated element; definition of what exactly this means depends on sub-class.

Specified by:
  `getType` in class `Annotated`

#### getRawType

    public Class<?> getRawType()

Description copied from class: `Annotated`
"Raw" type (type-erased class) of the annotated element; definition of what exactly this means depends on sub-class.

Specified by:
  `getRawType` in class `Annotated`

#### equals

    public boolean equals(Object o)

Specified by:
  `equals` in class `Annotated`

#### hashCode

    public int hashCode()

Specified by:
  `hashCode` in class `Annotated`

#### toString

    public String toString()

Specified by:
  `toString` in class `Annotated`