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

#ifndef __java_util_Collections$5__
#define __java_util_Collections$5__

#pragma interface

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

class java::util::Collections$5 : public ::java::util::Collections$UnmodifiableIterator
{

public: // actually package-private
  Collections$5(::java::util::Collections$UnmodifiableMap$UnmodifiableEntrySet *, ::java::util::Iterator *);
public:
  virtual ::java::util::Map$Entry * Collections$5$next();
  virtual ::java::lang::Object * next();
public: // actually package-private
  ::java::util::Collections$UnmodifiableMap$UnmodifiableEntrySet * __attribute__((aligned(__alignof__( ::java::util::Collections$UnmodifiableIterator)))) this$2;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_Collections$5__
