From 17d0c87c96ecc45ce1edc42ad1fd22d42362c68c Mon Sep 17 00:00:00 2001 From: blueloveTH Date: Sun, 16 Jun 2024 22:22:44 +0800 Subject: [PATCH] add `public.h` --- include/pocketpy/objects/base.h | 14 +------------- include/pocketpy/objects/public.h | 24 ++++++++++++++++++++++++ src/objects/dict.c | 1 + src/objects/{pyvar.cpp => public.cpp} | 0 4 files changed, 26 insertions(+), 13 deletions(-) create mode 100644 include/pocketpy/objects/public.h rename src/objects/{pyvar.cpp => public.cpp} (100%) diff --git a/include/pocketpy/objects/base.h b/include/pocketpy/objects/base.h index ac4e1055..483807ee 100644 --- a/include/pocketpy/objects/base.h +++ b/include/pocketpy/objects/base.h @@ -7,20 +7,12 @@ #include "string.h" #include "pocketpy/common/utils.h" +#include "pocketpy/objects/public.h" #ifdef __cplusplus extern "C" { #endif -typedef int16_t pkpy_Type; - -typedef struct PyObject PyObject; -typedef struct pkpy_VM pkpy_VM; - -struct pkpy_G { - pkpy_VM* vm; -} extern pkpy_g; - typedef struct PyVar{ pkpy_Type type; bool is_ptr; @@ -77,10 +69,6 @@ PK_INLINE bool PyVar__IS_OP(const PyVar* a, const PyVar* b){ extern PyVar pkpy_NULL, pkpy_OP_CALL, pkpy_OP_YIELD; -bool py_eq(const PyVar*, const PyVar*); -bool py_le(const PyVar*, const PyVar*); -int64_t py_hash(const PyVar*); - #ifdef __cplusplus } #endif diff --git a/include/pocketpy/objects/public.h b/include/pocketpy/objects/public.h new file mode 100644 index 00000000..97a67410 --- /dev/null +++ b/include/pocketpy/objects/public.h @@ -0,0 +1,24 @@ +#pragma once + +#include "stdint.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef int16_t pkpy_Type; +typedef struct PyObject PyObject; +typedef struct PyVar PyVar; +typedef struct pkpy_VM pkpy_VM; + +struct pkpy_G { + pkpy_VM* vm; +} extern pkpy_g; + +bool py_eq(const PyVar*, const PyVar*); +bool py_le(const PyVar*, const PyVar*); +int64_t py_hash(const PyVar*); + +#ifdef __cplusplus +} +#endif diff --git a/src/objects/dict.c b/src/objects/dict.c index 37b10a69..20375e39 100644 --- a/src/objects/dict.c +++ b/src/objects/dict.c @@ -3,6 +3,7 @@ #include #include #include +#include "pocketpy/objects/public.h" #define DICT_MAX_LOAD 0.75 #define DICT_HASH_NEXT(h) ((h) * 5 + 1) diff --git a/src/objects/pyvar.cpp b/src/objects/public.cpp similarity index 100% rename from src/objects/pyvar.cpp rename to src/objects/public.cpp