## Uses of Class
com.fasterxml.jackson.databind.type.TypeBindings

- Packages that use TypeBindings
  Package | Description
  --- | ---
  com.fasterxml.jackson.databind | Basic data binding (mapping) functionality that allows for reading JSON content into Java Objects (POJOs) and JSON Trees (`JsonNode`), as well as writing Java Objects and trees as JSON.
  com.fasterxml.jackson.databind.introspect | Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.
  com.fasterxml.jackson.databind.ser | Contains implementation classes of serialization part of data binding.
  com.fasterxml.jackson.databind.type | Package that contains concrete implementations of `JavaType`, as well as the factory (`TypeFactory`) for constructing instances from various input data types (like `Class`, `Type`) and programmatically (for structured types, arrays, `List`s and `Map`s).

- - ### Uses of TypeBindings in com.fasterxml.jackson.databind

    Methods in com.fasterxml.jackson.databind that return TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `abstract TypeBindings` | BeanDescription.`bindingsForBeanType()` Accessor for type bindings that may be needed to fully resolve types of member object, such as return and argument types of methods and constructors, and types of fields.

  - ### Uses of TypeBindings in com.fasterxml.jackson.databind.introspect

    Fields in com.fasterxml.jackson.databind.introspect declared as TypeBindings
    Modifier and Type | Field and Description
    --- | ---
    `protected TypeBindings` | BasicBeanDescription.`_bindings` We may need type bindings for the bean type.

    Methods in com.fasterxml.jackson.databind.introspect that return TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `TypeBindings` | BasicBeanDescription.`bindingsForBeanType()`

    Methods in com.fasterxml.jackson.databind.introspect with parameters of type TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `JavaType` | AnnotatedMethod.`getType(TypeBindings bindings)` As per [JACKSON-468], we need to also allow declaration of local type bindings; mostly it will allow defining bounds.
    `JavaType` | AnnotatedConstructor.`getType(TypeBindings bindings)` As per [JACKSON-468], we need to also allow declaration of local type bindings; mostly it will allow defining bounds.
    `JavaType` | Annotated.`getType(TypeBindings context)` Full generic type of the annotated element; definition of what exactly this means depends on sub-class.
    `protected JavaType` | AnnotatedWithParams.`getType(TypeBindings bindings, TypeVariable<?>[] typeParams)`
    `JavaType` | AnnotatedWithParams.`resolveParameterType(int index, TypeBindings bindings)` Method called to fully resolve type of one of parameters, given specified type variable bindings.

  - ### Uses of TypeBindings in com.fasterxml.jackson.databind.ser

    Methods in com.fasterxml.jackson.databind.ser with parameters of type TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `protected BeanPropertyWriter` | BeanSerializerFactory.`_constructWriter(SerializerProvider prov, BeanPropertyDefinition propDef, TypeBindings typeContext, PropertyBuilder pb, boolean staticTyping, AnnotatedMember accessor)` Secondary helper method for constructing `BeanPropertyWriter` for given member (field or method).

  - ### Uses of TypeBindings in com.fasterxml.jackson.databind.type

    Methods in com.fasterxml.jackson.databind.type that return TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `TypeBindings` | TypeBindings.`childInstance()` Constructor used to create "child" instances; mostly to allow delegation from explicitly defined local overrides (local type variables for methods, constructors) to contextual (class-defined) ones.

    Methods in com.fasterxml.jackson.databind.type with parameters of type TypeBindings
    Modifier and Type | Method and Description
    --- | ---
    `protected JavaType` | TypeFactory.`_constructType(Type type, TypeBindings context)` Factory method that can be used if type information is passed as Java typing returned from `getGenericXxx` methods (usually for a return or argument type).
    `protected JavaType` | TypeFactory.`_fromArrayType(GenericArrayType type, TypeBindings context)`
    `protected JavaType` | TypeFactory.`_fromClass(Class<?> clz, TypeBindings context)`
    `protected JavaType` | TypeFactory.`_fromParamType(ParameterizedType type, TypeBindings context)` This method deals with parameterized types, that is, first class generic classes.
    `protected JavaType` | TypeFactory.`_fromVariable(TypeVariable<?> type, TypeBindings context)`
    `protected JavaType` | TypeFactory.`_fromWildcard(WildcardType type, TypeBindings context)`
    `protected JavaType` | TypeFactory.`_resolveVariableViaSubTypes(HierarchicType leafType, String variableName, TypeBindings bindings)`
    `JavaType` | TypeFactory.`constructType(Type type, TypeBindings bindings)`
    `JavaType[]` | TypeFactory.`findTypeParameters(Class<?> clz, Class<?> expType, TypeBindings bindings)`
    `abstract JavaType` | TypeModifier.`modifyType(JavaType type, Type jdkType, TypeBindings context, TypeFactory typeFactory)` Method called to let modifier change constructed type definition.

Copyright © 2014–2015 FasterXML. All rights reserved.