GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — cpp_initialization/cpp23/common.h at main · randomnetcat/cpp_initialization

Expand file tree

/

common.h

Copy path
More file actions
More file actions

Latest commit

 

History

History
History
46 lines (36 loc) · 2.62 KB
/

common.h

Copy path

File metadata and controls

46 lines (36 loc) · 2.62 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#define TOKEN_CAT_(X, Y) X##Y
#define TOKEN_CAT(X, Y) TOKEN_CAT_(X, Y)
#define COLOR_GREEN "#008000"
#define DONE_NODE(id) { id [label="Done.", style=filled, fillcolor=COLOR_GREEN, shape=box, color=COLOR_GREEN, fontcolor=white]; }
#define ILL_FORMED_NODE(id) { id [label="The program is ill-formed.", shape=box, style=filled, color=red, fontcolor=white]; }
#define RECURSE_SUBOBJECT_NODE(id) { id [label="Partially recurse.", shape=box, style=filled, color=lightblue, fontcolor=black]}
#define RECURSE_NODE(id) { id [label="Recurse.", shape=box, style=filled, color=blue, fontcolor=white]}
#define YES_NODE(id, text) { id [label=text, shape=box, color=COLOR_GREEN, fontcolor=black]; }
#define NO_NODE(id, text) { id [label=text, shape=box, color=red, fontcolor=black]; }
#define NEW_DONE() { DONE_NODE(TOKEN_CAT(__local_done_, __COUNTER__)); }
#define NEW_ILL_FORMED() { ILL_FORMED_NODE(TOKEN_CAT(__local_ill_formed_, __COUNTER__)); }
#define NEW_RECURSE() { RECURSE_NODE(TOKEN_CAT(__local_recurse, __COUNTER__)); }
#define NEW_RECURSE_SUBOBJECT() { RECURSE_SUBOBJECT_NODE(TOKEN_CAT(__local_recurse_subobject, __COUNTER__)); }
#define NEW_YES(label) { YES_NODE(TOKEN_CAT(__local_yes_, __COUNTER__), label); }
#define NEW_NO(label) { NO_NODE(TOKEN_CAT(__local_no_, __COUNTER__), label); }
#define INTERNALLY_RECURSES_SUBOBJECT(id) { id -> { RECURSE_SUBOBJECT_NODE(TOKEN_CAT(id, __recurse)); } [style="dotted"]; }
// Arguments: name of source node, optional edge attrs.
#define LINK_TO_DONE(id, ...) { id -> { DONE_NODE(TOKEN_CAT(id, __generated_done)); } __VA_ARGS__; }
#define LINK_TO_ILL_FORMED(id, ...) { id -> { ILL_FORMED_NODE(TOKEN_CAT(id, __generated_ill_formed)); } __VA_ARGS__; }
// Arguments: name, description (string literal), optional citation.
#define QUESTION_NODE(id, text, ...) { id [shape=diamond, label=text __VA_OPT__(+ "\n" +) __VA_ARGS__]; }
#define INSTRUCTION_NODE(id, text, ...) { id [shape=box, label=text __VA_OPT__(+ "\n" +) __VA_ARGS__]; }
// Arguments: name, description (string literal), citation (string literal), yes node ID, no node ID.
#define YN_QUESTION_NODE(id, text, cite, yes_id, no_id) { \
QUESTION_NODE(id, text, cite); \
id -> yes_id [label="Yes"]; \
id -> no_id [label="No"]; \
}
// Arguments: name, description (string literal), citation (string literal), yes node ID, no node ID.
#define YN_QUESTION_NODE_NO_CITE(id, text, yes_id, no_id) { \
QUESTION_NODE(id, text); \
id -> yes_id [label="Yes"]; \
id -> no_id [label="No"]; \
}
#define INIT_AS_FOLLOWS(id, ...) { INSTRUCTION_NODE(id, "Initialize the object as follows:", __VA_ARGS__); }
#define LOOP_BACKEDGE(source, loop_header) { source -> loop_header [style="dashed"]; }
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.