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

#ifndef __java_nio_charset_CoderMalfunctionError__
#define __java_nio_charset_CoderMalfunctionError__

#pragma interface

#include <java/lang/Error.h>
extern "Java"
{
  namespace java
  {
    namespace nio
    {
      namespace charset
      {
          class CoderMalfunctionError;
      }
    }
  }
}

class java::nio::charset::CoderMalfunctionError : public ::java::lang::Error
{

public:
  CoderMalfunctionError(::java::lang::Exception *);
private:
  static const jlong serialVersionUID = -1151412348057794301LL;
public:
  static ::java::lang::Class class$;
};

#endif // __java_nio_charset_CoderMalfunctionError__
