I was more enquiring what the actual implementation will return, and if it's worth deciding by one form or other; or both are allowed and determined as an implementation detail. Assume I want to do some kind of processing based on this meta-data, as a consumer of get_type_hints which form should I expect, or both are valid and I need to handle both cases?

On Wed, May 22, 2019 at 4:01 PM Till <till.varoquaux@gmail.com> wrote:
Happy to see positive reactions, I'll get started on the
implementation in typing-extensions.

Bernat; I'm not sure I follow your question:

> Do we get?
>
>     get_type_hints(Student, include_extras=True) == { 'name': UnsignedShort}
>
> or
>
>     get_type_hints(Student, include_extras=True) == { 'name': Annotated[int, struct2.ctype('H')]}


UnsignedShort == Annotated[int, struct2.ctype('H') so both these
equalities should hold. Does that make sense?

Till