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

#ifndef __java_beans_beancontext_BeanContextSupport$BCSIterator__
#define __java_beans_beancontext_BeanContextSupport$BCSIterator__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace beans
    {
      namespace beancontext
      {
          class BeanContextSupport$BCSIterator;
      }
    }
  }
}

class java::beans::beancontext::BeanContextSupport$BCSIterator : public ::java::lang::Object
{

public: // actually package-private
  BeanContextSupport$BCSIterator(::java::util::Iterator *);
public:
  jboolean hasNext();
  ::java::lang::Object * next();
  void remove();
private:
  ::java::util::Iterator * __attribute__((aligned(__alignof__( ::java::lang::Object)))) child;
public:
  static ::java::lang::Class class$;
};

#endif // __java_beans_beancontext_BeanContextSupport$BCSIterator__
