# Namespace --- ```text Namespace[[NATIVE | MODULE | MAIN] NAMESPACE_POINTER] ``` ## Type Body Object Definitions ```c typedef struct { union { kpl_namespace_native *native; kpl_namespace_module *module; } namespace; } kpl_type_body_namespace; ``` ## Exports ### \`export #### Type must be Fn[STATELESS], Overload, Const, Shared or Namespace to export #### Re-exporting ## Imports ### \`import ```text namespace : `import Value[String] ``` All imports are relative to the importer ### \`use ```text namespace : `use Value[String] ``` ## Namespace destructuring ```text namespace : `use Value[String] namespace[scope_name.namespace_name] namespcae[name] // resolves to namespace[name.name] `use Value[String] [name] ``` ## Main ### \`is_main Run this function if the module is not imported