![]() |
Public API Reference |
![]() |
Set of helper macros to obtain the names of identifiers. More...
#include "csutil/csstring.h"
Go to the source code of this file.
Classes | |
class | csIdentStrings |
Helper class that contains a list of identifiers and their names. More... | |
Defines | |
#define | CS_IDENT_STRING(Ident) {Ident, #Ident}, |
Entry in the identifier list. | |
#define | CS_IDENT_STRING_EXPLICIT(Ident, Str) {Ident, str}, |
Entry in the identifier list, but with an explicitly set name. | |
#define | CS_IDENT_STRING_LIST(ListName) static const csIdentStrings::csIdentString ListName##_strings[] = { |
Begin an identifier list. | |
#define | CS_IDENT_STRING_LIST_END(ListName) |
End an identifier list. |
Set of helper macros to obtain the names of identifiers.
Definition in file identstrings.h.
#define CS_IDENT_STRING | ( | Ident | ) | {Ident, #Ident}, |
Entry in the identifier list.
Definition at line 98 of file identstrings.h.
#define CS_IDENT_STRING_EXPLICIT | ( | Ident, | |
Str | |||
) | {Ident, str}, |
Entry in the identifier list, but with an explicitly set name.
Definition at line 103 of file identstrings.h.
#define CS_IDENT_STRING_LIST | ( | ListName | ) | static const csIdentStrings::csIdentString ListName##_strings[] = { |
Begin an identifier list.
ListName
is the identifier of the generated csIdentStrings object.
Example:
CS_IDENT_STRING_LIST(FooNames) CS_IDENT_STRING(FOO_BAR) CS_IDENT_STRING(FOO_BAZ) CS_IDENT_STRING_LIST_END(FooNames)
From code, use like:
csPrintf ("%s\n", FooNames.StringForIdent (foo));
Definition at line 92 of file identstrings.h.
#define CS_IDENT_STRING_LIST_END | ( | ListName | ) |
{0, 0} \ }; \ CS_IMPLEMENT_STATIC_VAR(Get##ListName##Scratch, csString, ()) \ static csIdentStrings ListName (ListName##_strings, \ Get##ListName##Scratch(), \ (sizeof (ListName##_strings) / sizeof (csIdentStrings::csIdentString)) - 1);
End an identifier list.
Definition at line 107 of file identstrings.h.