diff options
| author | Amlal El Mahrouss <amlalelmahrouss@icloud.com> | 2024-02-29 14:53:07 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlalelmahrouss@icloud.com> | 2024-02-29 14:53:07 +0100 |
| commit | 1a22cb4fd330bf01f1c94bd12fcad9ab278b4f80 (patch) | |
| tree | d9348eac0a4476885a674fa612b7f05d0a565a4e /Private | |
| parent | b7f2a078b4284c3adc253f40bc54e733d27b6bd6 (diff) | |
CRT: Remove SOM.
Signed-off-by: Amlal El Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Private')
| -rw-r--r-- | Private/CRT/__som.hxx | 32 | ||||
| -rw-r--r-- | Private/CRT/makefile | 3 | ||||
| -rw-r--r-- | Private/CRT/som_example.cxx | 18 | ||||
| -rw-r--r-- | Private/CRT/som_internal.cxx | 68 |
4 files changed, 0 insertions, 121 deletions
diff --git a/Private/CRT/__som.hxx b/Private/CRT/__som.hxx deleted file mode 100644 index ef9354f7..00000000 --- a/Private/CRT/__som.hxx +++ /dev/null @@ -1,32 +0,0 @@ -/* - * ======================================================== - * - * HCore - * Copyright Mahrouss Logic, all rights reserved. - * - * ======================================================== - */ - -#ifndef __SOM__ -#define __SOM__ - -typedef unsigned long long int _HandleCls; - -/// @brief Looks like an objc class, because it takes inspiration from it. -typedef struct _Handle { - _HandleCls _Cls; - int (*Release)(_Handle *); - _Handle* (*Sel)(_Handle*, ...); -} *Handle; - -extern "C" Handle __som_send(int sel, int len, ...); - -enum { - kSomCreate, - kSomQuery, - kSomCount, -}; - -#define kHUnknown 11 - -#endif /* ifndef __SOM__ */
\ No newline at end of file diff --git a/Private/CRT/makefile b/Private/CRT/makefile deleted file mode 100644 index ab55bebf..00000000 --- a/Private/CRT/makefile +++ /dev/null @@ -1,3 +0,0 @@ -.PHONY: compound-framework -compound-framework: - g++ som_example.cxx som_internal.cxx -o som_example.exe
\ No newline at end of file diff --git a/Private/CRT/som_example.cxx b/Private/CRT/som_example.cxx deleted file mode 100644 index 409c6c2c..00000000 --- a/Private/CRT/som_example.cxx +++ /dev/null @@ -1,18 +0,0 @@ -/* - * ======================================================== - * - * HCore - * Copyright Mahrouss Logic, all rights reserved. - * - * ======================================================== - */ - -#include "__som.hxx" - -int main(int argc, char const *argv[]) -{ - Handle handle_type = (Handle)__som_send(kSomCreate, 1, kHUnknown); - handle_type->Release(handle_type); - - return 0; -} diff --git a/Private/CRT/som_internal.cxx b/Private/CRT/som_internal.cxx deleted file mode 100644 index 4877c318..00000000 --- a/Private/CRT/som_internal.cxx +++ /dev/null @@ -1,68 +0,0 @@ -/* - * ======================================================== - * - * HCore - * Copyright Mahrouss Logic, all rights reserved. - * - * ======================================================== - */ - -#include "__som.hxx" -#include <stdio.h> -#include <stdlib.h> -#include <stdarg.h> - -static void __som_error(const char* msg) -{ - printf("%s\n", "*****************************************"); - printf("%s\n", msg); - printf("%s\n", "*****************************************"); - - exit(-33); -} - -static int __som_release(Handle handle) -{ - printf("%s\n", "*****************************************"); - printf("%s\n", "HUnknown, default behavior."); - printf("%s\n", "*****************************************"); - - free(handle); - return 0; -} - -extern "C" Handle __som_send(int sel, int len, ...) -{ - switch (sel) - { - case kSomCreate: - { - va_list list; - va_start(list, len); - - int id = va_arg(list, int); - - Handle handle = nullptr; - - switch (id) - { - case kHUnknown: - handle = (Handle)malloc(sizeof(struct _Handle)); - handle->Release = __som_release; - handle->_Cls = (_HandleCls)handle; - break; - - default: - __som_error("SOM: Invalid Selector!"); - break; - } - - va_end(list); - - return handle; - } - default: - __som_error("SOM: Invalid Selector!"); - return nullptr; - } -}
\ No newline at end of file |
