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

#ifndef __javax_swing_UIDefaults$LazyInputMap__
#define __javax_swing_UIDefaults$LazyInputMap__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class UIDefaults;
        class UIDefaults$LazyInputMap;
    }
  }
}

class javax::swing::UIDefaults$LazyInputMap : public ::java::lang::Object
{

public:
  UIDefaults$LazyInputMap(JArray< ::java::lang::Object * > *);
  virtual ::java::lang::Object * createValue(::javax::swing::UIDefaults *);
public: // actually package-private
  JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) bind;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_UIDefaults$LazyInputMap__
