added send and recv builtins
This commit is contained in:
@@ -48,6 +48,21 @@ Object *Object_NewBuffer(int size, Heap *heap, Error *error)
|
||||
return (Object*) obj;
|
||||
}
|
||||
|
||||
void *Object_GetBufferAddrAndSize(Object *obj, int *size, Error *error)
|
||||
{
|
||||
if(obj->type != &t_buffer)
|
||||
{
|
||||
Error_Report(error, 0, "Not a buffer");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
BufferObject *buf = (BufferObject*) obj;
|
||||
|
||||
if(size)
|
||||
*size = buf->size;
|
||||
return buf->body;
|
||||
}
|
||||
|
||||
static Object *select(Object *self, Object *key, Heap *heap, Error *error)
|
||||
{
|
||||
assert(self != NULL);
|
||||
|
||||
@@ -72,6 +72,7 @@ const Type* Object_GetType(const Object *obj);
|
||||
const char* Object_GetName(const Object *obj);
|
||||
unsigned int Object_GetSize(const Object *obj, Error *err);
|
||||
unsigned int Object_GetDeepSize(const Object *obj, Error *err);
|
||||
void *Object_GetBufferAddrAndSize(Object *obj, int *size, Error *error);
|
||||
int Object_Hash (Object *obj, Error *err);
|
||||
Object* Object_Copy (Object *obj, Heap *heap, Error *err);
|
||||
Object* Object_Call (Object *obj, Object **argv, unsigned int argc, Heap *heap, Error *err);
|
||||
|
||||
Reference in New Issue
Block a user