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

#ifndef __java_util_Collections$UnmodifiableSet__
#define __java_util_Collections$UnmodifiableSet__

#pragma interface

#include <java/util/Collections$UnmodifiableCollection.h>

class java::util::Collections$UnmodifiableSet : public ::java::util::Collections$UnmodifiableCollection
{

public: // actually package-private
  Collections$UnmodifiableSet(::java::util::Set *);
public:
  virtual jboolean equals(::java::lang::Object *);
  virtual jint hashCode();
private:
  static const jlong serialVersionUID = -9215047833775013803LL;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_Collections$UnmodifiableSet__
