diff --git a/include/System/object.h b/include/System/object.h new file mode 100644 index 0000000..4186eea --- /dev/null +++ b/include/System/object.h @@ -0,0 +1,31 @@ +/* $Id$ */ +/* Copyright (c) 2008 Pierre Pronchery */ +/* This file is part of DeforaOS System libSystem */ +/* libSystem is not free software; you can redistribute it and/or modify it + * under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike + * 3.0 Unported as published by the Creative Commons organization. + * + * libSystem is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + * A PARTICULAR PURPOSE. See the Creative Commons Attribution-NonCommercial- + * ShareAlike 3.0 Unported license for more details. + * + * You should have received a copy of the Creative Commons Attribution- + * NonCommercial-ShareAlike 3.0 along with libSystem; if not, browse to + * http://creativecommons.org/licenses/by-nc-sa/3.0/ */ + + + +#ifndef LIBSYSTEM_OBJECT_H +# define LIBSYSTEM_OBJECT_H + + +/* Object */ +typedef void Object; + + +/* functions */ +Object * object_new(size_t size); +void object_delete(Object * object); + +#endif /* !LIBSYSTEM_OBJECT_H */ diff --git a/src/object.c b/src/object.c new file mode 100644 index 0000000..fbd5d6d --- /dev/null +++ b/src/object.c @@ -0,0 +1,46 @@ +/* $Id$ */ +/* Copyright (c) 2007 Pierre Pronchery */ +/* This file is part of DeforaOS System libSystem */ +/* libSystem is not free software; you can redistribute it and/or modify it + * under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike + * 3.0 Unported as published by the Creative Commons organization. + * + * libSystem is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + * A PARTICULAR PURPOSE. See the Creative Commons Attribution-NonCommercial- + * ShareAlike 3.0 Unported license for more details. + * + * You should have received a copy of the Creative Commons Attribution- + * NonCommercial-ShareAlike 3.0 along with libSystem; if not, browse to + * http://creativecommons.org/licenses/by-nc-sa/3.0/ */ + + + +#include +#include +#include +#include "System.h" + + +/* Object */ +/* public */ +/* functions */ +/* object_new */ +void * object_new(size_t size) +{ + void * ptr; + + if((ptr = malloc(size)) == NULL) + { + error_set_code(1, "%s", strerror(errno)); + return NULL; + } + return ptr; +} + + +/* object_delete */ +void object_delete(void * object) +{ + free(object); +}