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

#ifndef __java_util_concurrent_ConcurrentSkipListMap$Index__
#define __java_util_concurrent_ConcurrentSkipListMap$Index__

#pragma interface

#include <java/lang/Object.h>

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

public: // actually package-private
  ConcurrentSkipListMap$Index(::java::util::concurrent::ConcurrentSkipListMap$Node *, ::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
  virtual jboolean casRight(::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
  virtual jboolean indexesDeletedNode();
  virtual jboolean link(::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
  virtual jboolean unlink(::java::util::concurrent::ConcurrentSkipListMap$Index *);
  ::java::util::concurrent::ConcurrentSkipListMap$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) node;
  ::java::util::concurrent::ConcurrentSkipListMap$Index * down;
  ::java::util::concurrent::ConcurrentSkipListMap$Index * volatile right;
  static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * rightUpdater;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_concurrent_ConcurrentSkipListMap$Index__
