1313import binascii
1414import sys
1515from dataclasses import dataclass
16- from typing import Any , TYPE_CHECKING
16+ from typing import TYPE_CHECKING , Any
1717
1818from .settings import ChangedSetting , SettingCodes , Settings , _setting_code_from_int
1919
@@ -128,6 +128,7 @@ def __repr__(self) -> str:
128128 return f"<ResponseReceived stream_id:{ self .stream_id } , headers:{ self .headers } >"
129129
130130
131+ @dataclass (** kw_only )
131132class TrailersReceived (Event ):
132133 """
133134 The TrailersReceived event is fired whenever trailers are received on a
@@ -145,25 +146,28 @@ class TrailersReceived(Event):
145146 Added ``stream_ended`` and ``priority_updated`` properties.
146147 """
147148
148- def __init__ (self ) -> None :
149- #: The Stream ID for the stream on which these trailers were received.
150- self .stream_id : int | None = None
149+ stream_id : int
150+ """The Stream ID for the stream on which these trailers were received."""
151151
152- #: The trailers themselves.
153- self . headers : list [ Header ] | None = None
152+ headers : list [ Header ] = _LAZY_INIT
153+ """The trailers themselves."""
154154
155- #: Trailers always end streams. This property has the associated
156- #: :class:`StreamEnded <h2.events.StreamEnded>` in it.
157- #:
158- #: .. versionadded:: 2.4.0
159- self .stream_ended : StreamEnded | None = None
155+ stream_ended : StreamEnded | None = None
156+ """
157+ Trailers always end streams. This property has the associated
158+ :class:`StreamEnded <h2.events.StreamEnded>` in it.
160159
161- #: If the trailers also set associated priority information, the
162- #: associated :class:`PriorityUpdated <h2.events.PriorityUpdated>`
163- #: event will be available here.
164- #:
165- #: .. versionadded:: 2.4.0
166- self .priority_updated : PriorityUpdated | None = None
160+ .. versionadded:: 2.4.0
161+ """
162+
163+ priority_updated : PriorityUpdated | None = None
164+ """
165+ If the trailers also set associated priority information, the
166+ associated :class:`PriorityUpdated <h2.events.PriorityUpdated>`
167+ event will be available here.
168+
169+ .. versionadded:: 2.4.0
170+ """
167171
168172 def __repr__ (self ) -> str :
169173 return f"<TrailersReceived stream_id:{ self .stream_id } , headers:{ self .headers } >"
0 commit comments