+++ /dev/null
-from .api import contextual, builtin
-from .lcnodes import LCFuncNode, LCTermNode, LCModuleNode
-from lib.utils import join_path
-import os
-
-@contextual()
-def v(env, caller, term):
- node = env.lookup_node(term.__name__)
- env.dependency().add(node, caller)
- return env.resolve_symbol(node.get_name())
-
-@contextual(caller_type=[LCModuleNode])
-def include(env, caller, file):
- fobj = caller.get_fo()
- path = os.path.dirname(fobj.filename())
- path = join_path(path, file)
-
- if os.path.isdir(path):
- path = join_path(path, "LConfig")
-
- env.resolve_module(path)
-
-@contextual("type", caller_type=[LCTermNode])
-def term_type(env, caller, type):
- caller.set_type(type)
-
-@contextual("add_to_collection", caller_type=[LCFuncNode])
-def parent(env, caller, ref):
- sym = env.lookup_node(ref.__name__)
-
- caller.set_parent(sym)
-
-@contextual(caller_type=[LCTermNode])
-def default(env, caller, val):
- caller.set_default(val)
-
-@contextual(caller_type=[LCTermNode])
-def set_value(env, caller, val):
- caller.set_value(val)
-
-@builtin()
-def env(env, key, default=None):
- return os.getenv(key, default)
\ No newline at end of file