From 22eed894840fe80c19f6090df5015057396c344a Mon Sep 17 00:00:00 2001 From: Erik Charlebois Date: Sat, 11 May 2013 21:46:08 -0400 Subject: [PATCH] VM: Refactor byte_arrays to Factor style --- vm/byte_arrays.cpp | 81 +++++++++++++++++++++------------------------- vm/byte_arrays.hpp | 28 ++++++++-------- 2 files changed, 50 insertions(+), 59 deletions(-) diff --git a/vm/byte_arrays.cpp b/vm/byte_arrays.cpp index 907cf3ee63..486d1bb806 100644 --- a/vm/byte_arrays.cpp +++ b/vm/byte_arrays.cpp @@ -1,76 +1,67 @@ #include "master.hpp" -namespace factor -{ +namespace factor { /* Allocates memory */ -byte_array *factor_vm::allot_byte_array(cell size) -{ - byte_array *array = allot_uninitialized_array(size); - memset(array + 1,0,size); - return array; +byte_array* factor_vm::allot_byte_array(cell size) { + byte_array* array = allot_uninitialized_array(size); + memset(array + 1, 0, size); + return array; } /* Allocates memory */ -void factor_vm::primitive_byte_array() -{ - cell size = unbox_array_size(); - ctx->push(tag(allot_byte_array(size))); +void factor_vm::primitive_byte_array() { + cell size = unbox_array_size(); + ctx->push(tag(allot_byte_array(size))); } /* Allocates memory */ -void factor_vm::primitive_uninitialized_byte_array() -{ - cell size = unbox_array_size(); - ctx->push(tag(allot_uninitialized_array(size))); +void factor_vm::primitive_uninitialized_byte_array() { + cell size = unbox_array_size(); + ctx->push(tag(allot_uninitialized_array(size))); } /* Allocates memory */ -void factor_vm::primitive_resize_byte_array() -{ - data_root array(ctx->pop(),this); - array.untag_check(this); - cell capacity = unbox_array_size(); - ctx->push(tag(reallot_array(array.untagged(),capacity))); +void factor_vm::primitive_resize_byte_array() { + data_root array(ctx->pop(), this); + array.untag_check(this); + cell capacity = unbox_array_size(); + ctx->push(tag(reallot_array(array.untagged(), capacity))); } /* Allocates memory */ -void growable_byte_array::grow_bytes(cell len) -{ - count += len; - if(count >= array_capacity(elements.untagged())) - elements = elements.parent->reallot_array(elements.untagged(),count * 2); +void growable_byte_array::grow_bytes(cell len) { + count += len; + if (count >= array_capacity(elements.untagged())) + elements = elements.parent->reallot_array(elements.untagged(), count * 2); } /* Allocates memory */ -void growable_byte_array::append_bytes(void *elts, cell len) -{ - cell old_count = count; - grow_bytes(len); - memcpy(&elements->data()[old_count],elts,len); +void growable_byte_array::append_bytes(void* elts, cell len) { + cell old_count = count; + grow_bytes(len); + memcpy(&elements->data()[old_count], elts, len); } /* Allocates memory */ -void growable_byte_array::append_byte_array(cell byte_array_) -{ - data_root byte_array(byte_array_,elements.parent); +void growable_byte_array::append_byte_array(cell byte_array_) { + data_root byte_array(byte_array_, elements.parent); - cell len = array_capacity(byte_array.untagged()); - cell new_size = count + len; - factor_vm *parent = elements.parent; - if(new_size >= array_capacity(elements.untagged())) - elements = parent->reallot_array(elements.untagged(),new_size * 2); + cell len = array_capacity(byte_array.untagged()); + cell new_size = count + len; + factor_vm* parent = elements.parent; + if (new_size >= array_capacity(elements.untagged())) + elements = parent->reallot_array(elements.untagged(), new_size * 2); - memcpy(&elements->data()[count],byte_array->data(),len); + memcpy(&elements->data()[count], byte_array->data(), len); - count += len; + count += len; } /* Allocates memory */ -void growable_byte_array::trim() -{ - factor_vm *parent = elements.parent; - elements = parent->reallot_array(elements.untagged(),count); +void growable_byte_array::trim() { + factor_vm* parent = elements.parent; + elements = parent->reallot_array(elements.untagged(), count); } } diff --git a/vm/byte_arrays.hpp b/vm/byte_arrays.hpp index 555c7561ff..3a388f0dd6 100644 --- a/vm/byte_arrays.hpp +++ b/vm/byte_arrays.hpp @@ -1,25 +1,25 @@ -namespace factor -{ +namespace factor { struct growable_byte_array { - cell count; - data_root elements; + cell count; + data_root elements; - explicit growable_byte_array(factor_vm *parent,cell capacity = 40) : count(0), elements(parent->allot_byte_array(capacity),parent) { } + explicit growable_byte_array(factor_vm* parent, cell capacity = 40) + : count(0), elements(parent->allot_byte_array(capacity), parent) {} - void grow_bytes(cell len); - void append_bytes(void *elts, cell len); - void append_byte_array(cell elts); + void grow_bytes(cell len); + void append_bytes(void* elts, cell len); + void append_byte_array(cell elts); - void trim(); + void trim(); }; /* Allocates memory */ -template byte_array *factor_vm::byte_array_from_value(Type *value) -{ - byte_array *data = allot_uninitialized_array(sizeof(Type)); - memcpy(data->data(),value,sizeof(Type)); - return data; +template +byte_array* factor_vm::byte_array_from_value(Type* value) { + byte_array* data = allot_uninitialized_array(sizeof(Type)); + memcpy(data->data(), value, sizeof(Type)); + return data; } }