public inbox for ccan@ozlabs.org
 help / color / mirror / Atom feed
* [PATCH 0/5] cppmagic: Preprocessor tricks
@ 2016-01-27 11:39 David Gibson
  2016-01-27 11:39 ` [PATCH 1/5] cppmagic: New module David Gibson
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: David Gibson @ 2016-01-27 11:39 UTC (permalink / raw)
  To: ccan, rusty

ccan already has cpp macros used in some interesting ways.  This
module is far more interesting.. or possibly horrifying.

It includes some very fancy preprocessor techniques described in the
article at:
    http://jhnet.co.uk/articles/cpp_magic

This includes preprocessing time evaluated conditionals, (sort of)
recursion and iteration across the parameters of varargs macros.

David Gibson (5):
  cppmagic: New module
  cppmagic: Logical operations
  cppmagic: Conditionals
  cppmagic: Allow multiple and deferred evaluation
  cppmagic: Iteration

 ccan/cppmagic/LICENSE    |   1 +
 ccan/cppmagic/_info      |  30 ++++++++
 ccan/cppmagic/cppmagic.h | 191 +++++++++++++++++++++++++++++++++++++++++++++++
 ccan/cppmagic/test/run.c |  92 +++++++++++++++++++++++
 4 files changed, 314 insertions(+)
 create mode 120000 ccan/cppmagic/LICENSE
 create mode 100644 ccan/cppmagic/_info
 create mode 100644 ccan/cppmagic/cppmagic.h
 create mode 100644 ccan/cppmagic/test/run.c

-- 
2.5.0

_______________________________________________
ccan mailing list
ccan@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/ccan

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-02-01  3:58 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-27 11:39 [PATCH 0/5] cppmagic: Preprocessor tricks David Gibson
2016-01-27 11:39 ` [PATCH 1/5] cppmagic: New module David Gibson
2016-01-27 11:39 ` [PATCH 2/5] cppmagic: Logical operations David Gibson
2016-01-27 11:39 ` [PATCH 3/5] cppmagic: Conditionals David Gibson
2016-01-27 11:40 ` [PATCH 4/5] cppmagic: Allow multiple and deferred evaluation David Gibson
2016-01-27 11:40 ` [PATCH 5/5] cppmagic: Iteration David Gibson
2016-01-30 12:51 ` [PATCH 0/5] cppmagic: Preprocessor tricks David Gibson
2016-02-01  1:51   ` Rusty Russell
2016-02-01  3:59     ` David Gibson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox