File: HTTPBody.swift

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (39 lines) | stat: -rw-r--r-- 1,593 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
 This source file is part of the Swift.org open source project

 Copyright (c) 2023 Apple Inc. and the Swift project authors
 Licensed under Apache License v2.0 with Runtime Library Exception

 See https://swift.org/LICENSE.txt for license information
 See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/

import Markdown
import SymbolKit

/// Documentation about the payload body of an HTTP request.
public struct HTTPBody {
    /// The media type of the body.
    /// 
    /// Value might be undefined initially when first extracted from markdown.
    public var mediaType: String?
    /// The parameters passed in the body when the body is a multipart or url-encoded form.
    public var parameters: [HTTPParameter]
    /// The content that describe the body.
    public var contents: [Markup]
    /// The symbol graph symbol representing this body.
    public var symbol: SymbolGraph.Symbol?
    
    /// Initialize a value to describe documentation about a payload body for an HTTP request symbol.
    /// - Parameters:
    ///   - mediaType: The media type of the body.
    ///   - contents: The content that describe this body.
    ///   - parameters: The individual parameters of a body that is a multipart or url-encoded form.
    ///   - symbol: The symbol data extracted from the symbol graph.
    public init(mediaType: String?, contents: [Markup], parameters: [HTTPParameter] = [], symbol: SymbolGraph.Symbol? = nil) {
        self.mediaType = mediaType
        self.contents = contents
        self.parameters = parameters
        self.symbol = symbol
    }
}