
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __sun_reflect_annotation_AnnotationParser__
#define __sun_reflect_annotation_AnnotationParser__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace sun
  {
    namespace reflect
    {
      namespace annotation
      {
          class AnnotationParser;
      }
    }
  }
}

class sun::reflect::annotation::AnnotationParser : public ::java::lang::Object
{

public:
  AnnotationParser();
  static ::java::lang::annotation::Annotation * annotationForMap(::java::lang::Class *, ::java::util::Map *);
  static ::java::lang::Class class$;
};

#endif // __sun_reflect_annotation_AnnotationParser__
