Objectively
Ultra-lightweight object oriented framework for GNU C.
Loading...
Searching...
No Matches
Object.h File Reference

Object is the root Class of The Objectively Class hierarchy. More...

Go to the source code of this file.

Data Structures

struct  Object
 Object is the root Class of The Objectively Class hierarchy. More...
 

Functions

OBJECTIVELY_EXPORT Class_Object (void)
 

Detailed Description

Object is the root Class of The Objectively Class hierarchy.

Definition in file Object.h.

Function Documentation

◆ _Object()

OBJECTIVELY_EXPORT Class * _Object ( void  )

Definition at line 136 of file Object.c.

136 {
137 static Class *clazz;
138 static Once once;
139
140 do_once(&once, {
141 clazz = _initialize(&(const ClassDef) {
142 .name = "Object",
143 .instanceSize = sizeof(Object),
144 .interfaceOffset = offsetof(Object, interface),
145 .interfaceSize = sizeof(ObjectInterface),
147 });
148 });
149
150 return clazz;
151}
Class * _initialize(const ClassDef *def)
Initializes the given Class.
Definition Class.c:86
static void initialize(Class *clazz)
Definition Object.c:121
long Once
The Once type.
Definition Once.h:37
#define do_once(once, block)
Executes the given block at most one time.
Definition Once.h:43
ClassDefs are passed to _initialize via an archetype to initialize a Class.
Definition Class.h:41
The runtime representation of a Class.
Definition Class.h:95
Object is the root Class of The Objectively Class hierarchy.
Definition Object.h:46