mercurial/cext/revlog.c
changeset 47268 9d1a8829f959
parent 47259 07641bafa646
child 47403 8a6e6b62b9a3
equal deleted inserted replaced
47267:55d280bc59fa 47268:9d1a8829f959
    99 	int ntlookups;          /* # lookups */
    99 	int ntlookups;          /* # lookups */
   100 	int ntmisses;           /* # lookups that miss the cache */
   100 	int ntmisses;           /* # lookups that miss the cache */
   101 	int inlined;
   101 	int inlined;
   102 	long entry_size; /* size of index headers. Differs in v1 v.s. v2 format
   102 	long entry_size; /* size of index headers. Differs in v1 v.s. v2 format
   103 	                  */
   103 	                  */
   104 	char format_version; /* size of index headers. Differs in v1 v.s. v2
   104 	long rust_ext_compat; /* compatibility with being used in rust
   105 	                        format */
   105 	                         extensions */
       
   106 	char format_version;  /* size of index headers. Differs in v1 v.s. v2
       
   107 	                         format */
   106 };
   108 };
   107 
   109 
   108 static Py_ssize_t index_length(const indexObject *self)
   110 static Py_ssize_t index_length(const indexObject *self)
   109 {
   111 {
   110 	return self->length + self->new_length;
   112 	return self->length + self->new_length;
  2767 	Py_INCREF(Py_None);
  2769 	Py_INCREF(Py_None);
  2768 	self->ntinitialized = 0;
  2770 	self->ntinitialized = 0;
  2769 	self->offsets = NULL;
  2771 	self->offsets = NULL;
  2770 	self->nodelen = 20;
  2772 	self->nodelen = 20;
  2771 	self->nullentry = NULL;
  2773 	self->nullentry = NULL;
       
  2774 	self->rust_ext_compat = 1;
  2772 
  2775 
  2773 	revlogv2 = NULL;
  2776 	revlogv2 = NULL;
  2774 	if (!PyArg_ParseTupleAndKeywords(args, kwargs, "OO|O", kwlist,
  2777 	if (!PyArg_ParseTupleAndKeywords(args, kwargs, "OO|O", kwlist,
  2775 	                                 &data_obj, &inlined_obj, &revlogv2))
  2778 	                                 &data_obj, &inlined_obj, &revlogv2))
  2776 		return -1;
  2779 		return -1;
  2939 };
  2942 };
  2940 
  2943 
  2941 static PyMemberDef index_members[] = {
  2944 static PyMemberDef index_members[] = {
  2942     {"entry_size", T_LONG, offsetof(indexObject, entry_size), 0,
  2945     {"entry_size", T_LONG, offsetof(indexObject, entry_size), 0,
  2943      "size of an index entry"},
  2946      "size of an index entry"},
       
  2947     {"rust_ext_compat", T_LONG, offsetof(indexObject, rust_ext_compat), 0,
       
  2948      "size of an index entry"},
  2944     {NULL} /* Sentinel */
  2949     {NULL} /* Sentinel */
  2945 };
  2950 };
  2946 
  2951 
  2947 PyTypeObject HgRevlogIndex_Type = {
  2952 PyTypeObject HgRevlogIndex_Type = {
  2948     PyVarObject_HEAD_INIT(NULL, 0) /* header */
  2953     PyVarObject_HEAD_INIT(NULL, 0) /* header */