void put(ChronoElement<?> element, int v) {

        int pos;
        Object current;
        Object[] keys = this.keys;

        if (keys == null) {
            if (element == PlainDate.YEAR) {
                if (this.duplicateKeysAllowed || (this.ints[0] == Integer.MIN_VALUE) || (this.ints[0] == v)) {
                    this.ints[0] = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainDate.MONTH_AS_NUMBER) {
                if (this.duplicateKeysAllowed || (this.ints[1] == Integer.MIN_VALUE) || (this.ints[1] == v)) {
                    this.ints[1] = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainDate.DAY_OF_MONTH) {
                if (this.duplicateKeysAllowed || (this.ints[2] == Integer.MIN_VALUE) || (this.ints[2] == v)) {
                    this.ints[2] = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainTime.DIGITAL_HOUR_OF_DAY) {
                if (this.duplicateKeysAllowed || (this.len == Integer.MIN_VALUE) || (this.len == v)) {
                    this.len = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainTime.MINUTE_OF_HOUR) {
                if (this.duplicateKeysAllowed || (this.mask == Integer.MIN_VALUE) || (this.mask == v)) {
                    this.mask = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainTime.SECOND_OF_MINUTE) {
                if (this.duplicateKeysAllowed || (this.threshold == Integer.MIN_VALUE) || (this.threshold == v)) {
                    this.threshold = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else if (element == PlainTime.NANO_OF_SECOND) {
                if (this.duplicateKeysAllowed || (this.count == Integer.MIN_VALUE) || (this.count == v)) {
                    this.count = v;
                } else {
                    throw new AmbivalentValueException(element);
                }
            } else {
                Map<ChronoElement<?>, Object> m = this.map;
                if (m == null) {
                    m = new HashMap<>();
                    this.map = m;
                }
                Object newValue = Integer.valueOf(v);
                if (this.duplicateKeysAllowed || !m.containsKey(element) || newValue.equals(m.get(element))) {
                    m.put(element, newValue);
                    return;
                } else {
                    throw new AmbivalentValueException(element);
                }
            }
            return;
        }

        if (!((current = keys[pos = (mix(element.hashCode()) & this.mask)]) == null)) {
            if (current.equals(element)) {
                if (this.duplicateKeysAllowed || (this.ints[pos] == v)) {
                    this.ints[pos] = v;
                    return;
                } else {
                    throw new AmbivalentValueException(element);
                }
            }
            while (!((current = keys[pos = (pos + 1) & this.mask]) == null)) {
                if (current.equals(element)) {
                    if (this.duplicateKeysAllowed || (this.ints[pos] == v)) {
                        this.ints[pos] = v;
                        return;
                    } else {
                        throw new AmbivalentValueException(element);
                    }
                }
            }
        }

        keys[pos] = element;
        this.ints[pos] = v;

        if (this.count++ >= this.threshold) {
            rehash(arraySize(this.count));
        }

    }
void put ( ChronoElement < ? > element , int v ) { int pos ; Object current ; Object [ ] keys = this . keys ; if ( keys == null ) { if ( element == PlainDate . YEAR ) { if ( this . duplicateKeysAllowed || ( this . ints [ 0 ] == Integer . MIN_VALUE ) || ( this . ints [ 0 ] == v ) ) { this . ints [ 0 ] = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainDate . MONTH_AS_NUMBER ) { if ( this . duplicateKeysAllowed || ( this . ints [ 1 ] == Integer . MIN_VALUE ) || ( this . ints [ 1 ] == v ) ) { this . ints [ 1 ] = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainDate . DAY_OF_MONTH ) { if ( this . duplicateKeysAllowed || ( this . ints [ 2 ] == Integer . MIN_VALUE ) || ( this . ints [ 2 ] == v ) ) { this . ints [ 2 ] = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainTime . DIGITAL_HOUR_OF_DAY ) { if ( this . duplicateKeysAllowed || ( this . len == Integer . MIN_VALUE ) || ( this . len == v ) ) { this . len = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainTime . MINUTE_OF_HOUR ) { if ( this . duplicateKeysAllowed || ( this . mask == Integer . MIN_VALUE ) || ( this . mask == v ) ) { this . mask = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainTime . SECOND_OF_MINUTE ) { if ( this . duplicateKeysAllowed || ( this . threshold == Integer . MIN_VALUE ) || ( this . threshold == v ) ) { this . threshold = v ; } else { throw new AmbivalentValueException ( element ) ; } } else if ( element == PlainTime . NANO_OF_SECOND ) { if ( this . duplicateKeysAllowed || ( this . count == Integer . MIN_VALUE ) || ( this . count == v ) ) { this . count = v ; } else { throw new AmbivalentValueException ( element ) ; } } else { Map < ChronoElement < ? > , Object > m = this . map ; if ( m == null ) { m = new HashMap < > ( ) ; this . map = m ; } Object newValue = Integer . valueOf ( v ) ; if ( this . duplicateKeysAllowed || ! m . containsKey ( element ) || newValue . equals ( m . get ( element ) ) ) { m . put ( element , newValue ) ; return ; } else { throw new AmbivalentValueException ( element ) ; } } return ; } if ( ! ( ( current = keys [ pos = ( mix ( element . hashCode ( ) ) & this . mask ) ] ) == null ) ) { if ( current . equals ( element ) ) { if ( this . duplicateKeysAllowed || ( this . ints [ pos ] == v ) ) { this . ints [ pos ] = v ; return ; } else { throw new AmbivalentValueException ( element ) ; } } while ( ! ( ( current = keys [ pos = ( pos + 1 ) & this . mask ] ) == null ) ) { if ( current . equals ( element ) ) { if ( this . duplicateKeysAllowed || ( this . ints [ pos ] == v ) ) { this . ints [ pos ] = v ; return ; } else { throw new AmbivalentValueException ( element ) ; } } } } keys [ pos ] = element ; this . ints [ pos ] = v ; if ( this . count ++ >= this . threshold ) { rehash ( arraySize ( this . count ) ) ; } }
called by format processors