Module Item

#include <jnc_ModuleItem.h>

// enums

enum jnc_ModuleItemFlag;
enum jnc_ModuleItemKind;

// structs

struct jnc_FindModuleItemResult;
struct jnc_ModuleItem;

// global variables

JNC_SELECT_ANY jnc_FindModuleItemResult jnc_g_errorFindModuleItemResult = { 0, NULL };
JNC_SELECT_ANY jnc_FindModuleItemResult jnc_g_nullFindModuleItemResult = { 1, NULL };

// global functions

const char*
jnc_getModuleItemKindString(jnc_ModuleItemKind itemKind);

jnc_Module*
jnc_ModuleItem_getModule(jnc_ModuleItem* item);

jnc_ModuleItemKind
jnc_ModuleItem_getItemKind(jnc_ModuleItem* item);

uint_t
jnc_ModuleItem_getFlags(jnc_ModuleItem* item);

jnc_ModuleItemDecl*
jnc_ModuleItem_getDecl(jnc_ModuleItem* item);

jnc_Namespace*
jnc_ModuleItem_getNamespace(jnc_ModuleItem* item);

jnc_Type*
jnc_ModuleItem_getType(jnc_ModuleItem* item);

const char*
jnc_ModuleItem_getSynopsis_v(
    jnc_ModuleItem* item,
    bool_t isQualifiedName
);