Introspection

This section describes facilities for the introspection (i.e., the ability to inspect a program’s structure during runtime).

// enums

enum jnc.AccessKind;
enum jnc.BinOpKind;
enum jnc.ClassPtrTypeKind;
bitflag enum jnc.ClassTypeFlags;
enum jnc.ClassTypeKind;
enum jnc.DataPtrTypeKind;
bitflag enum jnc.EnumTypeFlags;
enum jnc.FunctionKind;
bitflag enum jnc.FunctionKindFlags;
enum jnc.FunctionPtrTypeKind;
bitflag enum jnc.FunctionTypeFlags;
bitflag enum jnc.ModuleCompileFlags;
enum jnc.ModuleCompileState;
bitflag enum jnc.ModuleItemFlags;
enum jnc.ModuleItemKind;
enum jnc.NamespaceKind;
bitflag enum jnc.PropertyFlag;
enum jnc.PropertyKind;
enum jnc.PropertyPtrTypeKind;
bitflag enum jnc.PropertyTypeFlags;
bitflag enum jnc.PtrTypeFlags;
enum jnc.StorageKind;
enum jnc.StructTypeKind;
bitflag enum jnc.TypeFlags;
enum jnc.TypeKind;
bitflag enum jnc.TypeKindFlags;
enum jnc.UnOpKind;

// classes

class jnc.Alias;
class jnc.ArrayType;
class jnc.Attribute;
class jnc.AttributeBlock;
class jnc.BaseTypeSlot;
class jnc.ClassPtrType;
class jnc.ClassType;
class jnc.Const;
class jnc.DataPtrType;
class jnc.DerivableType;
class jnc.EnumConst;
class jnc.EnumType;
class jnc.Field;
class jnc.Function;
class jnc.FunctionArg;
class jnc.FunctionOverload;
class jnc.FunctionPtrType;
class jnc.FunctionType;
class jnc.GlobalNamespace;
class jnc.MemberBlock;
class jnc.Module;
class jnc.ModuleItem;
class jnc.ModuleItemDecl;
class jnc.ModuleItemInitializer;
class jnc.NamedType;
class jnc.Namespace;
class jnc.Property;
class jnc.PropertyPtrType;
class jnc.PropertyType;
class jnc.StructType;
class jnc.Type;
class jnc.Typedef;
class jnc.UnionType;
class jnc.Unit;
class jnc.Variable;