private void appendFrameTypes(
        final boolean local,
        final int n,
        final Object[] types)
    {
        for (int i = 0; i < n; ++i) {
            Object type = types[i];
            AttributesImpl attrs = new AttributesImpl();
            if (type instanceof String) {
                attrs.addAttribute("", "type", "type", "", (String) type);
            } else if (type instanceof Integer) {
                attrs.addAttribute("",
                        "type",
                        "type",
                        "",
                        TYPES[((Integer) type).intValue()]);
            } else {
                attrs.addAttribute("", "type", "type", "", "uninitialized");
                attrs.addAttribute("",
                        "label",
                        "label",
                        "",
                        getLabel((Label) type));
            }
            addElement(local ? "local" : "stack", attrs);
        }
    }