# 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