@Override
    public final void put(String name, Value value) {
        Integer index = nameToIndex().get(name);
        if (index == null) {
            if (ignoreUnknownValues())
                return;
            else
                throw new IllegalArgumentException("Value '" + name + "' is not known to " + this);
        }
        put(index, value);
    }
Puts a value by name.
The value will be frozen if it isn't already.

@throws IllegalArgumentException if the name is not present in the ranking expression this was created with, and
        ignoredUnknownValues is false
searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/ArrayContext.java