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

#ifndef __gnu_java_beans_decoder_IntHandler__
#define __gnu_java_beans_decoder_IntHandler__

#pragma interface

#include <gnu/java/beans/decoder/SimpleHandler.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace beans
      {
        namespace decoder
        {
            class ElementHandler;
            class IntHandler;
        }
      }
    }
  }
}

class gnu::java::beans::decoder::IntHandler : public ::gnu::java::beans::decoder::SimpleHandler
{

public: // actually package-private
  IntHandler(::gnu::java::beans::decoder::ElementHandler *);
public: // actually protected
  virtual ::java::lang::Object * parse(::java::lang::String *);
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_beans_decoder_IntHandler__
