@@ -196,13 +196,13 @@ extension HTTPResponsePart: HTTPMessagePart {
196196/// Use this to convert incoming frames into message parts.
197197package struct HTTPMessageParsingStateMachine < Part: HTTPMessagePart > {
198198 enum State {
199- case awaitingFinalHead
200- case processedHeaders
201- case processedTrailers
202- case previousError
199+ case awaitingHeaders
200+ case awaitingBodyOrTrailers
201+ case messageComplete
202+ case failed
203203 }
204204
205- private var state = State . awaitingFinalHead
205+ private var state = State . awaitingHeaders
206206
207207 package init ( ) { }
208208
@@ -213,9 +213,9 @@ package struct HTTPMessageParsingStateMachine<Part: HTTPMessagePart> {
213213
214214 package mutating func processFrame( frame: HTTP3Frame ) -> ProcessFrameAction ? {
215215 switch self . state {
216- case . previousError :
216+ case . failed :
217217 return . none
218- case . awaitingFinalHead :
218+ case . awaitingHeaders :
219219 switch frame {
220220 case . headers( let headers) :
221221 do {
@@ -224,29 +224,29 @@ package struct HTTPMessageParsingStateMachine<Part: HTTPMessagePart> {
224224 // Multiple interim (1xx) responses can precede the final response; remain in the same state to
225225 // accept further interim responses or the final response. We can only reach this branch on the
226226 // response parsing side.
227- self . state = . awaitingFinalHead
227+ self . state = . awaitingHeaders
228228 } else {
229- self . state = . processedHeaders
229+ self . state = . awaitingBodyOrTrailers
230230 }
231231 return . returnPart( part)
232232 } catch {
233- self . state = . previousError
233+ self . state = . failed
234234 return . emitError( error)
235235 }
236236 case . data, . cancelPush, . settings, . maxPushID, . pushPromise, . goaway:
237237 // This should not happen because the stream state machine shouldn't allow a bad frame to get here
238238 fatalError ( " Unexpected frame " )
239239 }
240- case . processedHeaders :
240+ case . awaitingBodyOrTrailers :
241241 switch frame {
242242 case . headers( let headers) :
243243 // If the incoming frame is of type 'headers', it must be the trailers
244244 do {
245245 let part = try Part . end ( trailers: headers. fields)
246- self . state = . processedTrailers
246+ self . state = . messageComplete
247247 return . returnPart( part)
248248 } catch {
249- self . state = . previousError
249+ self . state = . failed
250250 return . emitError( error)
251251 }
252252 // Any number of data frames is fine. State stays as-is
@@ -256,7 +256,7 @@ package struct HTTPMessageParsingStateMachine<Part: HTTPMessagePart> {
256256 // This should not happen because the stream state machine shouldn't allow a bad frame to get here
257257 fatalError ( " Unexpected frame " )
258258 }
259- case . processedTrailers :
259+ case . messageComplete :
260260 // This should not happen because the stream state machine shouldn't allow a bad frame to get here
261261 fatalError ( " More frames received after trailers " )
262262 }
@@ -268,15 +268,15 @@ package struct HTTPMessageParsingStateMachine<Part: HTTPMessagePart> {
268268
269269 package mutating func inputClosed( ) -> InputClosedAction ? {
270270 switch self . state {
271- case . awaitingFinalHead :
272- self . state = . processedTrailers
271+ case . awaitingHeaders :
272+ self . state = . messageComplete
273273 return . returnPart( . end( ) )
274- case . processedHeaders :
275- self . state = . processedTrailers
274+ case . awaitingBodyOrTrailers :
275+ self . state = . messageComplete
276276 return . returnPart( . end( ) )
277- case . previousError :
277+ case . failed :
278278 return . none
279- case . processedTrailers :
279+ case . messageComplete :
280280 // If we processed trailers, that means we sent an end, so don't send another one
281281 return . none
282282 }
0 commit comments