public FieldVisitor visitField(
        final int access,
        final String name,
        final String desc,
        final String signature,
        final Object value)
    {
        StringBuffer sb = new StringBuffer();
        appendAccess(access | ACCESS_FIELD, sb);

        AttributesImpl att = new AttributesImpl();
        att.addAttribute("", "access", "access", "", sb.toString());
        att.addAttribute("", "name", "name", "", name);
        att.addAttribute("", "desc", "desc", "", desc);
        if (signature != null) {
            att.addAttribute("",
                    "signature",
                    "signature",
                    "",
                    encode(signature));
        }
        if (value != null) {
            att.addAttribute("", "value", "value", "", encode(value.toString()));
        }

        return new SAXFieldAdapter(getContentHandler(), att);
    }