The identifier is defined by an argument (which we know nothing about at the moment)
The identifier is defined by a built-in value/constant
The identifier is defined by a built-in function
The identifier is defined by a constant (includes built-in constant)
The identifier is defined by a function (includes built-in function)
Only ever a lookup target, never the type of a definition: everything a value position may see.
The identifier is defined by a parameter (which we know nothing about at the moment)
Prefix to identify S3 methods, use this, to for example dispatch a call to f which will then link to f.*
Prefix to identify S7 methods, use this, to for example dispatch a call to f which will then link to f<7>*
The identifier type is unknown
The identifier is defined by a variable (includes parameter and argument)
Each reference has exactly one reference type, stored as the respective number.