# Package com.fasterxml.jackson.databind.jsonFormatVisitors

Classes used for exposing logical structure of POJOs as Jackson sees it, and exposed via `ObjectMapper.acceptJsonFormatVisitor(Class, JsonFormatVisitorWrapper)` and `ObjectMapper.acceptJsonFormatVisitor(com.fasterxml.jackson.databind.JavaType, JsonFormatVisitorWrapper)` methods.

See: Description

Interface Summary
Interface | Description
--- | ---
JsonAnyFormatVisitor |
JsonArrayFormatVisitor |
JsonBooleanFormatVisitor |
JsonFormatVisitable | Interface `JsonSerializer` implements to allow for visiting type hierarchy.
JsonFormatVisitorWithSerializerProvider |
JsonFormatVisitorWrapper | Interface for visitor callbacks, when type in question can be any of legal JSON types.
JsonIntegerFormatVisitor |
JsonMapFormatVisitor |
JsonNullFormatVisitor |
JsonNumberFormatVisitor |
JsonObjectFormatVisitor | Visitor called when properties of a type that maps to JSON Object are being visited: this usually means POJOs, but sometimes other types use it too (like `EnumMap`).
JsonStringFormatVisitor |
JsonValueFormatVisitor |

Class Summary
Class | Description
--- | ---
JsonAnyFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonArrayFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonBooleanFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonFormatVisitorWrapper.Base | Empty "no-op" implementation of `JsonFormatVisitorWrapper`, suitable for sub-classing.
JsonIntegerFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonMapFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonNullFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonNumberFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonObjectFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonStringFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
JsonValueFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.

Enum Summary
Enum | Description
--- | ---
JsonFormatTypes |
JsonValueFormat | This enum represents the encoded format for a jsonSchema value type

## Package com.fasterxml.jackson.databind.jsonFormatVisitors Description

Classes used for exposing logical structure of POJOs as Jackson sees it, and exposed via `ObjectMapper.acceptJsonFormatVisitor(Class, JsonFormatVisitorWrapper)` and `ObjectMapper.acceptJsonFormatVisitor(com.fasterxml.jackson.databind.JavaType, JsonFormatVisitorWrapper)` methods.

The main entrypoint for code, then, is `JsonFormatVisitorWrapper` and other types are recursively needed during traversal.