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

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

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