The Intermediate Representation (IR) resolves to a tree of Descriptors, e.g.:
EnumDescriptor
, which hasEnumVariantDescriptor
s which may haveFieldDescriptor
sRecordDescriptor
which haveFieldDescriptor
s.ObjectDescriptor
which haveMethodDescriptor
s, which may haveArgDescriptor
s.
These represent the concrete types and syntactic structures within those types.