These alias templates allow giving a new name to existing values. They are most useful for avoiding too many template-generated variables. If an alias name matches the name of the source, then no alias will be generated; this behavior is useful when generating aliases in templates where the caller may or may not choose a name that would otherwise conflict with its internal representation. If no description is provided, aliases will inherit the description from the source symbol.