Namespace

#include <jnc_Namespace.h>

// enums

enum jnc_NamespaceKind;
enum jnc_StdNamespace;

// structs

struct jnc_Namespace;

// global functions

const char*
jnc_Alias_getInitializerString_v(jnc_Alias* alias);

bool_t
jnc_Alias_isResolved(jnc_Alias* alias);

jnc_ModuleItem*
jnc_Alias_getTargetItem(jnc_Alias* alias);

const char*
jnc_getNamespaceKindString(jnc_NamespaceKind namespaceKind);

bool_t
jnc_Namespace_isReady(jnc_Namespace* nspace);

jnc_NamespaceKind
jnc_Namespace_getNamespaceKind(jnc_Namespace* nspace);

jnc_Namespace*
jnc_Namespace_getParentNamespace(jnc_Namespace* nspace);

jnc_ModuleItem*
jnc_Namespace_getParentItem(jnc_Namespace* nspace);

size_t
jnc_Namespace_getItemCount(jnc_Namespace* nspace);

jnc_ModuleItem*
jnc_Namespace_getItem(
    jnc_Namespace* nspace,
    size_t index
);

jnc_FindModuleItemResult
jnc_Namespace_findDirectChildItem(
    jnc_Namespace* nspace,
    const char* name
);

jnc_FindModuleItemResult
jnc_Namespace_findItem(
    jnc_Namespace* nspace,
    const char* name
);

jnc_FindModuleItemResult
jnc_Namespace_findItemNoParse(
    jnc_Namespace* nspace,
    const char* name
);

// macros

#define JNC_GLOBAL_NAMESPACE_DOXID