buffer.h 558 B

12345678910111213141516171819202122232425262728
  1. #ifndef _LSUP_BUFFER_H
  2. #define _LSUP_BUFFER_H
  3. #include "core.h"
  4. typedef struct LSUP_Buffer {
  5. void *addr;
  6. size_t size;
  7. } LSUP_Buffer;
  8. LSUP_Buffer *LSUP_buffer_new(size_t size);
  9. int LSUP_buffer_init(LSUP_Buffer *buf, size_t size);
  10. void LSUP_buffer_print(const LSUP_Buffer *buf);
  11. void LSUP_buffer_done(LSUP_Buffer *buf);
  12. inline bool LSUP_buffer_eq(
  13. const LSUP_Buffer *buf1, const LSUP_Buffer *buf2)
  14. {
  15. if (buf1->size != buf2->size) return false;
  16. return (memcmp(buf1->addr, buf2->addr, buf1->size) == 0) ? true : false;
  17. }
  18. #endif