You do not have permission to delete messages in this group
Copy link
Report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
I am attempting to use forward references in my program and I am failing.
This also does not work with the older way of putting the name of a class
as a string. Here is some sample code:
from __future__ import annotations
from dataclasses import dataclass
from typing import TypeAlias
ColorDef: TypeAlias = RGB | int | str
@dataclass(frozen=True, slots=True)
class RGB(object):
Can anyone suggest how I should fix this without reversing the statement
order?
pass
--
Jonathan Gossage
MRAB
unread,
Sep 3, 2023, 7:00:08 PM9/3/23
Delete
You do not have permission to delete messages in this group
Copy link
Report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
The usual way to deal with forward type references is to use a string
literal, i.e. 'RGB', but that doesn't work with '|', so use typing.Union
instead: