From 8edb54f6c2b2f3dcd70ec59e849355fa609e5e5c Mon Sep 17 00:00:00 2001 From: Ilya Puchka Date: Tue, 25 Apr 2017 22:08:52 +0200 Subject: [PATCH] updated docs, added rake task to update docs --- .jazzy.yaml | 6 +- CHANGELOG.md | 1 + Rakefile | 7 + SourceryFramework/Models/AccessLevel.swift | 2 +- SourceryFramework/Models/Attribute.swift | 2 + SourceryFramework/Models/Class.swift | 1 + SourceryFramework/Models/Enum.swift | 5 + .../Models/FileParserResult.swift | 1 + SourceryFramework/Models/Method.swift | 5 + SourceryFramework/Models/Protocol.swift | 2 + SourceryFramework/Models/Struct.swift | 1 + .../Models/TemplateContext.swift | 5 + SourceryFramework/Models/Type.swift | 7 + SourceryFramework/Models/TypeName.swift | 5 + SourceryFramework/Models/Typealias.swift | 1 + SourceryFramework/Models/Variable.swift | 2 + docs/Classes/ArrayType.html | 14 +- docs/Classes/AssociatedValue.html | 244 +--------------- docs/Classes/Attribute.html | 12 +- docs/Classes/Class.html | 6 +- docs/Classes/DictionaryType.html | 24 +- docs/Classes/Enum.html | 51 +++- docs/Classes/EnumCase.html | 22 +- docs/Classes/Method.html | 94 +++--- docs/Classes/MethodParameter.html | 256 ++--------------- docs/Classes/Protocol.html | 4 +- docs/Classes/Struct.html | 4 +- docs/Classes/TupleElement.html | 234 +-------------- docs/Classes/TupleType.html | 8 +- docs/Classes/Type.html | 140 ++++----- docs/Classes/TypeName.html | 66 ++--- docs/Classes/Types.html | 32 +-- docs/Classes/Variable.html | 272 ++---------------- docs/Other Protocols.html | 8 +- docs/Protocols/Annotated.html | 4 +- docs/Protocols/Typed.html | 20 +- docs/Types.html | 72 ++--- .../Documents/Classes/ArrayType.html | 14 +- .../Documents/Classes/AssociatedValue.html | 244 +--------------- .../Documents/Classes/Attribute.html | 12 +- .../Resources/Documents/Classes/Class.html | 6 +- .../Documents/Classes/DictionaryType.html | 24 +- .../Resources/Documents/Classes/Enum.html | 51 +++- .../Resources/Documents/Classes/EnumCase.html | 22 +- .../Resources/Documents/Classes/Method.html | 94 +++--- .../Documents/Classes/MethodParameter.html | 256 ++--------------- .../Resources/Documents/Classes/Protocol.html | 4 +- .../Resources/Documents/Classes/Struct.html | 4 +- .../Documents/Classes/TupleElement.html | 234 +-------------- .../Documents/Classes/TupleType.html | 8 +- .../Resources/Documents/Classes/Type.html | 140 ++++----- .../Resources/Documents/Classes/TypeName.html | 66 ++--- .../Resources/Documents/Classes/Types.html | 32 +-- .../Resources/Documents/Classes/Variable.html | 272 ++---------------- .../Resources/Documents/Other Protocols.html | 8 +- .../Documents/Protocols/Annotated.html | 4 +- .../Resources/Documents/Protocols/Typed.html | 20 +- .../Contents/Resources/Documents/Types.html | 72 ++--- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 57344 -> 49152 bytes docs/docsets/Sourcery.tgz | Bin 85455 -> 81753 bytes docs/search.json | 2 +- 62 files changed, 787 insertions(+), 2444 deletions(-) diff --git a/.jazzy.yaml b/.jazzy.yaml index 4f1f1d0b3..c8da4215e 100644 --- a/.jazzy.yaml +++ b/.jazzy.yaml @@ -1,11 +1,15 @@ author: Krzysztof Zabłocki author_url: https://twitter.com/merowing_ module: Sourcery -module_version: 0.5.9 +sourcekitten_sourcefile: docs.json +module_version: 0.6.0 github_url: https://github.com/krzysztofzablocki/Sourcery copyright: 'Copyright © 2016 Pixle. All rights reserved.' readme: About.md documentation: guides/*.md +exclude: + - SourceryFramework/Utils/* + - SourceryFramework/CodeGenerated/* custom_categories: - name: Guides diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a6c1aff4..be543023f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ - Paths in config file are now relative to config file path by default, absolute paths should start with `/` - Improved logging and error reporting, added `--quiet` CLI option, added runtime errors for using invalid types in `implementing` and `inheriting` +- Improved swift templates performance ## 0.6.0 diff --git a/Rakefile b/Rakefile index 6150cd1a1..670e21efb 100644 --- a/Rakefile +++ b/Rakefile @@ -39,6 +39,13 @@ def print_info(str) (red,clr) = (`tput colors`.chomp.to_i >= 8) ? %W(\e[33m \e[m) : ["", ""] puts red, "== #{str.chomp} ==", clr end + +desc "Update docs" +task :docs do + print_info "Updating docs" + sh "sourcekitten doc --module-name SourceryFramework > docs.json && jazzy --clean --skip-undocumented && rm docs.json" +end + ## [ Tests & Clean ] ########################################################## desc "Run the Unit Tests" diff --git a/SourceryFramework/Models/AccessLevel.swift b/SourceryFramework/Models/AccessLevel.swift index 7b08d94af..91dd12255 100644 --- a/SourceryFramework/Models/AccessLevel.swift +++ b/SourceryFramework/Models/AccessLevel.swift @@ -5,7 +5,7 @@ import Foundation -/// Defines the Access Level +/// :nodoc: public enum AccessLevel: String { case `internal` = "internal" case `private` = "private" diff --git a/SourceryFramework/Models/Attribute.swift b/SourceryFramework/Models/Attribute.swift index 36cd4b8f1..31b7d914a 100644 --- a/SourceryFramework/Models/Attribute.swift +++ b/SourceryFramework/Models/Attribute.swift @@ -12,6 +12,7 @@ public class Attribute: NSObject, AutoCoding, AutoEquatable, AutoDiffable, AutoJ // sourcery: skipJSExport let _description: String + /// :nodoc: public init(name: String, arguments: [String: NSObject] = [:], description: String? = nil) { self.name = name self.arguments = arguments @@ -23,6 +24,7 @@ public class Attribute: NSObject, AutoCoding, AutoEquatable, AutoDiffable, AutoJ return _description } + /// :nodoc: public enum Identifier: String { case convenience case available diff --git a/SourceryFramework/Models/Class.swift b/SourceryFramework/Models/Class.swift index 63b59d976..9b8aaec84 100644 --- a/SourceryFramework/Models/Class.swift +++ b/SourceryFramework/Models/Class.swift @@ -6,6 +6,7 @@ import Foundation /// Returns "class" public override var kind: String { return "class" } + /// :nodoc: public override init(name: String = "", parent: Type? = nil, accessLevel: AccessLevel = .internal, diff --git a/SourceryFramework/Models/Enum.swift b/SourceryFramework/Models/Enum.swift index 64d169a53..ed600ff7f 100644 --- a/SourceryFramework/Models/Enum.swift +++ b/SourceryFramework/Models/Enum.swift @@ -26,6 +26,7 @@ public final class AssociatedValue: NSObject, SourceryModel, AutoDescription, Ty /// Annotations, that were created with // sourcery: annotation1, other = "annotation value", alterantive = 2 public var annotations: [String: NSObject] = [:] + /// :nodoc: public init(localName: String?, externalName: String?, typeName: TypeName, type: Type? = nil, annotations: [String: NSObject] = [:]) { self.localName = localName self.externalName = externalName @@ -82,8 +83,10 @@ public final class EnumCase: NSObject, SourceryModel, AutoDescription, Annotated // Underlying parser data, never to be used by anything else // sourcery: skipEquality, skipDescription, skipCoding, skipJSExport + /// :nodoc: public var __parserData: Any? + /// :nodoc: public init(name: String, rawValue: String? = nil, associatedValues: [AssociatedValue] = [], annotations: [String: NSObject] = [:]) { self.name = name self.rawValue = rawValue @@ -136,6 +139,7 @@ public final class Enum: Type { } // sourcery: skipDescription, skipEquality + /// :nodoc: public private(set) var hasRawType: Bool // sourcery: skipDescription, skipEquality @@ -161,6 +165,7 @@ public final class Enum: Type { return false } + /// :nodoc: public init(name: String = "", parent: Type? = nil, accessLevel: AccessLevel = .internal, diff --git a/SourceryFramework/Models/FileParserResult.swift b/SourceryFramework/Models/FileParserResult.swift index f890e7505..731d85dbd 100644 --- a/SourceryFramework/Models/FileParserResult.swift +++ b/SourceryFramework/Models/FileParserResult.swift @@ -9,6 +9,7 @@ import Foundation // sourcery: skipJSExport +/// :nodoc: @objc public final class FileParserResult: NSObject, SourceryModel { public let path: String? public let module: String? diff --git a/SourceryFramework/Models/Method.swift b/SourceryFramework/Models/Method.swift index 5156e537f..fe61b50df 100644 --- a/SourceryFramework/Models/Method.swift +++ b/SourceryFramework/Models/Method.swift @@ -31,8 +31,10 @@ public final class MethodParameter: NSObject, SourceryModel, Typed, Annotated { /// Underlying parser data, never to be used by anything else // sourcery: skipEquality, skipDescription, skipCoding, skipJSExport + /// :nodoc: public var __parserData: Any? + /// :nodoc: public init(argumentLabel: String?, name: String = "", typeName: TypeName, type: Type? = nil, defaultValue: String? = nil, annotations: [String: NSObject] = [:]) { self.typeName = typeName self.argumentLabel = argumentLabel @@ -42,6 +44,7 @@ public final class MethodParameter: NSObject, SourceryModel, Typed, Annotated { self.annotations = annotations } + /// :nodoc: public init(name: String = "", typeName: TypeName, type: Type? = nil, defaultValue: String? = nil, annotations: [String: NSObject] = [:]) { self.typeName = typeName self.argumentLabel = name @@ -163,8 +166,10 @@ public final class MethodParameter: NSObject, SourceryModel, Typed, Annotated { // Underlying parser data, never to be used by anything else // sourcery: skipEquality, skipDescription, skipCoding, skipJSExport + /// :nodoc: public var __parserData: Any? + /// :nodoc: public init(name: String, selectorName: String? = nil, parameters: [MethodParameter] = [], diff --git a/SourceryFramework/Models/Protocol.swift b/SourceryFramework/Models/Protocol.swift index 8b8cce71d..0264bae0a 100644 --- a/SourceryFramework/Models/Protocol.swift +++ b/SourceryFramework/Models/Protocol.swift @@ -16,6 +16,7 @@ public final class Protocol: Type { /// Returns "protocol" public override var kind: String { return "protocol" } + /// :nodoc: public override init(name: String = "", parent: Type? = nil, accessLevel: AccessLevel = .internal, @@ -43,6 +44,7 @@ public final class Protocol: Type { ) } + /// :nodoc: override public func extend(_ type: Type) { type.variables = type.variables.filter({ v in !variables.contains(where: { $0.name == v.name && $0.isStatic == v.isStatic }) }) type.methods = type.methods.filter({ !methods.contains($0) }) diff --git a/SourceryFramework/Models/Struct.swift b/SourceryFramework/Models/Struct.swift index 83270a03b..060dfa491 100644 --- a/SourceryFramework/Models/Struct.swift +++ b/SourceryFramework/Models/Struct.swift @@ -15,6 +15,7 @@ public final class Struct: Type { /// Returns "struct" public override var kind: String { return "struct" } + /// :nodoc: public override init(name: String = "", parent: Type? = nil, accessLevel: AccessLevel = .internal, diff --git a/SourceryFramework/Models/TemplateContext.swift b/SourceryFramework/Models/TemplateContext.swift index d70991dac..9d398e4bb 100644 --- a/SourceryFramework/Models/TemplateContext.swift +++ b/SourceryFramework/Models/TemplateContext.swift @@ -5,6 +5,7 @@ import Foundation +/// :nodoc: public final class TemplateContext: NSObject, SourceryModel { public let types: Types public let arguments: [String: NSObject] @@ -62,6 +63,7 @@ public final class TemplateContext: NSObject, SourceryModel { } extension ProcessInfo { + /// :nodoc: public var context: TemplateContext! { return NSKeyedUnarchiver.unarchiveObject(withFile: arguments[1]) as? TemplateContext } @@ -70,8 +72,11 @@ extension ProcessInfo { // sourcery: skipJSExport /// Collection of scanned types for accessing in templates public final class Types: NSObject, SourceryModel { + + /// :nodoc: public let types: [Type] + /// :nodoc: public init(types: [Type]) { self.types = types } diff --git a/SourceryFramework/Models/Type.swift b/SourceryFramework/Models/Type.swift index 032d09774..f1b091a7d 100644 --- a/SourceryFramework/Models/Type.swift +++ b/SourceryFramework/Models/Type.swift @@ -8,10 +8,12 @@ import Foundation /// Defines Swift type public class Type: NSObject, SourceryModel, Annotated { + /// :nodoc: public var module: String? // All local typealiases // sourcery: skipJSExport + /// :nodoc: public var typealiases: [String: Typealias] { didSet { typealiases.values.forEach { $0.parent = self } @@ -184,6 +186,7 @@ public class Type: NSObject, SourceryModel, Annotated { } // sourcery: skipJSExport + /// :nodoc: public var parentTypes: AnyIterator { var next: Type? = self return AnyIterator { @@ -201,11 +204,14 @@ public class Type: NSObject, SourceryModel, Annotated { // Underlying parser data, never to be used by anything else // sourcery: skipDescription, skipEquality, skipJSExport + /// :nodoc: public var __parserData: Any? // Path to file where the type is defined // sourcery: skipDescription, skipEquality, skipJSExport + /// :nodoc: public var __path: String? + /// :nodoc: public init(name: String = "", parent: Type? = nil, accessLevel: AccessLevel = .internal, @@ -248,6 +254,7 @@ public class Type: NSObject, SourceryModel, Annotated { }) } + /// :nodoc: public func extend(_ type: Type) { self.variables += type.variables self.methods += type.methods diff --git a/SourceryFramework/Models/TypeName.swift b/SourceryFramework/Models/TypeName.swift index f500eaf95..983d03bf2 100644 --- a/SourceryFramework/Models/TypeName.swift +++ b/SourceryFramework/Models/TypeName.swift @@ -32,6 +32,7 @@ public protocol Typed { /// Describes name of the type used in typed declaration (variable, method parameter or return value etc.) public final class TypeName: NSObject, AutoCoding, AutoEquatable, AutoDiffable, AutoJSExport { + /// :nodoc: public init(_ name: String, actualTypeName: TypeName? = nil, attributes: [String: Attribute] = [:], @@ -205,6 +206,7 @@ public final class TupleElement: NSObject, SourceryModel, Typed { /// Tuple element type, if known public var type: Type? + /// :nodoc: public init(name: String = "", typeName: TypeName, type: Type? = nil) { self.name = name self.typeName = typeName @@ -237,6 +239,7 @@ public final class TupleType: NSObject, SourceryModel { /// Tuple elements public let elements: [TupleElement] + /// :nodoc: public init(name: String, elements: [TupleElement]) { self.name = name self.elements = elements @@ -270,6 +273,7 @@ public final class ArrayType: NSObject, SourceryModel { /// Array element type, if known public var elementType: Type? + /// :nodoc: public init(name: String, elementTypeName: TypeName, elementType: Type? = nil) { self.name = name self.elementTypeName = elementTypeName @@ -313,6 +317,7 @@ public final class DictionaryType: NSObject, SourceryModel { /// Dictionary key type, if known public var keyType: Type? + /// :nodoc: public init(name: String, valueTypeName: TypeName, valueType: Type? = nil, keyTypeName: TypeName, keyType: Type? = nil) { self.name = name self.valueTypeName = valueTypeName diff --git a/SourceryFramework/Models/Typealias.swift b/SourceryFramework/Models/Typealias.swift index 90759720d..36cd6c18b 100644 --- a/SourceryFramework/Models/Typealias.swift +++ b/SourceryFramework/Models/Typealias.swift @@ -1,6 +1,7 @@ import Foundation // sourcery: skipJSExport +/// :nodoc: public final class Typealias: NSObject, Typed, SourceryModel { // New typealias name public let aliasName: String diff --git a/SourceryFramework/Models/Variable.swift b/SourceryFramework/Models/Variable.swift index e18dbb7de..156a2dfa5 100644 --- a/SourceryFramework/Models/Variable.swift +++ b/SourceryFramework/Models/Variable.swift @@ -48,8 +48,10 @@ public final class Variable: NSObject, SourceryModel, Typed, Annotated { // Underlying parser data, never to be used by anything else // sourcery: skipEquality, skipDescription, skipCoding, skipJSExport + /// :nodoc: public var __parserData: Any? + /// :nodoc: public init(name: String = "", typeName: TypeName, type: Type? = nil, diff --git a/docs/Classes/ArrayType.html b/docs/Classes/ArrayType.html index c9e3f5c52..6aaad3ed6 100644 --- a/docs/Classes/ArrayType.html +++ b/docs/Classes/ArrayType.html @@ -159,9 +159,9 @@

ArrayType

  • - + - name + name
    @@ -186,9 +186,9 @@

    Declaration

  • - + - elementTypeName + elementTypeName
    @@ -213,9 +213,9 @@

    Declaration

  • - + - elementType + elementType
    @@ -230,7 +230,7 @@

    Declaration

    Declaration

    Swift

    -
    public internal(set) var elementType: Type?
    +
    public var elementType: Type?
    diff --git a/docs/Classes/AssociatedValue.html b/docs/Classes/AssociatedValue.html index 730f05998..434bb4fb6 100644 --- a/docs/Classes/AssociatedValue.html +++ b/docs/Classes/AssociatedValue.html @@ -159,9 +159,9 @@

    AssociatedValue

  • - + - localName + localName
    @@ -187,9 +187,9 @@

    Declaration

  • - + - externalName + externalName
    @@ -215,9 +215,9 @@

    Declaration

  • - + - typeName + typeName
    @@ -242,9 +242,9 @@

    Declaration

  • - + - type + type
    @@ -259,7 +259,7 @@

    Declaration

    Declaration

    Swift

    -
    public internal(set) var type: Type?
    +
    public var type: Type?
    @@ -269,9 +269,9 @@

    Declaration

  • - + - annotations + annotations
    @@ -286,227 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    public internal(set) var annotations: [String: NSObject] = [:]
    - -
    -
    - - -
  • - - -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var annotations: [String: NSObject] = [:]
      diff --git a/docs/Classes/Attribute.html b/docs/Classes/Attribute.html index 488480128..f79fce50a 100644 --- a/docs/Classes/Attribute.html +++ b/docs/Classes/Attribute.html @@ -159,9 +159,9 @@

      Attribute

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • diff --git a/docs/Classes/Class.html b/docs/Classes/Class.html index f1246ff66..02596c728 100644 --- a/docs/Classes/Class.html +++ b/docs/Classes/Class.html @@ -146,7 +146,7 @@

      Class

      -
      public final class Class: Type
      +
      @objc(SwiftClass) public final class Class: Type
      @@ -159,9 +159,9 @@

      Class

    • - + - kind + kind
      diff --git a/docs/Classes/DictionaryType.html b/docs/Classes/DictionaryType.html index 979731dbf..501a2c199 100644 --- a/docs/Classes/DictionaryType.html +++ b/docs/Classes/DictionaryType.html @@ -159,9 +159,9 @@

      DictionaryType

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • @@ -230,7 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var valueType: Type?
      +
      public var valueType: Type?
      @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • - + - keyType + keyType
      @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var keyType: Type?
      +
      public var keyType: Type?
      diff --git a/docs/Classes/Enum.html b/docs/Classes/Enum.html index 322f95c17..5a064c3cb 100644 --- a/docs/Classes/Enum.html +++ b/docs/Classes/Enum.html @@ -159,9 +159,9 @@

      Enum

    • - + - kind + kind
      @@ -186,9 +186,9 @@

      Declaration

    • - + - cases + cases
      @@ -203,7 +203,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var cases: [EnumCase]
      +
      public var cases: [EnumCase]
      @@ -213,9 +213,36 @@

      Declaration

    • - + + + rawTypeName + +
      +
      +
      +
      +
      +
      +

      Enum raw value type name, if any

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public var rawTypeName: TypeName?
      + +
      +
      +
      +
      +
    • +
    • +
      + + - rawType + rawType
      @@ -230,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var rawType: Type?
      +
      public var rawType: Type?
      @@ -240,9 +267,9 @@

      Declaration

    • - + - based + based
      @@ -267,9 +294,9 @@

      Declaration

    • diff --git a/docs/Classes/EnumCase.html b/docs/Classes/EnumCase.html index 663046f61..532a10535 100644 --- a/docs/Classes/EnumCase.html +++ b/docs/Classes/EnumCase.html @@ -159,9 +159,9 @@

      EnumCase

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - rawValue + rawValue
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -257,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -267,9 +267,9 @@

      Declaration

    • diff --git a/docs/Classes/Method.html b/docs/Classes/Method.html index 6070a2ddf..8851d40ed 100644 --- a/docs/Classes/Method.html +++ b/docs/Classes/Method.html @@ -146,7 +146,7 @@

      Method

      -
      public final class Method: NSObject, SourceryModel, Annotated
      +
      @objc(SwiftMethod) public final class Method: NSObject, SourceryModel, Annotated
      @@ -159,9 +159,9 @@

      Method

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • - + - callName + callName
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var parameters: [MethodParameter]
      +
      public var parameters: [MethodParameter]
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var returnTypeName: TypeName
      +
      public var returnTypeName: TypeName
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -331,7 +331,7 @@

      Declaration

      -

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      +

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      @@ -348,9 +348,9 @@

      Declaration

    • @@ -365,7 +365,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var returnType: Type?
      +
      public var returnType: Type?
      @@ -375,9 +375,9 @@

      Declaration

    • @@ -402,9 +402,9 @@

      Declaration

    • @@ -429,9 +429,9 @@

      Declaration

    • @@ -456,9 +456,9 @@

      Declaration

    • - + - throws + throws
      @@ -483,9 +483,9 @@

      Declaration

    • - + - rethrows + rethrows
      @@ -510,9 +510,9 @@

      Declaration

    • @@ -537,9 +537,9 @@

      Declaration

    • - + - isStatic + isStatic
      @@ -564,9 +564,9 @@

      Declaration

    • - + - isClass + isClass
      @@ -591,9 +591,9 @@

      Declaration

    • @@ -618,9 +618,9 @@

      Declaration

    • @@ -645,9 +645,9 @@

      Declaration

    • @@ -672,9 +672,9 @@

      Declaration

    • @@ -699,9 +699,9 @@

      Declaration

    • diff --git a/docs/Classes/MethodParameter.html b/docs/Classes/MethodParameter.html index be25d2148..38f4d11ad 100644 --- a/docs/Classes/MethodParameter.html +++ b/docs/Classes/MethodParameter.html @@ -159,9 +159,9 @@

      MethodParameter

    • @@ -176,7 +176,7 @@

      MethodParameter

      Declaration

      Swift

      -
      public internal(set) var argumentLabel: String?
      +
      public var argumentLabel: String?
      @@ -186,9 +186,9 @@

      Declaration

    • - + - name + name
      @@ -213,9 +213,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -240,9 +240,9 @@

      Declaration

    • - + - type + type
      @@ -257,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      +
      public var type: Type?
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var defaultValue: String?
      +
      public var defaultValue: String?
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -338,227 +338,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var annotations: [String: NSObject] = [:]
      diff --git a/docs/Classes/Protocol.html b/docs/Classes/Protocol.html index f9b65bddd..f0c016d3d 100644 --- a/docs/Classes/Protocol.html +++ b/docs/Classes/Protocol.html @@ -159,9 +159,9 @@

      Protocol

    • - + - kind + kind
      diff --git a/docs/Classes/Struct.html b/docs/Classes/Struct.html index 449fe1c88..79e2c7d70 100644 --- a/docs/Classes/Struct.html +++ b/docs/Classes/Struct.html @@ -159,9 +159,9 @@

      Struct

    • - + - kind + kind
      diff --git a/docs/Classes/TupleElement.html b/docs/Classes/TupleElement.html index d57a08db6..5525c0840 100644 --- a/docs/Classes/TupleElement.html +++ b/docs/Classes/TupleElement.html @@ -159,9 +159,9 @@

      TupleElement

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • - + - type + type
      @@ -230,227 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var type: Type?
      diff --git a/docs/Classes/TupleType.html b/docs/Classes/TupleType.html index b8c5ed1eb..74230b92a 100644 --- a/docs/Classes/TupleType.html +++ b/docs/Classes/TupleType.html @@ -159,9 +159,9 @@

      TupleType

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - elements + elements
      diff --git a/docs/Classes/Type.html b/docs/Classes/Type.html index 71e28fada..83b3d1786 100644 --- a/docs/Classes/Type.html +++ b/docs/Classes/Type.html @@ -159,9 +159,9 @@

      Type

    • @@ -176,7 +176,7 @@

      Type

      Declaration

      Swift

      -
      public internal(set) var isExtension: Bool
      +
      public var isExtension: Bool
      @@ -186,9 +186,9 @@

      Declaration

    • - + - kind + kind
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • - + - name + name
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var isGeneric: Bool
      +
      public var isGeneric: Bool
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var localName: String
      +
      public var localName: String
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -339,7 +339,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var variables: [Variable]
      +
      public var variables: [Variable]
      @@ -349,9 +349,9 @@

      Declaration

    • @@ -377,9 +377,9 @@

      Declaration

    • - + - methods + methods
      @@ -395,7 +395,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var methods: [Method]
      +
      public var methods: [Method]
      @@ -405,9 +405,9 @@

      Declaration

    • @@ -433,9 +433,9 @@

      Declaration

    • @@ -460,9 +460,9 @@

      Declaration

    • @@ -477,7 +477,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -487,9 +487,9 @@

      Declaration

    • @@ -514,9 +514,9 @@

      Declaration

    • @@ -541,9 +541,9 @@

      Declaration

    • @@ -568,9 +568,9 @@

      Declaration

    • @@ -595,9 +595,9 @@

      Declaration

    • @@ -622,9 +622,9 @@

      Declaration

    • @@ -649,9 +649,9 @@

      Declaration

    • @@ -676,9 +676,9 @@

      Declaration

    • @@ -703,9 +703,9 @@

      Declaration

    • - + - based + based
      @@ -720,7 +720,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var based = [String: String]()
      +
      public var based = [String: String]()
      @@ -730,9 +730,9 @@

      Declaration

    • - + - inherits + inherits
      @@ -747,7 +747,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var inherits = [String: Type]()
      +
      public var inherits = [String: Type]()
      @@ -757,9 +757,9 @@

      Declaration

    • @@ -774,7 +774,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var implements = [String: Type]()
      +
      public var implements = [String: Type]()
      @@ -784,9 +784,9 @@

      Declaration

    • @@ -801,7 +801,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var containedTypes: [Type]
      +
      public var containedTypes: [Type]
      @@ -811,9 +811,9 @@

      Declaration

    • @@ -838,9 +838,9 @@

      Declaration

    • @@ -865,9 +865,9 @@

      Declaration

    • - + - parent + parent
      @@ -892,9 +892,9 @@

      Declaration

    • @@ -909,7 +909,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var supertype: Type?
      +
      public var supertype: Type?
      @@ -919,9 +919,9 @@

      Declaration

    • @@ -936,7 +936,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var attributes: [String: Attribute]
      +
      public var attributes: [String: Attribute]
      diff --git a/docs/Classes/TypeName.html b/docs/Classes/TypeName.html index 99fbe7e77..73a5df243 100644 --- a/docs/Classes/TypeName.html +++ b/docs/Classes/TypeName.html @@ -159,9 +159,9 @@

      TypeName

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -203,7 +203,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var actualTypeName: TypeName?
      +
      public var actualTypeName: TypeName?
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • @@ -294,9 +294,9 @@

      Declaration

    • @@ -321,9 +321,9 @@

      Declaration

    • - + - isVoid + isVoid
      @@ -348,9 +348,9 @@

      Declaration

    • - + - isTuple + isTuple
      @@ -375,9 +375,9 @@

      Declaration

    • - + - tuple + tuple
      @@ -402,9 +402,9 @@

      Declaration

    • - + - isArray + isArray
      @@ -429,9 +429,9 @@

      Declaration

    • - + - array + array
      @@ -456,9 +456,9 @@

      Declaration

    • @@ -483,9 +483,9 @@

      Declaration

    • @@ -500,7 +500,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var dictionary: DictionaryType?
      +
      public var dictionary: DictionaryType?
      @@ -510,9 +510,9 @@

      Declaration

    • @@ -537,9 +537,9 @@

      Declaration

    • @@ -547,7 +547,7 @@

      Declaration

      -

      Returns value of name property.

      +

      Returns value of name property.

      diff --git a/docs/Classes/Types.html b/docs/Classes/Types.html index d791c3d58..732ed3539 100644 --- a/docs/Classes/Types.html +++ b/docs/Classes/Types.html @@ -159,9 +159,9 @@

      Types

    • - + - all + all
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • - + - classes + classes
      @@ -240,9 +240,9 @@

      Declaration

    • - + - structs + structs
      @@ -267,9 +267,9 @@

      Declaration

    • - + - enums + enums
      @@ -294,9 +294,9 @@

      Declaration

    • - + - based + based
      @@ -322,9 +322,9 @@

      Declaration

    • @@ -350,9 +350,9 @@

      Declaration

    • diff --git a/docs/Classes/Variable.html b/docs/Classes/Variable.html index f64202c23..49b387571 100644 --- a/docs/Classes/Variable.html +++ b/docs/Classes/Variable.html @@ -159,9 +159,9 @@

      Variable

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • - + - type + type
      @@ -230,7 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      +
      public var type: Type?
      @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • - + - isStatic + isStatic
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -321,9 +321,9 @@

      Declaration

    • @@ -349,9 +349,9 @@

      Declaration

    • @@ -376,9 +376,9 @@

      Declaration

    • @@ -393,7 +393,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var defaultValue: String?
      +
      public var defaultValue: String?
      @@ -403,9 +403,9 @@

      Declaration

    • @@ -420,7 +420,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -430,9 +430,9 @@

      Declaration

    • @@ -447,227 +447,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var attributes: [String: Attribute]
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var attributes: [String: Attribute]
      diff --git a/docs/Other Protocols.html b/docs/Other Protocols.html index a2ab6ad93..485c4052e 100644 --- a/docs/Other Protocols.html +++ b/docs/Other Protocols.html @@ -152,9 +152,9 @@

      Other Protocols

    • - + - Typed + Typed
      @@ -184,9 +184,9 @@

      Declaration

    • diff --git a/docs/Protocols/Annotated.html b/docs/Protocols/Annotated.html index 78e29517a..34ced6079 100644 --- a/docs/Protocols/Annotated.html +++ b/docs/Protocols/Annotated.html @@ -159,9 +159,9 @@

      Annotated

    • diff --git a/docs/Protocols/Typed.html b/docs/Protocols/Typed.html index 0959168dc..f83867eb7 100644 --- a/docs/Protocols/Typed.html +++ b/docs/Protocols/Typed.html @@ -159,9 +159,9 @@

      Typed

    • - + - type + type
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • diff --git a/docs/Types.html b/docs/Types.html index 31a02884c..efba7bc2c 100644 --- a/docs/Types.html +++ b/docs/Types.html @@ -151,9 +151,9 @@

      Types

    • - + - Types + Types
      @@ -183,9 +183,9 @@

      Declaration

    • - + - Type + Type
      @@ -215,9 +215,9 @@

      Declaration

    • - + - Protocol + Protocol
      @@ -247,9 +247,9 @@

      Declaration

    • - + - Class + Class
      @@ -265,7 +265,7 @@

      Declaration

      Declaration

      Swift

      -
      public final class Class: Type
      +
      @objc(SwiftClass) public final class Class: Type
      @@ -279,9 +279,9 @@

      Declaration

    • - + - Struct + Struct
      @@ -311,9 +311,9 @@

      Declaration

    • - + - Enum + Enum
      @@ -339,9 +339,9 @@

      Declaration

    • - + - EnumCase + EnumCase
      @@ -367,9 +367,9 @@

      Declaration

    • @@ -399,9 +399,9 @@

      Declaration

    • - + - Variable + Variable
      @@ -431,9 +431,9 @@

      Declaration

    • - + - Method + Method
      @@ -449,7 +449,7 @@

      Declaration

      Declaration

      Swift

      -
      public final class Method: NSObject, SourceryModel, Annotated
      +
      @objc(SwiftMethod) public final class Method: NSObject, SourceryModel, Annotated
      @@ -459,9 +459,9 @@

      Declaration

    • @@ -491,9 +491,9 @@

      Declaration

    • - + - TypeName + TypeName
      @@ -519,9 +519,9 @@

      Declaration

    • @@ -547,9 +547,9 @@

      Declaration

    • @@ -575,9 +575,9 @@

      Declaration

    • @@ -603,9 +603,9 @@

      Declaration

    • @@ -635,9 +635,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/ArrayType.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/ArrayType.html index c9e3f5c52..6aaad3ed6 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/ArrayType.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/ArrayType.html @@ -159,9 +159,9 @@

      ArrayType

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • @@ -230,7 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var elementType: Type?
      +
      public var elementType: Type?
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/AssociatedValue.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/AssociatedValue.html index 730f05998..434bb4fb6 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/AssociatedValue.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/AssociatedValue.html @@ -159,9 +159,9 @@

      AssociatedValue

    • @@ -187,9 +187,9 @@

      Declaration

    • @@ -215,9 +215,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -242,9 +242,9 @@

      Declaration

    • - + - type + type
      @@ -259,7 +259,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      +
      public var type: Type?
      @@ -269,9 +269,9 @@

      Declaration

    • @@ -286,227 +286,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var annotations: [String: NSObject] = [:]
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Attribute.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Attribute.html index 488480128..f79fce50a 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Attribute.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Attribute.html @@ -159,9 +159,9 @@

      Attribute

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Class.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Class.html index f1246ff66..02596c728 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Class.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Class.html @@ -146,7 +146,7 @@

      Class

      -
      public final class Class: Type
      +
      @objc(SwiftClass) public final class Class: Type
      @@ -159,9 +159,9 @@

      Class

    • - + - kind + kind
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/DictionaryType.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/DictionaryType.html index 979731dbf..501a2c199 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/DictionaryType.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/DictionaryType.html @@ -159,9 +159,9 @@

      DictionaryType

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • @@ -230,7 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var valueType: Type?
      +
      public var valueType: Type?
      @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • - + - keyType + keyType
      @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var keyType: Type?
      +
      public var keyType: Type?
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Enum.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Enum.html index 322f95c17..5a064c3cb 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Enum.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Enum.html @@ -159,9 +159,9 @@

      Enum

    • - + - kind + kind
      @@ -186,9 +186,9 @@

      Declaration

    • - + - cases + cases
      @@ -203,7 +203,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var cases: [EnumCase]
      +
      public var cases: [EnumCase]
      @@ -213,9 +213,36 @@

      Declaration

    • - + + + rawTypeName + +
      +
      +
      +
      +
      +
      +

      Enum raw value type name, if any

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public var rawTypeName: TypeName?
      + +
      +
      +
      +
      +
    • +
    • +
      + + - rawType + rawType
      @@ -230,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var rawType: Type?
      +
      public var rawType: Type?
      @@ -240,9 +267,9 @@

      Declaration

    • - + - based + based
      @@ -267,9 +294,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/EnumCase.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/EnumCase.html index 663046f61..532a10535 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/EnumCase.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/EnumCase.html @@ -159,9 +159,9 @@

      EnumCase

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - rawValue + rawValue
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -257,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -267,9 +267,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Method.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Method.html index 6070a2ddf..8851d40ed 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Method.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Method.html @@ -146,7 +146,7 @@

      Method

      -
      public final class Method: NSObject, SourceryModel, Annotated
      +
      @objc(SwiftMethod) public final class Method: NSObject, SourceryModel, Annotated
      @@ -159,9 +159,9 @@

      Method

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • - + - callName + callName
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var parameters: [MethodParameter]
      +
      public var parameters: [MethodParameter]
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var returnTypeName: TypeName
      +
      public var returnTypeName: TypeName
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -331,7 +331,7 @@

      Declaration

      -

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      +

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      @@ -348,9 +348,9 @@

      Declaration

    • @@ -365,7 +365,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var returnType: Type?
      +
      public var returnType: Type?
      @@ -375,9 +375,9 @@

      Declaration

    • @@ -402,9 +402,9 @@

      Declaration

    • @@ -429,9 +429,9 @@

      Declaration

    • @@ -456,9 +456,9 @@

      Declaration

    • - + - throws + throws
      @@ -483,9 +483,9 @@

      Declaration

    • - + - rethrows + rethrows
      @@ -510,9 +510,9 @@

      Declaration

    • @@ -537,9 +537,9 @@

      Declaration

    • - + - isStatic + isStatic
      @@ -564,9 +564,9 @@

      Declaration

    • - + - isClass + isClass
      @@ -591,9 +591,9 @@

      Declaration

    • @@ -618,9 +618,9 @@

      Declaration

    • @@ -645,9 +645,9 @@

      Declaration

    • @@ -672,9 +672,9 @@

      Declaration

    • @@ -699,9 +699,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/MethodParameter.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/MethodParameter.html index be25d2148..38f4d11ad 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/MethodParameter.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/MethodParameter.html @@ -159,9 +159,9 @@

      MethodParameter

    • @@ -176,7 +176,7 @@

      MethodParameter

      Declaration

      Swift

      -
      public internal(set) var argumentLabel: String?
      +
      public var argumentLabel: String?
      @@ -186,9 +186,9 @@

      Declaration

    • - + - name + name
      @@ -213,9 +213,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -240,9 +240,9 @@

      Declaration

    • - + - type + type
      @@ -257,7 +257,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      +
      public var type: Type?
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var defaultValue: String?
      +
      public var defaultValue: String?
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -338,227 +338,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var annotations: [String: NSObject] = [:]
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Protocol.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Protocol.html index f9b65bddd..f0c016d3d 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Protocol.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Protocol.html @@ -159,9 +159,9 @@

      Protocol

    • - + - kind + kind
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Struct.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Struct.html index 449fe1c88..79e2c7d70 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Struct.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Struct.html @@ -159,9 +159,9 @@

      Struct

    • - + - kind + kind
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleElement.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleElement.html index d57a08db6..5525c0840 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleElement.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleElement.html @@ -159,9 +159,9 @@

      TupleElement

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • - + - type + type
      @@ -230,227 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var type: Type?
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleType.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleType.html index b8c5ed1eb..74230b92a 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleType.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TupleType.html @@ -159,9 +159,9 @@

      TupleType

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - elements + elements
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Type.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Type.html index 71e28fada..83b3d1786 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Type.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Type.html @@ -159,9 +159,9 @@

      Type

    • @@ -176,7 +176,7 @@

      Type

      Declaration

      Swift

      -
      public internal(set) var isExtension: Bool
      +
      public var isExtension: Bool
      @@ -186,9 +186,9 @@

      Declaration

    • - + - kind + kind
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • - + - name + name
      @@ -267,9 +267,9 @@

      Declaration

    • @@ -284,7 +284,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var isGeneric: Bool
      +
      public var isGeneric: Bool
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -311,7 +311,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var localName: String
      +
      public var localName: String
      @@ -321,9 +321,9 @@

      Declaration

    • @@ -339,7 +339,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var variables: [Variable]
      +
      public var variables: [Variable]
      @@ -349,9 +349,9 @@

      Declaration

    • @@ -377,9 +377,9 @@

      Declaration

    • - + - methods + methods
      @@ -395,7 +395,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var methods: [Method]
      +
      public var methods: [Method]
      @@ -405,9 +405,9 @@

      Declaration

    • @@ -433,9 +433,9 @@

      Declaration

    • @@ -460,9 +460,9 @@

      Declaration

    • @@ -477,7 +477,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -487,9 +487,9 @@

      Declaration

    • @@ -514,9 +514,9 @@

      Declaration

    • @@ -541,9 +541,9 @@

      Declaration

    • @@ -568,9 +568,9 @@

      Declaration

    • @@ -595,9 +595,9 @@

      Declaration

    • @@ -622,9 +622,9 @@

      Declaration

    • @@ -649,9 +649,9 @@

      Declaration

    • @@ -676,9 +676,9 @@

      Declaration

    • @@ -703,9 +703,9 @@

      Declaration

    • - + - based + based
      @@ -720,7 +720,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var based = [String: String]()
      +
      public var based = [String: String]()
      @@ -730,9 +730,9 @@

      Declaration

    • - + - inherits + inherits
      @@ -747,7 +747,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var inherits = [String: Type]()
      +
      public var inherits = [String: Type]()
      @@ -757,9 +757,9 @@

      Declaration

    • @@ -774,7 +774,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var implements = [String: Type]()
      +
      public var implements = [String: Type]()
      @@ -784,9 +784,9 @@

      Declaration

    • @@ -801,7 +801,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var containedTypes: [Type]
      +
      public var containedTypes: [Type]
      @@ -811,9 +811,9 @@

      Declaration

    • @@ -838,9 +838,9 @@

      Declaration

    • @@ -865,9 +865,9 @@

      Declaration

    • - + - parent + parent
      @@ -892,9 +892,9 @@

      Declaration

    • @@ -909,7 +909,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var supertype: Type?
      +
      public var supertype: Type?
      @@ -919,9 +919,9 @@

      Declaration

    • @@ -936,7 +936,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var attributes: [String: Attribute]
      +
      public var attributes: [String: Attribute]
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TypeName.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TypeName.html index 99fbe7e77..73a5df243 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TypeName.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/TypeName.html @@ -159,9 +159,9 @@

      TypeName

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -203,7 +203,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var actualTypeName: TypeName?
      +
      public var actualTypeName: TypeName?
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • @@ -294,9 +294,9 @@

      Declaration

    • @@ -321,9 +321,9 @@

      Declaration

    • - + - isVoid + isVoid
      @@ -348,9 +348,9 @@

      Declaration

    • - + - isTuple + isTuple
      @@ -375,9 +375,9 @@

      Declaration

    • - + - tuple + tuple
      @@ -402,9 +402,9 @@

      Declaration

    • - + - isArray + isArray
      @@ -429,9 +429,9 @@

      Declaration

    • - + - array + array
      @@ -456,9 +456,9 @@

      Declaration

    • @@ -483,9 +483,9 @@

      Declaration

    • @@ -500,7 +500,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var dictionary: DictionaryType?
      +
      public var dictionary: DictionaryType?
      @@ -510,9 +510,9 @@

      Declaration

    • @@ -537,9 +537,9 @@

      Declaration

    • @@ -547,7 +547,7 @@

      Declaration

      -

      Returns value of name property.

      +

      Returns value of name property.

      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Types.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Types.html index d791c3d58..732ed3539 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Types.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Types.html @@ -159,9 +159,9 @@

      Types

    • - + - all + all
      @@ -186,9 +186,9 @@

      Declaration

    • @@ -213,9 +213,9 @@

      Declaration

    • - + - classes + classes
      @@ -240,9 +240,9 @@

      Declaration

    • - + - structs + structs
      @@ -267,9 +267,9 @@

      Declaration

    • - + - enums + enums
      @@ -294,9 +294,9 @@

      Declaration

    • - + - based + based
      @@ -322,9 +322,9 @@

      Declaration

    • @@ -350,9 +350,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Variable.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Variable.html index f64202c23..49b387571 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Variable.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Classes/Variable.html @@ -159,9 +159,9 @@

      Variable

    • - + - name + name
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • - + - type + type
      @@ -230,7 +230,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var type: Type?
      +
      public var type: Type?
      @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • - + - isStatic + isStatic
      @@ -294,9 +294,9 @@

      Declaration

    • @@ -321,9 +321,9 @@

      Declaration

    • @@ -349,9 +349,9 @@

      Declaration

    • @@ -376,9 +376,9 @@

      Declaration

    • @@ -393,7 +393,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var defaultValue: String?
      +
      public var defaultValue: String?
      @@ -403,9 +403,9 @@

      Declaration

    • @@ -420,7 +420,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var annotations: [String: NSObject] = [:]
      +
      public var annotations: [String: NSObject] = [:]
      @@ -430,9 +430,9 @@

      Declaration

    • @@ -447,227 +447,7 @@

      Declaration

      Declaration

      Swift

      -
      public internal(set) var attributes: [String: Attribute]
      - -
      -
      -
    • -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - isOptional - -
      -
      -
      -
      -
      -
      -

      Whether type is optional. Shorthand for typeName.isOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • - -
      -
      -
      -
      -
      -

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isImplicitlyUnwrappedOptional: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - unwrappedTypeName - -
      -
      -
      -
      -
      -
      -

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var unwrappedTypeName: String
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - actualTypeName - -
      -
      -
      -
      -
      -
      -

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var actualTypeName: TypeName?
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isTuple - -
      -
      -
      -
      -
      -
      -

      Whether type is a tuple. Shorthand for typeName.isTuple

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isTuple: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isClosure - -
      -
      -
      -
      -
      -
      -

      Whether type is a closure. Shorthand for typeName.isClosure

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isClosure: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isArray - -
      -
      -
      -
      -
      -
      -

      Whether type is an array. Shorthand for typeName.isArray

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isArray: Bool
      - -
      -
      -
      -
      -
    • -
    • -
      - - - - isDictionary - -
      -
      -
      -
      -
      -
      -

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public var isDictionary: Bool
      +
      public var attributes: [String: Attribute]
      diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Other Protocols.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Other Protocols.html index a2ab6ad93..485c4052e 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Other Protocols.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Other Protocols.html @@ -152,9 +152,9 @@

      Other Protocols

    • - + - Typed + Typed
      @@ -184,9 +184,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Annotated.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Annotated.html index 78e29517a..34ced6079 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Annotated.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Annotated.html @@ -159,9 +159,9 @@

      Annotated

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Typed.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Typed.html index 0959168dc..f83867eb7 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Typed.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Protocols/Typed.html @@ -159,9 +159,9 @@

      Typed

    • - + - type + type
      @@ -186,9 +186,9 @@

      Declaration

    • - + - typeName + typeName
      @@ -213,9 +213,9 @@

      Declaration

    • @@ -240,9 +240,9 @@

      Declaration

    • @@ -267,9 +267,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Types.html b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Types.html index 31a02884c..efba7bc2c 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Types.html +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/Types.html @@ -151,9 +151,9 @@

      Types

    • - + - Types + Types
      @@ -183,9 +183,9 @@

      Declaration

    • - + - Type + Type
      @@ -215,9 +215,9 @@

      Declaration

    • - + - Protocol + Protocol
      @@ -247,9 +247,9 @@

      Declaration

    • - + - Class + Class
      @@ -265,7 +265,7 @@

      Declaration

      Declaration

      Swift

      -
      public final class Class: Type
      +
      @objc(SwiftClass) public final class Class: Type
      @@ -279,9 +279,9 @@

      Declaration

    • - + - Struct + Struct
      @@ -311,9 +311,9 @@

      Declaration

    • - + - Enum + Enum
      @@ -339,9 +339,9 @@

      Declaration

    • - + - EnumCase + EnumCase
      @@ -367,9 +367,9 @@

      Declaration

    • @@ -399,9 +399,9 @@

      Declaration

    • - + - Variable + Variable
      @@ -431,9 +431,9 @@

      Declaration

    • - + - Method + Method
      @@ -449,7 +449,7 @@

      Declaration

      Declaration

      Swift

      -
      public final class Method: NSObject, SourceryModel, Annotated
      +
      @objc(SwiftMethod) public final class Method: NSObject, SourceryModel, Annotated
      @@ -459,9 +459,9 @@

      Declaration

    • @@ -491,9 +491,9 @@

      Declaration

    • - + - TypeName + TypeName
      @@ -519,9 +519,9 @@

      Declaration

    • @@ -547,9 +547,9 @@

      Declaration

    • @@ -575,9 +575,9 @@

      Declaration

    • @@ -603,9 +603,9 @@

      Declaration

    • @@ -635,9 +635,9 @@

      Declaration

    • diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/search.json b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/search.json index dee403ef9..09207fb48 100644 --- a/docs/docsets/Sourcery.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/Sourcery.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Protocols/Annotated.html#/s:vP8Sourcery9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Annotated"},"Protocols/Typed.html#/s:vP8Sourcery5Typed4typeGSqCS_4Type_":{"name":"type","abstract":"

      Type, if known

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Type name

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"Typed"},"Protocols/Typed.html":{"name":"Typed","abstract":"

      Descibes typed declaration, i.e. variable, method parameter, tuple element, enum case associated value

      "},"Protocols/Annotated.html":{"name":"Annotated","abstract":"

      Describes annotated declaration, i.e. type, method, variable, enum case

      "},"Classes/Attribute.html#/s:vC8Sourcery9Attribute4nameSS":{"name":"name","abstract":"

      Attribute name

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC8Sourcery9Attribute9argumentsGVs10DictionarySSCSo8NSObject_":{"name":"arguments","abstract":"

      Attribute arguments

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC8Sourcery9Attribute11descriptionSS":{"name":"description","abstract":"

      Attribute description that can be used in a template.

      ","parent_name":"Attribute"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType13valueTypeNameCS_8TypeName":{"name":"valueTypeName","abstract":"

      Dictionary value type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType9valueTypeGSqCS_4Type_":{"name":"valueType","abstract":"

      Dictionary value type, if known

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType11keyTypeNameCS_8TypeName":{"name":"keyTypeName","abstract":"

      Dictionary key type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType7keyTypeGSqCS_4Type_":{"name":"keyType","abstract":"

      Dictionary key type, if known

      ","parent_name":"DictionaryType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType15elementTypeNameCS_8TypeName":{"name":"elementTypeName","abstract":"

      Array element type name

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType11elementTypeGSqCS_4Type_":{"name":"elementType","abstract":"

      Array element type, if known

      ","parent_name":"ArrayType"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement4nameSS":{"name":"name","abstract":"

      Tuple element name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Tuple element type name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement4typeGSqCS_4Type_":{"name":"type","abstract":"

      Tuple element type, if known

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"TupleElement"},"Classes/TupleType.html#/s:vC8Sourcery9TupleType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TupleType"},"Classes/TupleType.html#/s:vC8Sourcery9TupleType8elementsGSaCS_12TupleElement_":{"name":"elements","abstract":"

      Tuple elements

      ","parent_name":"TupleType"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName14actualTypeNameGSqS0__":{"name":"actualTypeName","abstract":"

      Actual type name if given type name is a typealias

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type name attributes, i.e. @escaping

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName6isVoidSb":{"name":"isVoid","abstract":"

      Whether type is void (Void or ())

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName5tupleGSqCS_9TupleType_":{"name":"tuple","abstract":"

      Tuple type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName5arrayGSqCS_9ArrayType_":{"name":"array","abstract":"

      Array type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10dictionaryGSqCS_14DictionaryType_":{"name":"dictionary","abstract":"

      Dictionary type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName11descriptionSS":{"name":"description","abstract":"

      Returns value of name property.

      ","parent_name":"TypeName"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter13argumentLabelGSqSS_":{"name":"argumentLabel","abstract":"

      Parameter external name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter4nameSS":{"name":"name","abstract":"

      Parameter internal name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Parameter type name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter4typeGSqCS_4Type_":{"name":"type","abstract":"

      Parameter type, if known

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter14typeAttributesGVs10DictionarySSCS_9Attribute_":{"name":"typeAttributes","abstract":"

      Parameter type attributes, i.e. @escaping

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Method parameter default value expression

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"MethodParameter"},"Classes/Method.html#/s:vC8Sourcery6Method4nameSS":{"name":"name","abstract":"

      Full method name, including generic constraints, i.e. foo<T>(bar: T)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method12selectorNameSS":{"name":"selectorName","abstract":"

      Method name including arguments names, i.e. foo(bar:)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method9shortNameSS":{"name":"shortName","abstract":"

      Method name without arguments names and parenthesis, i.e. foo<T>

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8callNameSS":{"name":"callName","abstract":"

      Method name without arguments names, parenthesis and generic types, i.e. foo (can be used to generate code for method call)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10parametersGSaCS_15MethodParameter_":{"name":"parameters","abstract":"

      Method parameters

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method14returnTypeNameCS_8TypeName":{"name":"returnTypeName","abstract":"

      Return value type name used in declaration, including generic constraints, i.e. where T: Equatable

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method20actualReturnTypeNameCS_8TypeName":{"name":"actualReturnTypeName","abstract":"

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10returnTypeGSqCS_4Type_":{"name":"returnType","abstract":"

      Actual return value type, if known

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method20isOptionalReturnTypeSb":{"name":"isOptionalReturnType","abstract":"

      Whether return value type is optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method39isImplicitlyUnwrappedOptionalReturnTypeSb":{"name":"isImplicitlyUnwrappedOptionalReturnType","abstract":"

      Whether return value type is implicitly unwrapped optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method23unwrappedReturnTypeNameSS":{"name":"unwrappedReturnTypeName","abstract":"

      Return value type name without attributes and optional type information

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method6throwsSb":{"name":"throws","abstract":"

      Whether method throws

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8rethrowsSb":{"name":"rethrows","abstract":"

      Whether method rethrows

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method11accessLevelSS":{"name":"accessLevel","abstract":"

      Method access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8isStaticSb":{"name":"isStatic","abstract":"

      Whether method is a static method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method7isClassSb":{"name":"isClass","abstract":"

      Whether method is a class method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method13isInitializerSb":{"name":"isInitializer","abstract":"

      Whether method is an initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method21isFailableInitializerSb":{"name":"isFailableInitializer","abstract":"

      Whether method is a failable initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method24isConvenienceInitialiserSb":{"name":"isConvenienceInitialiser","abstract":"

      Whether method is a convenience initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Method attributes, i.e. @discardableResult

      ","parent_name":"Method"},"Classes/Variable.html#/s:vC8Sourcery8Variable4nameSS":{"name":"name","abstract":"

      Variable name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Variable type name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable4typeGSqCS_4Type_":{"name":"type","abstract":"

      Variable type, if known

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10isComputedSb":{"name":"isComputed","abstract":"

      Whether variable is computed

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable8isStaticSb":{"name":"isStatic","abstract":"

      Whether variable is static

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10readAccessSS":{"name":"readAccess","abstract":"

      Variable read access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable11writeAccessSS":{"name":"writeAccess","abstract":"

      Variable write access, i.e. internal, private, fileprivate, public, open.","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable9isMutableSb":{"name":"isMutable","abstract":"

      Whether variable is mutable or not

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Variable default value expression

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Variable attributes, i.e. @IBOutlet, @IBInspectable

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"Variable"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue9localNameGSqSS_":{"name":"localName","abstract":"

      Associated value local name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue12externalNameGSqSS_":{"name":"externalName","abstract":"

      Associated value external name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Associated value type name

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue4typeGSqCS_4Type_":{"name":"type","abstract":"

      Associated value type, if known

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"AssociatedValue"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase4nameSS":{"name":"name","abstract":"

      Enum case name

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase8rawValueGSqSS_":{"name":"rawValue","abstract":"

      Enum case raw value, if any

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase16associatedValuesGSaCS_15AssociatedValue_":{"name":"associatedValues","abstract":"

      Enum case associated values

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Enum case annotations

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase18hasAssociatedValueSb":{"name":"hasAssociatedValue","abstract":"

      Whether enum case has associated value

      ","parent_name":"EnumCase"},"Classes/Enum.html#/s:vC8Sourcery4Enum4kindSS":{"name":"kind","abstract":"

      Returns enum

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum5casesGSaCS_8EnumCase_":{"name":"cases","abstract":"

      Enum cases

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum7rawTypeGSqCS_4Type_":{"name":"rawType","abstract":"

      Enum raw value type, if known

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum19hasAssociatedValuesSb":{"name":"hasAssociatedValues","abstract":"

      Whether enum contains any associated values

      ","parent_name":"Enum"},"Classes/Struct.html#/s:vC8Sourcery6Struct4kindSS":{"name":"kind","abstract":"

      Returns struct

      ","parent_name":"Struct"},"Classes/Class.html#/s:vC8Sourcery5Class4kindSS":{"name":"kind","abstract":"

      Returns class

      ","parent_name":"Class"},"Classes/Protocol.html#/s:vC8Sourcery8Protocol4kindSS":{"name":"kind","abstract":"

      Returns protocol

      ","parent_name":"Protocol"},"Classes/Type.html#/s:vC8Sourcery4Type11isExtensionSb":{"name":"isExtension","abstract":"

      Whether declaration is an extension of some type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type4kindSS":{"name":"kind","abstract":"

      Kind of type declaration, i.e. enum, struct, class, protocol or extension

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type11accessLevelSS":{"name":"accessLevel","abstract":"

      Type access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type4nameSS":{"name":"name","abstract":"

      Type name in global scope. For inner types includes the name of its containing type, i.e. Type.Inner

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9isGenericSb":{"name":"isGeneric","abstract":"

      Whether type is generic

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9localNameSS":{"name":"localName","abstract":"

      Type name in its own scope.

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9variablesGSaCS_8Variable_":{"name":"variables","abstract":"

      Variables defined in this type only, inluding variables defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12allVariablesGSaCS_8Variable_":{"name":"allVariables","abstract":"

      All variables defined for this type, including variables defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type7methodsGSaCS_6Method_":{"name":"methods","abstract":"

      Methods defined in this type only, inluding methods defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10allMethodsGSaCS_6Method_":{"name":"allMethods","abstract":"

      All methods defined for this type, including methods defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12initializersGSaCS_6Method_":{"name":"initializers","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vP8Sourcery9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15staticVariablesGSaCS_8Variable_":{"name":"staticVariables","abstract":"

      Static variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type13staticMethodsGSaCS_6Method_":{"name":"staticMethods","abstract":"

      Static methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12classMethodsGSaCS_6Method_":{"name":"classMethods","abstract":"

      Class methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type17instanceVariablesGSaCS_8Variable_":{"name":"instanceVariables","abstract":"

      Instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15instanceMethodsGSaCS_6Method_":{"name":"instanceMethods","abstract":"

      Instance methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type17computedVariablesGSaCS_8Variable_":{"name":"computedVariables","abstract":"

      Computed instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15storedVariablesGSaCS_8Variable_":{"name":"storedVariables","abstract":"

      Stored instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type14inheritedTypesGSaSS_":{"name":"inheritedTypes","abstract":"

      Names of types this type inherits from (for classes only) and protocols it implements, in order of definition

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type8inheritsGVs10DictionarySSS0__":{"name":"inherits","abstract":"

      Types this type inherits from (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10implementsGVs10DictionarySSS0__":{"name":"implements","abstract":"

      Protocols this type implements

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type14containedTypesGSaS0__":{"name":"containedTypes","abstract":"

      Contained types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type13containedTypeGVs10DictionarySSS0__":{"name":"containedType","abstract":"

      Contained types groupd by their names

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10parentNameGSqSS_":{"name":"parentName","abstract":"

      Name of parent type (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type6parentGSqS0__":{"name":"parent","abstract":"

      Parent type, if known (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9supertypeGSqS0__":{"name":"supertype","abstract":"

      Superclass type, if known (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type attributes, i.e. @objc

      ","parent_name":"Type"},"Classes/Types.html#/s:vC8Sourcery5Types3allGSaCS_4Type_":{"name":"all","abstract":"

      All known types, excluding protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types9protocolsGSaCS_8Protocol_":{"name":"protocols","abstract":"

      All known protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types7classesGSaCS_5Class_":{"name":"classes","abstract":"

      All known classes

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types7structsGSaCS_6Struct_":{"name":"structs","abstract":"

      All known structs

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types5enumsGSaCS_4Enum_":{"name":"enums","abstract":"

      All known enums

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types5basedCS_15TypesCollection":{"name":"based","abstract":"

      Types based on any other type, grouped by its name, even if they are not known.","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types10inheritingCS_15TypesCollection":{"name":"inheriting","abstract":"

      Classes inheriting from any known class, grouped by its name.","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types12implementingCS_15TypesCollection":{"name":"implementing","abstract":"

      Types implementing known protocol, grouped by its name.","parent_name":"Types"},"Classes/Types.html":{"name":"Types","abstract":"

      Collection of scanned types for accessing in templates

      "},"Classes/Type.html":{"name":"Type","abstract":"

      Defines Swift type

      "},"Classes/Protocol.html":{"name":"Protocol","abstract":"

      Describes Swift protocol

      "},"Classes/Class.html":{"name":"Class","abstract":"

      Descibes Swift class

      "},"Classes/Struct.html":{"name":"Struct","abstract":"

      Describes Swift struct

      "},"Classes/Enum.html":{"name":"Enum","abstract":"

      Defines Swift enum

      "},"Classes/EnumCase.html":{"name":"EnumCase","abstract":"

      Defines enum case

      "},"Classes/AssociatedValue.html":{"name":"AssociatedValue","abstract":"

      Defines enum case associated value

      "},"Classes/Variable.html":{"name":"Variable","abstract":"

      Defines variable

      "},"Classes/Method.html":{"name":"Method","abstract":"

      Describes method

      "},"Classes/MethodParameter.html":{"name":"MethodParameter","abstract":"

      Describes method parameter

      "},"Classes/TypeName.html":{"name":"TypeName","abstract":"

      Describes name of the type used in typed declaration (variable, method parameter or return value etc.)

      "},"Classes/TupleType.html":{"name":"TupleType","abstract":"

      Describes tuple type

      "},"Classes/TupleElement.html":{"name":"TupleElement","abstract":"

      Describes tuple type element

      "},"Classes/ArrayType.html":{"name":"ArrayType","abstract":"

      Describes array type

      "},"Classes/DictionaryType.html":{"name":"DictionaryType","abstract":"

      Describes dictionary type

      "},"Classes/Attribute.html":{"name":"Attribute","abstract":"

      Describes Swift attribute

      "},"equatable.html":{"name":"Equatable"},"hashable.html":{"name":"Hashable"},"enum-cases.html":{"name":"Enum cases"},"lenses.html":{"name":"Lenses"},"mocks.html":{"name":"Mocks"},"diffable.html":{"name":"Diffable"},"linuxmain.html":{"name":"LinuxMain"},"decorator.html":{"name":"Decorator"},"installing.html":{"name":"Installing"},"usage.html":{"name":"Usage"},"writing-templates.html":{"name":"Writing templates"},"Guides.html":{"name":"Guides"},"Examples.html":{"name":"Examples"},"Types.html":{"name":"Types"},"Other Protocols.html":{"name":"Other Protocols","abstract":"The following protocols are available globally."}} \ No newline at end of file +{"Protocols/Annotated.html#/s:vP17SourceryFramework9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Annotated"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed4typeGSqCS_4Type_":{"name":"type","abstract":"

      Type, if known

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Type name

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"Typed"},"Protocols/Typed.html":{"name":"Typed","abstract":"

      Descibes typed declaration, i.e. variable, method parameter, tuple element, enum case associated value

      "},"Protocols/Annotated.html":{"name":"Annotated","abstract":"

      Describes annotated declaration, i.e. type, method, variable, enum case

      "},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute4nameSS":{"name":"name","abstract":"

      Attribute name

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute9argumentsGVs10DictionarySSCSo8NSObject_":{"name":"arguments","abstract":"

      Attribute arguments

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute11descriptionSS":{"name":"description","abstract":"

      Attribute description that can be used in a template.

      ","parent_name":"Attribute"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType13valueTypeNameCS_8TypeName":{"name":"valueTypeName","abstract":"

      Dictionary value type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType9valueTypeGSqCS_4Type_":{"name":"valueType","abstract":"

      Dictionary value type, if known

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType11keyTypeNameCS_8TypeName":{"name":"keyTypeName","abstract":"

      Dictionary key type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType7keyTypeGSqCS_4Type_":{"name":"keyType","abstract":"

      Dictionary key type, if known

      ","parent_name":"DictionaryType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType15elementTypeNameCS_8TypeName":{"name":"elementTypeName","abstract":"

      Array element type name

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType11elementTypeGSqCS_4Type_":{"name":"elementType","abstract":"

      Array element type, if known

      ","parent_name":"ArrayType"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement4nameSS":{"name":"name","abstract":"

      Tuple element name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Tuple element type name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement4typeGSqCS_4Type_":{"name":"type","abstract":"

      Tuple element type, if known

      ","parent_name":"TupleElement"},"Classes/TupleType.html#/s:vC17SourceryFramework9TupleType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TupleType"},"Classes/TupleType.html#/s:vC17SourceryFramework9TupleType8elementsGSaCS_12TupleElement_":{"name":"elements","abstract":"

      Tuple elements

      ","parent_name":"TupleType"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName14actualTypeNameGSqS0__":{"name":"actualTypeName","abstract":"

      Actual type name if given type name is a typealias

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type name attributes, i.e. @escaping

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName6isVoidSb":{"name":"isVoid","abstract":"

      Whether type is void (Void or ())

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName5tupleGSqCS_9TupleType_":{"name":"tuple","abstract":"

      Tuple type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName5arrayGSqCS_9ArrayType_":{"name":"array","abstract":"

      Array type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10dictionaryGSqCS_14DictionaryType_":{"name":"dictionary","abstract":"

      Dictionary type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName11descriptionSS":{"name":"description","abstract":"

      Returns value of name property.

      ","parent_name":"TypeName"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter13argumentLabelGSqSS_":{"name":"argumentLabel","abstract":"

      Parameter external name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter4nameSS":{"name":"name","abstract":"

      Parameter internal name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Parameter type name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter4typeGSqCS_4Type_":{"name":"type","abstract":"

      Parameter type, if known

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter14typeAttributesGVs10DictionarySSCS_9Attribute_":{"name":"typeAttributes","abstract":"

      Parameter type attributes, i.e. @escaping

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Method parameter default value expression

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"MethodParameter"},"Classes/Method.html#/s:vC17SourceryFramework6Method4nameSS":{"name":"name","abstract":"

      Full method name, including generic constraints, i.e. foo<T>(bar: T)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method12selectorNameSS":{"name":"selectorName","abstract":"

      Method name including arguments names, i.e. foo(bar:)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method9shortNameSS":{"name":"shortName","abstract":"

      Method name without arguments names and parenthesis, i.e. foo<T>

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8callNameSS":{"name":"callName","abstract":"

      Method name without arguments names, parenthesis and generic types, i.e. foo (can be used to generate code for method call)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10parametersGSaCS_15MethodParameter_":{"name":"parameters","abstract":"

      Method parameters

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method14returnTypeNameCS_8TypeName":{"name":"returnTypeName","abstract":"

      Return value type name used in declaration, including generic constraints, i.e. where T: Equatable

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method20actualReturnTypeNameCS_8TypeName":{"name":"actualReturnTypeName","abstract":"

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10returnTypeGSqCS_4Type_":{"name":"returnType","abstract":"

      Actual return value type, if known

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method20isOptionalReturnTypeSb":{"name":"isOptionalReturnType","abstract":"

      Whether return value type is optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method39isImplicitlyUnwrappedOptionalReturnTypeSb":{"name":"isImplicitlyUnwrappedOptionalReturnType","abstract":"

      Whether return value type is implicitly unwrapped optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method23unwrappedReturnTypeNameSS":{"name":"unwrappedReturnTypeName","abstract":"

      Return value type name without attributes and optional type information

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method6throwsSb":{"name":"throws","abstract":"

      Whether method throws

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8rethrowsSb":{"name":"rethrows","abstract":"

      Whether method rethrows

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method11accessLevelSS":{"name":"accessLevel","abstract":"

      Method access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8isStaticSb":{"name":"isStatic","abstract":"

      Whether method is a static method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method7isClassSb":{"name":"isClass","abstract":"

      Whether method is a class method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method13isInitializerSb":{"name":"isInitializer","abstract":"

      Whether method is an initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method21isFailableInitializerSb":{"name":"isFailableInitializer","abstract":"

      Whether method is a failable initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method24isConvenienceInitialiserSb":{"name":"isConvenienceInitialiser","abstract":"

      Whether method is a convenience initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Method attributes, i.e. @discardableResult

      ","parent_name":"Method"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable4nameSS":{"name":"name","abstract":"

      Variable name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Variable type name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable4typeGSqCS_4Type_":{"name":"type","abstract":"

      Variable type, if known

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10isComputedSb":{"name":"isComputed","abstract":"

      Whether variable is computed

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable8isStaticSb":{"name":"isStatic","abstract":"

      Whether variable is static

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10readAccessSS":{"name":"readAccess","abstract":"

      Variable read access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable11writeAccessSS":{"name":"writeAccess","abstract":"

      Variable write access, i.e. internal, private, fileprivate, public, open.","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable9isMutableSb":{"name":"isMutable","abstract":"

      Whether variable is mutable or not

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Variable default value expression

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Variable attributes, i.e. @IBOutlet, @IBInspectable

      ","parent_name":"Variable"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue9localNameGSqSS_":{"name":"localName","abstract":"

      Associated value local name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue12externalNameGSqSS_":{"name":"externalName","abstract":"

      Associated value external name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Associated value type name

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue4typeGSqCS_4Type_":{"name":"type","abstract":"

      Associated value type, if known

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"AssociatedValue"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase4nameSS":{"name":"name","abstract":"

      Enum case name

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase8rawValueGSqSS_":{"name":"rawValue","abstract":"

      Enum case raw value, if any

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase16associatedValuesGSaCS_15AssociatedValue_":{"name":"associatedValues","abstract":"

      Enum case associated values

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Enum case annotations

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase18hasAssociatedValueSb":{"name":"hasAssociatedValue","abstract":"

      Whether enum case has associated value

      ","parent_name":"EnumCase"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum4kindSS":{"name":"kind","abstract":"

      Returns enum

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum5casesGSaCS_8EnumCase_":{"name":"cases","abstract":"

      Enum cases

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum11rawTypeNameGSqCS_8TypeName_":{"name":"rawTypeName","abstract":"

      Enum raw value type name, if any

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum7rawTypeGSqCS_4Type_":{"name":"rawType","abstract":"

      Enum raw value type, if known

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum19hasAssociatedValuesSb":{"name":"hasAssociatedValues","abstract":"

      Whether enum contains any associated values

      ","parent_name":"Enum"},"Classes/Struct.html#/s:vC17SourceryFramework6Struct4kindSS":{"name":"kind","abstract":"

      Returns struct

      ","parent_name":"Struct"},"Classes/Class.html#/s:vC17SourceryFramework5Class4kindSS":{"name":"kind","abstract":"

      Returns class

      ","parent_name":"Class"},"Classes/Protocol.html#/s:vC17SourceryFramework8Protocol4kindSS":{"name":"kind","abstract":"

      Returns protocol

      ","parent_name":"Protocol"},"Classes/Type.html#/s:vC17SourceryFramework4Type11isExtensionSb":{"name":"isExtension","abstract":"

      Whether declaration is an extension of some type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type4kindSS":{"name":"kind","abstract":"

      Kind of type declaration, i.e. enum, struct, class, protocol or extension

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type11accessLevelSS":{"name":"accessLevel","abstract":"

      Type access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type4nameSS":{"name":"name","abstract":"

      Type name in global scope. For inner types includes the name of its containing type, i.e. Type.Inner

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9isGenericSb":{"name":"isGeneric","abstract":"

      Whether type is generic

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9localNameSS":{"name":"localName","abstract":"

      Type name in its own scope.

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9variablesGSaCS_8Variable_":{"name":"variables","abstract":"

      Variables defined in this type only, inluding variables defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12allVariablesGSaCS_8Variable_":{"name":"allVariables","abstract":"

      All variables defined for this type, including variables defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type7methodsGSaCS_6Method_":{"name":"methods","abstract":"

      Methods defined in this type only, inluding methods defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10allMethodsGSaCS_6Method_":{"name":"allMethods","abstract":"

      All methods defined for this type, including methods defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12initializersGSaCS_6Method_":{"name":"initializers","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vP17SourceryFramework9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15staticVariablesGSaCS_8Variable_":{"name":"staticVariables","abstract":"

      Static variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type13staticMethodsGSaCS_6Method_":{"name":"staticMethods","abstract":"

      Static methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12classMethodsGSaCS_6Method_":{"name":"classMethods","abstract":"

      Class methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type17instanceVariablesGSaCS_8Variable_":{"name":"instanceVariables","abstract":"

      Instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15instanceMethodsGSaCS_6Method_":{"name":"instanceMethods","abstract":"

      Instance methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type17computedVariablesGSaCS_8Variable_":{"name":"computedVariables","abstract":"

      Computed instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15storedVariablesGSaCS_8Variable_":{"name":"storedVariables","abstract":"

      Stored instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type14inheritedTypesGSaSS_":{"name":"inheritedTypes","abstract":"

      Names of types this type inherits from (for classes only) and protocols it implements, in order of definition

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type8inheritsGVs10DictionarySSS0__":{"name":"inherits","abstract":"

      Types this type inherits from (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10implementsGVs10DictionarySSS0__":{"name":"implements","abstract":"

      Protocols this type implements

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type14containedTypesGSaS0__":{"name":"containedTypes","abstract":"

      Contained types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type13containedTypeGVs10DictionarySSS0__":{"name":"containedType","abstract":"

      Contained types groupd by their names

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10parentNameGSqSS_":{"name":"parentName","abstract":"

      Name of parent type (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type6parentGSqS0__":{"name":"parent","abstract":"

      Parent type, if known (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9supertypeGSqS0__":{"name":"supertype","abstract":"

      Superclass type, if known (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type attributes, i.e. @objc

      ","parent_name":"Type"},"Classes/Types.html#/s:vC17SourceryFramework5Types3allGSaCS_4Type_":{"name":"all","abstract":"

      All known types, excluding protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types9protocolsGSaCS_8Protocol_":{"name":"protocols","abstract":"

      All known protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types7classesGSaCS_5Class_":{"name":"classes","abstract":"

      All known classes

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types7structsGSaCS_6Struct_":{"name":"structs","abstract":"

      All known structs

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types5enumsGSaCS_4Enum_":{"name":"enums","abstract":"

      All known enums

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types5basedCS_15TypesCollection":{"name":"based","abstract":"

      Types based on any other type, grouped by its name, even if they are not known.","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types10inheritingCS_15TypesCollection":{"name":"inheriting","abstract":"

      Classes inheriting from any known class, grouped by its name.","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types12implementingCS_15TypesCollection":{"name":"implementing","abstract":"

      Types implementing known protocol, grouped by its name.","parent_name":"Types"},"Classes/Types.html":{"name":"Types","abstract":"

      Collection of scanned types for accessing in templates

      "},"Classes/Type.html":{"name":"Type","abstract":"

      Defines Swift type

      "},"Classes/Protocol.html":{"name":"Protocol","abstract":"

      Describes Swift protocol

      "},"Classes/Class.html":{"name":"Class","abstract":"

      Descibes Swift class

      "},"Classes/Struct.html":{"name":"Struct","abstract":"

      Describes Swift struct

      "},"Classes/Enum.html":{"name":"Enum","abstract":"

      Defines Swift enum

      "},"Classes/EnumCase.html":{"name":"EnumCase","abstract":"

      Defines enum case

      "},"Classes/AssociatedValue.html":{"name":"AssociatedValue","abstract":"

      Defines enum case associated value

      "},"Classes/Variable.html":{"name":"Variable","abstract":"

      Defines variable

      "},"Classes/Method.html":{"name":"Method","abstract":"

      Describes method

      "},"Classes/MethodParameter.html":{"name":"MethodParameter","abstract":"

      Describes method parameter

      "},"Classes/TypeName.html":{"name":"TypeName","abstract":"

      Describes name of the type used in typed declaration (variable, method parameter or return value etc.)

      "},"Classes/TupleType.html":{"name":"TupleType","abstract":"

      Describes tuple type

      "},"Classes/TupleElement.html":{"name":"TupleElement","abstract":"

      Describes tuple type element

      "},"Classes/ArrayType.html":{"name":"ArrayType","abstract":"

      Describes array type

      "},"Classes/DictionaryType.html":{"name":"DictionaryType","abstract":"

      Describes dictionary type

      "},"Classes/Attribute.html":{"name":"Attribute","abstract":"

      Describes Swift attribute

      "},"equatable.html":{"name":"Equatable"},"hashable.html":{"name":"Hashable"},"enum-cases.html":{"name":"Enum cases"},"lenses.html":{"name":"Lenses"},"mocks.html":{"name":"Mocks"},"diffable.html":{"name":"Diffable"},"linuxmain.html":{"name":"LinuxMain"},"decorator.html":{"name":"Decorator"},"installing.html":{"name":"Installing"},"usage.html":{"name":"Usage"},"writing-templates.html":{"name":"Writing templates"},"Guides.html":{"name":"Guides"},"Examples.html":{"name":"Examples"},"Types.html":{"name":"Types"},"Other Protocols.html":{"name":"Other Protocols","abstract":"The following protocols are available globally."}} \ No newline at end of file diff --git a/docs/docsets/Sourcery.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Sourcery.docset/Contents/Resources/docSet.dsidx index 039ec5ab6e3decb020c7978531f5a6a61a9ffbf4..b74671a1b17d7807436109367954de3f94b7b100 100644 GIT binary patch literal 49152 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 literal 57344 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 s!68FdJW#ghs5DnT3z>iv{h|^r1H@*yok2e58L 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 delta 84550 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

      fyK%}*R6-E6;Jqh3 zofDVWC`{>T1cQUKtN;ZJU=-XUYepbY%T5s2d z$PcVl2}-bPd)!S*`^>?CQ&Vo)#^7M)h|^CPi#Hf+je-xa-wK|=UDQS-L>enx-0;n{ ztuj{8(-Y;)IF7X#09EF5lk-t%?zv%1qv^AaS`SDpGctl`06zrPI6TlW!fA-&=qQ}KSp}?k4qBf(m zM7vf8k0U$!GZSpHvCiPB@6||^iaHkikj?2J%mXtz+awGLD2=4$#$lQpmQLSL^@P2D zOpZiL{dyE~7Ia`Wm@G#@Dffg|NgG-l*{&7W;kHavnex5IVO{7cf;OF14gOi-sC+ONviJ;Qbtdx@Ev60k7*aGCSpyh& z4EBj**leL1kYF%w_6Pn!=z>tgt4NZjKH<-_L~pQ-ynC2NDM{M(mr*g-`NsghH!8r2?FgY&&ah#DfLyO%g;1}(cduJaJp)<5TT@a$i< z>8LQ8T=rrvOB~G8Gwk&18 z%kf+2Gr*#G<^%Jc1g?FKb#1byx293tQeKLeFaq7Hw4CHy&TfG0$s;@o1H@azU_-6) z^u10H&&bX!yWr%f#RfjDVW9;V0Vw|9{f*R~C{IHoFdM~)JDifsbamZ@3 z1QilQ@ViobovOePY8m%Y`{e%JD4~{2C<*e47+|u4ePbJ!p!-?=3eHAVqKG=~=_q{G zI>b%4)`TDq{w8UiCiyRI)$F!syyqcUyzNw}9zxU->yjR8@~fuT#_WyPT(gj8)OBwo zr3*LYgaSdD8^gHMZ^86yBz^%f{wNM>{OxO$_Z~q&IZT_p$}GIK+R2zm#emU1wlS3| z4Oqb~To^5O8Ci?>0OwU4FIU15ONtRQv$b8&ht@6r!dGTJ#M{}r!{w(MJ!}fD51tj7 zcQ^#C8)BaN*(YfcdoR#=v$}O{EQk(l2z-uRQ0yRkWCuK6%1M`0TjrV^b`30q`8O;4 zb+M{DTELsDI+jVW`NL*Etvs$AdTEnL8h|JfZz|Q$ag!3hkW??KfSiSVa^s}=0MG_W ziOh^pjGPua&k&6t`G08AiyB?MI~J;`-IIjhaChZ)O{(amS-j)rCtIDch z%iJ|PAqt@iAgtfUyPzK)e6&@g{>%DU*RodX&ZtN+Gs4u_4PmCt9y0K=(@fhy0w_w~ zp4Iw!+<|Xj0VxyTu6O0ZU9|s@D=Q>9I1TSE-9CEH>DE1TwD4(#!9s{2wndbByqMam zgh7&{`Zw!n5sExt0BFC|Wqr>yRDn|yx0`%0p6QGfq9H}*>?zYB=fIP<#$6EK(z$!CFI*`rA4*iS$M;ln zpHJ;akr0`?gfeUpc+9DVabWK@dXsaNmI?dId(~dfH|N4b(_5O7=vlN3IiGYdkf*JG ze@2Tr=VM7L4(Y@Y!1-C}Lk$pCU)k)zIW65!x!WqSSC9|i7%hFfmom6W1_F3Oo51hB zl@KXjRORr<=x~OoBCUb9|49?2o}o1Mmz}VAq>OK|`a|HDzqJ&gv&@28<153l&jllH+kz=We$kcqv{T>Pny}+k5`RzJ2?G<-;IFsqFPG z))|L8PdGl{Iu>%U3}zvvFOv8!bHT57vu^6G^5xp7XJ2Lf58$5eC~n4#)VYO{+H={( zeHktg9syL)vIyT`IYbYTCsPXi>5z>cW#Kn11pie{K|tBol({=Bw6_2FWrlypQS&5o z*LFi^oFieM?6nQYdjqVoIm%I9W__^xFT_g77YOtv)?tPyI+CoiO%qIvlPGxZ^-BnA zhT8jjK6~%nJ7D~}v*_*Q_S6T4SeI8}a(0nX^J~8K2&v>xL!*Pgg4#{xv07g5QXv4kzM5WmAZ+oYeEY=!oP9dLyD>ik$MfT2u zA5A&P;(<1h2N>IEEpbbcw%)6hNBW#RZ$g(BMj3!%x97daQO4&?$rjDwJ41k1hY<^h|HwPuu=@^_v1kRzFmpx!X2Ea{q8oSuZsFdj%6Ja6?xYNr-!Wjdr zov?0F_XHoPKR&s(FNqE{wZ2}0MzB~dA78mOG;V&0KAp+Gb8@}QAb3fs^z=Gh>f*FL zSkXmo^D2|KJ$#D^r*Ai+!u_t4n~bR8(kl)8Pq$KwzCSQ_-ri zaP|nZhzwd>Txi`SN;U)u$$1|s0;1#EKCvI`zBH=4tBmgTUc#`SjcM5&{+#3Oi%#RZduIih zmlqhJ9uY!_BNdFIHxQzkxucB&9f(P=P4$)g$&2=GgY%i5JyU3Ir>9J?IW0hr^iIRn zdi7JaPi#iAft(=rL#n_8TAgae08|PwWg6Zk_YXu@u>{eM8Lp9q9Pn;m7M8CRr$;7EUS`7hQGE55zvFA9e-3dl8WYwA#mh=_@0Zqr zmpwB|SWB%@*Wl%A&*@)o0CRX^@7b)yxN;%h)xe>1+wAY46`;|-S}WrIkhc)e)I$~{$d0<7WN(>JTDnAl6Bg&ttKI#Ru9+(BZc)D;edH5c>hb?Q%E<%U0I`Ww;?CEhbwN z_d*B#;DrVKV{{0?I_U)%WMh>yezXh=M zVM$pA01591esVtZ1sJkq6w44e)E=i|jG5kA3(b(0_0dC^oKVrPU7Nn?H~v-hmoZ`+t6{hYGTMi@6BG&mR{GNqO@ zU)Ea%^(u=z5T%WtlDOZ-~IM0bx3yC_=5$rWUlz;gEe+~^Yz!&wPvni zII#B==IOO1V3;f+z(9pT@yS~`z#ugb zcmL2Fj*3B$Wo$a;Uml1uHZ7|%nVOd&VB-Y)?0rqMd49MvSiGRyNA-Q7sW*%8CcxDf6PJ^gJTHiVqndE6~0vD zHx`=aiLnjo8l`RgOG?9fe(}T}j0-{vY|Q9X$Kr9~%>((8-qtMdS&sM_efz;-xnAS* z-NS0iYby}8sfpjc|0^a1Xz?Z@MvUrK!`*LAS^=4CM6C^5t5VF+jz3#MsNE-hIX%^*1 zeIJxVcojFZ(S=&`sy+Mfi4@N@F#HsJI%z!jA=ARsLkqN<(@5F&$%N9hGScz1qe<&0 zpkq(?7NTCu>N5_+rVR~Ii{6l=P|A%0NdKHx!uBJBaN-VJFqCh%VN~L#X^EKVh0tu` zrYQ4Tg_&4ttdxkijD*-|BxSS4Xk@WQZZf(uEBU_&Qh^y2Md3f3$p3->Wrc-|L~#Pa zZ*Nxeoz;)u7&!2)0a`7P+_+Z|)=qg-{r6_!)1E>RXRcKKAXVD?H!Bo}#QA-q)}`x)u45_IQzu&Q?=< z7{an3#pD4rwllL62u*x|eP22PGPB^RTlVZX)wEa;Bd|y^q7XC7%?spgtKbJ*EZvB(QiSJTLwZ+w=^2xonkOQA2C_V4cUFF8Te8cLe<@z@0GH3;z9to=-MkV$|; zt>9P5!ziTpT?wagMOu^Wh;`gQ?y%+QEi|7 z!-0r0xx*ex-@f?VE6bMPyhVL_t_ur|gb)Q>7gRYn6tX%*sv$rdC7O8?vJ|&01Buhk z{bFkQ9{%WycPY$e6jLO;hLoUCF<>{^#~_A?kJE%-W6{*gChEppQjYCr8xnS5Fhj_D z?m0Tnf6V2-Rt#YMP}T91iD9YNO~cs|emc|sQ2b2g$!tpV_G`4>Me8GBK=m2ue+1#E zLx#s-D2lLX&%T^KfzG={Zs3qk+qd-61edR*$@I&?XN%|b>argkx3JT&MvWB4V;d>^szSm93o3VwG$; zTA2#@%@&&!&<&O{F!oGWRQ7II|5=$Z;pig{cj$lay`tUPrjPKVH%Z@4!;N2$^~za* zXa0fVt5VE8UAJJ#LxxiB+>5FY0D6@A0HE&n-Fxb0-oFR{>Te&v{Y&~ERJJm6?&TEJ z-_G46*+R|L)d9K|TO+2ndS_N4@7*U|n$?#)Wy}-ekD+qpV0DdI^rTB_IE|9xzHVs5 zFd-9~ui6V^GMCw7P8f-56hkn3=QO(5wXhQ&N{wf?yA&T!#xBGvh<7Ic)vQUr29$h& zS5WI=4R4oex%|Mf4xab6LNlVXOeeRJuw@ctz#<}zHn;*;>r*V6FJ`5ABoEGk%S8CR zU)&EqvCXQ~GrEgJ%vGizY`JM9lyaC#ZUR%qK#ZkU3YGSW<7wk>pHKztlQX zOh4Y3gfJ)#lKzLb&T{if*5Qm;xMW>u*Ajt3#8+4&y+#DveHd zF<_f%(bQ2(4ELc@K8YM5S8HojLEW-n_@R$q)fJ^!ut)mN34V-QgZt{;)AjiZo=3$L zC9z(# zpJ(Lw;)lsRZR6yhMU>Rma|5wf#+&}aLwJl9a4qDcIpZ;8U*CZRMJq5NK5A)2eRs^uPEz2LfTW(B9e zz#TMbibSC#!V!CDXT`Fa=c1eGHZ_5VY8QCH>5v`als{?J)WtBMTaf=yQIIzsn^R_j39!y^uz<^lnp3)5>?Fwl}=Cij3YV z&0U&?rL+>$yv-^}c_WHJM2B1J)V$<3J2c<>8)e+cr~+7|dX~q^I|tj?tX2;;Oh;RR z)y%(YE&Qt*x0~a;9lSJXn~YnlA2|utA%e^#n$zymQ{AKlr1wjTQLgwD5GX6pr$X|C zT){lG*^1bt)&BY6;I%s`wHf{;y|V+T7~h~f1SnX9;CCd=P@1@}Ua#3r8{D++U{?`O z#gPFnfcmOpm_MBH$8@XxG>6VTa@AKjZEC?*wuFsY zA6N)1>e84f`^j`(UE@D!=COP6nj=!X#iY_|O&edsHz0mo_L7^))mY1*Q?*juhlxz3 zR*b@&x`yTN6!#a>n_6~@s1VRVQ!-(SY+Bdq0`{L?du|LoVIfMd@ynvh_;pk66bfwC zEZu&sW7mbJpv17rXT2ckT7OronW(5GnuB>bD{`pcenHF5%ggpGZ7a%uqhFHUFZRvZ z1bjik*ATYC{_>%!##=VL%s!BavC%Y0ktP*bzVV(k7uB474WebmWYAIP_0T6Er56JL zM&PZj2A@gAy6AlM6emhU1&yC?jkC_gBWSGKjvB^s?FHtEi0~U-RTStdwovn9PsQu% z;$ZsCec=my^NnBs;aUoU*epA=nwe$Od?51xR>}YlEdD}WrSUBwQ=h9EC;w`oHe&Rl{TbWGZhc#?}QjM4HHos$A+$f3_Dfq0+YP6Vr6x1hCd)NTnVg+ZWX_#v__>A1(a9xyk>gCddApnq1#s#yq9( z{b$ZPu4dNss-*W_J}_twW;mU(Xi9_YV%E6mj9?1!ykU`ac)3Nog@hoE8eFJQXxB%V zXHRL12Cv18PsF-W<#^;1H(SA3 zr@4LUH97w~J}Q$jB}?zJ?~hjVdb@eDBvBTeE`x-eLfBtLnLx17mpeRhnF-n_r$8b? z1CQ`i0UG;3np{no$A!T93dma^-LRD~5^>WF4(C{^ zAaUfBvU{@hLN~>FGm5a{ujriekQQb>WqC&9jvGqjLzo)a7!jsyK|o_a7{MT9Z$NK? zBVgB7pNa|m*6++H-8r1x$;_=(FG3QuMVHY!ThBjNsXVQtZ;RfM{_tkXriZx$_%Bk( zjYNQa=YL!VDQvO9$K4;_aBw{JdQSiFvP!upro-LI4(6IB&}G;(cUBdZ?mX)&La-r8 zweO`b-pl%0y7G#NrUFFIKWeyTV>4|=6 z&p!G}?N9mU)EqmDppk^DvF5ixZHqFx$J=46j9!7<1jV)*)3u&bUn~b1?n5>_kkPMlkw`{#Az$a)Q+m?C@Rtc1&i5F+bs*Hfp7P8`*~b&qXF3d%&Zv%jchCL z!84S;fcVE-YX8MEPlYNtsQ)C&fRm>+l&~XGh1!qd;Kh{oP9ssO@QM$!sGci5>M#{{ zvKD+Iu_Ki9E$z2&+g|JNO|i+JppEt`9>_(3F)nsiTZ=t3ZXyVhZVP8B<1Kq9En4#XcW&cn+q$LI21PCOIjDOI$pS_{&A1@Zbj|3; z8s>Os&j(Zj_9}Oe_vhEwpXRB1g!3RZq!l|zh$@Fo=$P{3A`lpd-ELBvlZ4zXy+8k; zYl6Br|3#N7=N*Jm`wX@2;)}*{wN8iMrC8&jyV|6PDDVWKc?FWOB)uAcAkBfqmndJ= z&FvfoU%HO>qgL?Tn};N74g^aQ1l)*-m`#HmcUssl@)^`t z^br%i#jwXh7XY2+MC-TRC@(h?spqWThVXu*4SUFtS#0Jq$q8y}SDhN`>YY&)I_K!( z{`w4z+*g?-S6r6MV*3KMRsxCE{eswKp^M%U1}xs+zWB28?1sr|$22?0J6D{c$1wJHVXUvP5Ugx?Vm zK#PAaZCEPU_d@*>4<{H@^ zg3bR=H!b-F(oN-qk%Y|h;%-oU#k|JKkwqwpreM&C19wJBs%$s>9avIYVwOx`dMbPU z!W%+H(kuiQsgua_250z=c8R#@?I^MCK~4E5r!H4h4}*XPkRSNoveBNt>%kk+BbPp} zr1VwG`8q%GtNI?BHOpmWjtLu9?cnH(!46Ga3hQ9h5IAgL?zibWS_Nh6d(|C_ zthUu9q@z6|;}qmD2>B#8t^83R17Yg8l$xcOa~amr7gz zL;=ZP9|?Z1X}iNaTmgG;8@0p3#n;L;#Fs*v3DO}d*i%?{AY`Ey=`aisXR)K5KP<(&4{vVx1fY^WSw0-~gtmA_NvrGs_ zhpLlx$8_`l*FD$l#jvnkgcNmJ`f+FK;aC#olBSebwU)Ml%^>Rc$2?k94+P{55vrO%1-8{i(WL< zf4s42-ldt?aJj{$P(Z65=gj=48rxd8OsRPyD-+YWY^t{P<>0T!b6TL$rK;B@@gB1HDN1yx^`ybLeqX zcA5}=Q_27eZP}pE=Gn!vp^KbfV!h7)t3x6@S}yd5C5U~bP(ggiRjlfNE3Laz$b^K!qQGzTXPLL&p%<#XK&`k1v zs(=BEEfX=8MQL;<_4z)LvTAI2pF98xS8a6924tYnMx7Sb5eV5MKVeC$R$Bh$r2_4% z{D7S;jN46oAjlHxEdg0VZ6HgiCwWLZVH_l28d`gUC4wv=s9cBQo14bq8MUaXj-w+Y zV>M#TuoBRr)Tv#(^AaniRhXOGX#0mhu6Djz8grTtv-+$9%xN;an8v`%bjhF4h7UfF zCv+}YG=nk)Xa4FGmb-w@{8oF_Pr>F# z!_#*i@3Di%hNo&f0fy{pke0RTr@@i;FYiCADK@2c0{{3H3kP3w9;byvrunNGk;m6u zD{(T@s4Reg^A=EBun)fZ&?8P%SZ90cSJkZAYiBBtwjf~?r+u*?_8Gr&h|Y|1o1XgQ zdb=D~~N7Q6}~gPV?OQsX~zI z>VXjbQMDmJW=V1MnNC}f>a;ZjBdyx7@`rjufOA?Rs^Y)jl&Cf&|NVbx8K4kyx(o^- zLfXI9)h4FpaQ04*X`Qvm{rt-|`_&YM~4ahfU) zKTw=0Nt1w;^_o4MI890pL8HlR3wD9HVDLrPl_2Z1dMIWKra@KYYikd-qmlXV>!BtG z^x*V=ogR#(L}{Bux=Oe$1Pa*5B*%tcea#RZg48g=%tyy1e37;&d&8$IKfb0!;m)2TvxDuw;VU&(Ah_ee~e45+@cK+lg z8#*RtGjHA6GBVmJAAjToN*0Mh&Szjw(0jYkS)N~uA6B^UHS@?uYv3q9;^djCJn$Hu z=zC7~q}b+<5ftjxM)tG$@r2=yFolZqT~?M=98mqlFV=U7g!!rUM5WrSNhhJSNpnQI z%u~8W6mhTBW*Kk022_){&=-8Wb%p0n>oubV*?XKc!G?h=|7>%cT!m}PumdvmHl+$w z+WpEo_yp@5cS}3BLfBWOM7vJp7QB%A{P(*8Sk-JB@B9Z}QsH|uB*arl{`;VcoU@{o z5-_6n0{(NAV#APB_c;vf9!hZij`p3{{b8$o!?>p@0Pim*-P^Zw;n}A(aPT*x<5xt4 zSw}@NmR0-p#<+C<{u3me`Tbbcz1_RYU#|*eFM&z=7r$2^1B17Bgq@s98PGPlH-13v z$o{PGFK{(rB)FrQ;k6`jkAdE@7F41Pn0u_R;-RjI79b>0cF+f;Ot&Z+OFcAqR}~k`aPY;hZB# z?B``-6wyZo`PnYYn38A_GGQYp4z(}o0|tXYsS5D5TsUtfyi#2JQ^Q}7O}JA%qr3Kq zbkKc%)Nv!*X@uVPidcyA0$Ziu_^f%VZ1wL_Q&G+dM+L>#+7nvD3Tgd_DK$g>)>tr* zKj#a(PfTcvxdF#07)A-5x%1MfHKOfh^vU(2pi{kT;`sn#UjFzg6{ znlmq8j&%rtZ<(CF%rcfmcFhP9#%0+Fbab7yqw_aXX5?L&;8q^_ zyRZ5uLpnVL)C~CNXRU0oxdsvM*6ul&m>LQr$#54My=RMx4nY@@q9zjU$9rd(GIx~|kEQonp5Ed#XH#K!D=R@!vtd3>yC&-l6RdcRg|q!`M0I(p{F-C+G%3xfFF zusYaF!=)CU&l^n%fEWXIH0BzWZ=<*dz1L(9Zp~7?URC2i`l+>Cavo^%(x5WTw)$)I z4s)PYlS_!jdoxRS^f0@nb>YXpoF)5Kee9A=z-pVbDMOLBM47es;zTonwgsj7u#NiH z?MD=9=L4>xIf0L$gn)NQ!RjBlE-CHKc-Hz~eNrW(`&nID8co47$jHs$$FR5e$yO$$ zT9eC(ra5%&1kprY84X=ebcZi3z@hXl(q&oHfICkU z+@Kt-3bhchC;trR`GE64>z~}uDI8Tyn@t=oQmcjZ< z7irfqXf1uH%x{O&KPR8;E=OAru(K^@gE7=V86Z0UE-_Zem|#8SoiD^C$t)}m;$u%ipp(AkJ(+5&=rrNECR^f6ubO`3$02u62$s=XYQ47Jpgw48a?1>}~~ z9g`^OmNPw!Ha3-X0aTfP%Fa_UYpsaT`uU@d1YyHyXowQa(+9&HyI%9Bj~hq zik#V}dHC259T9zQ?mZ`-hWV#DZ@T%xKGwQiR0d~|8cHj2V}j=wrXzD=r)iZj*%u@} zDO`xNZX19#p{IF{GVf9zQX|no3=JDx&s8p^a0#e@-6l8;&Rjt-9RKL~8#Zfq5OoK z%b<2G$fjAdQEu|yIe%@jwnFEPqF-$iMROoij@1 zJJU@rMZ{dvE_od<(yi|Cy=J0uM({Cw;O1%$4t8#~a?fJI+hJY1jMo`U?)e*4cQ5y>&s^!M7nf%6#OaNkk>XF;r=2Ul8vorrW zS!619-?)7&lJjN6b4ld7=K76{h0{t|gur5)cDgZCPx?9@P!b^eVU?kti?UpeN50cb zDn3bmQyP%uh5eSUn5@3ngCL=JRxOz9NRtweAO=4}Rj_D5?ZpBoL?^|>(>WtzNCL|q z^sJ_rKv%nXE#0wo-cHiN<{9a+OHogJL)tR^c2t=$4mH@jhLT!@PUb5%f*akWgQqNn zKRNPp6ipofU{M75ApN238NV*JeEQi5u|IdSf@ZO7Cg$()U_%53knxKU*382T(|F+#ZH&P`N>U1kMoUI z3oYZ|(Nw_6*j?Oc+Nt>d*wLLTajmyOq4~HIpuyj*$oqdVRcPf-52A zMOa4vCFOc?&PWRzgCp_7_M3Lrz|uuOyB2iaFJ~%w2@Ybo;a4O0@hR?U|!ly?P1dgjYyq)rm)Di`YFZ>o{oo_ zaz;#In^3`n?Uuk?G6zP?Lv4O-#OPwv(b8Sf39Q=QGf-=#b*Q_Tb}W9sx?jks4jatD zZ;-@X@^5K>@4fK=pZe_uhM6+nne)92XwWaFJTo~mL%}9;;-pd{2%2zf!P@9gzVK;SO zo8)l6lv0V3nRA7o^iMECr79>Hd}F6rjk8%TnZr-dexLF!?tp(7|8D)4 zWDa7ABmR`jb3C(kdu+-4a-*=hd8V;tJ3F23!}^I!fmeQaCDwz7!j6Cv9(ggHi=vT@ zqSs9ZKjjnmT$oOMMo9e3T{)jhR}ShGx6#CXicE~7!=f5mPWRfm>t@H$Ab94Pszx031qZ-TQ)+pMtCR-!Q?e> zn3wos4{^{;)cd^!?&`kkSbx~y6h5ty%WP4ka+tzI&SG~MMNUIO=;_>;Wm*EtIGL~mDtHhBsUW1S>VK^ICs-%`j zZ>qgCm&y0CpK`bNar6q5!mP}Y0@BhM7|q3poPObnS|^d)Dmh!lAlWDRpBpp07?vOc zHK(UmO&{z6cnQO(8Rq~IiJ-)bp=jujGhp>v64R*v8(1T#fIW1zgWn9=3a%AgwL_gg z>MRc48bnnEs(nxaQ(ebqA=Br&=b3*nQC%Y|M7zMOe+mC?ApM7v4kF?(J>J*_VRs#! zvchWI`S!cc1TX=?%~RdIerFYDLyJqD;*BH~c=Gi6`K!*ty5>Vw**TR{Rk}1eWP>nZ zZebePnQAebrAiCXYg)J?_BXa;g%|R9#IGh}w%C?z-JE7v53}rBM1|{^4nIeVv6)`n zm(Wk`lJdPY=ba2bf~=1d;M&+B=*wo|LO4!8f7X&aMlJxH`rq&d|9ne zpmntgtL@s>j10PuO^)O6R^cf;_tTV1KF15K-d>1Wy4x8zsd}SsRNn4 z8xomQdMiF<&BcA`13Qcj9sPaWo;eqd&lhUi6IborYu%m};|r^Ms00*|%)(vSLwMf- zs`c93PVgzPu#6a{NY1fi5-;!DBdm{h*4nbA_d)`Wh6k2O_O)-z>B_QOs4Y%zm=A<6$l_=4~5vJ z1&EMs(?CG>(}=y+tDuMd0#gzwT9+H_9uTO3w+t*+3gApqj%e5~8a5jFDdsrt9q2S5 z!s}s3XF(owb&r4OY;rl7bUl6d3xpM6E8FhJAwEI~vWCJ&Vx%`>aWSSq3gPkdI+`!9 zg-$Xhp3-l@6D~6gRadlhaB1#9qbd?6|wA2YBmXgC2QF5smxwl~T}k zSA4(+oLo~0JsDND^{yj+LH73vGlTa%DF$M^Ys~aNBPV~C-T-MpKiR*Ort)IZ=pf$WIxon*hw#S=0Wfcb_;UC0qXSGG$0^+BoN@ku9n3IUeePx^uslbQ1GuciaDe3j=wWNT zg|Q*j)7g@L97jxjNWANzk`uyau}mL`qPkoN9k6uf<9?8iriOvXpeZQ(*Q}7$}>n0 zXsOD9mMC3g&0oYxNSsVaAc?#dCe2VFNV=>;fux~4LZnUuvT1u5F;Bm@J5Uyd0be~_ zZnyu8zzHf~hK|r{!P6fTL{OJ?C-3#HzQs;Z*wDwM9%XKBipR=QXer|Ey< zRymm`|NA#NJQzPFKSwumf9gdX6ZL|Tj53;C(Qvdh9YppsDv&_k6Fa~4pf8S+j~4kV zT-Ikai0Atsf={0Wxbh%-Px-T*-_ON#6}d7RKii=l4+fIz~~twt`<|LRn5ES!AiaeN^t|3Ry)`?S@Q8xS=`OKTpHk=MPMT zSfzX}hVdH=7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFx+kUKder%%>W1t0I2LX AN&o-= diff --git a/docs/search.json b/docs/search.json index dee403ef9..09207fb48 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Protocols/Annotated.html#/s:vP8Sourcery9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Annotated"},"Protocols/Typed.html#/s:vP8Sourcery5Typed4typeGSqCS_4Type_":{"name":"type","abstract":"

      Type, if known

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Type name

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP8Sourcery5Typed17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"Typed"},"Protocols/Typed.html":{"name":"Typed","abstract":"

      Descibes typed declaration, i.e. variable, method parameter, tuple element, enum case associated value

      "},"Protocols/Annotated.html":{"name":"Annotated","abstract":"

      Describes annotated declaration, i.e. type, method, variable, enum case

      "},"Classes/Attribute.html#/s:vC8Sourcery9Attribute4nameSS":{"name":"name","abstract":"

      Attribute name

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC8Sourcery9Attribute9argumentsGVs10DictionarySSCSo8NSObject_":{"name":"arguments","abstract":"

      Attribute arguments

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC8Sourcery9Attribute11descriptionSS":{"name":"description","abstract":"

      Attribute description that can be used in a template.

      ","parent_name":"Attribute"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType13valueTypeNameCS_8TypeName":{"name":"valueTypeName","abstract":"

      Dictionary value type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType9valueTypeGSqCS_4Type_":{"name":"valueType","abstract":"

      Dictionary value type, if known

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType11keyTypeNameCS_8TypeName":{"name":"keyTypeName","abstract":"

      Dictionary key type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC8Sourcery14DictionaryType7keyTypeGSqCS_4Type_":{"name":"keyType","abstract":"

      Dictionary key type, if known

      ","parent_name":"DictionaryType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType15elementTypeNameCS_8TypeName":{"name":"elementTypeName","abstract":"

      Array element type name

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC8Sourcery9ArrayType11elementTypeGSqCS_4Type_":{"name":"elementType","abstract":"

      Array element type, if known

      ","parent_name":"ArrayType"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement4nameSS":{"name":"name","abstract":"

      Tuple element name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Tuple element type name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement4typeGSqCS_4Type_":{"name":"type","abstract":"

      Tuple element type, if known

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC8Sourcery12TupleElement12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"TupleElement"},"Classes/TupleType.html#/s:vC8Sourcery9TupleType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TupleType"},"Classes/TupleType.html#/s:vC8Sourcery9TupleType8elementsGSaCS_12TupleElement_":{"name":"elements","abstract":"

      Tuple elements

      ","parent_name":"TupleType"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName14actualTypeNameGSqS0__":{"name":"actualTypeName","abstract":"

      Actual type name if given type name is a typealias

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type name attributes, i.e. @escaping

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName6isVoidSb":{"name":"isVoid","abstract":"

      Whether type is void (Void or ())

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName5tupleGSqCS_9TupleType_":{"name":"tuple","abstract":"

      Tuple type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName5arrayGSqCS_9ArrayType_":{"name":"array","abstract":"

      Array type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName10dictionaryGSqCS_14DictionaryType_":{"name":"dictionary","abstract":"

      Dictionary type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC8Sourcery8TypeName11descriptionSS":{"name":"description","abstract":"

      Returns value of name property.

      ","parent_name":"TypeName"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter13argumentLabelGSqSS_":{"name":"argumentLabel","abstract":"

      Parameter external name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter4nameSS":{"name":"name","abstract":"

      Parameter internal name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Parameter type name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter4typeGSqCS_4Type_":{"name":"type","abstract":"

      Parameter type, if known

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter14typeAttributesGVs10DictionarySSCS_9Attribute_":{"name":"typeAttributes","abstract":"

      Parameter type attributes, i.e. @escaping

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Method parameter default value expression

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC8Sourcery15MethodParameter12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"MethodParameter"},"Classes/Method.html#/s:vC8Sourcery6Method4nameSS":{"name":"name","abstract":"

      Full method name, including generic constraints, i.e. foo<T>(bar: T)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method12selectorNameSS":{"name":"selectorName","abstract":"

      Method name including arguments names, i.e. foo(bar:)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method9shortNameSS":{"name":"shortName","abstract":"

      Method name without arguments names and parenthesis, i.e. foo<T>

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8callNameSS":{"name":"callName","abstract":"

      Method name without arguments names, parenthesis and generic types, i.e. foo (can be used to generate code for method call)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10parametersGSaCS_15MethodParameter_":{"name":"parameters","abstract":"

      Method parameters

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method14returnTypeNameCS_8TypeName":{"name":"returnTypeName","abstract":"

      Return value type name used in declaration, including generic constraints, i.e. where T: Equatable

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method20actualReturnTypeNameCS_8TypeName":{"name":"actualReturnTypeName","abstract":"

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10returnTypeGSqCS_4Type_":{"name":"returnType","abstract":"

      Actual return value type, if known

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method20isOptionalReturnTypeSb":{"name":"isOptionalReturnType","abstract":"

      Whether return value type is optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method39isImplicitlyUnwrappedOptionalReturnTypeSb":{"name":"isImplicitlyUnwrappedOptionalReturnType","abstract":"

      Whether return value type is implicitly unwrapped optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method23unwrappedReturnTypeNameSS":{"name":"unwrappedReturnTypeName","abstract":"

      Return value type name without attributes and optional type information

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method6throwsSb":{"name":"throws","abstract":"

      Whether method throws

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8rethrowsSb":{"name":"rethrows","abstract":"

      Whether method rethrows

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method11accessLevelSS":{"name":"accessLevel","abstract":"

      Method access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method8isStaticSb":{"name":"isStatic","abstract":"

      Whether method is a static method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method7isClassSb":{"name":"isClass","abstract":"

      Whether method is a class method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method13isInitializerSb":{"name":"isInitializer","abstract":"

      Whether method is an initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method21isFailableInitializerSb":{"name":"isFailableInitializer","abstract":"

      Whether method is a failable initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method24isConvenienceInitialiserSb":{"name":"isConvenienceInitialiser","abstract":"

      Whether method is a convenience initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Method"},"Classes/Method.html#/s:vC8Sourcery6Method10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Method attributes, i.e. @discardableResult

      ","parent_name":"Method"},"Classes/Variable.html#/s:vC8Sourcery8Variable4nameSS":{"name":"name","abstract":"

      Variable name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Variable type name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable4typeGSqCS_4Type_":{"name":"type","abstract":"

      Variable type, if known

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10isComputedSb":{"name":"isComputed","abstract":"

      Whether variable is computed

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable8isStaticSb":{"name":"isStatic","abstract":"

      Whether variable is static

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10readAccessSS":{"name":"readAccess","abstract":"

      Variable read access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable11writeAccessSS":{"name":"writeAccess","abstract":"

      Variable write access, i.e. internal, private, fileprivate, public, open.","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable9isMutableSb":{"name":"isMutable","abstract":"

      Whether variable is mutable or not

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Variable default value expression

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Variable attributes, i.e. @IBOutlet, @IBInspectable

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC8Sourcery8Variable12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"Variable"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue9localNameGSqSS_":{"name":"localName","abstract":"

      Associated value local name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue12externalNameGSqSS_":{"name":"externalName","abstract":"

      Associated value external name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Associated value type name

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue4typeGSqCS_4Type_":{"name":"type","abstract":"

      Associated value type, if known

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional. Shorthand for typeName.isOptional

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional. Shorthand for typeName.isImplicitlyUnwrappedOptional

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information. Shorthand for typeName.unwrappedTypeName

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue14actualTypeNameGSqCS_8TypeName_":{"name":"actualTypeName","abstract":"

      Actual type name if declaration uses typealias, otherwise just a typeName. Shorthand for typeName.actualTypeName

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple. Shorthand for typeName.isTuple

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure. Shorthand for typeName.isClosure

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array. Shorthand for typeName.isArray

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC8Sourcery15AssociatedValue12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary. Shorthand for typeName.isDictionary

      ","parent_name":"AssociatedValue"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase4nameSS":{"name":"name","abstract":"

      Enum case name

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase8rawValueGSqSS_":{"name":"rawValue","abstract":"

      Enum case raw value, if any

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase16associatedValuesGSaCS_15AssociatedValue_":{"name":"associatedValues","abstract":"

      Enum case associated values

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Enum case annotations

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC8Sourcery8EnumCase18hasAssociatedValueSb":{"name":"hasAssociatedValue","abstract":"

      Whether enum case has associated value

      ","parent_name":"EnumCase"},"Classes/Enum.html#/s:vC8Sourcery4Enum4kindSS":{"name":"kind","abstract":"

      Returns enum

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum5casesGSaCS_8EnumCase_":{"name":"cases","abstract":"

      Enum cases

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum7rawTypeGSqCS_4Type_":{"name":"rawType","abstract":"

      Enum raw value type, if known

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC8Sourcery4Enum19hasAssociatedValuesSb":{"name":"hasAssociatedValues","abstract":"

      Whether enum contains any associated values

      ","parent_name":"Enum"},"Classes/Struct.html#/s:vC8Sourcery6Struct4kindSS":{"name":"kind","abstract":"

      Returns struct

      ","parent_name":"Struct"},"Classes/Class.html#/s:vC8Sourcery5Class4kindSS":{"name":"kind","abstract":"

      Returns class

      ","parent_name":"Class"},"Classes/Protocol.html#/s:vC8Sourcery8Protocol4kindSS":{"name":"kind","abstract":"

      Returns protocol

      ","parent_name":"Protocol"},"Classes/Type.html#/s:vC8Sourcery4Type11isExtensionSb":{"name":"isExtension","abstract":"

      Whether declaration is an extension of some type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type4kindSS":{"name":"kind","abstract":"

      Kind of type declaration, i.e. enum, struct, class, protocol or extension

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type11accessLevelSS":{"name":"accessLevel","abstract":"

      Type access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type4nameSS":{"name":"name","abstract":"

      Type name in global scope. For inner types includes the name of its containing type, i.e. Type.Inner

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9isGenericSb":{"name":"isGeneric","abstract":"

      Whether type is generic

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9localNameSS":{"name":"localName","abstract":"

      Type name in its own scope.

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9variablesGSaCS_8Variable_":{"name":"variables","abstract":"

      Variables defined in this type only, inluding variables defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12allVariablesGSaCS_8Variable_":{"name":"allVariables","abstract":"

      All variables defined for this type, including variables defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type7methodsGSaCS_6Method_":{"name":"methods","abstract":"

      Methods defined in this type only, inluding methods defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10allMethodsGSaCS_6Method_":{"name":"allMethods","abstract":"

      All methods defined for this type, including methods defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12initializersGSaCS_6Method_":{"name":"initializers","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vP8Sourcery9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15staticVariablesGSaCS_8Variable_":{"name":"staticVariables","abstract":"

      Static variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type13staticMethodsGSaCS_6Method_":{"name":"staticMethods","abstract":"

      Static methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type12classMethodsGSaCS_6Method_":{"name":"classMethods","abstract":"

      Class methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type17instanceVariablesGSaCS_8Variable_":{"name":"instanceVariables","abstract":"

      Instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15instanceMethodsGSaCS_6Method_":{"name":"instanceMethods","abstract":"

      Instance methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type17computedVariablesGSaCS_8Variable_":{"name":"computedVariables","abstract":"

      Computed instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type15storedVariablesGSaCS_8Variable_":{"name":"storedVariables","abstract":"

      Stored instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type14inheritedTypesGSaSS_":{"name":"inheritedTypes","abstract":"

      Names of types this type inherits from (for classes only) and protocols it implements, in order of definition

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type8inheritsGVs10DictionarySSS0__":{"name":"inherits","abstract":"

      Types this type inherits from (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10implementsGVs10DictionarySSS0__":{"name":"implements","abstract":"

      Protocols this type implements

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type14containedTypesGSaS0__":{"name":"containedTypes","abstract":"

      Contained types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type13containedTypeGVs10DictionarySSS0__":{"name":"containedType","abstract":"

      Contained types groupd by their names

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10parentNameGSqSS_":{"name":"parentName","abstract":"

      Name of parent type (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type6parentGSqS0__":{"name":"parent","abstract":"

      Parent type, if known (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type9supertypeGSqS0__":{"name":"supertype","abstract":"

      Superclass type, if known (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC8Sourcery4Type10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type attributes, i.e. @objc

      ","parent_name":"Type"},"Classes/Types.html#/s:vC8Sourcery5Types3allGSaCS_4Type_":{"name":"all","abstract":"

      All known types, excluding protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types9protocolsGSaCS_8Protocol_":{"name":"protocols","abstract":"

      All known protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types7classesGSaCS_5Class_":{"name":"classes","abstract":"

      All known classes

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types7structsGSaCS_6Struct_":{"name":"structs","abstract":"

      All known structs

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types5enumsGSaCS_4Enum_":{"name":"enums","abstract":"

      All known enums

      ","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types5basedCS_15TypesCollection":{"name":"based","abstract":"

      Types based on any other type, grouped by its name, even if they are not known.","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types10inheritingCS_15TypesCollection":{"name":"inheriting","abstract":"

      Classes inheriting from any known class, grouped by its name.","parent_name":"Types"},"Classes/Types.html#/s:vC8Sourcery5Types12implementingCS_15TypesCollection":{"name":"implementing","abstract":"

      Types implementing known protocol, grouped by its name.","parent_name":"Types"},"Classes/Types.html":{"name":"Types","abstract":"

      Collection of scanned types for accessing in templates

      "},"Classes/Type.html":{"name":"Type","abstract":"

      Defines Swift type

      "},"Classes/Protocol.html":{"name":"Protocol","abstract":"

      Describes Swift protocol

      "},"Classes/Class.html":{"name":"Class","abstract":"

      Descibes Swift class

      "},"Classes/Struct.html":{"name":"Struct","abstract":"

      Describes Swift struct

      "},"Classes/Enum.html":{"name":"Enum","abstract":"

      Defines Swift enum

      "},"Classes/EnumCase.html":{"name":"EnumCase","abstract":"

      Defines enum case

      "},"Classes/AssociatedValue.html":{"name":"AssociatedValue","abstract":"

      Defines enum case associated value

      "},"Classes/Variable.html":{"name":"Variable","abstract":"

      Defines variable

      "},"Classes/Method.html":{"name":"Method","abstract":"

      Describes method

      "},"Classes/MethodParameter.html":{"name":"MethodParameter","abstract":"

      Describes method parameter

      "},"Classes/TypeName.html":{"name":"TypeName","abstract":"

      Describes name of the type used in typed declaration (variable, method parameter or return value etc.)

      "},"Classes/TupleType.html":{"name":"TupleType","abstract":"

      Describes tuple type

      "},"Classes/TupleElement.html":{"name":"TupleElement","abstract":"

      Describes tuple type element

      "},"Classes/ArrayType.html":{"name":"ArrayType","abstract":"

      Describes array type

      "},"Classes/DictionaryType.html":{"name":"DictionaryType","abstract":"

      Describes dictionary type

      "},"Classes/Attribute.html":{"name":"Attribute","abstract":"

      Describes Swift attribute

      "},"equatable.html":{"name":"Equatable"},"hashable.html":{"name":"Hashable"},"enum-cases.html":{"name":"Enum cases"},"lenses.html":{"name":"Lenses"},"mocks.html":{"name":"Mocks"},"diffable.html":{"name":"Diffable"},"linuxmain.html":{"name":"LinuxMain"},"decorator.html":{"name":"Decorator"},"installing.html":{"name":"Installing"},"usage.html":{"name":"Usage"},"writing-templates.html":{"name":"Writing templates"},"Guides.html":{"name":"Guides"},"Examples.html":{"name":"Examples"},"Types.html":{"name":"Types"},"Other Protocols.html":{"name":"Other Protocols","abstract":"The following protocols are available globally."}} \ No newline at end of file +{"Protocols/Annotated.html#/s:vP17SourceryFramework9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Annotated"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed4typeGSqCS_4Type_":{"name":"type","abstract":"

      Type, if known

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Type name

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"Typed"},"Protocols/Typed.html#/s:vP17SourceryFramework5Typed17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"Typed"},"Protocols/Typed.html":{"name":"Typed","abstract":"

      Descibes typed declaration, i.e. variable, method parameter, tuple element, enum case associated value

      "},"Protocols/Annotated.html":{"name":"Annotated","abstract":"

      Describes annotated declaration, i.e. type, method, variable, enum case

      "},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute4nameSS":{"name":"name","abstract":"

      Attribute name

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute9argumentsGVs10DictionarySSCSo8NSObject_":{"name":"arguments","abstract":"

      Attribute arguments

      ","parent_name":"Attribute"},"Classes/Attribute.html#/s:vC17SourceryFramework9Attribute11descriptionSS":{"name":"description","abstract":"

      Attribute description that can be used in a template.

      ","parent_name":"Attribute"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType13valueTypeNameCS_8TypeName":{"name":"valueTypeName","abstract":"

      Dictionary value type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType9valueTypeGSqCS_4Type_":{"name":"valueType","abstract":"

      Dictionary value type, if known

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType11keyTypeNameCS_8TypeName":{"name":"keyTypeName","abstract":"

      Dictionary key type name

      ","parent_name":"DictionaryType"},"Classes/DictionaryType.html#/s:vC17SourceryFramework14DictionaryType7keyTypeGSqCS_4Type_":{"name":"keyType","abstract":"

      Dictionary key type, if known

      ","parent_name":"DictionaryType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType15elementTypeNameCS_8TypeName":{"name":"elementTypeName","abstract":"

      Array element type name

      ","parent_name":"ArrayType"},"Classes/ArrayType.html#/s:vC17SourceryFramework9ArrayType11elementTypeGSqCS_4Type_":{"name":"elementType","abstract":"

      Array element type, if known

      ","parent_name":"ArrayType"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement4nameSS":{"name":"name","abstract":"

      Tuple element name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Tuple element type name

      ","parent_name":"TupleElement"},"Classes/TupleElement.html#/s:vC17SourceryFramework12TupleElement4typeGSqCS_4Type_":{"name":"type","abstract":"

      Tuple element type, if known

      ","parent_name":"TupleElement"},"Classes/TupleType.html#/s:vC17SourceryFramework9TupleType4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TupleType"},"Classes/TupleType.html#/s:vC17SourceryFramework9TupleType8elementsGSaCS_12TupleElement_":{"name":"elements","abstract":"

      Tuple elements

      ","parent_name":"TupleType"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName4nameSS":{"name":"name","abstract":"

      Type name used in declaration

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName14actualTypeNameGSqS0__":{"name":"actualTypeName","abstract":"

      Actual type name if given type name is a typealias

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type name attributes, i.e. @escaping

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10isOptionalSb":{"name":"isOptional","abstract":"

      Whether type is optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName29isImplicitlyUnwrappedOptionalSb":{"name":"isImplicitlyUnwrappedOptional","abstract":"

      Whether type is implicitly unwrapped optional

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName17unwrappedTypeNameSS":{"name":"unwrappedTypeName","abstract":"

      Type name without attributes and optional type information

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName6isVoidSb":{"name":"isVoid","abstract":"

      Whether type is void (Void or ())

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName7isTupleSb":{"name":"isTuple","abstract":"

      Whether type is a tuple

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName5tupleGSqCS_9TupleType_":{"name":"tuple","abstract":"

      Tuple type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName7isArraySb":{"name":"isArray","abstract":"

      Whether type is an array

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName5arrayGSqCS_9ArrayType_":{"name":"array","abstract":"

      Array type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName12isDictionarySb":{"name":"isDictionary","abstract":"

      Whether type is a dictionary

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName10dictionaryGSqCS_14DictionaryType_":{"name":"dictionary","abstract":"

      Dictionary type data

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName9isClosureSb":{"name":"isClosure","abstract":"

      Whether type is a closure

      ","parent_name":"TypeName"},"Classes/TypeName.html#/s:vC17SourceryFramework8TypeName11descriptionSS":{"name":"description","abstract":"

      Returns value of name property.

      ","parent_name":"TypeName"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter13argumentLabelGSqSS_":{"name":"argumentLabel","abstract":"

      Parameter external name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter4nameSS":{"name":"name","abstract":"

      Parameter internal name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Parameter type name

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter4typeGSqCS_4Type_":{"name":"type","abstract":"

      Parameter type, if known

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter14typeAttributesGVs10DictionarySSCS_9Attribute_":{"name":"typeAttributes","abstract":"

      Parameter type attributes, i.e. @escaping

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Method parameter default value expression

      ","parent_name":"MethodParameter"},"Classes/MethodParameter.html#/s:vC17SourceryFramework15MethodParameter11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"MethodParameter"},"Classes/Method.html#/s:vC17SourceryFramework6Method4nameSS":{"name":"name","abstract":"

      Full method name, including generic constraints, i.e. foo<T>(bar: T)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method12selectorNameSS":{"name":"selectorName","abstract":"

      Method name including arguments names, i.e. foo(bar:)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method9shortNameSS":{"name":"shortName","abstract":"

      Method name without arguments names and parenthesis, i.e. foo<T>

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8callNameSS":{"name":"callName","abstract":"

      Method name without arguments names, parenthesis and generic types, i.e. foo (can be used to generate code for method call)

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10parametersGSaCS_15MethodParameter_":{"name":"parameters","abstract":"

      Method parameters

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method14returnTypeNameCS_8TypeName":{"name":"returnTypeName","abstract":"

      Return value type name used in declaration, including generic constraints, i.e. where T: Equatable

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method20actualReturnTypeNameCS_8TypeName":{"name":"actualReturnTypeName","abstract":"

      Actual return value type name if declaration uses typealias, otherwise just a returnTypeName

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10returnTypeGSqCS_4Type_":{"name":"returnType","abstract":"

      Actual return value type, if known

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method20isOptionalReturnTypeSb":{"name":"isOptionalReturnType","abstract":"

      Whether return value type is optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method39isImplicitlyUnwrappedOptionalReturnTypeSb":{"name":"isImplicitlyUnwrappedOptionalReturnType","abstract":"

      Whether return value type is implicitly unwrapped optional

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method23unwrappedReturnTypeNameSS":{"name":"unwrappedReturnTypeName","abstract":"

      Return value type name without attributes and optional type information

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method6throwsSb":{"name":"throws","abstract":"

      Whether method throws

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8rethrowsSb":{"name":"rethrows","abstract":"

      Whether method rethrows

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method11accessLevelSS":{"name":"accessLevel","abstract":"

      Method access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method8isStaticSb":{"name":"isStatic","abstract":"

      Whether method is a static method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method7isClassSb":{"name":"isClass","abstract":"

      Whether method is a class method

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method13isInitializerSb":{"name":"isInitializer","abstract":"

      Whether method is an initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method21isFailableInitializerSb":{"name":"isFailableInitializer","abstract":"

      Whether method is a failable initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method24isConvenienceInitialiserSb":{"name":"isConvenienceInitialiser","abstract":"

      Whether method is a convenience initializer

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Method"},"Classes/Method.html#/s:vC17SourceryFramework6Method10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Method attributes, i.e. @discardableResult

      ","parent_name":"Method"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable4nameSS":{"name":"name","abstract":"

      Variable name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Variable type name

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable4typeGSqCS_4Type_":{"name":"type","abstract":"

      Variable type, if known

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10isComputedSb":{"name":"isComputed","abstract":"

      Whether variable is computed

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable8isStaticSb":{"name":"isStatic","abstract":"

      Whether variable is static

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10readAccessSS":{"name":"readAccess","abstract":"

      Variable read access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable11writeAccessSS":{"name":"writeAccess","abstract":"

      Variable write access, i.e. internal, private, fileprivate, public, open.","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable9isMutableSb":{"name":"isMutable","abstract":"

      Whether variable is mutable or not

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable12defaultValueGSqSS_":{"name":"defaultValue","abstract":"

      Variable default value expression

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"Variable"},"Classes/Variable.html#/s:vC17SourceryFramework8Variable10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Variable attributes, i.e. @IBOutlet, @IBInspectable

      ","parent_name":"Variable"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue9localNameGSqSS_":{"name":"localName","abstract":"

      Associated value local name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue12externalNameGSqSS_":{"name":"externalName","abstract":"

      Associated value external name.","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue8typeNameCS_8TypeName":{"name":"typeName","abstract":"

      Associated value type name

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue4typeGSqCS_4Type_":{"name":"type","abstract":"

      Associated value type, if known

      ","parent_name":"AssociatedValue"},"Classes/AssociatedValue.html#/s:vC17SourceryFramework15AssociatedValue11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Annotations, that were created with // sourcery: annotation1, other = annotation value, alterantive = 2

      ","parent_name":"AssociatedValue"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase4nameSS":{"name":"name","abstract":"

      Enum case name

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase8rawValueGSqSS_":{"name":"rawValue","abstract":"

      Enum case raw value, if any

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase16associatedValuesGSaCS_15AssociatedValue_":{"name":"associatedValues","abstract":"

      Enum case associated values

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      Enum case annotations

      ","parent_name":"EnumCase"},"Classes/EnumCase.html#/s:vC17SourceryFramework8EnumCase18hasAssociatedValueSb":{"name":"hasAssociatedValue","abstract":"

      Whether enum case has associated value

      ","parent_name":"EnumCase"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum4kindSS":{"name":"kind","abstract":"

      Returns enum

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum5casesGSaCS_8EnumCase_":{"name":"cases","abstract":"

      Enum cases

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum11rawTypeNameGSqCS_8TypeName_":{"name":"rawTypeName","abstract":"

      Enum raw value type name, if any

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum7rawTypeGSqCS_4Type_":{"name":"rawType","abstract":"

      Enum raw value type, if known

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Enum"},"Classes/Enum.html#/s:vC17SourceryFramework4Enum19hasAssociatedValuesSb":{"name":"hasAssociatedValues","abstract":"

      Whether enum contains any associated values

      ","parent_name":"Enum"},"Classes/Struct.html#/s:vC17SourceryFramework6Struct4kindSS":{"name":"kind","abstract":"

      Returns struct

      ","parent_name":"Struct"},"Classes/Class.html#/s:vC17SourceryFramework5Class4kindSS":{"name":"kind","abstract":"

      Returns class

      ","parent_name":"Class"},"Classes/Protocol.html#/s:vC17SourceryFramework8Protocol4kindSS":{"name":"kind","abstract":"

      Returns protocol

      ","parent_name":"Protocol"},"Classes/Type.html#/s:vC17SourceryFramework4Type11isExtensionSb":{"name":"isExtension","abstract":"

      Whether declaration is an extension of some type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type4kindSS":{"name":"kind","abstract":"

      Kind of type declaration, i.e. enum, struct, class, protocol or extension

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type11accessLevelSS":{"name":"accessLevel","abstract":"

      Type access level, i.e. internal, private, fileprivate, public, open

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type4nameSS":{"name":"name","abstract":"

      Type name in global scope. For inner types includes the name of its containing type, i.e. Type.Inner

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9isGenericSb":{"name":"isGeneric","abstract":"

      Whether type is generic

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9localNameSS":{"name":"localName","abstract":"

      Type name in its own scope.

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9variablesGSaCS_8Variable_":{"name":"variables","abstract":"

      Variables defined in this type only, inluding variables defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12allVariablesGSaCS_8Variable_":{"name":"allVariables","abstract":"

      All variables defined for this type, including variables defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type7methodsGSaCS_6Method_":{"name":"methods","abstract":"

      Methods defined in this type only, inluding methods defined in its extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10allMethodsGSaCS_6Method_":{"name":"allMethods","abstract":"

      All methods defined for this type, including methods defined in extensions,","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12initializersGSaCS_6Method_":{"name":"initializers","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vP17SourceryFramework9Annotated11annotationsGVs10DictionarySSCSo8NSObject_":{"name":"annotations","abstract":"

      All initializers defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15staticVariablesGSaCS_8Variable_":{"name":"staticVariables","abstract":"

      Static variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type13staticMethodsGSaCS_6Method_":{"name":"staticMethods","abstract":"

      Static methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type12classMethodsGSaCS_6Method_":{"name":"classMethods","abstract":"

      Class methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type17instanceVariablesGSaCS_8Variable_":{"name":"instanceVariables","abstract":"

      Instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15instanceMethodsGSaCS_6Method_":{"name":"instanceMethods","abstract":"

      Instance methods defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type17computedVariablesGSaCS_8Variable_":{"name":"computedVariables","abstract":"

      Computed instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type15storedVariablesGSaCS_8Variable_":{"name":"storedVariables","abstract":"

      Stored instance variables defined in this type

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type14inheritedTypesGSaSS_":{"name":"inheritedTypes","abstract":"

      Names of types this type inherits from (for classes only) and protocols it implements, in order of definition

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type5basedGVs10DictionarySSSS_":{"name":"based","abstract":"

      Names of types or protocols this type inherits from, including unknown (not scanned) types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type8inheritsGVs10DictionarySSS0__":{"name":"inherits","abstract":"

      Types this type inherits from (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10implementsGVs10DictionarySSS0__":{"name":"implements","abstract":"

      Protocols this type implements

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type14containedTypesGSaS0__":{"name":"containedTypes","abstract":"

      Contained types

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type13containedTypeGVs10DictionarySSS0__":{"name":"containedType","abstract":"

      Contained types groupd by their names

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10parentNameGSqSS_":{"name":"parentName","abstract":"

      Name of parent type (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type6parentGSqS0__":{"name":"parent","abstract":"

      Parent type, if known (for contained types only)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type9supertypeGSqS0__":{"name":"supertype","abstract":"

      Superclass type, if known (only for classes)

      ","parent_name":"Type"},"Classes/Type.html#/s:vC17SourceryFramework4Type10attributesGVs10DictionarySSCS_9Attribute_":{"name":"attributes","abstract":"

      Type attributes, i.e. @objc

      ","parent_name":"Type"},"Classes/Types.html#/s:vC17SourceryFramework5Types3allGSaCS_4Type_":{"name":"all","abstract":"

      All known types, excluding protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types9protocolsGSaCS_8Protocol_":{"name":"protocols","abstract":"

      All known protocols

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types7classesGSaCS_5Class_":{"name":"classes","abstract":"

      All known classes

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types7structsGSaCS_6Struct_":{"name":"structs","abstract":"

      All known structs

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types5enumsGSaCS_4Enum_":{"name":"enums","abstract":"

      All known enums

      ","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types5basedCS_15TypesCollection":{"name":"based","abstract":"

      Types based on any other type, grouped by its name, even if they are not known.","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types10inheritingCS_15TypesCollection":{"name":"inheriting","abstract":"

      Classes inheriting from any known class, grouped by its name.","parent_name":"Types"},"Classes/Types.html#/s:vC17SourceryFramework5Types12implementingCS_15TypesCollection":{"name":"implementing","abstract":"

      Types implementing known protocol, grouped by its name.","parent_name":"Types"},"Classes/Types.html":{"name":"Types","abstract":"

      Collection of scanned types for accessing in templates

      "},"Classes/Type.html":{"name":"Type","abstract":"

      Defines Swift type

      "},"Classes/Protocol.html":{"name":"Protocol","abstract":"

      Describes Swift protocol

      "},"Classes/Class.html":{"name":"Class","abstract":"

      Descibes Swift class

      "},"Classes/Struct.html":{"name":"Struct","abstract":"

      Describes Swift struct

      "},"Classes/Enum.html":{"name":"Enum","abstract":"

      Defines Swift enum

      "},"Classes/EnumCase.html":{"name":"EnumCase","abstract":"

      Defines enum case

      "},"Classes/AssociatedValue.html":{"name":"AssociatedValue","abstract":"

      Defines enum case associated value

      "},"Classes/Variable.html":{"name":"Variable","abstract":"

      Defines variable

      "},"Classes/Method.html":{"name":"Method","abstract":"

      Describes method

      "},"Classes/MethodParameter.html":{"name":"MethodParameter","abstract":"

      Describes method parameter

      "},"Classes/TypeName.html":{"name":"TypeName","abstract":"

      Describes name of the type used in typed declaration (variable, method parameter or return value etc.)

      "},"Classes/TupleType.html":{"name":"TupleType","abstract":"

      Describes tuple type

      "},"Classes/TupleElement.html":{"name":"TupleElement","abstract":"

      Describes tuple type element

      "},"Classes/ArrayType.html":{"name":"ArrayType","abstract":"

      Describes array type

      "},"Classes/DictionaryType.html":{"name":"DictionaryType","abstract":"

      Describes dictionary type

      "},"Classes/Attribute.html":{"name":"Attribute","abstract":"

      Describes Swift attribute

      "},"equatable.html":{"name":"Equatable"},"hashable.html":{"name":"Hashable"},"enum-cases.html":{"name":"Enum cases"},"lenses.html":{"name":"Lenses"},"mocks.html":{"name":"Mocks"},"diffable.html":{"name":"Diffable"},"linuxmain.html":{"name":"LinuxMain"},"decorator.html":{"name":"Decorator"},"installing.html":{"name":"Installing"},"usage.html":{"name":"Usage"},"writing-templates.html":{"name":"Writing templates"},"Guides.html":{"name":"Guides"},"Examples.html":{"name":"Examples"},"Types.html":{"name":"Types"},"Other Protocols.html":{"name":"Other Protocols","abstract":"The following protocols are available globally."}} \ No newline at end of file