summaryrefslogtreecommitdiff
path: root/docs/application/namespace.md
diff options
context:
space:
mode:
authornodist <kevin.comas.git@gmail.com>2026-06-11 12:08:10 -0400
committernodist <kevin.comas.git@gmail.com>2026-06-11 12:08:10 -0400
commit20a19f433956f063d8048f032aaf5dcce1d61e7c (patch)
treec9720211c62e75a245c252c82f6353e5162fcb86 /docs/application/namespace.md
parent51d055dc7e1a6edbaedb7ea80b1e678eff924fe0 (diff)
add algo for mutating shared object
Diffstat (limited to 'docs/application/namespace.md')
-rw-r--r--docs/application/namespace.md32
1 files changed, 16 insertions, 16 deletions
diff --git a/docs/application/namespace.md b/docs/application/namespace.md
index 70bbc2d..3dd6bfa 100644
--- a/docs/application/namespace.md
+++ b/docs/application/namespace.md
@@ -10,39 +10,39 @@ typedef struct _kpl_export {
kpl_type_ptr type;
} kpl_export;
-typedef struct _kpl_native_namespace {
- POOL_HEADER(_kpl_native_namespace);
+typedef struct _kpl_namespace_native {
+ POOL_HEADER(_kpl_namespace_native);
kpl_buffer *name;
kpl_export *exports;
-} kpl_native_namespace;
+} kpl_namespace_native;
-static kpl_native_namespace *native_namespace_head;
+static kpl_namespace_native *namespace_native_head;
-typedef struct _kpl_file_namespace {
- POOL_HEADER(_kpl_file_namespace);
+typedef struct _kpl_namespace_module {
+ POOL_HEADER(_kpl_namespace_module);
kpl_type_ptr ast;
kpl_queue *parents;
- kpl_buffer *file_name, *file_string;
+ kpl_buffer *module_name, *module_string;
kpl_export *exports;
kpl_task *task;
_Atomic int32_t children;
-} kpl_file_namespace;
+} kpl_namespace_module;
-static kpl_file_namespace *file_namespace_head;
+static kpl_namespace_module *namespace_module_head;
-typedef struct _kpl_string_namespace {
+typedef struct _kpl_namespace_string {
kpl_buffer *string;
kpl_task *task;
kpl_type_ptr ast;
_Atomic int32_t children;
-} kpl_string_namespace;
+} kpl_namespace_string;
```
-Each `NAMESPACE_IDENTIFIER` maps to `kpl_native_namespace*` or `kpl_file_namespace*` depending on `Namespace_class`
+Each `NAMESPACE_IDENTIFIER` maps to `kpl_namespace_native*` or `kpl_namespace_module*` depending on flags
## Lookup and Storage
-The native and namespace objects are stored as a tree under `native_namespace_head` and `file_namespace_head`
+The native and namespace objects are stored as a tree under `namespace_native_head` and `namespace_module_head`
The exports are stored under a tree for both the native and namespace objects
@@ -50,7 +50,7 @@ The exports are stored under a tree for both the native and namespace objects
## Native
-## File
+## Module
### Main
@@ -60,7 +60,7 @@ The exports are stored under a tree for both the native and namespace objects
# Updating
-## File
+## Module
### ``export`
@@ -70,6 +70,6 @@ The exports are stored under a tree for both the native and namespace objects
### ``use`
-## File
+## Module
### ``import`