Initializer

public struct Initializer : Declaration, Hashable, Codable
extension Initializer: ExpressibleBySyntax
extension Initializer: CustomStringConvertible

An initializer declaration.

  • Undocumented

    Declaration

    Swift

    public let context: String?
  • The declaration attributes.

    Declaration

    Swift

    public let attributes: [Attribute]
  • The declaration modifiers.

    Declaration

    Swift

    public let modifiers: [Modifier]
  • The declaration keyword ("associatedtype").

    Declaration

    Swift

    public let keyword: String
  • Whether the initializer is optional.

    Declaration

    Swift

    public let optional: Bool
  • The generic parameters for the declaration.

    For example, the following initializer declaration has a single generic parameter whose name is "T" and type is "Equatable":

    init<T: Equatable>(value: T) {}
    

    Declaration

    Swift

    public let genericParameters: [GenericParameter]
  • The initializer inputs.

    Declaration

    Swift

    public let parameters: [Function.Parameter]
  • The throws or rethrows keyword, if any.

    Declaration

    Swift

    public let throwsOrRethrowsKeyword: String?
  • The generic parameter requirements for the declaration.

    For example, the following initializer declaration has a single requirement that its generic parameter identified as "T" conforms to the type identified as "Hahable":

    init<T>(value: T) where T: Hashable {}
    

    Declaration

    Swift

    public let genericRequirements: [GenericRequirement]

ExpressibleBySyntax

  • Creates an instance initialized with the given syntax node.

    Declaration

    Swift

    public init(_ node: InitializerDeclSyntax)

CustomStringConvertible

  • Declaration

    Swift

    public var description: String { get }