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

    /// - returns: An `Array` of decoded elements
    /// - throws: Any of the `JSON.Error` cases thrown by `decode(type:)`, as
    ///   well as any error that arises from decoding the contained values.
    /// - seealso: `JSON.decode(type:)`
    static func getArrayOf<Decoded: JSONDecodable>(json: JSON) throws -> [Decoded] {
        // Ideally should be expressed as a conditional protocol implementation on Swift.Dictionary.
        // This implementation also doesn't do the `type = Type.self` trick.

    /// 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:)`
    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 {
