@SuppressWarnings("unchecked")
    public T putContext(String key, Object value) {
        currentState.context.put(key, value);
        return (T) this;
    }
Adds a named key-value pair to the context of the current state.

<p>These context values can be referenced by named interpolated
parameters.

@param key Key to add to the context.
@param value Value to associate with the key.
@return Returns self.
smithy-utils/src/main/java/software/amazon/smithy/utils/AbstractCodeWriter.java