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

#ifndef __java_lang_UnsupportedOperationException__
#define __java_lang_UnsupportedOperationException__

#pragma interface

#include <java/lang/RuntimeException.h>

class java::lang::UnsupportedOperationException : public ::java::lang::RuntimeException
{

public:
  UnsupportedOperationException();
  UnsupportedOperationException(::java::lang::String *);
  UnsupportedOperationException(::java::lang::String *, ::java::lang::Throwable *);
  UnsupportedOperationException(::java::lang::Throwable *);
private:
  static const jlong serialVersionUID = -1242599979055084673LL;
public:
  static ::java::lang::Class class$;
};

#endif // __java_lang_UnsupportedOperationException__
