1#ifndef INTERNAL_NAMESPACE_H
2#define INTERNAL_NAMESPACE_H
25 VALUE load_path_snapshot;
26 VALUE load_path_check_cache;
27 VALUE expanded_load_path;
28 VALUE loaded_features;
29 VALUE loaded_features_snapshot;
30 VALUE loaded_features_realpaths;
31 VALUE loaded_features_realpath_map;
32 struct st_table *loaded_features_index;
34 VALUE ruby_dln_libmap;
44#define NAMESPACE_BUILTIN_P(ns) (ns && ns->is_builtin)
45#define NAMESPACE_USER_P(ns) (ns && ns->is_user)
46#define NAMESPACE_OPTIONAL_P(ns) (ns && ns->is_optional)
47#define NAMESPACE_MAIN_P(ns) (ns && ns->is_user && !ns->is_optional)
49#define NAMESPACE_METHOD_DEFINITION(mdef) (mdef ? mdef->ns : NULL)
50#define NAMESPACE_METHOD_ENTRY(me) (me ? NAMESPACE_METHOD_DEFINITION(me->def) : NULL)
51#define NAMESPACE_CC(cc) (cc ? NAMESPACE_METHOD_ENTRY(cc->cme_) : NULL)
52#define NAMESPACE_CC_ENTRIES(ccs) (ccs ? NAMESPACE_METHOD_ENTRY(ccs->cme) : NULL)
54int rb_namespace_available(
void);
55void rb_namespace_enable_builtin(
void);
56void rb_namespace_disable_builtin(
void);
67void rb_namespace_entry_mark(
void *);
76void rb_initialize_main_namespace(
void);
Internal header for Namespace.
uintptr_t VALUE
Type that represents a Ruby object.