// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __gnu_gcj_runtime_PersistentByteMap__ #define __gnu_gcj_runtime_PersistentByteMap__ #pragma interface #include #include extern "Java" { namespace gnu { namespace gcj { namespace runtime { class PersistentByteMap; class PersistentByteMap$AccessMode; } } } namespace java { namespace nio { class MappedByteBuffer; namespace channels { class FileChannel; } } } } class gnu::gcj::runtime::PersistentByteMap : public ::java::lang::Object { PersistentByteMap(::java::io::File *); public: PersistentByteMap(::java::lang::String *, ::gnu::gcj::runtime::PersistentByteMap$AccessMode *); PersistentByteMap(::java::io::File *, ::gnu::gcj::runtime::PersistentByteMap$AccessMode *); private: void init(::gnu::gcj::runtime::PersistentByteMap *, ::java::io::File *, jint, jint); public: static ::gnu::gcj::runtime::PersistentByteMap * emptyPersistentByteMap(::java::io::File *, jint, jint); private: jint getWord(jint); void putWord(jint, jint); public: virtual ::java::util::Set * entrySet(); private: jint getBucket(jint); jint getKeyPos(jint); jint getValuePos(jint); void putKeyPos(jint, jint); void putValuePos(jint, jint); JArray< jbyte > * getBytes(jint); jint hash(JArray< jbyte > *); public: virtual JArray< jbyte > * get(JArray< jbyte > *); virtual void put(JArray< jbyte > *, JArray< jbyte > *); private: jint addBytes(JArray< jbyte > *); public: virtual ::java::util::Iterator * iterator(jint); virtual jint size(); virtual jint stringTableSize(); virtual jint capacity(); virtual void force(); virtual ::java::io::File * getFile(); virtual void close(); virtual void putAll(::gnu::gcj::runtime::PersistentByteMap *); public: // actually package-private static jint access$0(::gnu::gcj::runtime::PersistentByteMap *); static jint access$1(::gnu::gcj::runtime::PersistentByteMap *); static jint access$2(::gnu::gcj::runtime::PersistentByteMap *, jint); static jint access$3(::gnu::gcj::runtime::PersistentByteMap *, jint); static JArray< jbyte > * access$4(::gnu::gcj::runtime::PersistentByteMap *, jint); private: ::java::nio::MappedByteBuffer * __attribute__((aligned(__alignof__( ::java::lang::Object)))) buf; static const jint MAGIC = 0; static const jint VERSION = 4; static const jint CAPACITY = 8; static const jint TABLE_BASE = 12; static const jint STRING_BASE = 16; static const jint STRING_SIZE = 20; static const jint FILE_SIZE = 24; static const jint ELEMENTS = 28; static const jint INT_SIZE = 4; static const jint TABLE_ENTRY_SIZE = 8; jint capacity__; jint table_base; jint string_base; jint string_size; jint file_size; jint elements; jlong length; ::java::io::File * name; static const jint UNUSED_ENTRY = -1; public: static const jint KEYS = 0; static const jint VALUES = 1; static const jint ENTRIES = 2; private: ::java::util::HashMap * values; public: // actually package-private ::java::nio::channels::FileChannel * fc; public: static ::java::lang::Class class$; }; #endif // __gnu_gcj_runtime_PersistentByteMap__