     /// Retrieves a `[JSON]` from the JSON.
     /// - returns: An `Array` of `JSON` elements
     /// - throws: Any of the `JSON.Error` cases thrown by `decode(type:)`.
-    /// - seealso: `JSON.decode(type:)`
+    /// - seealso: `JSON.decode(_:type:)`
     static func getArray(json: JSON) throws -> [JSON] {
         // Ideally should be expressed as a conditional protocol implementation on Swift.Array.
         guard case let .Array(array) = json else {

    /// An initializer to create an instance of `Int` from a `JSON` value.
    /// - parameter json: An instance of `JSON`.
    /// - throws: The initializer will throw an instance of `JSON.Error` if
    /// an instance of `Int` cannot be created from the `JSON` value that was
    /// passed to this initializer.
    public init(json: JSON) throws {
        switch json {
        case let .Double(double):

    /// An initializer to create an instance of `Bool` from a `JSON` value.
    /// - parameter json: An instance of `JSON`.
    /// - throws: The initializer will throw an instance of `JSON.Error` if
    ///           an instance of `Bool` cannot be created from the `JSON` value that was
    ///           passed to this initializer.
    public init(json: JSON) throws {
        guard case let .Bool(bool) = json else {
            throw JSON.Error.ValueNotConvertible(type: Swift.Bool)
