aboutsummaryrefslogtreecommitdiff
path: root/cm.lua
diff options
context:
space:
mode:
authorrtk0c <[email protected]>2025-10-15 20:31:31 +0000
committerrtk0c <[email protected]>2025-10-15 20:31:31 +0000
commit81cab430b58b75fe0a6c75722908481dd4d9d55a (patch)
tree499ba0404470de6047238eb554da6f2afa965e24 /cm.lua
parentbc8c20d1e93b5c18e8915d356e74024092a74ce8 (diff)
Move imported files into metafang/ dirHEADmaster
this metaprogramming attempt was started outside, and then imported here 5124eb80701523ac16928219e9a1031eded128ef..bc8c20d1e93b5c18e8915d356e74024092a74ce8
Diffstat (limited to 'cm.lua')
-rw-r--r--cm.lua40
1 files changed, 0 insertions, 40 deletions
diff --git a/cm.lua b/cm.lua
deleted file mode 100644
index e2d11f6..0000000
--- a/cm.lua
+++ /dev/null
@@ -1,40 +0,0 @@
--- Cm: name inspired by "C meta(language)", but it's not really a metalangauge (whatever this means) of C (or anything else)
-
-local function LateResolveType(name)
- -- "lb" - Lazy Binding
- return {_tag = "lb", _lb_typename = name}
-end
-
-local function TypeTagger(tag)
- return function(props)
- props._tag = tag
- return props
- end
-end
-
-local cm_env_fns = {
- _namespace = 0, -- TODO
- _t = LateResolveType,
- _struct = TypeTagger("struct"),
- _union = TypeTagger("union"),
- _alias = TypeTagger("alias"),
-}
-local cm_env_metatable = {__index = cm_env_fns}
-
----@param fn function
----@return table
-function LoadCmLua(fn)
- local env = {}
- setmetatable(env, cm_env_metatable)
-
- local old_fenv = getfenv(fn)
- setfenv(fn, env)
- pcall(fn)
- setfenv(fn, old_fenv)
-
- return env
-end
-
-function LoadCmDecl(src)
- -- TODO
-end