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

#ifndef __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__
#define __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__

#pragma interface

#include <java/lang/Object.h>

class java::util::concurrent::ConcurrentSkipListMap$ComparableUsingComparator : public ::java::lang::Object
{

public: // actually package-private
  ConcurrentSkipListMap$ComparableUsingComparator(::java::lang::Object *, ::java::util::Comparator *);
public:
  jint compareTo(::java::lang::Object *);
public: // actually package-private
  ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) actualKey;
  ::java::util::Comparator * cmp;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__
