convert(m_value, result, gen.getRoot(), key);
Object value = value(map); convert(value, result, gen, key);
    void frame(Generator gen) {        QFrame frame = gen.frame(this, map(gen));        List result = new ArrayList();        Object key = gen.level > 0 ? null : getBindKey(gen);        convert(m_value, result, gen.getRoot(), key);        if (result.size() == 0) {            throw new IllegalStateException                ("unable to convert value: " + m_value);        }        List values = new ArrayList();        for (int i = 0; i < result.size(); i++) {            Code c = (Code) result.get(i);            QValue v = frame.getValue(c);            values.add(v);            if (c.isNull()) {                gen.addNull(this, v);            } else {                gen.addNonNull(this, v);            }        }        frame.setValues(values);    }