# File lib/kirbybase.rb, line 2201
    def update(*updates, &select_cond)
        raise ArgumentError, "Must specify select condition code " + \
         "block.  To update all records, use #update_all instead." if \
         select_cond.nil?

        # Update the header variables.

        update_header_vars

        # Get all records that match the selection criteria and

        # return them in an array.

        result_set = get_matches(:update, @field_names, select_cond)

        # If updates is empty, this means that the user must have specified

        # the updates in KBResultSet#set, i.e.

        # tbl.update {|r| r.recno == 1}.set(:name => 'Bob')

        return result_set if updates.empty?

        # Call KBTable#set and pass it the records to be updated and the

        # updated criteria.

        set(result_set, updates)
    end