diff options
Diffstat (limited to 'benchmark/fast_buffer2.js')
-rw-r--r-- | benchmark/fast_buffer2.js | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/benchmark/fast_buffer2.js b/benchmark/fast_buffer2.js deleted file mode 100644 index 861ae3baa..000000000 --- a/benchmark/fast_buffer2.js +++ /dev/null @@ -1,42 +0,0 @@ -var SlowBuffer = require('buffer').SlowBuffer; -var POOLSIZE = 8*1024; -var pool; - -function allocPool () { - pool = new SlowBuffer(POOLSIZE); - pool.used = 0; -} - -function FastBuffer (length) { - this.length = length; - - if (length > POOLSIZE) { - // Big buffer, just alloc one. - this.parent = new Buffer(length); - this.offset = 0; - } else { - // Small buffer. - if (!pool || pool.length - pool.used < length) allocPool(); - this.parent = pool; - this.offset = pool.used; - pool.used += length; - } - - // HERE HERE HERE - SlowBuffer.makeFastBuffer(this.parent, this, this.offset, this.length); -} - -exports.FastBuffer = FastBuffer; - -FastBuffer.prototype.get = function (i) { - if (i < 0 || i >= this.length) throw new Error("oob"); - return this.parent[this.offset + i]; -}; - -FastBuffer.prototype.set = function (i, v) { - if (i < 0 || i >= this.length) throw new Error("oob"); - return this.parent[this.offset + i] = v; -}; - -// TODO define slice, toString, write, etc. -// slice should not use c++ |