File: HTTPParameter.swift

package info (click to toggle)
swiftlang 6.2.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,856,264 kB
  • sloc: cpp: 9,995,718; ansic: 2,234,019; asm: 1,092,167; python: 313,940; objc: 82,726; f90: 80,126; lisp: 38,373; pascal: 25,580; sh: 20,378; ml: 5,058; perl: 4,751; makefile: 4,725; awk: 3,535; javascript: 3,018; xml: 918; fortran: 664; cs: 573; ruby: 396
file content (43 lines) | stat: -rw-r--r-- 1,746 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
40
41
42
43
/*
 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
*/

public import Markdown
public import SymbolKit

/// Documentation about a parameter for an HTTP request.
public struct HTTPParameter {
    /// The name of the parameter.
    public var name: String
    /// The source of the parameter, such as "query" or "path".
    /// 
    /// Value might be undefined initially when first extracted from markdown.
    public var source: String?
    /// The content that describe the parameter.
    public var contents: [any Markup]
    /// The symbol graph symbol representing this parameter.
    public var symbol: SymbolGraph.Symbol?
    /// The required status of the parameter.
    public var required: Bool
    
    /// Initialize a value to describe documentation about a parameter for an HTTP request symbol.
    /// - Parameters:
    ///   - name: The name of this parameter.
    ///   - source: The source of this parameter, such as "query" or "path".
    ///   - contents: The content that describe this parameter.
    ///   - symbol: The symbol data extracted from the symbol graph.
    ///   - required: Flag indicating whether the parameter is required to be present in the request.
    public init(name: String, source: String?, contents: [any Markup], symbol: SymbolGraph.Symbol? = nil, required: Bool = false) {
        self.name = name
        self.source = source
        self.contents = contents
        self.symbol = symbol
        self.required = required
    }
}