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

#ifndef __gnu_java_util_prefs_FileBasedPreferences$1__
#define __gnu_java_util_prefs_FileBasedPreferences$1__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace util
      {
        namespace prefs
        {
            class FileBasedPreferences;
            class FileBasedPreferences$1;
        }
      }
    }
  }
}

class gnu::java::util::prefs::FileBasedPreferences$1 : public ::java::lang::Object
{

public: // actually package-private
  FileBasedPreferences$1(::gnu::java::util::prefs::FileBasedPreferences *);
public:
  virtual jboolean accept(::java::io::File *, ::java::lang::String *);
public: // actually package-private
  ::gnu::java::util::prefs::FileBasedPreferences * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_util_prefs_FileBasedPreferences$1__
