From 945fd71c12fe1c12c07e9927c799df650bd367b2 Mon Sep 17 00:00:00 2001 From: Leonardo Date: Fri, 22 Mar 2019 21:29:28 -0300 Subject: [PATCH] Added stand-alone macros to directly generate a data structure --- src/deque.h | 5 +++++ src/list.h | 5 +++++ src/queue.h | 5 +++++ src/stack.h | 5 +++++ 4 files changed, 20 insertions(+) diff --git a/src/deque.h b/src/deque.h index d31f451..3a3896a 100644 --- a/src/deque.h +++ b/src/deque.h @@ -19,6 +19,11 @@ #include #include +#define DEQUE_GENERATE(PFX, SNAME, FMOD, K, T) \ + DEQUE_GENERATE_STRUCT(PFX, SNAME, FMOD, K, T) \ + DEQUE_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) \ + DEQUE_GENERATE_SOURCE(PFX, SNAME, FMOD, K, T) + /* PRIVATE *******************************************************************/ #define DEQUE_GENERATE_HEADER_PRIVATE(PFX, SNAME, FMOD, K, T) \ DEQUE_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) diff --git a/src/list.h b/src/list.h index 719157c..8498904 100644 --- a/src/list.h +++ b/src/list.h @@ -19,6 +19,11 @@ #include #include +#define LIST_GENERATE(PFX, SNAME, FMOD, K, T) \ + LIST_GENERATE_STRUCT(PFX, SNAME, FMOD, K, T) \ + LIST_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) \ + LIST_GENERATE_SOURCE(PFX, SNAME, FMOD, K, T) + /* PRIVATE *******************************************************************/ #define LIST_GENERATE_HEADER_PRIVATE(PFX, SNAME, FMOD, K, T) \ LIST_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) diff --git a/src/queue.h b/src/queue.h index 7cd46fe..0ee201f 100644 --- a/src/queue.h +++ b/src/queue.h @@ -19,6 +19,11 @@ #include #include +#define QUEUE_GENERATE(PFX, SNAME, FMOD, K, T) \ + QUEUE_GENERATE_STRUCT(PFX, SNAME, FMOD, K, T) \ + QUEUE_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) \ + QUEUE_GENERATE_SOURCE(PFX, SNAME, FMOD, K, T) + /* PRIVATE *******************************************************************/ #define QUEUE_GENERATE_HEADER_PRIVATE(PFX, SNAME, FMOD, K, T) \ QUEUE_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) diff --git a/src/stack.h b/src/stack.h index 6af5b4d..69ce95b 100644 --- a/src/stack.h +++ b/src/stack.h @@ -19,6 +19,11 @@ #include #include +#define STACK_GENERATE(PFX, SNAME, FMOD, K, T) \ + STACK_GENERATE_STRUCT(PFX, SNAME, FMOD, K, T) \ + STACK_GENERATE_HEADER(PFX, SNAME, FMOD, K, T) \ + STACK_GENERATE_SOURCE(PFX, SNAME, FMOD, K, T) + /* PRIVATE *******************************************************************/ #define STACK_GENERATE_HEADER_PRIVATE(PFX, SNAME, FMOD, K, T) \ STACK_GENERATE_HEADER(PFX, SNAME, FMOD, K, T)