in compiler/src/transform/expand-generics.ts [479:500]
function valueTypeName (value: ValueOf): string {
switch (value.kind) {
case 'literal_value':
return value.value.toString()
case 'user_defined_value':
return 'UserDefined'
case 'array_of':
return 'Array' + valueTypeName(value.value)
case 'dictionary_of':
// Don't care about key, it's always aliased to string
return 'Dict' + valueTypeName(value.value)
case 'union_of':
return 'Union' + value.items.map(v => valueTypeName(v)).join()
case 'instance_of':
return value.type.name
}
}