package com.fasterxml.jackson.databind.util;

Enumeration used to indicate required access pattern for providers: this can sometimes be used to optimize out dynamic calls. The main difference is between constant values (which can be resolved once) and dynamic ones (which must be resolved anew every time).
/** * Enumeration used to indicate required access pattern for providers: * this can sometimes be used to optimize out dynamic calls. * The main difference is between constant values (which can be resolved once) * and dynamic ones (which must be resolved anew every time). */
public enum AccessPattern {
Value that indicates that provider never returns anything other than Java `null`.
/** * Value that indicates that provider never returns anything other than * Java `null`. */
ALWAYS_NULL,
Value that indicates that provider will always return a constant value, regardless of when it is called; and also that it never uses `context` argument (which may then be passed as `null`)
/** * Value that indicates that provider will always return a constant * value, regardless of when it is called; and also that it never * uses `context` argument (which may then be passed as `null`) */
CONSTANT,
Value that indicates that provider may return different values at different times (often a freshly constructed empty container), and thus must be called every time "null replacement" value is needed.
/** * Value that indicates that provider may return different values * at different times (often a freshly constructed empty container), * and thus must be called every time "null replacement" value is * needed. */
DYNAMIC ; }