libGimbal 0.1.0
C17-Based Extended Standard Library and Cross-Language Runtime Framework
Loading...
Searching...
No Matches
gimbal_flags.h File Reference

Go to the source code of this file.

Data Structures

struct  GblFlagEntry
 
struct  GblFlagsClass
 

Macros

Type System

Type UUID and cast operators

#define GBL_FLAGS_TYPE
 
#define GBL_FLAGS_CLASS(klass)
 
Helper Macros

Utility macros to aid in representing GblFlagEntry lists

#define GBL_FLAGS_ENTRY(flagsValue, nick)
 
#define GBL_FLAGS_ENTRY_LAST()
 

Functions

GblType GblFlags_register (const char *pName, const GblFlagEntry *pEntries)
 
GblBool GblFlags_check (GblFlags value, GblType type)
 
GBL_RESULT GblFlags_appendString (GblFlags value, GblType type, GblStringBuffer *pBuffer)
 
Flags from Strings

Methods for getting a flags value from string

GblFlags GblFlags_fromName (const char *pName, GblType type)
 
GblFlags GblFlags_fromNameQuark (GblQuark name, GblType type)
 
GblFlags GblFlags_fromNick (const char *pNick, GblType type)
 
GblFlags GblFlags_fromNickQuark (GblQuark nick, GblType type)
 
GblFlags GblFlags_fromString (const char *pName, GblType type)
 
Enums to Strings

Methods for getting a string from a flags value

const char * GblFlags_name (GblFlags value, GblType type)
 
GblQuark GblFlags_nameQuark (GblFlags value, GblType type)
 
const char * GblFlags_nick (GblFlags value, GblType type)
 
GblQuark GblFlags_nickQuark (GblFlags value, GblType type)
 

Detailed Description

GblFlagsClass and API for managing flag types.

Author
2023 Falco Girgis

Definition in file gimbal_flags.h.

Macro Definition Documentation

◆ GBL_FLAGS_TYPE

#define GBL_FLAGS_TYPE

GblType UUID for flags.

Definition at line 18 of file gimbal_flags.h.

◆ GBL_FLAGS_CLASS

#define GBL_FLAGS_CLASS (   klass)

Cast a GblClass to GblFlagsClass.

Definition at line 19 of file gimbal_flags.h.

◆ GBL_FLAGS_ENTRY

#define GBL_FLAGS_ENTRY (   flagsValue,
  nick 
)

Definition at line 26 of file gimbal_flags.h.

◆ GBL_FLAGS_ENTRY_LAST

#define GBL_FLAGS_ENTRY_LAST ( )

Definition at line 27 of file gimbal_flags.h.