From 0eb8b48657c82fa2d301fef08180e51cddd3d3ff Mon Sep 17 00:00:00 2001 From: Rich Hickey Date: Mon, 5 Jun 2006 15:04:51 +0000 Subject: storing loadFactor --- src/cli/runtime/PersistentArray.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/cli') diff --git a/src/cli/runtime/PersistentArray.cs b/src/cli/runtime/PersistentArray.cs index c618a5c3..f1b9b0ed 100644 --- a/src/cli/runtime/PersistentArray.cs +++ b/src/cli/runtime/PersistentArray.cs @@ -61,13 +61,15 @@ internal class Master{ internal int rev; internal int load; internal readonly int maxLoad; + internal readonly float loadFactor; - internal Master(int size,Object defaultVal, double loadFactor){ + internal Master(int size,Object defaultVal, float loadFactor){ this.array = new Entry[size]; this.defaultVal = defaultVal; this.rev = 0; this.load = 0; this.maxLoad = (int)(size * loadFactor); + this.loadFactor = loadFactor; } } @@ -128,11 +130,11 @@ public PersistentArray(int size) } public PersistentArray(int size, Object defaultVal) - :this(size,defaultVal,2.1) + :this(size,defaultVal,2.1f) { } -public PersistentArray(int size, Object defaultVal, double loadFactor){ +public PersistentArray(int size, Object defaultVal, float loadFactor){ this.master = new Master(size, defaultVal, loadFactor); this.rev = 0; this.baseline = 0; @@ -166,7 +168,7 @@ public bool has(int i){ public PersistentArray resize(int newLength) { - PersistentArray ret = new PersistentArray(newLength, master.defaultVal, ((double)master.maxLoad) / length()); + PersistentArray ret = new PersistentArray(newLength, master.defaultVal, master.loadFactor); for (int i = 0; i < Math.Min(length(), newLength); i++) { Entry e = getEntry(i); -- cgit v1.2.3-70-g09d2