Commit 9bb49dd9 authored by davidmc%netscape.com's avatar davidmc%netscape.com
Browse files

changes for hash tables and zone pooling.

parent a0003b9a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -461,8 +461,8 @@ public:
  virtual mdb_err Free(nsIMdbEnv* ev, // free block from Alloc or Resize()
    void* ioBlock) = 0;     // block to be destroyed/deallocated
    
  virtual mdb_err AddStrongRef(nsIMdbEnv* ev) = 0;
  virtual mdb_err CutStrongRef(nsIMdbEnv* ev) = 0;
  virtual mdb_err HeapAddStrongRef(nsIMdbEnv* ev) = 0;
  virtual mdb_err HeapCutStrongRef(nsIMdbEnv* ev) = 0;
    
// } ===== end nsIMdbHeap methods =====
};
@@ -480,8 +480,8 @@ public:
  virtual mdb_err Free(nsIMdbEnv* ev, // free block allocated earlier by Alloc()
    void* inBlock);
    
  virtual mdb_err AddStrongRef(nsIMdbEnv* ev);
  virtual mdb_err CutStrongRef(nsIMdbEnv* ev);
  virtual mdb_err HeapAddStrongRef(nsIMdbEnv* ev);
  virtual mdb_err HeapCutStrongRef(nsIMdbEnv* ev);
// } ===== end nsIMdbHeap methods =====
};

+3 −0
Original line number Diff line number Diff line
@@ -81,6 +81,9 @@ CPPSRCS = \
		morkThumb.cpp \
		morkWriter.cpp \
		morkYarn.cpp \
		morkBead.cpp \
		morkProbeMap.cpp \
		morkZone.cpp \
		$(NULL)

EXTRA_DSO_LDOPTS = \
+3 −0
Original line number Diff line number Diff line
@@ -88,6 +88,9 @@ CPP_OBJS= .\$(OBJDIR)\orkinCell.obj \
			.\$(OBJDIR)\morkThumb.obj				\
			.\$(OBJDIR)\morkWriter.obj				\
			.\$(OBJDIR)\morkYarn.obj				\
			.\$(OBJDIR)\morkZone.cpp.obj				\
			.\$(OBJDIR)\morkProbeMap.cpp.obj				\
			.\$(OBJDIR)\morkBead.cpp.obj				\
			$(NULL)


+12 −0
Original line number Diff line number Diff line
@@ -82,6 +82,9 @@ typedef mork_token mork_aid; // token used to id atomize cell values
typedef mork_token mork_column;  // token used to id columns for rows
typedef mork_column mork_delta;  // mork_column plus mork_change 

typedef mork_token mork_color;   // bead ID
#define morkColor_kNone ((mork_color) 0)

typedef mork_u4 mork_magic;      // unsigned magic signature

typedef mork_u4 mork_seed;       // unsigned collection change counter
@@ -106,6 +109,13 @@ typedef mork_u1 mork_able; // on, off, asleep (clone IronDoc's fe_able)
typedef mork_u1 mork_load; // dirty or clean (clone IronDoc's fe_load)
// } %%%%% end specific-size integer scalar typedefs %%%%%

// 'test' is a public domain Mithril for key equality tests in probe maps
typedef mork_i2 mork_test; /* neg=>kVoid, zero=>kHit, pos=>kMiss */

#define morkTest_kVoid ((mork_test) -1) /* -1: nil key slot, no key order */
#define morkTest_kHit  ((mork_test) 0)  /*  0: keys are equal, a map hit */
#define morkTest_kMiss ((mork_test) 1)  /*  1: keys not equal, a map miss */

// { %%%%% begin constants for Mork scalar types %%%%%
#define morkPriority_kHi  ((mork_priority) 0) /* best priority */
#define morkPriority_kMin ((mork_priority) 0) /* best priority is smallest */
@@ -190,6 +200,7 @@ class morkPool;
class morkPlace;
class morkPort;
class morkPortTableCursor;
class morkProbeMap;
class morkRow;
class morkRowCellCursor;
class morkRowObject;
@@ -205,6 +216,7 @@ class morkTableChange;
class morkTableRowCursor;
class morkThumb;
class morkWriter;
class morkZone;
// } %%%%% end class forward defines %%%%%

// include this config file last for platform & environment specific stuff:
+1 −1
Original line number Diff line number Diff line
@@ -219,7 +219,7 @@ morkAtom::GetBookAtomSpaceScope(morkEnv* ev) const // zero or book's space's sco
    const morkBookAtom* bookAtom = (const morkBookAtom*) this;
    morkAtomSpace* space = bookAtom->mBookAtom_Space;
    if ( space->IsAtomSpace() )
      outScope = space->mSpace_Scope;
      outScope = space->SpaceScope();
    else
      space->NonAtomSpaceTypeError(ev);
  }
Loading