@Override
    public E get(K key) {
        try {
            PathMetadata md =  forMapAccess(key);
            return newInstance(md);
        } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException | InstantiationException e) {
            throw new ExpressionException(e);
        }
    }
{@code MapPath} represents map paths

@author tiwe

@param <K> key type
@param <V> value type
@param <E> result type for {@code get(K)} results
querydsl-core/src/main/java/com/querydsl/core/types/dsl/MapPath.java