         let value: Double? = row.value(named: "count")
     
     This method is case-insensitive.
-    
-    TODO: the doc below is obsolete.
     
     **WARNING**: type casting requires a very careful use of the `as` operator
     (see [rdar://21676393](http://openradar.appspot.com/radar?id=4951414862249984)):

    // MARK: - Fetching From SelectStatement
    
    /**
    TODO
    
    Returns a row sequence that provides fast but unsafe access to database
    values:

        for row in MetalRow.fetch(db, "SELECT id, name FROM persons") {
            let id = row.int64(atIndex: 0)
            let name = row.string(atIndex: 1)
        }
    
    The returned sequence is *unsafe* because it must be used with extra care,
    and GRDB.swift will not prevent invalid usage.
    
    - It MUST be iterated right away. Do not reserve it, do not wrap it in an
      Array.
    
    Granted with those constraints, the unsafe sequence grants extra speed for
    the typed row accessors Row.int64(atIndex:), Row.string(atIndex:), etc.
    
    - parameter db: A Database.
    - parameter sql: An SQL query.

    
    This method is case-insensitive.
    
    **WARNING**: type casting requires a very careful use of the `as` operator
    (see [rdar://21676393](http://openradar.appspot.com/radar?id=4951414862249984)):
    
